A logic programming language with lambda-abstraction, function variables, and simple unification

D Miller - Journal of logic and computation, 1991 - academic.oup.com
It has been argued elsewhere that a logic programming language with function variables
and λ-abstractions within terms makes a good meta-programming language, especially …

Higher-order logic programming

DA Miller, G Nadathur - International Conference on Logic Programming, 1986 - Springer
In this paper we consider the problem of extending Prolog to include predicate and function
variables and typed λ-terms. For this purpose, we use a higher-order logic to describe a …

Modularity in logic programming

M Bugliesi, E Lamma, P Mello - The Journal of Logic Programming, 1994 - Elsevier
The research on modular logic programming has evolved along two different directions
during the past decade. Various papers have focused primarily on the problems of …

Unification of simply typed lambda-terms as logic programming

D Miller - 1991 - repository.upenn.edu
The unification of simply typed λ-terms modulo the rules of ß-and η-conversions is often
called" higher-order" unification because of the possible presence of variables of functional …

[PDF][PDF] Higher-order logic programming

G Nadathur, D Miller - Handbook of logic in artificial intelligence and logic …, 1998 - Citeseer
Modern programming languages such as Lisp, Scheme and ML permit procedures to be
encapsulated within data in such a way that they can subsequently be retrieved and used to …

Explaining type inference

D Duggan, F Bent - Science of Computer Programming, 1996 - Elsevier
Type inference is the compile-time process of reconstructing missing type information in a
program based on the usage of its variables. ML and Haskell are two languages where this …

Implementing tactics and tacticals in a higher-order logic programming language

A Felty - Journal of Automated reasoning, 1993 - Springer
We argue that a logic programming language with a higher-order intuitionistic logic as its
foundation can be used both to naturally specify and implement tactic-style theorem provers …

[KIRJA][B] Logic programming in intuitionistic linear logic: theory, design, and implementation

JS Hodas - 1994 - search.proquest.com
It is an unfortunate reality that in" logic programming" as exemplified by Prolog few
interesting problems can be solved using the purely logical fragment of the language. The …

The Bedwyr system for model checking over syntactic expressions

D Baelde, A Gacek, D Miller, G Nadathur… - … Conference on Automated …, 2007 - Springer
Bedwyr is a generalization of logic programming that allows model checking directly on
syntactic expressions possibly containing bindings. This system, written in OCaml, is a direct …

[KIRJA][B] Practical refinement-type checking

R Davies - 2005 - search.proquest.com
Software development is a complex and error prone task. Programming languages with
strong static type systems assist programmers by capturing and checking the fundamental …