Higher Order Unification via Explicit Substitutions
@article{Dowek2000HigherOU, title={Higher Order Unification via Explicit Substitutions}, author={Gilles Dowek and Th{\'e}r{\`e}se Hardin and Claude Kirchner}, journal={Inf. Comput.}, year={2000}, volume={157}, pages={183-235} }
Higher order unification is equational unification for βη-conversion. But it is not first order equational unification, as substitution has to avoid capture. Thus, the methods for equational unification (such as narrowing) built upon grafting (i.e., substitution without renaming) cannot be used for higher order unification, which needs specific algorithms. Our goal in this paper is to reduce higher order unification to first order equational unification in a suitable theory. This is achieved by…
24 Citations
Unification for \lambda -calculi Without Propagation Rules
- Computer ScienceICTAC
- 2016
The unification procedure was developed for the calculi with ES that belong to the paradigm known as “act at a distance”, and explicit substitutions are not propagated to the level of variables, as usual.
Restricted Combinatory Unification
- Computer ScienceCADE
- 2019
A restricted version of Dougherty's algorithm that is incomplete, terminating and does not require polymorphism is presented, including a novel use of a substitution tree as a filtering index for higher-order unification.
From Higher-Order to First-Order Rewriting
- Computer ScienceRTA
- 2001
A characterization of the class of higher-order rewriting systems which can be encoded by first- order rewriting modulo an empty theory (that is, Ɛ = θ), which includes of course the λ-calculus.
On the Computability of Relations on λ-Terms and Rice's Theorem - The Case of the Expansion Problem for Explicit Substitutions
- MathematicsLATIN
- 2014
The undecidability of the expansion problem for the λσ calculus is proved by using a version of Rice's theorem, which is more straightforward and general than the one based on Scott’s theorem.
The Suspension Notation for Lambda Terms and its Use in Metalanguage Implementations
- Computer ScienceElectron. Notes Theor. Comput. Sci.
- 2002
Nominal Techniques in Isabelle/HOL
- Computer ScienceCADE
- 2005
The main technical novelty of this work is that it is compatible with the axiom-of-choice (unlike earlier nominal logic work by Pitts et al); thus it was able to implement all results in Isabelle/HOL and use them to formalise the standard proofs for Church-Rosser and strong-normalisation.
Efficiency of a good but not linear nominal unification algorithm
- Computer ScienceEasyChair Preprints
- 2018
This work uses Martelli-Montanari style multi-equation reduction to generate name management problems from arbitrary unification terms that preserve names while using special representations of de Bruijn numbers to enable efficient name management.
Induction as Deduction Modulo
- Computer Science
- 2004
This paper extends slightly the original version of the deduction modulo framework and provides modularity properties for it and shows how this applies to a uniform understanding of the so called induction by rewriting method and how this relates directly to the general use of an induction principle.
References
SHOWING 1-10 OF 98 REFERENCES
Higher-order unification via explicit substitutions Extended Abstract
- Computer ScienceLICS 1995
- 1995
It is shown that higher-order uni- fication can be reduced to first-order equational unifi- cation in a suitable theory: the A-calculus of explicit substitutions, the kernel of deduction processes used in theorem provers and programming languages.
Higher-Order Equational Unification via Explicit Substitutions
- MathematicsALP/HOA
- 1997
A rule-based unification procedure in this combined theory is described and may be viewed as an extension of the one initially designed by G. Dowek, T. Hardin and C. Kirchner for performing unification of simply typed λ-terms in a first-order setting via the λσ-calculus of explicit substitutions.
Higher-Order Unification Revisited: Complete Sets of Transformations
- Computer ScienceJ. Symb. Comput.
- 1989
HOL-λσ: an intentional first-order expression of higher-order logic
- PhilosophyMathematical Structures in Computer Science
- 2001
It is shown that the Extended Narrowing and Resolution first-order proof-search method can be applied to this theory, and a step-by-step simulation of higher-order resolution is given, showing that the well-studied improvements of proof search for first- order logic could be reused at no cost for higher- order automated deduction.
Implementation of Higher-Order Unification Based on Calculus of Explicit Substitution
- Computer ScienceSOFSEM
- 1995
This paper presents several improvements of an algorithm for a higher-order unification based on the calculus of explicit substitutions that tries to postpone normalisation of λσ-terms as long as possible, i.e. until some information is necessary for the next step of the unification algorithm.
Unification via Explicit Substitutions: The Case of Higher-Order Patterns
- Computer ScienceJICSLP
- 1996
This paper investigates the case of higher-order patterns as introduced by Miller and sketches an efficient implementation of the abstract algorithm and its generalization to constraint simplification, which has yielded good experimental results at the core of a higher- order constraint logic programming language.
X.R.S : Explicit Reduction Systems - A First-Order Calculus for Higher-Order Calculi
- Mathematics, Computer ScienceCADE
- 1998
The σ⇑-calculus is used as the substitution mechanism of general higher-order systems which the authors will name Explicit Reduction Systems and general conditions to define a confluent XRS are given.
Dynamically Typed Computations for Order-Sorted Equational Presentations
- Computer ScienceJ. Symb. Comput.
- 1998
This work addresses the problem of computing in order-sorted algebras, with few restrictions on the allowed presentations, and introduces an operational semantics for G-algebra using rewrite systems over so-called decorated terms that has assertions concerning the sort membership of any subterm in its head node.