54 citations found. Retrieving documents...
Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, Department of Computer and Information Science, University of Pennsylvania, July 1989.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents  Next 50

Implementation Considerations for Higher-Order Features in.. - Jayaraman, Wilson   (Correct)

....be added to this language. We attempt to motivate such additions and to describe informally the syntax and semantics of the resulting language. However, our discussions will not be comprehensive in either respect. The usefulness of higher order features is examined in several other places (e.g. [12, 16, 25, 26, 37]) and a logic underlying the proposed extension will be presented more precisely in the next section. A higher order ability that is usually coveted in programming contexts is that of passing procedures as arguments to other procedures and of returning these as the results of computations. ....

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, University of Pennsylvania, August 1989.


Implementing Polymorphic Typing in a Logic Programming.. - Kwon, Nadathur, Wilson (1993)   (3 citations)  (Correct)

.... work presented here is that of providing a good implementation for the higher order logic programming language called Prolog [19] that, amongst other things, incorporates such a notion of typing [20] Numerous applications have been discovered for this language over the last few years (e.g. see [4, 5, 7, 14, 22]) stressing the importance of this concern. In providing a robust and ecient implementation for Prolog, three aspects that are novel to this language have to be dealt with: its higher order features, its new search primitives and its typing regimen. The ideas discussed in this paper complement ....

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, University of Pennsylvania, August 1989.


A Pragmatic Reconstruction of λProlog - Belleannée, Brisset, Ridoux (1994)   (Correct)

....They can be used respectively in terms and formulas for reflecting each other. This is what we call the symmetry between abstraction and universal quantification. 3.4.2. Example. Let us define a predicate that relates a first order predicate calculus formula and its negation normal form [16]. A first order predicate calculus formula is in negation normal form if the negation connective is only applied to atomic formulas. For instance, A) B) is in negation normal form, but : AB) is not. It is always possible to transform a first order predicate calculus formula into an equivalent ....

A. Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD Dissertation, Dept. of Computer and Information Science, University of Pennsylvania, 1989.


Unification in a lambda-Calculus with Intersection Types - Kohlhase, Pfenning   (Correct)

