08.10.2013 Aufrufe

Download (1405Kb)

Download (1405Kb)

Download (1405Kb)

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Kapitel 6<br />

Untersuchung der ς-Semantiken<br />

Wir haben die ς-Semantiken unserer Programme sowohl denotationell als auch operationell definiert.<br />

Wir untersuchen jetzt die Beziehungen der ς-Semantiken zu anderen häufig eingesetzten<br />

Semantiken.<br />

Für einfache algebraische Spezifikationen und für Termersetzungssysteme wird meistens das initiale<br />

Modell bzw. die kanonische Quotientenalgebra als Semantik verwendet. In 6.1 begründen wir,<br />

warum diese Quotientenalgebra als Semantik unserer Programme ungeeignet ist. Dennoch zeigen<br />

wir immerhin einen Zusammenhang zwischen der Quotientenalgebra und unseren ς-Datentypen<br />

auf.<br />

Die insbesondere im Bereich logischer Programmiersprachen eingesetzten deklarativen Semantiken<br />

beruhen auf dem Gültigkeits- und Modellbegriff der Logik. In 6.2 stellen wir fest, daß allein unsere<br />

cbn-Semantik deklarativ definierbar ist. Immerhin ist die cbv-Semantik für Programme mit Pattern<br />

aus deklarativer Sicht ebenfalls ausgezeichnet.<br />

Dies führt uns in 6.3 zur Verwendung partieller Algebren, um damit die cbv-Semantik für Programme<br />

mit Pattern deklarativ zu definieren.<br />

6.1 Das initiale Modell<br />

Mit unserer denotationellen ς-Fixpunktsemantik betrachten wir ein Programm als Spezifikation eines<br />

Datentyps, einer speziellen Algebra. Diesen Standpunkt haben wir von den algebraischen Spezifikationen<br />

übernommen ([Wir90]). Algebraische Spezifikationen bestehen meistens aus Formeln<br />

einer Gleichungslogik erster Ordnung. Eine Algebra heißt genau dann Modell der Spezifikation,<br />

wenn die Formeln der Spezifikation in dieser Algebra gültig sind. Einfache algebraische Spezifikationen<br />

sind schlicht Mengen von Termgleichungen, d. h. Termpaaren. Somit kann der Begriff der<br />

Gültigkeit einer Gleichung leicht auf Reduktionsregeln übertragen werden, und wir können die<br />

Modelle eines Programms definieren.<br />

Definition 6.1 Gültigkeit, Modell<br />

Eine Termersetzungsregel l→r mit l, r ∈ TΣ(X) ist in einer Algebra=〈A, α〉 ∈ Alg Σ genau dann<br />

gültig, wenn für alle Variablenbelegungen β : X→A<br />

[[l]] alg<br />

= [[r]] ,β alg<br />

,β<br />

gilt. Eine Algebra∈Alg Σ heißt genau dann Modell des Programms P, wenn alle Reduktionsregeln<br />

des Programms P ingültig sind.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!