• Keine Ergebnisse gefunden

Formale Methoden der Softwaretechnik Vorlesung vom 13.05.2011: Isabelle — eine Einführung

N/A
N/A
Protected

Academic year: 2022

Aktie "Formale Methoden der Softwaretechnik Vorlesung vom 13.05.2011: Isabelle — eine Einführung"

Copied!
14
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Formale Methoden der Softwaretechnik

Vorlesung vom 13.05.2011: Isabelle — eine Einführung

Till Mossakowski & Christoph Lüth

Universität Bremen

Sommersemester 2011

(2)

Inhalt

I Heute:Übersichtauf (über) Isabelle

I Danach:systematische Einführung

(3)

Isabelle

I Weit verbreiteter Theorembeweiser

I Generisch: mehr als eine Logik

I Interaktiv:Beweis wird durch den Benutzerkonstruiertund von Isabellegeprüft

I Heimatseite:http://isabelle.in.tum.de/

(4)

Geschichte

I Entstanden in Cambridge, entwickelt in Cambridge und München

Larry Paulson Tobias Nipkow

I Teil derLCF-Familie

I Erste Version 1988, seit Ende der 1990er weit verbreitet

(5)

Architektur

I Implementiert in Standard ML (SML)

I Ca. 150 kloc Standard ML

I Ca. 200 kloc Beweisskripte

I Korrekt durchLCF-Design

(6)

Theorien

I Isabelle-Quellcode:Theorien

I Theorien bestehen aus

I Definitionen

I Behauptungen

I Beweisen

I Isabelle liest Theorien undprüftsie

I Theorien sindhierarchisch strukturiert

(7)

Benutzung: ProofGeneral

(8)

Grundlagen von Isabelle

I Grundlage:getypterλ-Kalkül

I Unifikation und Matching

I Variablen, Formeln, Resolution

(9)

Formeln

I Formelnin Isabelle:

φ1, . . . , φn

ψ [[φ1, . . . , φn]] =⇒ψ

I φ1, . . . , φn Formeln,ψatomar

I Theoreme:ableitbareFormeln

I Ableitungvon Formeln:Resolution,Instantiierung,Gleichheit

I Randbemerkung:

V

(10)

Variablen

I Meta-Variablen: könnenunifiziert und beliebiginstantiiert werden

I freie Variablen(fixed): beliebigaberfest

I GebundeneVariablen: Name beliebig (α-Äquivalenz)

I Meta-Quantoren: Isabelles Eigenvariablen

Vx.P(x)

∀x.P(x) allI !!x. P x ==> ALL x. P x

I Beliebiginstantiierbar

I Gültigkeitauf diese (Teil)-Formelbegrenzt

(11)

Variablen

I Meta-Variablen: könnenunifiziert und beliebiginstantiiert werden

I freie Variablen(fixed): beliebigaberfest

I GebundeneVariablen: Name beliebig (α-Äquivalenz)

I Meta-Quantoren: Isabelles Eigenvariablen

Vx.P(x)

∀x.P(x) allI !!x. P x ==> ALL x. P x

I Beliebiginstantiierbar

(12)

Rückwärtsbeweis

I Ausgehend vonBeweiszielψ

I Beweiszustandist[[φ1, . . . , φn]] =⇒ψ

I φ1, . . . , φn:subgoals

I Beweisverfahren:Resolution,Termersetzung,Beweissuche

I Beweisendet wenn n=0

(13)

HOL

I HOL: getypte Logik höherer Ordnung (nach Church und Gordon)

I “ HOL = Funktionale Programmierung + Logik ”

I In Isabelle:

I Datentypdefinition

I Funktionsdefinitionen

I Beispiel: einfacheListen selbstgemacht

(14)

Zusammenfassung

I Isabelleist ein generischer,interaktiver Theorembeweiser

I HOL = FP + Logik

I Beweismethoden:

I Regelkomposition

I Induktion

I Termersetzung

I Nächste Wochen: Systematische Einführung

I Aussagenlogik Prädikatenlogik Logik höherer Stufe Isabelle/HOL

I Danach: Programmverifikation mit Isabelle

Referenzen

ÄHNLICHE DOKUMENTE

I Damit: Gültige (“wahre”) Aussagen berechnen..

Map ’a ~=> ’b partielle Abbildungen (’a => ’b option).

I Gelingt oder schlägt fehl: keine neuen Subgoals. I Klassischer

Nur mit Papier und Bleistift 1 bewaffnet beweisen Sie bitte folgende Theoreme mit dem aus der Vorlesung bekannten und beliebten Kalkül des natürlichen Schließens:. (1) (A −→ B ∧

In besagter axiomatischer Listentheorie definieren Sie eine Funktion map mit der üblichen Signatur: die Argumente sind eine Funktion vom Typ ’a => b und eine ’a list, das

I Jede Logik, die Peano-Arithmetik formalisiert, ist entweder inkonsistent oder unvollst¨ andig. I G¨

I Logik h¨ oherer Stufe (HOL): alle endlichen Quantoren. I Keine wesentlichen Vorteile von

Map ’a ~=> ’b partielle Abbildungen (’a => ’b option). ∗ in