The use of {\em proof plans} -- formal patterns of reasoning for theorem proving -- to control the (automatic) synthesis of efficient programs from standard definitional equations is described. A general framework for synthesizing efficient programs, using tools such as higher-order unification, has been developed and holds promise for encapsulating an otherwise diverse, and often ad hoc, range of transformation techniques. A prototype system has been implemented. We illustrate the methodology by a novel means of affecting {\em constraint-based} program optimization through the use of proof plans for mathematical induction. Proof plans are used to control the (automatic) synthesis of functional programs, specified in a standard equational f...
We present an automated technique for generating compiler op-timizations from examples of concrete p...
. In the proofs as programs methodology a program is derived from a formal constructive proof. Becau...
In the proofs-as-programs methodology, verified programs are developed through theorem-proving in a ...
The use of *proof plans* -- formal patterns of reasoning for theorem proving -- to control the (auto...
The use of proof plans -formal patterns of reasoning for theorem proving -to control the {automatic...
Systems supporting the manipulation of non-trivial program code are complex and are at best semi-aut...
The structured programming literature provides methods and a wealth of heuristic knowledge for guid...
Systems supporting the manipulation of non-trivial program code are complex and are at best semi-aut...
Logic programs can be synthesized as a by-product of the planning of their verification proofs. This...
We propose a novel approach to automating the synthesis of logic programs: Logic programs are synthe...
The research described in this paper involved developing transformation techniques which increase th...
Logic programs can be synthesized as a by-product of the planning of their verification proofs. This...
Often, calculi for manipulating and reasoning about programs can be recast as calculi for synthesizi...
AbstractPartial redundancy elimination is a subtle optimization which performs common subexpression ...
The research described in this paper involved developing transformation techniques which increase th...
We present an automated technique for generating compiler op-timizations from examples of concrete p...
. In the proofs as programs methodology a program is derived from a formal constructive proof. Becau...
In the proofs-as-programs methodology, verified programs are developed through theorem-proving in a ...
The use of *proof plans* -- formal patterns of reasoning for theorem proving -- to control the (auto...
The use of proof plans -formal patterns of reasoning for theorem proving -to control the {automatic...
Systems supporting the manipulation of non-trivial program code are complex and are at best semi-aut...
The structured programming literature provides methods and a wealth of heuristic knowledge for guid...
Systems supporting the manipulation of non-trivial program code are complex and are at best semi-aut...
Logic programs can be synthesized as a by-product of the planning of their verification proofs. This...
We propose a novel approach to automating the synthesis of logic programs: Logic programs are synthe...
The research described in this paper involved developing transformation techniques which increase th...
Logic programs can be synthesized as a by-product of the planning of their verification proofs. This...
Often, calculi for manipulating and reasoning about programs can be recast as calculi for synthesizi...
AbstractPartial redundancy elimination is a subtle optimization which performs common subexpression ...
The research described in this paper involved developing transformation techniques which increase th...
We present an automated technique for generating compiler op-timizations from examples of concrete p...
. In the proofs as programs methodology a program is derived from a formal constructive proof. Becau...
In the proofs-as-programs methodology, verified programs are developed through theorem-proving in a ...