Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Eine (Gleichungs-)Spezifikation ist ein Paar SPEC = (, E),

Ähnliche Präsentationen


Präsentation zum Thema: "Eine (Gleichungs-)Spezifikation ist ein Paar SPEC = (, E),"—  Präsentation transkript:

1 Eine (Gleichungs-)Spezifikation ist ein Paar SPEC = (, E),
Kapitel 9 Gleichungsspezifikation abstrakter Datentypen Definition "Spezifikation" Eine (Gleichungs-)Spezifikation ist ein Paar SPEC = (, E), wobei  eine Signatur und E ein -Gleichungssystem ist. Die Spezifikation wird erfüllt von allen -Algebren, in denen das Gleichungssystem E gültig ist, also von allen (, E)-Algebren. Damit bestimmt eine Spezifikation SPEC eine ganze Klasse von Algebren: Alg,E bzw. AlgSPEC . Zur Angabe von Spezifikationen benutzen wir eine einfache sich selbst erklärende Sprache.

2 Beispiele für Spezifikationen
1.) group = sorts G oprs  : G, G  G e :  G i : G  G var x, y, z : G eqns (x  y)  z = x  (y  z ) e  x = x i(x)  x = e end group Modelle dieser Spezifikation sind alle Gruppen. Diese Spezifikation beschreibt die Klasse Alg group .

3 Beispiele für Spezifikationen (Forts.)
2.) stack = sorts stack, char, bool oprs push : stack, char  stack top : stack  char pop : stack  stack clear :  stack empty: stack  bool true :  bool false :  bool var s : stack ; x : char eqns empty(push(s, x)) = false empty(clear) = true top(push(s, x)) = x pop(push(s, x)) = s end stack

4 Das 1. Beispiel zeigt, daß mit Gleichungsspezifikationen auf direkte Weise i.a. nur polymorphe Datentypen spezifiziert werden können. Denn die Klasse Alg group enthält sehr verschiedene nichtisomorphe Gruppen. Auch zur Klasse Alg stack gehören Modelle, die man wohl nicht meint: sog. Nichtstandardmodelle. Man betrachte etwa ein Modell, das als Keller unendliche Folgen von Elementen enthält. Auch dies wäre eine stack-Algebra. Sie enthält viel zu viele Elemente (!), nicht alle sind von der Konstanten clear aus durch endlichmalige Anwendung der Operationen erreichbar. Ausschluß solcher zu großer Modelle nicht durch Formeln des PK 1. Stufe möglich! Vgl. vorn Axiom iv. und auch das sog. Induktionsaxiom in den PEANO-Axiomen sind Formeln 2. Stufe.

5 monomorphen Datentypen
Durch Gleichungsspezifikationen werden also i.a. zu große Klassen von Algebren beschrieben. Frage: Wie kann man diese bequemen, einfachen Ausdrucksmittel der Gleichungsspezifikation trotzdem nutzen? Wie kann man die oft gebrauchten monomorphen Datentypen evtl. doch mittels Gleichungen spezifizieren?


Herunterladen ppt "Eine (Gleichungs-)Spezifikation ist ein Paar SPEC = (, E),"

Ähnliche Präsentationen


Google-Anzeigen