Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 9 / 1 Gleichungsspezifikation abstrakter Datentypen Definition "Spezifikation"

Ähnliche Präsentationen


Präsentation zum Thema: "Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 9 / 1 Gleichungsspezifikation abstrakter Datentypen Definition "Spezifikation""—  Präsentation transkript:

1 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 9 / 1 Gleichungsspezifikation abstrakter Datentypen Definition "Spezifikation" Eine (Gleichungs-)Spezifikation ist ein Paar SPEC SPEC = (, E), wobei eine Signatur und E ein -Gleichungssystem ist. SPEC SPEC 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. Alg SPEC. Zur Angabe von Spezifikationen benutzen wir eine einfache sich selbst erklärende Sprache. Kapitel 9

2 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 9 / 2 Beispiele für Spezifikationen group 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 group end group Modelle dieser Spezifikation sind alle Gruppen. group Diese Spezifikation beschreibt die Klasse Alg group.

3 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 9 / 3 Beispiele für Spezifikationen (Forts.) stack 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 stack end stack

4 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 9 / 4 Das 1. Beispiel zeigt, daß mit Gleichungsspezifikationen auf direkte Weise i.a. nur polymorphe Datentypen spezifiziert werden können. group 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. stack 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 Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 9 / 5 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 "Syntax, Semantik, Spezifikation - Grundlagen der Informatik R. Hartwig Kapitel 9 / 1 Gleichungsspezifikation abstrakter Datentypen Definition "Spezifikation""

Ähnliche Präsentationen


Google-Anzeigen