Skip to Main content Skip to Navigation

Extending Superposition with Integer Arithmetic, Structural Induction, and Beyond

Abstract : The central concept of theorem designates a claim backed by an irrefutable argument that follows formal rules, called a proof. Proving theorems is very useful in both Computer Science and Mathematics. However, many theorems are too boring and tedious for human experts (for instance, theorems generated to ensure that software abides by some specification); hence the decades-long effort in automated theorem proving, the field dedicated to writing programs that find proofs. Superposition is a very competitive technique for proving theorems in the language of first-order logic with equality over uninterpreted functions (in a nutshell, being able to replace equals by equals in any expression). Even then, Superposition falls short for many problems that require theory-specific reasoning or inductive proofs. In this thesis, we aim at developing new extensions to Superposition. Our claim is that Superposition lends itself very well to being grafted additional inference rules and reasoning mechanisms. First, we develop a Superposition-based calculus for integer linear arithmetic. Linear Integer Arithmetic is a widely studied and used theory in other areas of automated deduction, in particular SMT (Satisfiability Modulo Theory). This theory might also prove useful for problems that have a discrete, totally ordered structure, such as temporal logic, and that might be encoded efficiently into first-order logic with arithmetic. Then, we define an extension of Superposition that is able to reason by structural induction (natural numbers, lists, binary trees, etc.) Inductive reasoning is pervasive in Mathematics and Computer Science but its integration into general purpose first-order provers has not been studied much. Last, we present a theory detection system that, given a signature-agnostic description of algebraic theories, detects their presence in sets of formulas. This system is akin to the way a mathematician who studies a new object discovers that this object belong to some known structure, such as groups, allowing her to leverage the large body of knowledge on this specific theory. A large implementation effort was also carried out in this thesis; all the contributions presented above have been implemented in a library and a theorem prover, Zipperposition, both written in OCaml and released under a free software license.
Document type :
Complete list of metadata

Cited literature [78 references]  Display  Hide  Download
Contributor : Simon Cruanes Connect in order to contact the contributor
Submitted on : Tuesday, November 3, 2015 - 3:23:37 PM
Last modification on : Friday, January 21, 2022 - 3:15:59 AM
Long-term archiving on: : Thursday, February 4, 2016 - 10:44:58 AM


Distributed under a Creative Commons Attribution - NoDerivatives 4.0 International License


  • HAL Id : tel-01223502, version 1



Simon Cruanes. Extending Superposition with Integer Arithmetic, Structural Induction, and Beyond. Logic in Computer Science [cs.LO]. École polytechnique, 2015. English. ⟨tel-01223502⟩



Les métriques sont temporairement indisponibles