## Functions-as-constructors higher-order unification.(English)Zbl 1387.03008

Kesner, Delia (ed.) et al., 1st international conference on formal structures for computation and deduction, FSCD 2016, Porto, Portugal, June 22–26, 2016. Proceedings. Wadern: Schloss Dagstuhl – Leibniz Zentrum für Informatik (ISBN 978-3-95977-010-1). LIPIcs – Leibniz International Proceedings in Informatics 52, Article 26, 17 p. (2016).
Summary: Unification is a central operation in the construction of a range of computational logic systems based on first-order and higher-order logics. First-order unification has a number of properties that dominates the way it is incorporated within such systems. In particular, first-order unification is decidable, unary, and can be performed on untyped term structures. None of these three properties hold for full higher-order unification: unification is undecidable, unifiers can be incomparable, and term-level typing can dominate the search for unifiers. The so-called pattern subset of higher-order unification was designed to be a small extension to first-order unification that respected the basic laws governing $$\lambda$$-binding (the equalities of $$\alpha$$, $$\beta$$, and $$\eta$$-conversion) but which also satisfied those three properties. While the pattern fragment of higher-order unification has been popular in various implemented systems and in various theoretical considerations, it is too weak for a number of applications. In this paper, we define an extension of pattern unification that is motivated by some existing applications and which satisfies these three properties. The main idea behind this extension is that the arguments to a higher-order, free variable can be more than just distinct bound variables: they can also be terms constructed from (sufficient numbers of) such variables using term constructors and where no argument is a subterm of any other argument. We show that this extension to pattern unification satisfies the three properties mentioned above.
For the entire collection see [Zbl 1351.68020].

### MSC:

 03B35 Mechanization of proofs and logical operations 68Q42 Grammars and rewriting systems 68T15 Theorem proving (deduction, resolution, etc.) (MSC2010)

### Keywords:

higher-order unification; pattern unification

### Software:

Abella; Beluga; Leo; THF0; Teyjus; Leo-III; Agda; Twelf; Minlog; Satallax; Isabelle/HOL
Full Text: