04.06.2013 Aufrufe

Skript zur Vorlesung - Universität Paderborn

Skript zur Vorlesung - Universität Paderborn

Skript zur Vorlesung - Universität Paderborn

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.

110 KAPITEL 7. AXIOMATISCHE SEMANTIK<br />

Die Notation für die Substitution erinnert bewußt an die Zustandsmodifikation.<br />

Es gibt aber einen wichtigen Unterschied: Die Substitution operiert<br />

syntaktisch auf einer Formel, also einem syntaktischen Objekt. Die Zustandsmodifikation<br />

operiert auf einem Zustand, also einem semantischen Objekt.<br />

Es besteht aber trotzdem ein enger Zusammenhang zwischen den beiden<br />

Konzepten: das Substitutionslemma.<br />

Lemma 7.1 (Substitutionslemma)<br />

Sei F ∈ F orm eine Formel, v ∈ V eine Programmvariable, a ∈ Aexp ein<br />

Ausdruck, β eine Belegung und σ ein Zustand. Dann gilt β, σ |= F [a/v]<br />

genau dann, wenn β, σ[σ(a)/v] |= F gilt.<br />

Beweis: Das Substitutionslemma läßt sich leicht durch Induktion über den<br />

Aufbau der Ausdrücke und Formeln beweisen. <br />

3 Zusicherungen<br />

Mit diesen Begriffen und der operationalen Semantik können wir nun den<br />

Begriff der Zusicherung und unsere informelle Beschreibung ihrer Gültigkeit<br />

formalisieren.<br />

Definition 7.2 (Zusicherung)<br />

Für zwei prädikatenlogische Formeln A und B und eine Anweisung c nennen<br />

wir {A} c {B} eine Zusicherung.<br />

Die Zusicherung heißt gültig, wenn für jede Belegungen β und jeden Zustand<br />

σ mit β, σ |= A und jeden Zustand σ ′ mit σ ′ mit 〈c, σ〉 → σ ′ auch gilt<br />

β, σ ′ |= B. Für eine gültige Zusicherung schreiben wir auch |= {A} c {B}.<br />

Der Wert der logischen Variablen ändert sich bei den beiden Interpretationen<br />

von A und B nicht (β bleibt gleich); der Wert der Programmvariablen ändert<br />

sich dagegen (die Gültigkeit von A wird bzgl. σ überprüft, die Gültigkeit von<br />

B bezüglich σ ′ ).<br />

Wir geben nun Beweisregeln an, mit deren Hilfe man die Gültigkeit von Zusicherungen<br />

beweisen kann. Am Ende werden wir feststellen, daß wir mit diesen<br />

Regel genau diejenigen Zusicherungen herleiten können, die auch gültig sind.<br />

Da wir das aber a priori nicht wissen benutzen wir für die durch Regeln<br />

herleitbaren Zusicherungen ein anderes Symbol ⊢ {A} c {B}. Diese Regel

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!