Serveur d'exploration sur la recherche en informatique en Lorraine

Attention, ce site est en cours de développement !
Attention, site généré par des moyens informatiques à partir de corpus bruts.
Les informations ne sont donc pas validées.

Higher Order Unification via Explicit Substitutions

Identifieur interne : 001C40 ( Istex/Curation ); précédent : 001C39; suivant : 001C41

Higher Order Unification via Explicit Substitutions

Auteurs : Gilles Dowek [France] ; Thérèse Hardin [France] ; Claude Kirchner [France]

Source :

RBID : ISTEX:7B2826D7092507D03673198374EB4AB382108B6A

English descriptors

Abstract

Abstract: 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 replacing substitution by grafting, but this replacement is not straightforward as it raises two major problems. First, some unification problems have solutions with grafting but no solution with substitution. Then equational unification algorithms rest upon the fact that grafting and reduction commute. But grafting and βη-reduction do not commute in λ-calculus and reducing an equation may change the set of its solutions. This difficulty comes from the interaction between the substitutions initiated by βη-reduction and the ones initiated by the unification process. Two kinds of variables are involved: those of βη-conversion and those of unification. So, we need to set up a calculus which distinguishes between these two kinds of variables and such that reduction and grafting commute. For this purpose, the application of a substitution of a reduction variable to a unification one must be delayed until this variable is instantiated. Such a separation and delay are provided by a calculus of explicit substitutions. Unification in such a calculus can be performed by well-known algorithms such as narrowing, but we present a specialised algorithm for greater efficiency. At last we show how to relate unification in λ-calculus and in a calculus with explicit substitutions. Thus, we come up with a new higher order unification algorithm which eliminates some burdens of the previous algorithms, in particular the functional handling of scopes. Huet's algorithm can be seen as a specific strategy for our algorithm, since each of its steps can be decomposed into elementary ones, leading to a more atomic description of the unification process. Also, solved forms in λ-calculus can easily be computed from solved forms in λσ-calculus.

Url:
DOI: 10.1006/inco.1999.2837

Links toward previous steps (curation, corpus...)


Links to Exploration step

ISTEX:7B2826D7092507D03673198374EB4AB382108B6A

Le document en format XML

