8 citations found. Retrieving documents...
C. Goad. Computational uses of the manipulation of formal proofs. Technical report, Stanford Department of Computer Science, 1980. Report No. STAN-CS-80-819.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Proof-Theoretic Notions for Software Maintenance - Kahle (2000)   (Correct)

....proof can result in a di erent program and the extraction procedure gives some kind of control. One key example for this is the use of an induction on the proof side which results in a recursion on the algorithmic side. Within this framework the idea of pruning realizes some aspects of our aims, Goa80] Let us assume we have extracted a program from a given proof which uses case distinctions. New information could result in a reduction of the possible cases. By using this information systematically, one can prune the distinctions and ending up with a better, i.e. more ecient, program. ....

C. Goad. Computational uses of the manipulation of formal proofs. Technical report, Stanford Department of Computer Science, 1980. Report No. STAN-CS-80-819.


Proof Theory At Work: Program Development In The.. - Benl, BERGER.. (1998)   (Correct)

....which goes back to work of Friedman (1978) and Leivant (1985) We will explain this translation by means of an example concerning minimization on finite binary trees. We will also use this example to discuss a second technique for program development: the pruning operation going back to Goad (1980). 6.1. Search through binary trees In our example we consider finite binary trees with leaves labelled by integers: n s 1 s 2 We let P be a decidable property of trees. We wish to prove constructively that for every tree t with property P t there is a subtree s of t satisfying P s PROGRAM ....

Goad, C. A.: 1980, `Computational uses of the manipulation of formal proofs'. Ph.D. thesis, Stanford University. Stanford Department of Computer Science Report No. STAN--CS--80--819.


An Abstract Program Generation Logic - Plaisted (1994)   (Correct)

....resolution theorem prover to derive programs satisfying a specification. It is also possible to synthesize a program by applying a set of transformation rules to a specification. One example of early work in this direction is the deductive synthesis approach of [6] Another early idea was that of [16], whereby the information contained in a proof can be used to specialize a program to a smaller class of inputs. The TABLOG system of Manna and Waldinger [23] also permits a program to be derived from a specification of the desired input output behavior. This system is largely firstorder (and ....

C.A. Goad. Computational Uses of the Manipulation of Formal Proofs. PhD thesis, Stanford University, 1980.


QPC 2 : A Constructive Calculus with Parameterized Specifications - Takayama (1995)   (Correct)

....has the same length as the conclusion of a given induction proof. 5. 4 Optimization Several optimization techniques have been developed mainly for the rst order constructive calculi such as the proof normalization method for partial evaluation, the modi ed code method [17] and the pruning rule [6] for eliminating redundancy in decision procedures, and various techniques to remove computationally irrelevant codes [12, 1, 8, 18, 19] All of them can be used for QPC 2 because it is an extension of a rst order calculus. Among the last technique, the extended projection method [19] will be ....

C. A. Goad. Computational Uses of the Manipulation of Formal Proofs. PhD thesis, Stanford University, 1980.


Program Derivation by Proof Transformation - Anderson (1993)   (7 citations)  (Correct)

....strategy) There are now a number of researchers experimenting with the methodology, but there are many problems that have to be solved before it will achieve applicability to practical software development. This thesis continues a line of research that began with the observation of Goad [Goa80] that a formal proof contains information that is not essential for computation, but that is useful in the transformation of computing methods; his work exploits this information to transform proofs in order to specialize algorithms to their inputs. Pfenning [Pfe90] generalizes this line of ....

...., and it is a function that, given an x of type , computes a y of type 0 such that P (x; y) holds. A simple example, presented informally, is the following proof for an algorithm to compute an upper bound of both the sum and product of two rational numbers. The example is adapted from Goad [Goa80] The specification is the theorem to be proved, which says that, given two rational numbers x and y, an upper bound for their sum and product exists. Specification 1.1 8x : 8y : 9z : z x y) z xy) The proof of the theorem is a very simple case analysis. Proof 1.2 There are two cases: ....

[Article contains additional citation context not shown here]

Christopher A. Goad. Computational uses of the manipulation of formal proofs. Technical Report Stan-CS-80-819, Stanford University, August 1980.


Representing Proof Transformations for Program Optimization - Anderson (1994)   (6 citations)  (Correct)

....it afterwards. Research in this area suggests that this approach can address problems in program development that are not easily solved either by syntactic program transformation techniques or through theorem proving support alone. Such problems include the specialization of a program to its input [10], 17] and the optimization of the call structure of a recursive function definition [26] 17] 18] One standard approach to metaprogramming tasks for formal logic like proof transformation has been to use a separate programming language, such as ML, as a metalanguage for a type theory ....

....improvement over Program 4, as it does not use the reverse function. The difference is a consequence of working with the specification and its proof throughout the development rather than restricting the reasoning to the properties of the program alone. It is an example of the effect noted by Goad [10]: using proof transformation a program can be optimized by exploiting the fact that there is no need to preserve functional equivalence of the successive stages of program development. Correctness Properties. The encoding provides two sorts of correctness guarantees for the transformation. Because ....

Christopher A. Goad. Computational uses of the manipulation of formal proofs. Technical Report Stan-CS-80-819, Stanford University, August 1980.


An Interpretation of Kleene's Slash in Type Theory - Smith (1993)   (2 citations)  (Correct)

.... 2 A , which gives Gamma; z 2 Pi(A; B) a 2 A (2) and Gamma; z 2 Pi(A; B) apply(z; a) 2 B(a) 3) The lemma applied on (1) 2) and (3) gives Gamma; z 2 Pi(A; B) j b(a; apply(z; a) 2 B(a) Hence, by the definition of slash, Gamma; z 2 Pi(A; B) j x:b(x; apply(z; x) 2 Pi(A; B) Goad [6] considers derivations, as well as proof terms, depending on Harrop formulas and shows that such a derivation can be normalized so that it ends with an introduction rule. For type theory we have a corresponding result as a corollary to theorem 3 and corollary 1. Corollary 4. Let C be a Harrop set ....

C. Goad. Computational Uses of the Manipulation of Formal Proofs. PhD thesis, Computer Science Department, Stanford University, August 1980.


Simultaneous Rigid E-Unification is Undecidable - Degtyarev, Voronkov   (Correct)

.... 9 y (a n c; y) 9x9 y (x; y) 2. For every natural number n, n 2 S iff there is a cut free proof of of the above form. Proof. Straightforward from the proof of Theorem 8. QED These results are similar to the description of computable functions in the successor arithmetic given by Goad [27], but we do not need any induction axioms. 5 Conclusion Since our first proof of the undecidability of simultaneous rigid E unification, other results have been proved. We briefly discuss these results here. 1. Simultaneous rigid E unification has been originally proposed as a way of handling ....

C.A. Goad. Computational uses of the manipulation of formal proofs. Technical Report TR no. STAN-CS-80-819, Stanford Univ. Department of Computer Science, 1980.

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