ACSL (Ansi C Specification Language) ist eine mit speziellen Kommentaren versehene Spezifikation für C-Code, mit der C-Code formal verifiziert werden kann.
Ich habe es nicht untersucht, aber ich stelle mir vor, dass die in ACSL- Verifizierern verwendeten formalen Methoden Hoare Logic ähneln würden. Für reine funktionale Sprachen wie Haskell kann ich mir allerdings nicht vorstellen, welche Art von Formalismus für die formale Verifikation verwendet wird.
Hat jemand etwas Ähnliches wie ACSL gemacht , aber für eine reine Funktionssprache? Wenn nein, wurden Untersuchungen zur formalen Verifizierung mit spezifikationsbezogenen Anmerkungen für funktionale Sprachen durchgeführt?
Ich weiß, dass es abhängiges Tippen gibt, das von vielen Sprachen (Agda, Idris usw.) unterstützt wird, aber in Haskell ist das abhängige Tippen schwierig, ohne einige (unlesbare?) Typenzauberer auszuführen. In diesem Sinne, und da Haskell so viel bessere Bibliotheksunterstützung als Agda und Idris hat, glaube ich, dass ein solches System zur funktionalen formalen Verifizierung nützlich sein könnte, aber ich weiß nicht, ob dies erforscht wurde oder nicht.