Results 1 -
9 of
9
Elf: A Language for Logic Definition and Verified Metaprogramming
- In Fourth Annual Symposium on Logic in Computer Science
, 1989
"... We describe Elf, a metalanguage for proof manipulation environments that are independent of any particular logical system. Elf is intended for meta-programs such as theorem provers, proof transformers, or type inference programs for programming languages with complex type systems. Elf unifies logic ..."
Abstract
-
Cited by 70 (8 self)
- Add to MetaCart
We describe Elf, a metalanguage for proof manipulation environments that are independent of any particular logical system. Elf is intended for meta-programs such as theorem provers, proof transformers, or type inference programs for programming languages with complex type systems. Elf unifies logic definition (in the style of LF, the Edinburgh Logical Framework) with logic programming (in the style of Prolog). It achieves this unification by giving types an operational interpretation, much the same way that Prolog gives certain formulas (Horn-clauses) an operational interpretation. Novel features of Elf include: (1) the Elf search process automatically constructs terms that can represent object-logic proofs, and thus a program need not construct them explicitly, (2) the partial correctness of meta-programs with respect to a given logic can be expressed and proved in Elf itself, and (3) Elf exploits Elliott's unification algorithm for a -calculus with dependent types. This research was...
Proof Search in the Intuitionistic Sequent Calculus
- 11th International Conference on Automated Deduction
, 1991
"... The use of Herbrand functions (more popularly known as Skolemization) plays an important role in classical theorem proving and logic programming. We define a notion of Herbrand functions for the full intuitionistic predicate calculus. The definition is based on the view that the proof-theoretic role ..."
Abstract
-
Cited by 42 (1 self)
- Add to MetaCart
The use of Herbrand functions (more popularly known as Skolemization) plays an important role in classical theorem proving and logic programming. We define a notion of Herbrand functions for the full intuitionistic predicate calculus. The definition is based on the view that the proof-theoretic role of Herbrand functions (to replace universal quantifiers), and of unification (to find instances corresponding to existential quantifiers), is to ensure that the eigenvariable conditions on a sequent proof are respected. The propositional impermutabilities that arise in the intuitionistic but not the classical sequent calculus motivate a generalization of the classical notion of Herbrand functions. Proof search using generalized Herbrand functions also provides a framework for generalizing logic programming to subsets of intuitionistic logic that are larger than Horn clauses. The search procedure described here has been implemented and observed to work effectively in practice. The generaliza...
A Resolution Theorem Prover for Intuitionistic Logic
- Proceedings of CADE-13
, 1996
"... We use the general scheme of building resolution calculi (also called the inverse method) originating from S.Maslov and G.Mints to design and implement a resolution theorem prover for intuitionistic logic. A number of search strategies is introduced and proved complete. The resolution method is show ..."
Abstract
-
Cited by 41 (4 self)
- Add to MetaCart
We use the general scheme of building resolution calculi (also called the inverse method) originating from S.Maslov and G.Mints to design and implement a resolution theorem prover for intuitionistic logic. A number of search strategies is introduced and proved complete. The resolution method is shown to be a decision procedure for a new syntactically described decidable class of intuitionistic logic. We compare the search strategies suitable for the resolution method with strategies suitable for the tableau method. The performance of our prover is compared with the performance of a tableau prover for intuitionistic logic presented in [17].
A Proof-Theoretic Analysis of Goal-Directed Provability
- Journal of Logic and Computation
, 1992
"... One of the distinguishing features of logic programming seems to be the notion of goal-directed provability, i.e. that the structure of the goal is used to determine the next step in the proof search process. It is known that by restricting the class of formulae it is possible to guarantee that a ..."
Abstract
-
Cited by 14 (8 self)
- Add to MetaCart
One of the distinguishing features of logic programming seems to be the notion of goal-directed provability, i.e. that the structure of the goal is used to determine the next step in the proof search process. It is known that by restricting the class of formulae it is possible to guarantee that a certain class of proofs, known as uniform proofs, are complete with respect to provability in intuitionistic logic. In this paper we explore the relationship between uniform proofs and classes of formulae more deeply. Firstly we show that uniform proofs arise naturally as a normal form for proofs in first-order intuitionistic sequent calculus. Next we show that the class of formulae known as hereditary Harrop formulae are intimately related to uniform proofs, and that we may extract such formulae from uniform proofs in two different ways. We also give results which may be interpreted as showing that hereditary Harrop formulae are the largest class of formulae for which uniform proo...
Presenting intuitive deductions via symmetric simplification
- In CADE-10: Proceedings of the tenth international conference on Automated deduction
, 1990
"... In automated deduction systems that are intended for human use, the presentation of a proof is no less important than its discovery. For most of today’s automated theorem proving systems, this requires a non-trivial translation procedure to extract human-oriented deductions from machine-oriented pro ..."
Abstract
-
Cited by 14 (4 self)
- Add to MetaCart
In automated deduction systems that are intended for human use, the presentation of a proof is no less important than its discovery. For most of today’s automated theorem proving systems, this requires a non-trivial translation procedure to extract human-oriented deductions from machine-oriented proofs. Previously known translation procedures, though complete, tend to produce unintuitive deductions. One of the major flaws in such procedures is that too often the rule of indirect proof is used where the introduction of a lemma would result in a shorter and more intuitive proof. We present an algorithm, symmetric simplification, for discovering useful lemmas in deductions of theorems in first- and higher-order logic. This algorithm, which has been implemented in the TPS system, has the feature that resulting deductions may no longer have the weak subformula property. It is currently limited, however, in that it only generates lemmas of the form C ∨ ¬C ′ , where C and C ′ have the same negation normal form. 1
Cut Formulae and Logic Programming
"... . In this paper we present a mechanism to define names for proof-witnesses of formulae and thus to use Gentzen's cut-rule in logic programming. We consider a program to be a set of logical formulae together with a list of such definitions. Occurrences of the defined names guide the proof-search by i ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
. In this paper we present a mechanism to define names for proof-witnesses of formulae and thus to use Gentzen's cut-rule in logic programming. We consider a program to be a set of logical formulae together with a list of such definitions. Occurrences of the defined names guide the proof-search by indicating when an instance of the cut-rule should be attempted. By using the cut-rule there are proofs that can be made dramatically shorter. We explain how this idea of using the cut-rule can be applied to the logic of hereditary Harrop formulae. 1 Introduction The computation mechanisms both for logic and for functional programming are searches for cut-free proofs. First, in pure logic programming the achievement of a goal G w.r.t. a program P can be seen 1 as the search for a proof in Gentzen's intuitionistic sequent calculus LJ [Gen69], of the sequent P ) G, that by Gentzen's cut-elimination theorem can be cut-free [Bee89], [Mil90]; a -term found as a witness to a proof contains among...
The mechanization of mathematics
- Turing: Life and Legacy of a Great Thinker
, 2003
"... Summary. The mechanization of mathematics refers to the use of computers to find, or to help find, mathematical proofs. Turing showed that a complete reduction of mathematics to computation is not possible, but nevertheless the art and science of automated deduction has made progress. This paper des ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
Summary. The mechanization of mathematics refers to the use of computers to find, or to help find, mathematical proofs. Turing showed that a complete reduction of mathematics to computation is not possible, but nevertheless the art and science of automated deduction has made progress. This paper describes some of the history and surveys the state of the art. 1
A Constructive Type System to Integrate Logic and Functional Programming
- CADE Workshop on Proof-search in Type-theoretic Languages
, 1994
"... In this work we present a type system called HH def that extends the theory of simply typed hereditary Harrop formulae [Mil90] with definitions and strong \Sigma-types. The use of definitions permits the construction of clearer programs and of shorter proofs by using a rule (the def rule) similar ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
In this work we present a type system called HH def that extends the theory of simply typed hereditary Harrop formulae [Mil90] with definitions and strong \Sigma-types. The use of definitions permits the construction of clearer programs and of shorter proofs by using a rule (the def rule) similar to Gentzen's cut rule. Proof-search for HH def is performed in a goal-directed manner with occurrences of defined constants in a goal triggering instances of the def rule. Such a search procedure is shown to be complete for HH def . 1 Introduction The motivation for development of the calculus HH def is to provide a logical foundation on which to develop a programming language that integrates logic and functional programming. This work develops the ideas outlined in [Pin94], which are intended to be a first step towards a proof-theoretic characterisation of such programming. The central idea is that the execution mechanisms both for logic and for functional programming can be seen as ...
Hypothetical reasoning and definitional reflection in logic programming
- Extensions of Logic Programming
, 1990
"... This paper describes the logical and philosophical background of an extension of logic programming which uses a general schema for introducing assumptions and thus presents a new view of hypothetical reasoning. The detailed proof theory of this system is given in [7], matters of implementation and c ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
This paper describes the logical and philosophical background of an extension of logic programming which uses a general schema for introducing assumptions and thus presents a new view of hypothetical reasoning. The detailed proof theory of this system is given in [7], matters of implementation and control of the corresponding programming language GCLA with detailed examples can be found in [1, 2]. In Section 1 we consider the local rule-based approach to a notion of atomic consequence as opposed to the global logical approach. Section 2 describes our system and characterises the inference schema of definitional reflection which is central for our approach. In Section 3 we motivate the computational interpretation of this system. Finally, Section 4 relates our approach to the idea of logical frameworks and the way elimination inferences for logical constants are treated therein, and thus to the notions of logic and structure. It shows that from a certain perspective, logical reasoning is nothing but a special case of reasoning in our system. 1 Local and global consequence

