08.10.2013 Aufrufe

Download (1405Kb)

Download (1405Kb)

Download (1405Kb)

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

102 KAPITEL 5. DIE ς-SEMANTIKEN<br />

Wie schon die po-Reduktionssemantik der cbn-Semantik werden sowohl die allgemeine als auch<br />

die po-ς-Reduktionssemantik durch die kleinste obere Schranke einer im allgemeinen unendlichen<br />

Menge von Approximationen definiert. Wie dort stellt sich daher die Frage, ob es möglich ist, daß<br />

ein semantischer Wert eines Terms, der ein endlicher, totaler Konstruktorterm ist, nur beliebig<br />

genau approximiert, aber nie erreicht werden kann. Dies ist nicht der Fall.<br />

Lemma 5.21 Berechenbarkeit der ς-Reduktionssemantiken<br />

Sei t ∈ TΣ. Wenn<br />

[[t]] red<br />

P,ς = t ∈ TC bzw. [[t]] po<br />

P,ς = t ∈ TC,<br />

dann existiert die ς-Normalform t↓ P,ς bzw. die po-ς-Normalform t↓ P,po,ς, und es gilt<br />

Beweis:<br />

Sei t = [[t]] red<br />

P,ς = {[[t ′ ]] alg<br />

⊥ς<br />

existiert [[ˆt]] alg<br />

⊥ς ∈ {[[t′ ]] alg<br />

| t ⊥ς<br />

[[t]] red<br />

P,ς = t = t↓ P,ς bzw. [[t]] po<br />

P,ς = t = t↓ P,po,ς.<br />

| t<br />

∗<br />

P,ς<br />

−−→<br />

∗<br />

−−→<br />

P,ς<br />

t ′ } ∈ TC. 〈TC,ς, ✂〉 ist ω-induktiv und t ω-kompakt. Somit<br />

t ′ } mit t = [[ˆt]] alg<br />

⊥ς . Wegen t ∈ TC folgt ˆt = t. Also gilt t<br />

∗<br />

−−→<br />

P,ς ˆt = t,<br />

und t ist die ς-Normalform von t.<br />

Die Aussage über die po-ς-Reduktionssemantik folgt analog. ✷<br />

Zusammen mit der Übereinstimmung der allgemeinen und der po-ς-Reduktionssemantik, die wir<br />

in 5.5 zeigen, läßt sich leicht folgern, daß die ς-Normalform und die po-ς-Normalform eines Terms<br />

übereinstimmen.<br />

Aufgrund der ω-Induktivität der kanonischen Halbordnung des Rechenbereichs sind alle semantischen<br />

Werte schon durch ihre endlichen Approximationen eindeutig bestimmt. Daher können zwei<br />

syntaktische Terme t, t ′ ∈ TΣ unterschiedlicher denotationeller Semantik ([[t]] fix<br />

P,ς = [[t′ ]] fix<br />

P,ς ) immer<br />

operationell unterschieden werden, d. h. bei Hinzunahme von zusätzlichen Funktionssymbolen und<br />

dazugehörigen Programmregeln (die die kompositionelle Semantik nur erweitern) existiert f (n) ∈ F<br />

mit2 ∗<br />

f(t) −−→ t ∈ TC und nicht f(t ′ ∗<br />

) −−→ t.<br />

P,ς<br />

P,ς<br />

Für unseren Programmiersprachen ähnliche Programmiersprachen wird eine derartige Aussage in<br />

[Ra&Vui80] bewiesen. In funktionalen Programmiersprachen höherer Ordnung ist diese erwünschte<br />

fully abstract Eigenschaft von Semantiken jedoch aufgrund der Sequentialität aller Operationen<br />

(siehe Kapitel 7) ein Problem ([Ber&Cur82], [Ca&Fell92]).<br />

5.3.2 ς-Reduktionssemantiken und die li- und die po-Reduktionssemantik<br />

Wir haben die ς-Semantiken als Verallgemeinerung der cbv- und der cbn-Semantik eingeführt.<br />

Bei der Definition der ς-Reduktionssemantiken haben wir jedoch kaum auf die Definitionen der<br />

li- und der po-Reduktionssemantik zurückgegriffen. Wir wollen hier die bestehenden Beziehungen<br />

aufzeigen.<br />

Betrachten wir die Definition der ς-Redexe, so sehen wir, daß die cbv-Redexe genau die innermost<br />

Redexe sind, und alle Redexe cbn-Redexe sind (RedP,cbn = RedP).<br />

2 Da die allgemeine und die po-ς-Reduktionssemantik übereinstimmen, wie wir in 5.5 zeigen, gilt diese Aussage<br />

selbstverständlich auch für po-ς-Reduktion.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!