A Lean 4 Formalization of Euclidean Domain Algorithms from a 1986 Icon Experimentation Package
Dieses Paper präsentiert eine vollständige Lean 4-Formalisierung der 1986 ICON Euclidean Domain Algorithmen, wobei mathematische Definitionen, berechenbare Implementierungen und die Reproduktion von Legacy-Outputs getrennt werden, um maschinell verifizierte Beweise für Kernverfahren bereitzustellen und gleichzeitig die ursprünglichen Benchmark-Ergebnisse zu bewahren.
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 besitzen ein altes, staubiges Rezeptbuch aus dem Jahr 1986, geschrieben von einem Koch namens Lars. Dieses Buch enthält 14 spezifische, komplexe Rezepte zum „Kochen“ mit Zahlen – Dinge wie das Finden des größten gemeinsamen Teilers, das Lösen von Rätseln mit Resten oder das Manipulieren von Polynomen. Das ursprüngliche Buch wurde in einer Programmiersprache namens Icon geschrieben, die damals wie ein spezielles, eigenwilliges Küchenwerkzeug funktionierte, das zwar großartig war, aber heute von modernen Computern nur schwer verstanden wird.
Dieses Papier handelt von einem Team, das dieses Rezeptbuch von 1986 in Lean 4 übersetzt hat, eine moderne, extrem strenge Sprache, die zur Beweisführung mathematischer Wahrheiten verwendet wird. Aber sie haben nicht nur die Worte übersetzt; sie haben die gesamte Küche neu aufgebaut, um sicherzustellen, dass das Essen exakt denselben Geschmack hat, während sie gleichzeitig einen „Sicherheitsinspektor“ hinzugefügt haben, der prüft, ob die Mathematik tatsächlich korrekt ist.
Hier ist, wie sie es gemacht haben, unterteilt in einfache Konzepte:
1. Die Drei-Etagen-Küche
Die größte Herausforderung bestand darin, dass moderne mathematische Werkzeuge (genannt Mathlib) wie eine hochtechnisierte, automatisierte Küche sind. Sie sind perfekt und bewiesen, aber sie sind „nicht berechenbar“ – das heißt, man kann sie nicht wirklich ausführen, um das Ergebnis auf einem Bildschirm zu sehen; sie existieren nur als abstrakte Beweise. Das Icon-Paket von 1986 hingegen war ein „Ausführen-und-Ansehen“-System.
Um diese Lücke zu schließen, baute das Team eine Küche mit drei verschiedenen Etagen:
- Etage 1: Die Beweis-Etage (Der Sicherheitsinspektor). Diese Etage nutzt die modernen, hochtechnisierten Mathlib-Werkzeuge. Sie enthält die „Goldstandard“-Definitionen der Mathematik. Wenn Sie diese Etage fragen: „Ist dieses Rezept korrekt?“, gibt sie ein maschinell geprüfte „Ja“. Sie können hier jedoch nicht tatsächlich kochen.
- Etage 2: Die Berechenbare Etage (Die arbeitende Küche). Diese Etage ist eine eigens konstruierte, altmodische Küche, die das ursprüngliche Icon-System von 1986 exakt nachahmt. Sie verwendet rein schrittweise Anweisungen, die ein Computer tatsächlich ausführen kann, um Ergebnisse zu produzieren. Sie besitzt noch keinen „Sicherheitsinspektor“, aber sie produziert exakt dieselben Zahlen wie das ursprüngliche Buch von 1986.
- Etage 3: Die Bericht-Etage (Der Kellner). Diese Etage ist für die Formatierung der Ausgabe verantwortlich. Sie nimmt die Zahlen aus der arbeitenden Küche und druckt sie im exakt gleichen Schriftsatz, Abstand und Stil wie den Bericht von 1986 aus. Dies ermöglicht es dem Team, eine „Stichprobenkontrolle“ durchzuführen, um sicherzustellen, dass das neue System ein perfekter Klon des alten ist.
2. Der „Geist“ in der Maschine (Die Entdeckung des Tippfehlers)
Einer der spannendsten Teile des Projekts war ein historisches Rätsel. In dem Bericht von 1986 gab es eine Tabelle mit Ergebnissen für eine spezifische Berechnung (genannt PREM). Die gedruckte Tabelle zeigte eine massive, komplizierte Zahl als Antwort an.
Als die Autoren jedoch den originalen Icon-Code von 1986 auf einem modernen Computer ausführten, war die Antwort jedoch Null.
Das Papier erklärt, dass der Bericht von 1986 einen Tippfehler in der gedruckten Tabelle hatte. Die Mathematik war eigentlich einfach: Die Division eines Polynoms durch eine Konstante sollte immer einen Rest von Null hinterlassen. Das neue Lean-System hat diesen Fehler entdeckt, indem es das Rezept tatsächlich „gekocht“ und gesehen, dass das Ergebnis Null ist, und nicht die riesige Zahl, die in dem Buch stand. Sie haben einen 40 Jahre alten Dokumentationsfehler behoben, indem sie den Code ausführten.
3. Was sie tatsächlich bewiesen haben (und was nicht)
Die Autoren sind sehr ehrlich darüber, was „bewiesen“ ist und was nur „vertraut“ wird.
- Das „Bewiesene“ (Stufe A): Für grundlegende Ganzzahl-Arithmetik (wie das Finden des größten gemeinsamen Teilers zweier ganzer Zahlen) haben sie den modernen Sicherheitsinspektor verwendet. Sie haben eine maschinell geprüfte Garantie dafür, dass diese spezifischen Algorithmen mathematisch perfekt sind.
- Das „Vertrauenswürdige“ (Stufe B): Für die komplexeren, ausgefeilteren Rezepte (wie die Polynomdivision oder die Schnelle Fourier-Transformation) haben sie noch nicht bewiesen, dass diese mit dem modernen Sicherheitsinspektor übereinstimmen. Stattdessen verlassen sie sich auf Regressions-Tests. Das bedeutet, sie haben den neuen Code ausgeführt und die Ausgabe Zeile für Zeile mit der Ausgabe von 1986 verglichen. Da der Code von 1986 seit 40 Jahren funktioniert und der neue Code ihn perfekt ergänzt, „vertrauen“ sie darauf.
- Die „To-Do-Liste“ (Stufe C): Sie haben die „Kohärenz-Verpflichtungen“ identifiziert. Dies ist wie ein Versprechen an zukünftige Arbeiten: „Wir versprechen, dass wir irgendwann beweisen werden, dass die arbeitende Küche (Etage 2) exakt dieselben Ergebnisse liefert wie der Sicherheitsinspektor (Etage 1).“ Dies haben sie noch nicht getan, aber sie haben genau kartiert, wo der Beweis hin gehört.
4. Warum das wichtig ist
In diesem Papier geht es nicht darum, neue Mathematik zu erfinden oder diese Algorithmen für medizinische Diagnosen oder die Raumfahrt einzusetzen. Es geht um Bewahrung und Verifizierung.
- Bewahrung: Sie haben ein Stück Computergeschichte (das Icon-Paket von 1986) gerettet, indem sie es in eine Sprache übersetzt haben, die auch in 50 Jahren noch lesbar sein wird.
- Verifizierung: Sie haben gezeigt, dass selbst „alte“ Algorithmen streng geprüft werden können. Sie haben bewiesen, dass die Logik von 1986 Bestand hat, selbst wenn der ursprüngliche gedruckte Bericht einen Tippfehler enthielt.
- Transparenz: Sie haben klar gekennzeichnet, welche Teile des Codes mathematisch bewiesen sind und welche Teile lediglich darauf basieren, dass „wir es gegen das alte Buch geprüft haben und es übereinstimmt“.
Kurz gesagt, dieses Papier ist eine Renovierung einer Zeitkapsel. Sie haben ein altes, leicht verstaubtes Haus genommen, das Fundament mit modernem Stahl verstärkt (Lean-Beweise), die ursprüngliche Möbelanordnung beibehalten (die 1986er Algorithmen) und sogar einen Riss in der Wand gefunden (den Tippfehler), den vier Jahrzehnte lang niemand bemerkt hatte.
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.