Results 1  10
of
28
The Use of Planning Critics in Mechanizing Inductive Proofs
 International Conference on Logic Programming and Automated Reasoning  LPAR 92, St. Petersburg, Lecture Notes in Artificial Intelligence No. 624
, 1992
"... Proof plans provide a technique for guiding the search for a proof in the context of tactical style reasoning. We propose an extension to this technique in which failure may be exploited in the search for a proof. This extension is based upon the concept of planning critics. In particular we ill ..."
Abstract

Cited by 61 (11 self)
 Add to MetaCart
Proof plans provide a technique for guiding the search for a proof in the context of tactical style reasoning. We propose an extension to this technique in which failure may be exploited in the search for a proof. This extension is based upon the concept of planning critics. In particular we illustrate how proof critics may be used to patch proof plans in the domain of inductive proofs. 1 Introduction Proof plans [Bundy 88] guide the search for a proof in the context of tactical style reasoning [Gordon et al 79]. A proof plan contains a tactic together with a proof rationale. The tactic component specifies the lowlevel structure of a proof in terms of the objectlevel logic inference rules and is used to control the theorem prover. In contrast, the proof rationale, which is expressed in a metalogic, captures the highlevel structure of a proof. Proof plans are constructed from tactic specifications called methods. Using the metalogic, a method expresses the preconditions unde...
Logic Program Synthesis
, 1993
"... This paper presents an overview and a survey of logic program synthesis. Logic program synthesis is interpreted here in a broad way; it is concerned with the following question: given a specification, how do we get a logic program satisfying the specification? Logic programming provides a uniquely n ..."
Abstract

Cited by 42 (11 self)
 Add to MetaCart
