Towards mechanical metamathematics
Journal of Automated Reasoning
Implementing mathematics with the Nuprl proof development system
Implementing mathematics with the Nuprl proof development system
PX: a computational logic
Synthesis of ML programs in the system Coq
Journal of Symbolic Computation - Special issue on automatic programming
Aspects of the computational content of proofs
Aspects of the computational content of proofs
Classical Propositional Decidability via Nuprl Proof Extraction
Proceedings of the 11th International Conference on Theorem Proving in Higher Order Logics
Tableaux for Intuitionistic Predicate Logic as Metatheory
TABLEAUX '95 Proceedings of the 4th International Workshop on Theorem Proving with Analytic Tableaux and Related Methods
Intuitionistic Proof Transformations and Their Application to Constructive Program Synthesis
AISC '98 Proceedings of the International Conference on Artificial Intelligence and Symbolic Computation
Moving proofs-as-programs into practice
ASE '97 Proceedings of the 12th international conference on Automated software engineering (formerly: KBSE)
Decidability extracted: synthesizing "correct-by-construction" decision procedures from constructive proofs
Extracting General Recursive Program Schemes in Nuprl's Type Theory
LOPSTR '01 Selected papers from the 11th International Workshop on Logic Based Program Synthesis and Transformation
A mechanically verified, sound and complete theorem prover for first order logic
TPHOLs'05 Proceedings of the 18th international conference on Theorem Proving in Higher Order Logics
Hi-index | 0.00 |
This paper presents a formalization of a sequent presentation of intuitionisitic propositional logic and proof of decidability. The proof is implemented in the Nuprl system and the resulting proof object yields a "correct-by-construction" program for deciding intuitionisitc propositional sequents. The extracted program turns out to be an implementation of the tableau algorithm. If the argument to the resulting decision procedure is a valid sequent, a formal proof of that fact is returned, otherwise a counter-example in the form of a Kripke Countermodel is returned. The formalization roughly follows Aitken, Constable and Underwood's presentation in [1] but a number of adjustments and corrections have been made to ensure the extracted program is clean (no non-computational junk) and efficient.