Encoding Monomorphic and Polymorphic Types
arXiv:1609.08916 · doi:10.2168/LMCS-12(4:13)2016
Abstract
Many automatic theorem provers are restricted to untyped logics, and existing translations from typed logics are bulky or unsound. Recent research proposes monotonicity as a means to remove some clutter when translating monomorphic to untyped first-order logic. Here we pursue this approach systematically, analysing formally a variety of encodings that further improve on efficiency while retaining soundness and completeness. We extend the approach to rank-1 polymorphism and present alternative schemes that lighten the translation of polymorphic symbols based on the novel notion of "cover". The new encodings are implemented in Isabelle/HOL as part of the Sledgehammer tool. We include informal proofs of soundness and correctness, and have formalised the monomorphic part of this work in Isabelle/HOL. Our evaluation finds the new encodings vastly superior to previous schemes.
LMCS-2014-1018
Cited by in corpus (7)
- Extensional Higher-Order Paramodulation in Leo-III
- Superposition with Lambdas
- General Automation in Coq through Modular Transformations
- Exploiting Instantiations from Paramodulation Proofs in Isabelle/HOL
- Superposition for Lambda-Free Higher-Order Logic
- Proceedings Seventh Workshop on Proof eXchange for Theorem Proving
- A Formalized General Theory of Syntax with Bindings