Isabelle (Probehelfer)

Der Lehrsatz von Isabelle prover ist ein interaktiver Lehrsatz prover, Nachfolger des Lehrsatzes von Higher Order Logic (HOL) prover. Es ist ein LCF-artiger Lehrsatz prover (geschrieben in Normalem ML), so basiert es auf einer kleinen logischen logischen versichernden Kerngenauigkeit. Isabelle ist allgemein: Es stellt eine Meta-Logik zur Verfügung (eine schwache Typ-Theorie), der verwendet wird, um Gegenstand-Logik wie Logik der Ersten Ordnung (FOL), Höherwertige Logik (HOL) oder Zermelo-Fraenkel Mengenlehre (ZFC) zu verschlüsseln. Die Hauptprobemethode von Isabelle ist eine höherwertige Version der Entschlossenheit, die auf der höherwertigen Vereinigung gestützt ist. Obwohl interaktiv, zeigt Isabelle auch effiziente automatische vernünftig urteilende Werkzeuge, wie ein Begriff-Neuschreiben-Motor und Gemälde prover, sowie verschiedene Entscheidungsverfahren. Isabelle ist verwendet worden, um zahlreiche Lehrsätze von der Mathematik und Informatik, wie der Vollständigkeitslehrsatz von Gödel, der Lehrsatz von Gödel über die Konsistenz des Axioms der Wahl, der Primzahl-Lehrsatz, die Genauigkeit von Sicherheitsprotokollen und die Eigenschaften der Programmiersprache-Semantik zu formalisieren. Der Lehrsatz von Isabelle prover ist kostenlose Software, die laut der revidierten BSD-Lizenz veröffentlicht ist.

Beispiel-Beweis

Probesprachisar von Isabelle hat zum Ziel, Beweise zu unterstützen, die sowohl menschlich-lesbar sind als auch Maschinen-Checkable. Zum Beispiel kann der Beweis, dass die Quadratwurzel zwei nicht vernünftig ist, wie folgt geschrieben werden.

sqrt2_not_rational:

M n:: nat

n_nonzero: sqrt_rat:

lowest_terms:..

n_nonzero sqrt_rat simp

(Auto simp trägt bei: power2_eq_square)

simp

simp

eq:..

..

two_is_prime dvd_m: (Herrschen Sie über prime_dvd_power_two)

k..

eq (Auto tragen simp bei: power2_eq_square mult_ac)

simp ..

two_is_prime (herrschen über prime_dvd_power_two)

dvd_m (herrschen über gcd_greatest)

lowest_terms simp

Falscher arith

Anwendungen

Isabelle ist verwendet worden, um formellen Methoden für die Spezifizierung, Entwicklung und Überprüfung der Software und Hardware-Systeme zu helfen.

  • Der Gebrauch von Isabelle durch Hewlett Packard im Design des HP 9000 Linie des Startbahn-Busses von Servern, zur Entdeckung mehrerer Programmfehler führend, die durch die vorherige Prüfung und Simulation ungefangen sind.
  • 2009 hat das L4.verified-Projekt an NICTA den ersten formellen Beweis der funktionellen Genauigkeit eines Mehrzweckbetriebssystemkerns erzeugt: Der seL4 (sicher hat L4 eingebettet), Mikrokern. Der Beweis wird gebaut und Isabelle/HOL eingecheckt und umfasst mehr als 200,000 Linien der Probeschrift, um 8,700 Linien von C und 600 Linien des Monteurs nachzuprüfen. Der Überprüfungsdeckel-Code, das Design, und die Durchführung und der Hauptlehrsatz stellen fest, dass der C-Code richtig die formelle Spezifizierung des Kerns durchführt. Der Beweis hat 160 Programmfehler im C Code des seL4 Kerns und ungefähr 150 Probleme in jedem des Designs und der Spezifizierung aufgedeckt.
  • Der Programmiersprache-Leichtgewichtler Java wurde mit dem Typ gesund in Isabelle bewiesen.

Larry Paulson hält eine Liste von Forschungsprojekten diesen Gebrauch Isabelle.

Referenzen

  • Lawrence C. Paulson: Das Fundament eines allgemeinen Lehrsatzes prover. Zeitschrift des Automatisierten Denkens, des Bands 5, der Ausgabe 3 (September 1989), Seiten: 363-397, ISSN 0168-7433
  • Lawrence C. Paulson: Das Bedienungshandbuch von Isabelle
  • M. A. Ozols, K. A. Eastaughffe und A. Cant. "TAUBE: Design Orientierte Überprüfung und Einschätzung". Verhandlungen von AMAST 97, M. Johnson, Redakteur, Sydney, Australien. Vortrag-Zeichen in der Informatik (LNCS) Vol. 1349, Springer Verlag, 1997.
  • Tobias Nipkow, Lawrence C. Paulson, Markus Wenzel: Isabelle/HOL - Ein Probehelfer für die Höherwertige Logik

Links


Lehrsatz prover / Der Pfandleiher
Impressum & Datenschutz