next up previous contents
Nächste Seite: 3 Grundlagen Aufwärts: 2 Mathematica Vorherige Seite: 2.2 User-Interfaces   Inhalt

Unterabschnitte

2.3 Das Paradigma von Mathematica:
Pattern Matching

Die Grundlage der meisten Operationen, die Mathematica ausführt, ist der Vergleich von Mustern. Dem Kernel steht eine große Datenbank mit vordefinierten Mustern zur Verfügung, die beispielsweise zur Umformung und Vereinfachung mathematischer Ausdrücke verwendet werden. Neue Muster können dann der Datenbank hinzugefügt werden, um Mathematica neue Fähigkeiten beizubringen und spzielle Probleme zu lösen.

Ingredienzien

Kontrollstrukturen verschiedener Programmiersprachen

Vereinheitlichung von 3 Konzepten

Die Syntax, der Befehle auf der command line oder in notebooks gehorchen müssen, beruht auf folgenden Konzepten:

Beispiel

In[3]:= f[1]:=0
Out[3]=

In[4]:= f[a]:=b
Out[4]=

Die Musterdatenbank hat nach obigen Eingaben folgende Einträge für das Symbol f:

f/: f[1] := 0
f[a] := b
f[x_] := x^2
g/: ...

Der Befehl In[5]:= ?f
Out[5]= Global`f
f[1] := 0
f[a] := b
f[x_] := x^2

zeigt die ,,Muster``, die in der Datenbank gespeichert sind, an.

Läßt man Mathematica den Befehl In[6]:= f[3]
Out[6]= 9

ausführen, so kann man sich den Vorgang des Mustervergleichs wie folgt vorstellen:

Mathematica beginnt, den eingegebenen Befehl zeichenweise mit den gespeicherten Mustern zu vergleichen, und erkennt zunächst, daß es sich um ein f handelt. Unter jenen Mustern, die damit beginnen sucht es jenes, das von einer eckigen Klammer [ gefolgt wird. Nun wird das dritte Zeichen 3 untersucht. Offensichtlich paßt es weder auf den ersten, noch auf den zweiten Eintrag in der Datenbank. Der dritte Eintrag f[x_]:=x^2 enthält ein spezielles Zeichen, das sogenannte ,,blank`` (,,_``), das für einen beliebigen Ausdruck (expression) steht. Dieses ist jedoch kein Leerzeichen, sondern wird durch einen Unterstrich dargestellt. Kapitel 3.2 beschäftigt sich eingehend mit blanks. Dem blank geht ein x voran, das lediglich der expression, die dem blank zugeordnet wurde, einen Namen gibt, um auf diese zugreifen zu können. Da das blank für eine beliebige expression steht, ist zweifellos auch 3 erlaubt, weshalb das dritte Muster als zutreffend erkannt wird.

Mathematica kann dann mit der Auswertung des Ausdrucks beginnen. In f[x_]:=x^2 wird 3 an Stelle des beliebigen Ausdrucks eingesetzt: x^2 wird ersetzt durch 3^2. Das Symbol ^ für das Potenzieren wird durch seine FullForm ersetzt, Power[3, 2], und der Ausdruck schließlich ausgewertet.


next up previous contents
Nächste Seite: 3 Grundlagen Aufwärts: 2 Mathematica Vorherige Seite: 2.2 User-Interfaces   Inhalt
Werner Scholz 2000-06-21