• Keine Ergebnisse gefunden

Hinweis: DerTest[ 0 ] istf ur =0nichtdefiniert.NehmenSiedaherbei Hinweis: DieseEigenschaftheißt WechselseitigerAusschluss“.GehenSiedavon Konfigurationenin liegen,anderenfallsistsie verletzt .InderVorlesungwurden

N/A
N/A
Protected

Academic year: 2021

Aktie "Hinweis: DerTest[ 0 ] istf ur =0nichtdefiniert.NehmenSiedaherbei Hinweis: DieseEigenschaftheißt WechselseitigerAusschluss“.GehenSiedavon Konfigurationenin liegen,anderenfallsistsie verletzt .InderVorlesungwurden"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

WS 2013/2014 21.01.2014 Ubungen zur Vorlesung¨

B¨aume, Ordnungen und Anwendungen Blatt 12

Juniorprof. Dr. Roland Meyer Abgabe bis 28.01.2014 um 14h Aufgabe 12.1 (Control-State-Reachability)

EineSafety-Eigenschaft oderInvariante eines Programms ist eine MengeSafe⊆Prog× Statevon Konfigurationen. Man sagt, die Eigenschaft ist erf¨ullt, falls alle erreichbaren Konfigurationen in Safe liegen, anderenfalls ist sie verletzt. In der Vorlesung wurden Beispiele f¨ur Safety-Eigenschaften gegeben, z.B.:

”Es gibt keine Divisionen durch 0“ oder:

”Die Variablex ist immer positiv“.

Erkl¨aren Sie, wie man die ¨Uberpr¨ufung von Safety-Eigenschaften eines Programms auf einen Erreichbarkeitscheck f¨ur einen Kontrollzustandcbad reduzieren kann. Machen Sie Ihre Vorgehensweise an den beiden folgenden Beispielen deutlich:

a) ”Es gibt keine Divisionen durch 0.“

b) ”Zwei parallele Programme greifen niemals gleichzeitig schreibend auf eine gemein- same Datei zu.“

Hinweis: Diese Eigenschaft heißt

”Wechselseitiger Ausschluss“. Gehen Sie davon aus, dass in zwei parallelen Programmen jeweils ein Befehl write(file) vorkommt.

Wie ¨uberpr¨ufen Sie, dass diese Befehle nicht gleichzeitig ausgef¨uhrt werden?

Aufgabe 12.2 (Abstraktionsverfeinerung)

Betrachten Sie das folgende Programm, das f¨ur x, y∈Ndas Produktz=x·y berechnet.

[z:= 0]1

while [x >0]2 do [z:=z+y]3 [x:=x−1]4

if [z≡0 mod y]5 then [skip]6

else [skip]7

Zeigen Sie mittels Abstraktionsverfeinerung, dass Block 7 nicht erreichbar ist.

Hinweis: Der Test [z≡0 mody]5 ist f¨ur y= 0 nicht definiert. Nehmen Sie daher bei der Erf¨ullbarkeitsanalyse der Formeln grunds¨atzlichy >0 an.

(2)

Aufgabe 12.3 (Abstraktionsverfeinerung) Betrachten Sie das folgende Programm:

[x:=a]1 [y:=b]2

while [x6= 0]3 do [x:=x−1]4 [y :=y−1]5

if [a=b∧y6= 0]6 then [skip]7

else [skip]8

Wir wollen zeigen, dass man mittels der Abstraktionsverfeinerung aus der Vorlesung nicht beweisen kann, dass Block 7 nicht erreichbar ist. Genauer wollen wir zeigen, dass die Verfeinerung nicht terminiert.

a) Wir betrachten zun¨achst abstrakte L¨aufe des Programms. Geben Sie Pr¨adikate p(k)i f¨urk≥1 undi∈ {3,4,5} an, die jeweils gelten, wenn Blockizum k-ten Mal betreten wird. Achtung: Der Fall k= 1 ist ein Sonderfall.

b) Zeigen Sie dann, dass im n-ten Verfeinerungsschritt ein (spurious) Gegenbeispiel mitnSchleifendurchl¨aufen erzeugt wird, aber keines mit weniger als nDurchl¨aufen.

c) Schließen Sie, dass die Verfeinerung nicht terminiert.

Abgabe bis 28.01.2014 um 14h im Kasten neben Raum 34-401.4

Referenzen

ÄHNLICHE DOKUMENTE

If the LAST ADDRESS is included in the address field, control automatically transfers to the PM9005 personality module when the last address data transfer

[r]

Karlsruher Institut f¨ ur Technologie (KIT) Institut f¨ ur

[r]

Abgabe bis Do, 18.12., 12 Uhr Aufgabe 1 zur Bearbeitung in der ¨ Ubung Aufgaben 2-4 zur selbst¨ andigen Bearbeitung..

Zwischen diesen beiden Tags befindet sich der Kopf der Seite (eingeschlossen zwischen <HEAD> und </HEAD>) und der Körper der Seite (zwischen <BODY>

Hinweis: Zur Bestimmung von u k¨ onnen Sie eine beliebige Implementation des Newton Algo- rithmus verwenden.. (c) Implementieren Sie das explizite

Der Raum muss bei der Erstellung des Netzanschlusses abschließbar, jedoch für autorisierte Personen des Netzbetreibers und im Notfall auch für Rettungsdienste leicht zugänglich