Polyregular Model Checking
By: Aliaume Lopez, Rafał Stefański
Potential Business Impact:
Checks computer programs for mistakes automatically.
We introduce a high-level language with Python-like syntax for string-to-string, polyregular, first-order definable transductions. This language features function calls, boolean variables, and nested for-loops. We devise and implement a complete decision procedure for the verification of such programs against a first-order specification. The decision procedure reduces the verification problem to the decidable first-order theory of finite words (extensively studied in automata theory), which we discharge using either complete tools specific to this theory (MONA), or to general-purpose SMT solvers (Z3, CVC5).
Similar Papers
PolyVer: A Compositional Approach for Polyglot System Modeling and Verification
Programming Languages
Checks code written in different languages at once.
Contract Based Program Models for Software Model Checking
Formal Languages and Automata Theory
Makes sure computer programs work safely.
Proof-Producing Translation of Functional Programs into a Time \& Space Reasonable Model
Logic in Computer Science
Builds computer programs from simpler instructions.