<record>
<TEI wicri:istexFullTextTei="biblStruct">
<teiHeader>
<fileDesc>
<titleStmt>
<title xml:lang="en">Higher Order Unification via Explicit Substitutions</title>
<author>
<name sortKey="Dowek, Gilles" sort="Dowek, Gilles" uniqKey="Dowek G" first="Gilles" last="Dowek">Gilles Dowek</name>
<affiliation wicri:level="1">
<mods:affiliation>INRIA-Rocquencourt, B.P. 105, 78153, Le Chesnay Cedex, France f1 E-mail: Gilles.Dowek@inria.frf1</mods:affiliation>
<country wicri:rule="url">France</country>
<wicri:regionArea>INRIA-Rocquencourt, B.P. 105, 78153, Le Chesnay Cedex</wicri:regionArea>
</affiliation>
</author>
<author>
<name sortKey="Hardin, Therese" sort="Hardin, Therese" uniqKey="Hardin T" first="Thérèse" last="Hardin">Thérèse Hardin</name>
<affiliation wicri:level="1">
<mods:affiliation>LIP6 and INRIA-Rocquencourt, Université Paris 6, 4 Place Jussieu, 75252, Paris Cedex 05, France f2 E-mail: Therese.Hardin@inria.frf2</mods:affiliation>
<country wicri:rule="url">France</country>
<wicri:regionArea>LIP6 and INRIA-Rocquencourt, Université Paris 6, 4 Place Jussieu, 75252, Paris Cedex 05</wicri:regionArea>
</affiliation>
</author>
<author>
<name sortKey="Kirchner, Claude" sort="Kirchner, Claude" uniqKey="Kirchner C" first="Claude" last="Kirchner">Claude Kirchner</name>
<affiliation wicri:level="1">
<mods:affiliation>LORIA and INRIA, 615, rue du Jardin Botanique, 54600, Villers-lès-Nancy Cedex, France f3 E-mail: Claude.Kirchner@loria.frf3</mods:affiliation>
<country wicri:rule="url">France</country>
<wicri:regionArea>LORIA and INRIA, 615, rue du Jardin Botanique, 54600, Villers-lès-Nancy Cedex</wicri:regionArea>
</affiliation>
</author>
</titleStmt>
<publicationStmt>
<idno type="wicri:source">ISTEX</idno>
<idno type="RBID">ISTEX:7B2826D7092507D03673198374EB4AB382108B6A</idno>
<date when="2000" year="2000">2000</date>
<idno type="doi">10.1006/inco.1999.2837</idno>
<idno type="url">https://api.istex.fr/ark:/67375/6H6-RN1S47RB-D/fulltext.pdf</idno>
<idno type="wicri:Area/Istex/Corpus">001C61</idno>
<idno type="wicri:explorRef" wicri:stream="Istex" wicri:step="Corpus" wicri:corpus="ISTEX">001C61</idno>
<idno type="wicri:Area/Istex/Curation">001C40</idno>
</publicationStmt>
<sourceDesc>
<biblStruct>
<analytic>
<title level="a" type="main" xml:lang="en">Higher Order Unification via Explicit Substitutions</title>
<author>
<name sortKey="Dowek, Gilles" sort="Dowek, Gilles" uniqKey="Dowek G" first="Gilles" last="Dowek">Gilles Dowek</name>
<affiliation wicri:level="1">
<mods:affiliation>INRIA-Rocquencourt, B.P. 105, 78153, Le Chesnay Cedex, France f1 E-mail: Gilles.Dowek@inria.frf1</mods:affiliation>
<country wicri:rule="url">France</country>
<wicri:regionArea>INRIA-Rocquencourt, B.P. 105, 78153, Le Chesnay Cedex</wicri:regionArea>
</affiliation>
</author>
<author>
<name sortKey="Hardin, Therese" sort="Hardin, Therese" uniqKey="Hardin T" first="Thérèse" last="Hardin">Thérèse Hardin</name>
<affiliation wicri:level="1">
<mods:affiliation>LIP6 and INRIA-Rocquencourt, Université Paris 6, 4 Place Jussieu, 75252, Paris Cedex 05, France f2 E-mail: Therese.Hardin@inria.frf2</mods:affiliation>
<country wicri:rule="url">France</country>
<wicri:regionArea>LIP6 and INRIA-Rocquencourt, Université Paris 6, 4 Place Jussieu, 75252, Paris Cedex 05</wicri:regionArea>
</affiliation>
</author>
<author>
<name sortKey="Kirchner, Claude" sort="Kirchner, Claude" uniqKey="Kirchner C" first="Claude" last="Kirchner">Claude Kirchner</name>
<affiliation wicri:level="1">
<mods:affiliation>LORIA and INRIA, 615, rue du Jardin Botanique, 54600, Villers-lès-Nancy Cedex, France f3 E-mail: Claude.Kirchner@loria.frf3</mods:affiliation>
<country wicri:rule="url">France</country>
<wicri:regionArea>LORIA and INRIA, 615, rue du Jardin Botanique, 54600, Villers-lès-Nancy Cedex</wicri:regionArea>
</affiliation>
</author>
</analytic>
<monogr></monogr>
<series>
<title level="j">Information and Computation</title>
<title level="j" type="abbrev">YINCO</title>
<idno type="ISSN">0890-5401</idno>
<imprint>
<publisher>ELSEVIER</publisher>
<date type="published" when="2000">2000</date>
<biblScope unit="volume">157</biblScope>
<biblScope unit="issue">1–2</biblScope>
<biblScope unit="page" from="183">183</biblScope>
<biblScope unit="page" to="235">235</biblScope>
</imprint>
<idno type="ISSN">0890-5401</idno>
</series>
</biblStruct>
</sourceDesc>
<seriesStmt>
<idno type="ISSN">0890-5401</idno>
</seriesStmt>
</fileDesc>
<profileDesc>
<textClass>
<keywords scheme="KwdEn" xml:lang="en">
<term>equational unification</term>
<term>explicit substitutions</term>
<term>higher order unification</term>
</keywords>
<keywords scheme="Teeft" xml:lang="en">
<term>Algebra</term>
<term>Algorithm</term>
<term>Atomic type</term>
<term>Axiom</term>
<term>Bruijn</term>
<term>Bruijn index</term>
<term>Bruijn indices</term>
<term>Bruijn notation</term>
<term>Calculus</term>
<term>Comput</term>
<term>Computer science</term>
<term>Confluent</term>
<term>Constraint</term>
<term>Disjunction</term>
<term>Dowek</term>
<term>Equational</term>
<term>Equational problem</term>
<term>Equational problems</term>
<term>Equational theory</term>
<term>Equational unification</term>
<term>Explicit substitutions</term>
<term>First order</term>
<term>First order equational unification</term>
<term>First order substitution</term>
<term>Free indices</term>
<term>Free variables</term>
<term>Hardin</term>
<term>Higher order unification</term>
<term>Higher order unification problem</term>
<term>Induction hypothesis</term>
<term>Initial problem</term>
<term>Instantiated</term>
<term>Kirchner</term>
<term>Lambda</term>
<term>Lecture notes</term>
<term>Metavariable</term>
<term>Metavariables</term>
<term>Normal form</term>
<term>Normal forms</term>
<term>Normal term</term>
<term>Normalise</term>
<term>Normalised</term>
<term>Normalising</term>
<term>Notation</term>
<term>Order unification</term>
<term>Precooking</term>
<term>Precooking translation</term>
<term>Referential</term>
<term>Scoping</term>
<term>Scoping constraints</term>
<term>Simultaneous substitution</term>
<term>Strategy unifreplace</term>
<term>Strict extension</term>
<term>Substitution</term>
<term>Substitution variables</term>
<term>System unif</term>
<term>Term variables</term>
<term>Transformation rules</term>
<term>Unif</term>
<term>Unification</term>
<term>Unification algorithm</term>
<term>Unification problem</term>
<term>Unification problems</term>
<term>Unification process</term>
<term>Unification variables</term>
<term>Unifier</term>
<term>Unifiers</term>
</keywords>
</textClass>
<langUsage>
<language ident="en">en</language>
</langUsage>
</profileDesc>
</teiHeader>
<front>
<div type="abstract" xml:lang="en">Abstract: 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 replacing substitution by grafting, but this replacement is not straightforward as it raises two major problems. First, some unification problems have solutions with grafting but no solution with substitution. Then equational unification algorithms rest upon the fact that grafting and reduction commute. But grafting and βη-reduction do not commute in λ-calculus and reducing an equation may change the set of its solutions. This difficulty comes from the interaction between the substitutions initiated by βη-reduction and the ones initiated by the unification process. Two kinds of variables are involved: those of βη-conversion and those of unification. So, we need to set up a calculus which distinguishes between these two kinds of variables and such that reduction and grafting commute. For this purpose, the application of a substitution of a reduction variable to a unification one must be delayed until this variable is instantiated. Such a separation and delay are provided by a calculus of explicit substitutions. Unification in such a calculus can be performed by well-known algorithms such as narrowing, but we present a specialised algorithm for greater efficiency. At last we show how to relate unification in λ-calculus and in a calculus with explicit substitutions. Thus, we come up with a new higher order unification algorithm which eliminates some burdens of the previous algorithms, in particular the functional handling of scopes. Huet's algorithm can be seen as a specific strategy for our algorithm, since each of its steps can be decomposed into elementary ones, leading to a more atomic description of the unification process. Also, solved forms in λ-calculus can easily be computed from solved forms in λσ-calculus.</div>
</front>
</TEI>
</record>

Pour manipuler ce document sous Unix (Dilib)

EXPLOR_STEP=$WICRI_ROOT/Wicri/Lorraine/explor/InforLorV4/Data/Istex/Curation
HfdSelect -h $EXPLOR_STEP/biblio.hfd -nk 001C40 | SxmlIndent | more

Ou

HfdSelect -h $EXPLOR_AREA/Data/Istex/Curation/biblio.hfd -nk 001C40 | SxmlIndent | more

Pour mettre un lien sur cette page dans le réseau Wicri

{{Explor lien
   |wiki=    Wicri/Lorraine
   |area=    InforLorV4
   |flux=    Istex
   |étape=   Curation
   |type=    RBID
   |clé=     ISTEX:7B2826D7092507D03673198374EB4AB382108B6A
   |texte=   Higher Order Unification via Explicit Substitutions
}}

Wicri

This area was generated with Dilib version V0.6.33.
Data generation: Mon Jun 10 21:56:28 2019. Site generation: Fri Feb 25 15:29:27 2022