Synopses & Reviews
This book presents the theoretical foundation of a higher-order logic programming language with equality, based on the clausal theory of types. A long-sought goal of logic programming, the clausal theory of types is a logic programming language that allows functional computation as a primitive operation while having rigorous, sound, and complete declarative and operational semantics. The language is very powerful, supporting higher-order equational deduction and functional computation. Its higher order syntax makes it concise and expressive, abstract data types can be expressed in it, and searching for multiple solutions is a basic operation. The author proves a number of important and surprising results: a Skolem-Herbrand-Gödel theorem for higher-order logic; a Higher-Order Resolution Theorem, which includes as special cases some previously unproven conjectures about equational matching and higher-order matching.
Synopsis
In this book is presented the theoretical foundation of a higher-order logic programming language with equality, based on the clausal theory of types.
Synopsis
Logic programming was based on first-order logic. Higher-order logics can also lead to theories of theorem-proving. This book introduces just such a theory, based on a lambda-calculus formulation of a clausal logic with equality, known as the Clausal Theory of Types. By restricting this logic to Horn clauses, a new and concise form of logic programming that incorporates functional programming is achieved. The book can be used for graduate courses in theorem-proving, but will be of interest to all working in declarative programming.
Description
Includes bibliographical references (p. 107-120) and index.
Table of Contents
1. Introduction; 2. Logic programming: a case study; 3. Simply typed l-calculus; 4. Higher-order logic; 5. Higher-order equational unification; 6. Higher-order equational logic programming.