This paper presents an overview and a survey of logic program synthesis. Logic program synthesis is interpreted here in a broad way; it is concerned with the following question: given a specification, how do we get a logic program satisfying the specification? Logic programming provides a uniquely nice and uniform framework for program synthesis since the specification, the synthesis process and the resulting program can all be expressed in logic. Three main approaches to logic program synthesis by formal methods are described: constructive synthesis, deductive synthesis and inductive synthesis. Related issues such as correctness and verification as well as synthesis by informal methods are briefly presented. Our presentation is made coherent by employing a unified framework of terminology and notation, and by using the same running example for all the approaches covered. This paper thus intends to provide an assessment of existing work and a framework for future research in logic program synthesis.
MiddleOut Reasoning for Logic Program Synthesis
 IN 10TH INTERNATIONAL CONFERENCE ON LOGIC PROGRAMMING (ICLP93
, 1993
"... We propose a novel approach to automating the synthesis of logic programs: Logic programs are synthesized as a byproduct of the planning of a verification proof. The approach is a twolevel one: At the object level, we prove program verification conjectures in a sorted, firstorder theory. The c ..."
Abstract

Cited by 35 (9 self)
 Add to MetaCart
We propose a novel approach to automating the synthesis of logic programs: Logic programs are synthesized as a byproduct of the planning of a verification proof. The approach is a twolevel one: At the object level, we prove program verification conjectures in a sorted, firstorder theory. The conjectures are of the form 8args \Gamma\Gamma\Gamma\Gamma! : prog(args \Gamma\Gamma\Gamma\Gamma! ) $ spec(args \Gamma\Gamma\Gamma\Gamma! ). At the metalevel, we plan the objectlevel verification with an unspecified program definition. The definition is represented with a (secondorder) metalevel variable, which becomes instantiated in the course of the planning.
Proof Planning
 PROCEEDINGS OF THE 3RD INTERNATIONAL CONFERENCE ON AI PLANNING SYSTEMS, (AIPS
, 1996
"... We describe proof planning, a technique for the global control of search in automatic theorem proving. A proof plan captures the common patterns of reasoning in a family of similar proofs and is used to guide the search for new proofs in this family. Proof plans are very similar to the plans cons ..."
Abstract

Cited by 29 (2 self)
 Add to MetaCart
We describe proof planning, a technique for the global control of search in automatic theorem proving. A proof plan captures the common patterns of reasoning in a family of similar proofs and is used to guide the search for new proofs in this family. Proof plans are very similar to the plans constructed by plan formation techniques. Some differences are the nonpersistence of objects in the mathematical domain, the absence of goal interaction in mathematics, the high degree of generality of proof plans, the use of a metalogic to describe preconditions in proof planning and the use of annotations in formulae to guide search.
Logic Program Synthesis via Proof Planning
 Logic Program Synthesis and Transformation
, 1993
"... We propose a novel approach to automating the synthesis of logic programs: Logic programs are synthesized as a byproduct of the planning of a verification proof. The approach is a twolevel one: At the object level, we prove program verification conjectures in a sorted, firstorder theory. The c ..."
Abstract

Cited by 27 (7 self)
 Add to MetaCart
We propose a novel approach to automating the synthesis of logic programs: Logic programs are synthesized as a byproduct of the planning of a verification proof. The approach is a twolevel one: At the object level, we prove program verification conjectures in a sorted, firstorder theory. The conjectures are of the form 8args \Gamma\Gamma\Gamma\Gamma! : prog(args \Gamma\Gamma\Gamma\Gamma! ) $ spec(args \Gamma\Gamma\Gamma\Gamma! ). At the metalevel, we plan the objectlevel verification with an unspecified program definition. The definition is represented with a (secondorder) metalevel variable, which becomes instantiated in the course of the planning. This technique is an application of the CL A M proof planning system [Bundy et al 90c]. CL A M is currently powerful enough to plan verification proofs for given programs. We show that, if CL A M's use of middleout reasoning is extended, it will also be able to synthesize programs. 1 Introduction The aim of t...
Search and Planning under Incomplete Information  A Study using Bridge Card Play
, 1996
"... This thesis investigates problemsolving in domains featuring incomplete information and multiple agents with opposing goals. In particular, we describe Finesse  a system that forms plans for the problem of declarer play in the game of Bridge. We begin by examining the problem of search. We form ..."
Abstract

Cited by 27 (1 self)
 Add to MetaCart
This thesis investigates problemsolving in domains featuring incomplete information and multiple agents with opposing goals. In particular, we describe Finesse  a system that forms plans for the problem of declarer play in the game of Bridge. We begin by examining the problem of search. We formalise a best defence model of incomplete information games in which equilibrium point strategies can be identified, and identify two specific problems that can affect algorithms in such domains. In Bridge, we show that the best defence model corresponds to the typical model analysed in expert texts, and examine search algorithms which overcome the problems we have identified. Next, we look at how planning algorithms can be made to cope with the difficulties of such domains. This calls for the development of new techniques for representing uncertainty and actions with disjunctive effects, for coping with an opposition, and for reasoning about compound actions. We tackle these problems with a...
MiddleOut Reasoning for Synthesis and Induction
, 1995
"... We develop two applications of middleout reasoning in inductive proofs: Logic program synthesis and the selection of induction schemes. Middleout reasoning as part of proof planning was first suggested by Bundy et al [Bundy et al 90a]. Middleout reasoning uses variables to represent unknown te ..."
Abstract

Cited by 27 (11 self)
 Add to MetaCart
We develop two applications of middleout reasoning in inductive proofs: Logic program synthesis and the selection of induction schemes. Middleout reasoning as part of proof planning was first suggested by Bundy et al [Bundy et al 90a]. Middleout reasoning uses variables to represent unknown terms and formulae. Unification instantiates the variables in the subsequent planning, while proof planning provides the necessary search control. Middleout reasoning is used for synthesis by planning the verification of an unknown logic program: The program body is represented with a metavariable. The planning results both in an instantiation of the program body and a plan for the verification of that program. If the plan executes successfully, the synthesized program is partially correct and complete. Middleout reasoning is also used to select induction schemes. Finding an appropriate induction scheme during synthesis is difficult, because the recursion of the program, which is un...
Automatic Synthesis of Recursive Programs: The ProofPlanning Paradigm
, 1997
"... We describe a proof plan that characterises a family of proofs corresponding to the synthesis of recursive functional programs. This plan provides a significant degree of automation in the construction of recursive programs from specifications, together with correctness proofs. This plan makes use o ..."
Abstract

Cited by 23 (2 self)
 Add to MetaCart
(Show Context)
We describe a proof plan that characterises a family of proofs corresponding to the synthesis of recursive functional programs. This plan provides a significant degree of automation in the construction of recursive programs from specifications, together with correctness proofs. This plan makes use of metavariables to allow successive refinement of the identity of unknowns, and so allows the program and the proof to be developed hand in hand. We illustrate the plan with parts of a substantial example  the synthesis of a unification algorithm.
An Adaptation of ProofPlanning to Declarer Play in Bridge
 IN BRIDGE. RESEARCH PAPER 575, DEPT. OF AI
, 1992
"... We present Finesse, a system that forms plans for declarer play in the game of Bridge. Finesse generalises the technique of proofplanning, developed at Edinburgh University in the context of mathematical theoremproving, to deal with the disjunctive choice encountered when planning under uncerta ..."
Abstract

Cited by 20 (12 self)
 Add to MetaCart
(Show Context)
We present Finesse, a system that forms plans for declarer play in the game of Bridge. Finesse generalises the technique of proofplanning, developed at Edinburgh University in the context of mathematical theoremproving, to deal with the disjunctive choice encountered when planning under uncertainty, and the contextdependency of actions produced by the presence of an opposition. In its domain of planning for individual suits, it correctly identified the proper lines of play found in many examples from the Bridge literature, supporting its decisions with probabilistic and qualitative information. Cases were even discovered in which Finesse revealed errors in the analyses presented by recognised authorities.