Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » Logik » Hoare Logik (Gültigkeit von Triple beweisen) » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Hoare Logik (Gültigkeit von Triple beweisen)
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
bavario
Grünschnabel


Dabei seit: 14.11.2017
Beiträge: 2

Hoare Logik (Gültigkeit von Triple beweisen) Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo zusammen. Ich steige noch nicht ganz hinter die Hoare Logik und habe hier ein paar Beispiele die ich nicht verstehe, vielleicht kann mir einer von euch ja weiter helfen? Beweisen Sie oder widerlegen Sie folgende Hoare-Triple:

1. {a > 7 und b >= 0} n = a - b {n < a und a + b >= 0}
Das müsste mit der Zuweisungsregel zu machen sein
Bzw ist das Tripple nicht gültig, da wenn a = 7 und b = 0 in der Vorbedingung gilt, gilt aber die Nachbedingung nicht, da n = 7 und 7 nicht echt kleiner 7 ist.

2.{x >= y + 1 und y ist gerade} z=x+2; x=x+y+z; {x gerade}
Da spielt die Hintereinanderausführung auf jeden Fall eine Rolle, aber wie wende ich das genau an? Welche Invariante wähle ich hier um ans Ziel zu gelangen?

3.{ x >= y + 1 und ygerade} if(0 != y%2){x=x+y;}else{z=x+2;x=x+y+z;}{ x gerade} Hier natürlich die if-Regel

Wäre toll wenn mir dabei jemand weiter helfen kann.
Beste Grüße

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von bavario: 14.11.2017 12:02.

14.11.2017 12:01 bavario ist offline Beiträge von bavario suchen Nehmen Sie bavario in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Theoretische Informatik » Logik » Hoare Logik (Gültigkeit von Triple beweisen)