A Deductive Approach to Program Synthesis

  title={A Deductive Approach to Program Synthesis},
  author={Z. Manna and R. Waldinger},
Program synthesis is the systematic derivation of a program from a given specification. A deductive approach to program synthesis is presented for the construction of recursive programs. This approach regards program synthesis as a theorem-proving task and relies on a theorem-proving method that combines the features of transformation rules, unification, and mathematical induction within a single framework. 
An Incompleteness Result for Deductive Synthesis of Logic Programs
The notion of uniform equivalence between logical systems is introduced, and an incompleteness result for deductive synthesis of logic programs from rst-order logic speciications is presented. Expand
Deductive Synthesis of the Unification Algorithm
The deductive approach is a formal program-construction method in which the derivation of a program from a given specification is regarded as a theoremproving ask. To construct a program whose outputExpand
Partial Structural Synthesis of Programs
The notion of partial deduction known from logic programming is defined in the framework of Structural Synthesis of Programs (SSP) and completeness and correctness are proven. Expand
Formal Synthesis of a Unification Algorithm by the Deductive-Tableau Method
  • D. Nardi
  • Computer Science, Mathematics
  • J. Log. Program.
  • 1989
The formal derivation of a unification algorithm using the deductive-tableau method for program synthesis is presented, starting from an input-output specification expressed in first-order logic. Expand
Deductive and Inductive Synthesis of Equational Programs
An equational approach to the synthesis of functional and logic program is taken, and procedures for inductive proof and program synthesis are formulated using the framework of ''ordered rewriting''. Expand
A Formal View of Specification, Deductive Synthesis and Transformation of Logic Programs
In this framework, the distinction between specification, deductive synthesis and transformation and their inter-relationships is distinguished. Expand
Partial Deduction in the Framework of Structural Synthesis of Programs
Partial deduction for unconditional computability statements in SSP is defined and completeness and correctness of partial deduction in the framework of SSP are proven. Expand
Strategies of Structural Synthesis of Programs and its Extensions
Proof search for the structural synthesis of programs (SSP) - a deductive program synthesis method which is suited for compositional programming in large and is in practical use in a number of progExpand
Program synthesis based on Boyer-Moore theorem proving techniques
This work develops a deductive approach to program synthesis based on non-resolution theorem proving techniques -- Boyer-Moore techniques -- which can be used in program construction, program verification, and program optimization. Expand
Logic Program Synthesis and Transformation
  • Y. Deville
  • Computer Science
  • Workshops in Computing
  • 1994
In this framework, the distinction between specification, deductive synthesis and transformation and their inter-relationships is distinguished. Expand


Synthesis: Dreams - Programs
Deductive techniques are presented for deriving programs systematically from given specifications and have been incorporated in a running program-synthesis system, called DEDALUS. Expand
A Transformation System for Developing Recursive Programs
A system of rules for transforming programs is described, with the programs in the form of recursion equations. An initially very simple, lucid, and hopefully correct program is transformed into aExpand
A proof procedure is described which operates on formulas of the predicate calculus which are quantifierfree. The procedure, which involves a single inference rule called NC-resolution, is shown toExpand
Proving Theorems about LISP Functions
We describe some simple heuristics combining evaluation and mathematical induction which we have implemented in a program that automatically proves a wide variety of theorems about recursive LISPExpand
A non-clausal theorem proving system
A complete inference system, QUEST, for the first-order predicate calculus using expressions in prenex form is presented and comparison of this system with SL-resolution shows that clausal techniques can be transferred to prenexform and expected advantages do seem to appear. Expand
A production system for automatic deduction
A new predicate calculus deduction system based on production rules is proposed. The system combines several developments in Artificial Intelligence and Automatic Theorem Proving research includingExpand
PROW: A Step Toward Automatic Program Writing
It is shown that PROW can be used as a question-answering program by modifying the part of PROW that translates an algorithm to a LISP program. Expand
Non-Resolution Theorem Proving
  • W. Bledsoe
  • Mathematics, Computer Science
  • Artif. Intell.
  • 1977
This talk reviews those efforts in automatic theorem proving, during the past few years, which have emphasized techniques other than resolution. These include: knowledge bases, natural deduction,Expand
Application of Theorem Proving to Problem Solving
This paper shows how an extension of the resolution proof procedure can be used to construct problem solutions and provides a discussion of solutions to sample problems including the "Monkey and Bananas" puzzle and the 'Tower of Hanoi" puzzle. Expand
A Machine-Oriented Logic Based on the Resolution Principle
The paper concludes with a discussion of several principles which are applicable to the design of efficient proof-procedures employing resolution as the basle logical process. Expand