Download (1405Kb)
Download (1405Kb)
Download (1405Kb)
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
144 KAPITEL 6. UNTERSUCHUNG DER ς-SEMANTIKEN<br />
Der cbv-Datentyp DP,cbv eines Programms mit Pattern ist jedoch tatsächlich das kleinste cbv-<br />
Interpretationsmodell ∗ des Programms.<br />
Analog zu Lemma 6.6 über cbn-Interpretationsmodelle beweisen wir erst das folgende Hilfslemma.<br />
Lemma 6.10 Über cbv-Interpretationsmodelle£von Programmen mit Pattern<br />
Sei P ein Programm mit Pattern. Seiein cbv-Interpretationsmodell ∗ des Programms P. Dann<br />
gilt<br />
ΦP,cbv() ⊑.<br />
Beweis:<br />
Gemäß der Definition der cbv-Interpretationen ist für alle Konstruktorsymbole G ∈ C<br />
Seien f (n) ∈ F( ˙∪ H) und t ∈ (TC,cbv) n beliebig.<br />
G ΦP,cbv() = G.<br />
Fall 1: t wird mit der linken Seite einer Reduktionsregel f(p)→r vermittels einer Variablenbelegung<br />
β : Var(p)→TC,cbv semantisch cbv-gematcht.<br />
Dann ist<br />
f ΦP,cbv() (t) = [[r]] alg<br />
,β .<br />
Da P ein Programm mit Pattern ist, ist f kein Verzweigungssymbol und nach Lemma 5.4,<br />
S. 80, über semantische cbv-Matchbarkeit ist β(x) = ⊥ für alle x ∈ Var(p). Daein cbv-<br />
Interpretationsmodell ∗ des Programms P ist, folgt somit<br />
Insgesamt gilt also<br />
Fall 2: Sonst.<br />
f(t) = [[f(p)]] alg<br />
= [[r]] ,β alg<br />
,β .<br />
f ΦP,cbv() (t) = f(t).<br />
f ΦP,cbv() (t) = ⊥ ✂ f(t).<br />
Lemma 6.11 DÈcbv = MinAlg ) für ein Programm mit Pattern<br />
ΣÚ(IntMod£Ècbv<br />
Sei P ein Programm mit Pattern. Der cbv-Datentyp, also der kleinste Fixpunkt der cbv-<br />
Transformation, ist das kleinste cbv-Interpretationsmodell∗ des Programms P.<br />
Beweis:<br />
Dies folgt unter Verwendung des Lemmas 6.10 über cbv-Interpretationsmodelle ∗ von Programmen<br />
mit Pattern völlig analog zum Beweis des Lemmas 6.7, wonach der cbn-Datentyp das kleinste<br />
cbn-Interpretationsmodell des Programms ist. ✷<br />
✷