English

Animated Logic: Correct Functional Conversion to Conjunctive Normal Form

Logic in Computer Science 2020-03-12 v1

Abstract

We present an approach to obtain formally verified implementations of classical Computational Logic algorithms. We choose the Why3 platform because it allows to implement functions in a style very close to the mathematical definitions, as well as it allows a high degree of automation in the verification process. As proof of concept, we present a mathematical definition of the algorithm to convert propositional formulae to conjunctive normal form, implementations in WhyML (the Why3 language, very similar to OCaml), and proofs of correctness of the implementations. We apply our proposal on two variants of this algorithm: one in direct-style and another with an explicit stack structure. Being both first-order versions, Why3 processes the proofs naturally.

Keywords

Cite

@article{arxiv.2003.05081,
  title  = {Animated Logic: Correct Functional Conversion to Conjunctive Normal Form},
  author = {Pedro Barroso and Mário Pereira and António Ravara},
  journal= {arXiv preprint arXiv:2003.05081},
  year   = {2020}
}

Comments

24 pages