A Survey on Theorem Provers in Formal Methods
arXiv:1912.03028
Abstract
Mechanical reasoning is a key area of research that lies at the crossroads of mathematical logic and artificial intelligence. The main aim to develop mechanical reasoning systems (also known as theorem provers) was to enable mathematicians to prove theorems by computer programs. However, these tools evolved with time and now play vital role in the modeling and reasoning about complex and large-scale systems, especially safety-critical systems. Technically, mathematical formalisms and automated reasoning based-approaches are employed to perform inferences and to generate proofs in theorem provers. In literature, there is a shortage of comprehensive documents that can provide proper guidance about the preferences of theorem provers with respect to their designs, performances, logical frameworks, strengths, differences and their application areas. In this work, more than 40 theorem provers are studied in detail and compared to present a comprehensive analysis and evaluation of these tools. Theorem provers are investigated based on various parameters, which includes: implementation architecture, logic and calculus used, library support, level of automation, programming paradigm, programming language, differences and application areas.
References in corpus (7)
- ACL2(ml): Machine-Learning for ACL2
- Automatic Unbounded Verification of Alloy Specifications with Prover9
- Automated Verification Of Role-Based Access Control Policies Constraints Using Prover9
- Formalized Lambek Calculus in Higher Order Logic (HOL4)
- The Three Gap Theorem (Steinhauss Conjecture)
- Formalising Type-Logical Grammars in Agda
- A Formalization of the Process Algebra CCS in HOL4