Results 1  10
of
10
Representing Proof Transformations for Program Optimization
 IN PROCEEDINGS OF THE 12TH INTERNATIONAL CONFERENCE ON AUTOMATED DEDUCTION
, 1994
"... In the proofs as programs methodology a program is derived from a formal constructive proof. Because of the close relationship between proof and program structure, transformations can be applied to proofs rather than to programs in order to improve performance. We describe a method for implementing ..."
Abstract

Cited by 6 (1 self)
 Add to MetaCart
In the proofs as programs methodology a program is derived from a formal constructive proof. Because of the close relationship between proof and program structure, transformations can be applied to proofs rather than to programs in order to improve performance. We describe a method for implementing transformations of formal proofs and show that it is applicable to the optimization of extracted programs. The method is based on the representation of derived logical rules in Elf, a logic programming language that gives an operational interpretation to the Edinburgh Logical Framework. It results in declarative implementations with a general correctness property that is verified automatically by the Elf type checking algorithm. We illustrate the technique by applying it to the problem of transforming a recursive function definition to obtain a tailrecursive form.
Functional Evaluation Of Natural Semantics Specifications
"... Typol is a language to implement Natural Semantics inside the Centaur Programming Environment. We explain why Natural Semantics can be considered as a generalization of the Attribute Grammars formalism. This relationship suggests introducing in the Typol setting some concepts from the Attribute Gram ..."
Abstract

Cited by 4 (3 self)
 Add to MetaCart
Typol is a language to implement Natural Semantics inside the Centaur Programming Environment. We explain why Natural Semantics can be considered as a generalization of the Attribute Grammars formalism. This relationship suggests introducing in the Typol setting some concepts from the Attribute Grammars framework. With these concepts, we can provide specialized evaluators to some classes of Typol programs, instead of the general Prolog machine currently used to execute such programs. More precisely, we prove that under acceptable conditions, the unification process is no longer required and can be replaced by a simple patternmatching mechanism. From this proof method, we deduce a functional implementation of Typol programs. We also propose a language construct called CondMatch, that makes it easier to automatically translate a Typol program into a Lisp function.
Deriving Mixed Evaluation from Standard Evaluation for a Simple Functional Language
, 1989
"... ..."
Program Extraction in a Logical Framework Setting
 IN PROCEEDINGS OF THE 5TH INTERNATIONAL CONFERENCE ON LOGIC PROGRAMMING AND AUTOMATED REASONING
, 1994
"... This paper demonstrates a method of extracting programs from formal deductions represented in the Edinburgh Logical Framework, using the Elf programming language. Deductive systems are given for the extraction of simple types from formulas of firstorder arithmetic and of calculus terms from n ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
This paper demonstrates a method of extracting programs from formal deductions represented in the Edinburgh Logical Framework, using the Elf programming language. Deductive systems are given for the extraction of simple types from formulas of firstorder arithmetic and of calculus terms from natural deduction proofs. These systems are easily encoded in Elf, yielding an implementation of extraction that corresponds to modified realizability. Because extraction is itself implemented as a set of formal deductive systems, some of its correctness properties can be partially represented and mechanically checked in the Elf language.
 Allen Newell, Limitations of the Current Stock of Ideas for Problem Solving [New65]
"... We can look at the current field of problem solving by computers as a series of ideas about how to present a problem. If a problem can be cast into one of these representations in a natural way, then it is possible to manipulate it and stand some chance of solving it. ..."
Abstract
 Add to MetaCart
We can look at the current field of problem solving by computers as a series of ideas about how to present a problem. If a problem can be cast into one of these representations in a natural way, then it is possible to manipulate it and stand some chance of solving it.
unknown title
"... We sketch a methodology for the verification of compiler correctness based on the LF Logical Framework as realized within the Elf programming language. We have applied this technique to specify, implement, and verify a compiler from a simple functional programming Machine (CAM). 1 ..."
Abstract
 Add to MetaCart
(Show Context)
We sketch a methodology for the verification of compiler correctness based on the LF Logical Framework as realized within the Elf programming language. We have applied this technique to specify, implement, and verify a compiler from a simple functional programming Machine (CAM). 1
Program Extraction in a Logical Framework Setting
 In Proceedings of the 5th International Conference on Logic Programming and Automated Reasoning
, 1994
"... : This paper demonstrates a method of extracting programs from formal deductions represented in the Edinburgh Logical Framework, using the Elf programming language. Deductive systems are given for the extraction of simple types from formulas of firstorder arithmetic and of calculus terms from natu ..."
Abstract
 Add to MetaCart
(Show Context)
: This paper demonstrates a method of extracting programs from formal deductions represented in the Edinburgh Logical Framework, using the Elf programming language. Deductive systems are given for the extraction of simple types from formulas of firstorder arithmetic and of calculus terms from natural deduction proofs. These systems are easily encoded in Elf, yielding an implementation of extraction that corresponds to modified realizability. Because extraction is itself implemented as a set of formal deductive systems, some of its correctness properties can be partially represented and mechanically checked in the Elf language. Keywords: Program extraction, Realisability, Typed lambda calculus, Logical framework, Higherorder logic programming language, Elf, Edinburgh Logical Framework, Natural deduction, Natural semantics (R'esum'e : tsvp) Unite de recherche INRIA SophiaAntipolis 2004 route des Lucioles, BP 93, 06902 SOPHIAANTIPOLIS Cedex (France) Telephone : (33) 93 65 77 77  ...
Program Derivation by Proof Transformation
, 1993
"... In the proofsasprograms methodology, verified programs are developed through theoremproving in a constructive logic. Under this approach, the theoremproving process can be regarded as a program derivation process. The merits of this approach to programming are twofold. First, working with proofs ..."
Abstract
 Add to MetaCart
(Show Context)
In the proofsasprograms methodology, verified programs are developed through theoremproving in a constructive logic. Under this approach, the theoremproving process can be regarded as a program derivation process. The merits of this approach to programming are twofold. First, working with proofs instead of programs concentrates the developer's effort on the intellectually difficult part of the development process: understanding, solving, and explaining the solution to a mathematical problem. Second, the proof provides a formal and trustworthy basis for an explanation of the program. This thesis investigates the use of proof transformations as a way to address important concerns in program derivation that are not addressed by theoremproving alone. One difficulty with the proofsasprograms strategy arises from the conflict between elegance and efficiency. A simple, elegant proof may lead to an inefficient program. A more complex proof that corresponds to a more efficient program ma...