Results 1  10
of
13
Higherorder logic programming
 HANDBOOK OF LOGIC IN AI AND LOGIC PROGRAMMING, VOLUME 5: LOGIC PROGRAMMING. OXFORD (1998
"... ..."
Unification under a mixed prefix
 Journal of Symbolic Computation
, 1992
"... Unification problems are identified with conjunctions of equations between simply typed λterms where free variables in the equations can be universally or existentially quantified. Two schemes for simplifying quantifier alternation, called Skolemization and raising (a dual of Skolemization), are pr ..."
Abstract

Cited by 124 (13 self)
 Add to MetaCart
Unification problems are identified with conjunctions of equations between simply typed λterms where free variables in the equations can be universally or existentially quantified. Two schemes for simplifying quantifier alternation, called Skolemization and raising (a dual of Skolemization), are presented. In this setting where variables of functional type can be quantified and not all types contain closed terms, the naive generalization of firstorder Skolemization has several technical problems that are addressed. The method of searching for preunifiers described by Huet is easily extended to the mixed prefix setting, although solving flexibleflexible unification problems is undecidable since types may be empty. Unification problems may have numerous incomparable unifiers. Occasionally, unifiers share common factors and several of these are presented. Various optimizations on the general unification search problem are as discussed. 1.
Higherorder Unification via Explicit Substitutions (Extended Abstract)
 Proceedings of LICS'95
, 1995
"... Higherorder unification is equational unification for βηconversion. But it is not firstorder equational unification, as substitution has to avoid capture. In this paper higherorder unification is reduced to firstorder equational unification in a suitable theory: the λσcal ..."
Abstract

Cited by 103 (13 self)
 Add to MetaCart
Higherorder unification is equational unification for βηconversion. But it is not firstorder equational unification, as substitution has to avoid capture. In this paper higherorder unification is reduced to firstorder equational unification in a suitable theory: the λσcalculus of explicit substitutions.
Unification of simply typed lambdaterms as logic programming
 In Eighth International Logic Programming Conference
, 1991
"... 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 ..."
Abstract

Cited by 56 (3 self)
 Add to MetaCart
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 programming language Lλ in a natural and clear fashion. In a sense, the translation only involves explicitly axiomatizing in Lλ the notions of equality and substitution of the simply typed λcalculus: the rest of the unification process can be viewed as simply an interpreter of Lλ searching for proofs using those axioms. 1
HigherOrder Positive Set Constraints
 In 16th Int. Workshop Computer Science Logic (CSL
, 2002
"... We introduce a natural notion of positive set constraints on simplytyped terms. We show that satisfiability of these socalled positive higherorder set constraints is decidable in 2NEXPTIME. We explore a number of subcases solvable in 2DEXPTIME, among which higherorder definite set constrai ..."
Abstract

Cited by 7 (2 self)
 Add to MetaCart
We introduce a natural notion of positive set constraints on simplytyped terms. We show that satisfiability of these socalled positive higherorder set constraints is decidable in 2NEXPTIME. We explore a number of subcases solvable in 2DEXPTIME, among which higherorder definite set constraints, a.k.a., emptiness of higherorder pushdown processes. This uses a firstorder clause format on socalled shallow higherorder patterns, and automated deduction techniques based on ordered resolution with splitting. This technique is then applied to the task of approximating success sets for a restricted subset of  Prolog, a la Fr uhwirth et al.
A Transformation System Combining Partial Evaluation with Term Rewriting
 In Higher Order Algebra, Logic and Term Rewriting (HOA '93), volume 816 of LNCS
, 1993
"... . This paper presents a new approach to optimizing functional programs based on combining partial evaluation and rewriting. Programs are composed of higherorder primitives. Partial evaluation is used to eliminate higherorder functions. Firstorder rewriting is used to process the transformation. L ..."
Abstract

Cited by 6 (5 self)
 Add to MetaCart
. This paper presents a new approach to optimizing functional programs based on combining partial evaluation and rewriting. Programs are composed of higherorder primitives. Partial evaluation is used to eliminate higherorder functions. Firstorder rewriting is used to process the transformation. Laws about the higherorder primitives that are relevant for the optimizations are automatically extracted from a library and transformed into firstorder terms using partial evaluation. Such a combination of a partial evaluation system and an intrinsically firstorder rewriting tool allows a form of higherorder rewriting at a firstorder level. This way, it is possible to automate deforestation of higherorder programs. Introduction The socalled Squiggol [10] style for program construction is a highlevel programming technique that consists of building a program by composing primitives or other functions while taking into account wellknown laws on the primitives. Functions are usually de...
Type Inference and Reconstruction for First Order Dependent Types
, 1995
"... x 1 Introduction 1 1.1 Dependent Types : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1 1.2 Dependent Type Inference and Reconstruction : : : : : : : : : : : : : : : : 8 2 Primitive Recursive Functionals with Dependent Types 17 2.1 A Dependent Type System for T : : : : : : : : : ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
x 1 Introduction 1 1.1 Dependent Types : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1 1.2 Dependent Type Inference and Reconstruction : : : : : : : : : : : : : : : : 8 2 Primitive Recursive Functionals with Dependent Types 17 2.1 A Dependent Type System for T : : : : : : : : : : : : : : : : : : : : : : : 17 2.1.1 Terms : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 17 2.1.2 Types : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 19 2.1.3 Typing Rules : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 24 2.1.4 Strong Normalization of T Terms : : : : : : : : : : : : : : : : : : : 28 2.2 Dependent Typing Examples : : : : : : : : : : : : : : : : : : : : : : : : : : 29 2.3 A Term Model Semantics for T : : : : : : : : : : : : : : : : : : : : : : : : 34 3 Principal Types and Dependent Type Reconstruction 58 3.1 Type Subsumption and Unification : : : : : : : : : : : : : : : : : : : : : : : 58 3.2 Matching : : : : : :...
ObjectLevel Substitution, Unification And Generalization In MetaLogic
, 1995
"... Metaprogramming in logic has had difficulty with a class of problems, which includes polymorphic type inferencing and KnuthBendix completion. At the core of this difficulty is that logic programming, in particular higherorder logic programming, is often too dependent on its inherent unification ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
Metaprogramming in logic has had difficulty with a class of problems, which includes polymorphic type inferencing and KnuthBendix completion. At the core of this difficulty is that logic programming, in particular higherorder logic programming, is often too dependent on its inherent unification and resolution algorithms in providing declarative formulations of objectlevel theories. To free metaprogramming in logic from this dependency, we provide logic programming formulations of substitution and unification on objectlevel expressions. This will provide a set of basic tools for metaprogramming in a higherorder logic programming language, which supports the use of higherorder abstract syntax. In particular, the techniques presented here can be used in a very simple metalanguage, the L restriction of Prolog.
HigherOrder Automata, Pushdown systems, and Set Constraints
 Research Report LSV019, LSV
, 2001
"... We introduce a natural notion of automata, pushdown systems, and set constraints in increasing order of expressiveness, on simplytyped terms. ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
We introduce a natural notion of automata, pushdown systems, and set constraints in increasing order of expressiveness, on simplytyped terms.
Conditional Equational Theories and Complete Sets of Transformations
 In Proceedings of the International Conference on Fifth Generation Computer Systems
"... The idea to combine the advantages of function and logic programming has attracted many researches. Their work ranges from the integration of existing languages over higherorder logic to equational logic languages, where logic programs are augmented with equational theories. Recently, it has been p ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
The idea to combine the advantages of function and logic programming has attracted many researches. Their work ranges from the integration of existing languages over higherorder logic to equational logic languages, where logic programs are augmented with equational theories. Recently, it has been proposed to handle those equational theories by complete sets of transformations. These transformations are extensions of the rules introduced by Herbrand and later used by Martelli and Montanari to compute the most general unifier of two expressions. We generalize this idea to complete sets of transformations for arbitrary conditional equational theories, the largest class of equational theories that admit a least Herbrand model.