Lambda Unification

نویسنده

  • Michael Beeson
چکیده

We give a formal description of an algorithm for lambda unification. The input to the algorithm consists of two terms t and s of lambda logic. The purpose of the algorithm is to find (sometimes) a substitution σ such that tσ = sσ is provable in lambda logic. In general such unifiers are not unique. Lambda logic itself is defined in [2]. We prove some basic metatheorems about lambda unification, and compare it to the previously known notion of “higher order unification.” Examples of the use of lambda unification to find proofs by mathematical induction, using its implementation in the theorem prover Otter-lambda, are given in [4].

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Describing Lambda Terms in Context Unification

The constraint language for lambda structures (CLLS) is a description language for lambda terms. CLLS provides parallelism constraints to talk about the tree structure of lambda terms, and lambda binding constraints to specify variable binding. Parallelism constraints alone have the same expressiveness as context unification. In this paper, we show that lambda binding constraints can also be ex...

متن کامل

LPAR-05 Workshop: Empirically Successfull Automated Reasoning in Higher-Order Logic (ESHOL)

Otter-lambda is a theorem-prover based on an untyped logic with lambda calculus, called Lambda Logic. Otter-lambda is built on Otter, so it uses resolution proof search, supplemented by demodulation and paramodulation for equality reasoning, but it also uses a new algorithm, lambda unification, for instantiating variables for functions or predicates. The basic idea of a typed interpretation of ...

متن کامل

A Nominal Unification from a Higher-Order Perspective

Nominal logic is an extension of first-order logic with equality, name-binding, renaming via name-swapping and freshness of names. Contrarily to lambda-terms, in nominal terms, bindable names, called atoms, and instantiable variables are considered as distinct entities. Moreover, atoms are capturable by instantiations, breaking a fundamental principle of the lambda-calculus. Despite these diffe...

متن کامل

Unification Of Simply Typed Lambda-Terms As Logic Programming

The unification of simply typed λ-terms modulo the rules of ßand η-conversions is often called "higherorder" unification because of the possible presence of variables of functional type. This kind of unification is undecidable in general and if unifiers exist, most general unifiers may not exist. In this paper, we show that such unification problems can be coded as a query of the logic programm...

متن کامل

Nominal Narrowing

Nominal unification is a generalisation of first-order unification that takes α-equivalence into account. In this paper, we study nominal unification in the context of equational theories. We introduce nominal narrowing and design a general nominal E-unification procedure, which is sound and complete for a wide class of equational theories. We give examples of application. 1998 ACM Subject Clas...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2006