Implementing mathematics with the Nuprl proof development system
Implementing mathematics with the Nuprl proof development system
PX: a computational logic
Extracting &ohgr;'s programs from proofs in the calculus of constructions
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Synthesis of ML programs in the system Coq
Journal of Symbolic Computation - Special issue on automatic programming
A higher-order interpretation of deductive tableau
Journal of Symbolic Computation
The Warshall Algorithm and Dickson's Lemma: Two Examples of Realistic Program Extraction
Journal of Automated Reasoning
Studies of a Theory of Specifications with Built-in Program Extraction
Journal of Automated Reasoning
Program Extraction in a Logical Framework Setting
LPAR '94 Proceedings of the 5th International Conference on Logic Programming and Automated Reasoning
Deliverables: A Categorial Approach to Program Development in Type Theory
MFCS '93 Proceedings of the 18th International Symposium on Mathematical Foundations of Computer Science
Type Classes and Overloading in Higher-Order Logic
TPHOLs '97 Proceedings of the 10th International Conference on Theorem Proving in Higher Order Logics
The 5 Colour Theorem in Isabelle/Isar
TPHOLs '02 Proceedings of the 15th International Conference on Theorem Proving in Higher Order Logics
TYPES '00 Selected papers from the International Workshop on Types for Proofs and Programs
A Mechanized Proof of the Basic Perturbation Lemma
Journal of Automated Reasoning
A Program Result Checker for the Lexical Analysis of the GNU C Compiler
Electronic Notes in Theoretical Computer Science (ENTCS)
Extracting computer algebra programs from statements
EUROCAST'05 Proceedings of the 10th international conference on Computer Aided Systems Theory
Extracting a normalization algorithm in Isabelle/HOL
TYPES'04 Proceedings of the 2004 international conference on Types for Proofs and Programs
Formal program optimization in nuprl using computational equivalence and partial types
ITP'13 Proceedings of the 4th international conference on Interactive Theorem Proving
Shared-memory multiprocessing for interactive theorem proving
ITP'13 Proceedings of the 4th international conference on Interactive Theorem Proving
Hi-index | 0.01 |
Based on a representation of primitive proof objects as λ-terms, which has been built into the theorem prover Isabelle recently, we propose a generic framework for program extraction. We show how this framework can be used to extract functional programs from proofs conducted in a constructive fragment of the object logic Isabelle/HOL. A characteristic feature of our implementation of program extraction is that it produces both a program and a correctness proof. Since the extracted program is available as a function within the logic, its correctness proof can be checked automatically inside Isabelle.