DocumentCode
2545021
Title
Forcing as a Program Transformation
Author
Miquel, Alexandre
Author_Institution
Lab. d´´Inf. du parallelisme, Ecole Normale Super. de Lyon, Lyon, France
fYear
2011
fDate
21-24 June 2011
Firstpage
197
Lastpage
206
Abstract
This paper is a study of the forcing translation through the proofs as programs correspondence in classical logic, following the methodology introduced by Krivine in . For that, we introduce an extension of (classical) higher-order arithmetic suited to express the forcing translation, called PA ω+. We present the proof system of PA ω+- based on Curry-style proof terms with call/cc - as well as the corresponding classical realizability semantics. Then, given a poset of conditions (represented in PA ω+ as an upwards closed subset of a fixed meet semi-lattice), we define the forcing translation A ⇒ (p ⊢ A) (where A ranges over propositions) and show that the corresponding transformation of proofs is induced by a simple program transformation t ⇒ t* defined on raw proof-terms (i.e. independently from the derivation). From an analysis of the computational behavior of transformed programs, we show how to avoid the cost of the transformation by introducing an extension of Krivine´s abstract machine devoted to the execution of proofs constructed by forcing. We show that this machine induces new classical realizability models and present the corresponding adequacy results.
Keywords
formal logic; set theory; Curry-style proof terms; abstract machine; forcing translation; program transformation; programs correspondence; Analytical models; Cognition; Computational modeling; Context; Cost accounting; Encoding; Equations; Classical Realizability; Curry-Howard; Forcing; Lambda-calculus; Program Transformation;
fLanguage
English
Publisher
ieee
Conference_Titel
Logic in Computer Science (LICS), 2011 26th Annual IEEE Symposium on
Conference_Location
Toronto, ON
ISSN
1043-6871
Print_ISBN
978-1-4577-0451-2
Electronic_ISBN
1043-6871
Type
conf
DOI
10.1109/LICS.2011.47
Filename
5970217
Link To Document