← Neueste Arbeiten
🤖 AI

Encoding Event-B Proof Rules in Prolog: An Interactive Sequent Prover for ProB

Dieses Paper präsentiert einen interaktiven Sequent-Beweiser für Event-B, der in Prolog implementiert und in das ProB-Tool integriert wurde, was eine kompaktere und wartbarere Alternative zu vorherigen Java-Implementierungen bietet und gleichzeitig die Visualisierung von Beweisbäumen, Rodin-Interoperabilität sowie einen erhöhten pädagogischen Wert durch direkte Kontrolle der Studierenden über die Beweiskonstruktion ermöglicht.

Ursprüngliche Autoren: Katharina Engels, Jan Gruteser, Michael Leuschel

Veröffentlicht 2026-07-24
📖 4 Min. Lesezeit☕ Kaffeepausen-Lektüre

Ursprüngliche Autoren: Katharina Engels, Jan Gruteser, Michael Leuschel

Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen

Stellen Sie sich vor, Sie würden einen Wolkenkratzer bauen, aber anstelle von Ziegeln und Stahl verwenden Sie reine Logik. In der Welt der Informatik gibt es eine spezielle Methode namens Event-B, die verwendet wird, um Systeme zu entwerfen, die perfekt funktionieren müssen, wie etwa die Software, die einen Mars-Rover steuert oder ein Kernkraftwerk. Da diese Systeme so kritisch sind, können Ingenieure nicht einfach raten, ob sie sicher sind; sie müssen es mathematisch beweisen. Dieser Beweisprozess ist wie das Lösen eines massiven, vielschichtigen Logikrätsels. Man beginnt mit einem Satz bekannter Fakten (Hypothesen) und einem Ziel, das man erreichen muss. Um dorthin zu gelangen, muss man eine spezifische Menge an „Zügen“ oder Regeln anwenden, indem man Schritt für Schritt den Ausgangspunkt in das Ziel transformiert.

Das Problem ist, dass die Werkzeuge, die normalerweise verwendet werden, um diese Rätsel zu lösen, wie magische Blackboxen funktionieren. Sie können das Rätsel für Sie lösen, aber sie tun es so schnell und in einem so großen Sprung, dass man nicht sehen kann, wie sie es gemacht haben. Es ist, als würde man beobachten, wie ein Magier ein Kaninchen aus einem Hut zieht, aber man sieht niemals den Trick dahamen. Dies macht es für Studenten sehr schwer, die Tricks zu lernen, und für Experten, die Arbeit zu überprüfen, falls etwas schiefgeht. Die Forscher in dieser Arbeit wollten den Vorhang zurückziehen. Sie fragten: „Was wäre, wenn wir jeden einzelnen Zug sehen, das Rätsel selbst kontrollieren und sogar dem Computer beibringen könnten, mitzuspielen?“

Die Autoren, ein Team der Heinrich-Heine-Universität Düsseldorf, haben ein neues Werkzeug entwickelt, das diese unsichtbaren Logikrätsel in ein sichtbares, interaktives Spiel verwandelt. Sie haben über 600 komplexe mathematische Regeln, die definieren, wie Event-B-Beweise funktionieren, genommen und sie in einer Sprache namens Prolog neu geschrieben. Denken Sie an Prolog als eine Sprache, die speziell dafür entwickelt wurde, Beziehungen zu beschreiben und Logikrätsel zu lösen – ähnlich wie das Notizbuch eines Detektivs, das Hinweise automatisch miteinander verknüpft. Durch die Übersetzung der Regeln in Prolog haben sie einen „Sequent Prover“ geschaffen, der wie ein transparentes Brettspiel fungiert.

Anstelle einer Blackbox zeigt dieses neue Werkzeug den gesamten „Beweisbaum“ – eine verzweigte Karte jedes möglichen Zuges, den man machen könnte. Sie können auf eine bestimmte Regel klicken, um sie anzuwenden, und dabei zusehen, wie sich der Zustand des Rätsels direkt vor Ihren Augen verändert. Wenn Sie stecken bleiben, können Sie zurückgehen (backtracken), einen anderen Pfad versuchen oder sogar den Computer versuchen lassen, eine kurze Lösung für Sie zu finden, indem er eine einfache Suchstrategie verwendet. Die Arbeit zeigt, dass diese Prolog-Version nicht nur leichter zu verstehen, sondern auch wesentlich kompakter ist als die alte Version, die in Java geschrieben wurde und 20 Jahre lang entwickelt wurde. Der neue Prolog-Code ist etwa zehnmal kleiner (etwa 4.200 Zeilen Code im Vergleich zu über 50.000 im alten System) und deckt sogar mehr Regeln ab.

Das Team hat auch eine Brücke zur professionellen Welt gebaut. Sie haben herausgefunden, wie man die in ihrem neuen Werkzeug erstellten Beweise nimmt und sie an die branchenübliche Software (RODIN) sendet, um sie zu verifizieren. Es ist, als würde man ein Rätsel in einer unterhaltsamen Lern-App lösen und dann seine Lösung an die Software eines professionellen Architekten exportieren, um eine offizielle Gütesiegel zu erhalten. Sie haben dies mit einem Modell eines Mars-Rovers demonstriert und damit bewiesen, dass ihr Werkzeug echte Sicherheitsprüfungen der realen Welt bewältigen kann.

Obwohl das Werkzeug derzeit großartig für den Unterricht und die manuelle Exploration ist, geben die Autoren zu, dass ihr automatischer „Roboter“-Solver noch etwas unbeholfen ist. Er verwendet eine einfache „Versuch alles“-Strategie (genannt Iterative Vertiefung/Iterative Deepening) und ist noch nicht so schnell wie die schweren industriellen Prover. Sie deuten jedoch an, dass aufgrund der Stärke von Prolog beim Suchen die reale Chance besteht, dass ihr Werkzeug mit mehr Feinabstimmung schließlich zu einem superschnellen automatischen Prover werden könnte. Für den Moment ist der größte Gewinn, dass Studenten und Lehrer den magischen Trick endlich Schritt für Schritt sehen können und so eine verwirrende Wand aus Mathematik in eine klare, interaktive Reise der Entdeckung verwandeln.

Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?

Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.

Digest testen →