Extending SMT Solvers to Higher-Order Logic

@inproceedings{Barbosa2019ExtendingSS,
  title={Extending SMT Solvers to Higher-Order Logic},
  author={Haniel Barbosa and Andrew Reynolds and Daniel El Ouraoui and Cesare Tinelli and Clark W. Barrett},
  booktitle={CADE},
  year={2019}
}
SMT solvers have throughout the years been able to cope with increasingly expressive formulas, from ground logics to full first-order logic (FOL). In contrast, the extension of SMT solvers to higher-order logic (HOL) is mostly unexplored. We propose a pragmatic extension for SMT solvers to support HOL reasoning natively without compromising performance on FOL reasoning, thus leveraging the extensive research and implementation efforts dedicated to efficient SMT solving. We show how to… 
Extensional Higher-Order Paramodulation in Leo-III
TLDR
Leo-III is an automated theorem prover for extensional type theory with Henkin semantics and choice that supports reasoning in polymorphic first-order and higher-order logic, in all normal quantified modal logics, as well as in different deontic logics.
How to Safely Use Extensionality in Liquid Haskell
TLDR
A new approach to equality in Liquid Haskell is developed: a propositional equality in a library the authors call PEq, which avoids the unsoundness while still proving useful equalities at higher types; its use in several case studies is demonstrated.
Functional Extensionality for Refinement Types
TLDR
A new approach to equality in Liquid Haskell is developed: a propositional equality in a library the authors call PEq, which avoids the unsoundness while still proving useful equalities at higher types; its use in several case studies is demonstrated.
HoCHC: A Refutationally Complete and Semantically Invariant System of Higher-order Logic Modulo Theories
  • C. Ong, Dominik Wagner
  • Mathematics
    2019 34th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)
  • 2019
TLDR
This work presents a simple resolution proof system for higher-order constrained Horn clauses (HoCHC) and proves its soundness and refutational completeness w.r.t. both standard and Henkin semantics.
Extending a brainiac prover to lambda-free higher-order logic
TLDR
This work proposes to start with the state-of-the-art superposition prover E and gradually enrich it with higher-order features, explaining how to extend the prover’s data structures, algorithms, and heuristics to higher- order logic, a formalism that supports partial application and applied variables.
Making Higher-Order Superposition Work
TLDR
Techniques that address issues such as infinitely branching inference rules, new possibilities such as reasoning about formulas, and the need to curb the explosion of specific higher-order rules are described and extensively evaluated in the Zipperposition theorem prover.
Boolean Reasoning in a Higher-Order Superposition Prover
We present a pragmatic approach to extending a Boolean-free higher-order superposition calculus to support Boolean reasoning. Our approach extends inference rules that have been used only in a
Proceedings of the Second International Workshop on Automated Reasoning: Challenges, Applications, Directions, Exemplary Achievements
TLDR
The contributions to automated reasoning made in the context of the project Matryoshka, funded for five years by the European Research Council, are presented, whose general aim is to bridge the gap between ATP and ITP by strengthening higher-order proof automation.
Superposition with Lambdas
TLDR
A superposition calculus for a clausal fragment of extensional polymorphic higher-order logic that includes anonymous functions but excludes Booleans is designed and implemented in the Zipperposition prover and evaluated on TPTP and Isabelle benchmarks.
Summing Up Smart Transitions
TLDR
A generalization of first-order logic which can express the unbounded sum of balances is presented and the decidablity of one of the extensions and the undecidability of a slightly richer one are proved.
...
...

References

SHOWING 1-10 OF 75 REFERENCES
Extending SMT solvers to Higher-Order Logic ( Technical Report )
TLDR
This work proposes a pragmatic extension of SMT solvers to natively support higher-order reasoning without compromising their performance on FOL problems, thus leveraging the extensive research and implementation efforts dedicated to efficient FOL solving.
Language and Proofs for Higher-Order SMT (Work in Progress)
TLDR
An extension of the SMT-LIB language, the standard input format of SMT solvers, to handle higher-order constructs and how to augment the proof format of theSMT solver veriT to accommodate these new constructs and the solving techniques they require is discussed.
Finite Model Finding in SMT
TLDR
A novel finite model finding method that reduces limitations in the case of quantifiers ranging over free sorts in SMT by not relying on the introduction of domain constants for the free sorts and by being fully integrated into the general architecture used by most SMT solvers.
Quantifier Instantiation Techniques for Finite Model Finding in SMT
TLDR
This work proposes instantiation strategies to identify and consider only a selection of ground instances that suffices to determine the satisfiability of the input formula, and examines heuristic quantifier instantiation techniques such as E-matching for the purpose of accelerating the search.
Congruence Closure with Free Variables
TLDR
It is shown that the major instantiation techniques in SMT solving can be cast in a unifying framework for handling quantified formulas with equality and uninterpreted functions, and a sound and complete calculus is introduced to solve this problem in practice.
Revisiting Enumerative Instantiation
TLDR
This paper revisits enumerative instantiation, a technique that considers instantiations based on exhaustive enumeration of ground terms, and presents a stronger Herbrand Theorem, better suited as a basis for the instantiation loop used in SMT solvers.
Efficient E-Matching for SMT Solvers
TLDR
An index that works on E-graphs is introduced, called E-matching code treesthat combine features of substitution and code trees, used in saturation based theorem provers and shows substantial performance improvements over existing state-of-the-art SMT solvers.
Complete Instantiation for Quantified Formulas in Satisfiabiliby Modulo Theories
TLDR
This work presents several decidable fragments of first order logic modulo theories, and shows how to construct models for satisfiable formulas in these fragments.
Set of Support for Higher-Order Reasoning
TLDR
Limiting how axioms introduced during translation can improve proof search with higher-order problems is shown and heuristics based on the set-of-support strategy for minimising the effects are introduced.
Extending a brainiac prover to lambda-free higher-order logic
TLDR
This work proposes to start with the state-of-the-art superposition prover E and gradually enrich it with higher-order features, explaining how to extend the prover’s data structures, algorithms, and heuristics to higher- order logic, a formalism that supports partial application and applied variables.
...
...