Serge Autexier Christoph Lüth Korrekte Software: Grundlagen und Methoden SoSe 2020
1. Übungsblatt
Ausgabe: 28.04.20 Abgabe: 05.05.20
Dieses Übungsblatt ist ein PDF-Formular. Bitte in einem PDF-Viewer Ihrer Wahl ausfüllen, abspeichern, und an die Veranstalter mailen.
Gruppe:
Name: Matrikelnummer:
Name: Matrikelnummer:
Name: Matrikelnummer:
1.1 Operationale Semantik von Ausdrücken
In der Vorlesung wurde die operationale Semantik von C0 eingeführt. Geben Sie die Ableitung der Auswer- tung folgender Ausdrücke in der operationalen Semantik unter einem gegeben Zustandsan.
Nutzen Sie hierzu die lineare Schreibweise wie sie in der Vorlesung für Anweisungen eingeführt wurde. Für Ausdrückesieht das wie folgt aus. Wir wollen den Ausdruck (x+y)∗(x−y) == 0 unter dem Zustandhx 7→6,y7→
5iauswerten (wie auf den Vorlesungsfolien):
s=defhx 7→6,y7→5i
| | | hs,xi →Aexp6
| | | hs,yi →Aexp5
| |hx+y,si →Aexp6∗5=11
| | | hs,xi →Aexp6
| | | hs,yi →Aexp5
| | hx−y,si →Aexp6−5=1
| h(x+y)∗(x−y),si →Aexp11
| h0,si →Aexp0
h(x+y)∗(x−y) ==0,si →Bexp11=0=false
1. (15 + (5 ∗ x) <= 49) k(6 <= x) mits=defhx7→7i
— Seite 1 von 2 —
1. Übungsblatt Korrekte Software: Grundlagen und Methoden, SoSe 2020
2. (y/x == 1) && (x != 0) mits=defhx7→0,y7→8i
3. (x != 0) && (y/x == 1) mits=defhx7→0,y7→9i
1.2 Operationale Semantik von Programmen
In der Vorlesung wurde die operationale Semantik von C0 eingeführt. Geben Sie die Ableitung der Auswer- tung des folgenden C0-Programms in der operationalen Semantik (lineare Schreibweise) unter einem gegeben Zustandt=defha7→12,b7→8ian:
/ / GGT(A,B) while ( b ! = 0 ) {
i f ( a <= b ) b = b− a ; else a = a − b ; }
— Seite 2 von 2 —