....such as 8D: d 8G: g (hyp(D) solve(G) solve(D G) is permitted if we have the typings solve: g g and hyp: d d. We have many other examples where re nement types are bene cial in higher order logic programming. For example, in the higher order representation of natural deductions [1] one can distinguish normal forms as a re nement of arbitrary derivations instead of explicitly encoding two different representations. In the implementation of functional languages [ re nement types can distinguish values from arbitrary expressions instead of leaving this distinction implicit. ....

Amy Felty. Specifying and Implementing Theorem Provers in a HigherOrder Logic Programming Language. PhD thesis, Department of Computer and Information Science, University of Pennsylvania, July 1989.


Structural Cut Elimination - I. Intuitionistic and Classical Logic - Pfenning (2000)   (2 citations)  (Correct)

....between natural deductions and the typed expressions used for their representation. Finding an elegant encoding of sequents and sequent derivations in a logical framework is therefore the first critical issue in an implementation of a proof of cut elimination. Felty s representation [Fel89] in Prolog, for example, uses lists of hypotheses, which is advantageous for search but makes a formal meta theory prohibitively complex. Frameworks based on sequent calculi such as LU [Gir93] or Forum [Mil94] allow direct encodings, but they lack a notation for the proof terms that are required ....

Felty, A. (1989), Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language," Ph.D. thesis, University of Pennsylvania. [Available as Technical Report MS-CIS-89-53]


Semantic Interpretation as Higher-Order Deduction - Pereira (1991)   (11 citations)  (Correct)

....of rules abs and app [40] 2. 2 Rule Metalanguage The treatment of abstractions in semantic interpretation may also be examined in terms of a formalization of semantic interpretation rules in a suitable higherorder logic, as has been done for inference rules of various logics by Felty and Miller [13, 14] using as rule metalanguage the higher order hereditary Harrop formulas [29] implemented in #Prolog [36, 37] Rather than repeating here the precise definitions found elsewhere [13, 29, 36] the language will be introduced by showing how the typing rules of the previous section would be expressed ....

.... rules in a suitable higherorder logic, as has been done for inference rules of various logics by Felty and Miller [13, 14] using as rule metalanguage the higher order hereditary Harrop formulas [29] implemented in #Prolog [36, 37] Rather than repeating here the precise definitions found elsewhere [13, 29, 36], the language will be introduced by showing how the typing rules of the previous section would be expressed [13] The #Prolog program in Figure 2 consists of certain declarations followed by two clauses. The declarations specify expr and ty as the atomic types of (objectlevel) expressions and ....

[Article contains additional citation context not shown here]

A. P. Felty. Specifying and Implementing Theorem Provers in a HigherOrder Logic Programming Language. PhD thesis, Department of Computer and Information Science, University of Pennsylvania, Philadelphia, Pennsylvania, 1989.


A Logical Framework Formulation Of Deductive Generalization - Chuck Liang University (1994)   (Correct)

....syntax. We will use Prolog syntax when we wish to emphasize that something is being regarded as a Prolog expression. For a more detailed introduction to Prolog, please see [11] 1. 3 Prolog as a logical framework Prolog has been used to specify a variety of logics and theorem provers (see [4]) We shall examine one way in which proofs and formulas can be represented below. Natural Deduction Proof System for (a fragment) of first order logic We shall use a Gentzen style natural deduction system (NJ) in reasoning about proofs. A NJ proof checker can be formulated in Prolog in the ....

....shall examine one way in which proofs and formulas can be represented below. Natural Deduction Proof System for (a fragment) of first order logic We shall use a Gentzen style natural deduction system (NJ) in reasoning about proofs. A NJ proof checker can be formulated in Prolog in the style of [4]. Assume there are primitive types i, bool and proof for terms, formulas and proof objects, respectively. type signals a typing declarations. Each introduction and elimination rule is associated with a proof term constructor 1 . type imp bool bool bool. type all (i bool) bool. type ....

[Article contains additional citation context not shown here]

A. Felty. Specifying And Implementing Theorem Provers in a HigherOrder Logic Programming Language. Ph.D. Thesis. University of Pennsylvania, August 1989. 15


Extensions to Logic Programming Motivated by the Construction of.. - Gunter (1991)   (1 citation)  (Correct)

....attempting to implement an interactive generic theorem prover. However, we shall endeavor to appeal to those concerns which have broad applicability, and to skirt those issues that seem peculiar to this particular problem. For more on the particulars of implementing a generic theorem prover, see [2, 3, 4, 11]. The particular language that was used in the building of a generic theorem prover was the higher order logic programming language Prolog, initially designed and prototype implemented by Nadathur and Miller [10] and subsequently reimplemented as part of the Ergo project at CMU by Pfenning and ....

....cation in our meta language helps to provide us with a uniform way to present the inference rules of our logical system, particularly when that system is a natural deduction system. For more detail on the requirements of a meta logic for expressing the inference rules of an object logic, see [3, 2, 11]. 3 Modules and Abstract Modules The need for having some form of encapsulation when doing medium to large scale programming has long been recognized. This need is made quite apparent when one considers the problem of constructing a generic theorem prover. The very nature of the problem of ....

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, University of Pennsylvania, 1989.


Substitutions As Logic Programming Specifications - Liang   (Correct)

....a more detailed introduction to the various aspects of Prolog, please see [14] 1.2.3 Specifying formal proof systems Prolog is a higher order logic programming language which embodies the concepts of a logical framework. It has been used to specify a variety of logics and theorem provers (see [4]) We give the example of formulating first order logic and Gentzen style natural deduction (the NJ system) Natural Deduction Proof System for (a fragment) of first order logic A NJ proof checker can be formulated in Prolog in the style of [4] with the signature, or module, below. Assume there ....

.... specify a variety of logics and theorem provers (see [4] We give the example of formulating first order logic and Gentzen style natural deduction (the NJ system) Natural Deduction Proof System for (a fragment) of first order logic A NJ proof checker can be formulated in Prolog in the style of [4] with the signature, or module, below. Assume there are primitive types i, bool and proof for terms, formulas and proof objects, respectively. type signals a typing declarations. Each introduction and elimination rule is associated with a proof term constructor 1 . 1 The following program in ....

[Article contains additional citation context not shown here]

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, University of Pennsylvania, August 1989.


Specifying Object-Level Unification in PROLOG - Liang (1993)   (Correct)

....for meta level logic variables. It may therefore seem natural to use logic variables to represent object level variables, since we can then take advantage of Prolog s built in unification algorithm to perform tasks on object level terms in a declarative fashion. Many systems, including [1] use this paradigm with great success. However, this method can not work in general. Logic variables are by definition either universally quantified variables in program clauses or existentially quantified variables in goal clauses. This restricts the properties they can represent successfully. ....

A. Felty. Specifying And Implementing Theorem Provers in a Higher-Order Logic Programming Language. Ph.D. Thesis. University of Pennsylvania, August 1989.


The Architecture of an Implementation of λProlog.. - Brisset, Ridoux (1992)   (2 citations)  (Correct)

....recognising that some representation already exists and reusing it. Folding amounts to recognising that two different representations represent the same thing and replacing one by the other. We assume a basic knowledge of Prolog and Prolog. 2 Introduction The logic programming language Prolog [28, 27, 29, 15, 13, 26, 14, 30] improves greatly on standard Prolog because it features very powerful operations on terms and programs while still giving them a logical semantics. A keyword common to all these features is scoping. terms introduce scoping at the term level, explicit quantifications (universal and existential) ....

A. Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD Dissertation, Dept. of Computer and Information Science, University of Pennsylvania, 1989.


Logic Programming in a Fragment of Intuitionistic Linear.. - Hodas, Miller (1991)   (224 citations)  (Correct)

....for several years as specification languages and logic programming languages. For example, first order and higher order versions of hereditary Harrop formulas (formulas with no positive occurrences of disjunctions or existentials) have been used as both specification languages for proof systems [7, 8, 25, 29] and as the basis of logic programming languages [9, 12, 18, 20, 21] Much of the expressivity of such systems derives from the the intuitionistic proof rule which states that to prove an implicational goal of the form D oe G in the presence of a proof context Gamma, the context is augmented with ....

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, University of Pennsylvania, August 1989.


On Extensibility of Proof Checkers - Pollack (1995)   (2 citations)  (Correct)

....The Edinburgh Logical Framework (LF) HHP92] is a logic of total functions and first order dependent types. However, lacking internally definable inductive types, it is not adequate as a meta language to be used as I am suggesting. Similarly, other frameworks such as Isabelle and Prolog [Fel89] which are proof theoretically stronger than LF but also lack inductively defined relations, are not suitable. These three frameworks can express the syntactical constructors of such things as terms, formulas and proofs, as introduction rules , but they lack a notion of inductiveness ....

Amy P. Felty. Specifying and Implementing Theorem Provers in a HigherOrder Logic Programming Language. PhD thesis, University of Pennsylvania, September 1989. MS-CIS-89-53.


Scoping Constructs in Logic Programming: Implementation.. - Nadathur, Jayaraman.. (1993)   (14 citations)  (Correct)

....of the abstraction, but our representation of terms ensures that E(x) the application of E to x produces the desired effect. The examples that we have considered above have been of a very simple nature. More extensive examples may be found in various places in the literature (see, for example, [4, 14, 13, 6, 23]) We believe, however, that the examples presented here are sufficient for understanding the intended semantics and appreciating the value of the new logical symbols. In the following sections we provide a precise definition of a logical language that includes implications and universal ....

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, University of Pennsylvania, August 1989.


Implementation Considerations for Higher-Order Features in.. - Nadathur, Wilson (1993)   (5 citations)  (Correct)

....be added to this language. We attempt to motivate such additions and to describe informally the syntax and semantics of the resulting language. However, our discussions will not be comprehensive in either respect. The usefulness of higher order features is examined in several other places (e.g. [12, 16, 25, 26, 37]) and a logic underlying the proposed extension will be presented more precisely in the next section. A higher order ability that is usually coveted in programming contexts is that of passing procedures as arguments to other procedures and of returning these as the results of computations. ....

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, University of Pennsylvania, August 1989.


On the Parallel Implementation of the Higher-Order Logic.. - Arcelli, Formato   (Correct)

.... conversion to be done efficiently. Moreover, an important issue deals with the right interplay of higher order unification and polymorphic types [Kwon 92] Prolog have been used for many purposes such as applications in computational linguistic [Miller 86] for implementing theorem provers [Felty 89] in program transformations [Hannan 88] and for manipulating formulas and programs [Miller 87] These experiments have indicated the usefulness of the language, especially of its higher order features, and thus it is of considerable value to have efficient implementations of Prolog, that are ....

A. Felty, Specifying and Implementing Theorem Provers in a HigherOrder Logic Programming Language, Ph.D Thesis, University of Pennsylvania, Aug. 1989.


The Architecture of an Implementation of λProlog.. - Brisset, Ridoux (1994)   (2 citations)  (Correct)

....nouveaut es de Prolog comme les types, la fi r eduction et la suspension de l unification. Mots cl e : Impl ementation, Programmation logique, Prolog, Gestion de m emoire, Mali The Architecture of an Implementation of Prolog: Prolog Mali 3 1 Introduction The logic programming language Prolog [30, 29, 31, 17, 15, 28, 16, 32] improves on standard Prolog because it features more powerful operations on terms and programs while still giving them a logical semantics. A keyword common to all these features is scoping. Terms introduce scoping at the term level, explicit quantifications (universal and existential) introduce ....

A. Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD Dissertation, Dept. of Computer and Information Science, University of Pennsylvania, 1989.


A Semi-Functional Implementation of a Higher-Order Logic.. - Elliott, Pfenning (1990)   (30 citations)  (Correct)

....: dset) sc 9 Higher Order Logic The language of higher order terms introduced so far has not changed the underlying logic of our logic programming language: it is still a rst order 38 logic, though over a very rich domain. This is sucient for many application programs (see, for example, [10]) but there are instances where it is very elegant and natural to allow true higher order programming. By higher order programming we mean the ability of programs to construct other programs (to be assumed) and other goals (to be invoked) In Prolog some semblance of such a facility is provided ....

Amy Felty. Specifying and Implementing Theorem Provers in a HigherOrder Logic Programming Language. PhD thesis, Department of Computer and Information Science, University of Pennsylvania, July 1989.


A Framework for Defining Logics - Harper, Honsell, Plotkin (1987)   (380 citations)  (Correct)

....logic [38, 39] Constable and Howe [8] demonstrated the use of NuPRL as a logical framework, emphasizing the use of the richer type structure of the NuPRL type theory in an encoding. More recently, Felty has studied the representation of logics in Prolog, in particular, the LF type theory itself [18]. Mendler and Aczel [32] are developing the theory of MaThImP, as system for doing inter35 active mathematics on a machine that is similarly based on a general theory of logical systems, albeit of a rather different flavor than that considered here. Feferman has proposed a theory of formal systems ....

Felty, A. Specifying and Implementing Theorem Provers in a HigherOrder Logic Programming Language. PhD thesis, Department of Computer and Information Science, University of Pennsylvania, July 1989.


A Logic Program for Transforming Sequent Proofs to Natural.. - Felty (1991)   (11 citations)  Self-citation (Felty)   (Correct)

....In specifying these rules, there are often many choices in choosing a representation of sequent proofs. In this presentation, we simply choose one. For a more thorough discussion of the issues involved in specifying inference rules and proofs for this inference system and others in hh 2 , see [5, 4]. First, consider the R inference rule in Fig. 1 which introduces a conjunction on the right side of the sequent. This rule has a natural rendering as the following definite clause. andr Q1 Q2) Gamma (A and B) Q1 (Gamma A) Q2 (Gamma B) This formula may be read as: if ....

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, University of Pennsylvania, August 1989.


A Proof of the Church-Rosser Theorem - And Its Representation   (Correct)

No context found.

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, Department of Computer and Information Science, University of Pennsylvania, July 1989.


Intersection Types for a Logical Framework - Frank Pfenning School   (Correct)

No context found.

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, Department of Computer and Information Science, University of Pennsylvania, July 1989. Available as Technical Report MS-CIS-89-53.


Refinement Types for Logical Frameworks - Frank Pfenning Department (1993)   (27 citations)  (Correct)

No context found.

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, Department of Computer and Information Science, University of Pennsylvania, July 1989. Available as Technical Report MSCIS -89-53.


Head-Tactics Simplification - Bertot (1997)   (Correct)

No context found.

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, University of Pennsylvania, 1989.


A Proof of the Church-Rosser Theorem and its Representation in a .. - Pfenning (1992)   (21 citations)  (Correct)

No context found.

Amy Felty. Specifying and Implementing Theorem Provers in a Higher-Order Logic Programming Language. PhD thesis, Department of Computer and Information Science, University of Pennsylvania, July 1989.

First 50 documents  Next 50

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC