Reproduce “Formal Verification of Legal Contracts: A Translation-based Approach (Extended Version)” on OpenResearch
Turn your favorite coding agents into research agents that review literature, develop hypotheses, and run experiments.
Universal app for Apple silicon and Intel. Requires macOS 11 or later.
About this paper
Reiner Hähnle, Cosimo Laneve, Adele Veschetti
A translation-based methodology from TU Darmstadt and University of Bologna enables automated formal verification of legal contracts written in Stipula by converting them into JML-annotated Java for the KeY deductive system. This approach fully automatically verified functional correctness, loop termination, and time-guard soundness for four contracts, with verification times ranging from 0.7 to 2.1 seconds.
Key insights
- Formal verification of legal contracts can be achieved with a high degree of automation by translating a domain-specific language (Stipula) into a general-purpose programming language (Java) annotated with a formal specification language (JML).
- The formal operational semantics and automaton-based structure of Stipula enable a systematic, sound translation, demonstrating that 'verifiable by design' is a practical goal for legal contract languages.
- Critical properties of legal contracts, such as asset conservation, state transitions, loop termination, and time-guard soundness, can be automatically proven through this translation-based approach, leveraging symbolic execution capabilities of deductive verifiers.
Summary by alphaXiv.
Tip: change arxiv.org to autoarxiv.org in any arXiv abstract link to open the paper here.