A Proof Theoretical Account of Continuation Passing Style [chapter]

Ichiro Ogata
2002 Lecture Notes in Computer Science  
We study "classical proofs as programs" paradigm in Call-By-Value (CBV) setting. Specifically, we show the CBV normalization for CND (Parigot 92) can be simulated by the cut-elimination procedure for LKQ (Danos-Joinet-Schellinx 93), namely the q-protocol. We use proof-term assignment system to prove this fact. The term calculus for CND we use follows Parigot's λµ-calculus with new CBV normalization procedure. A new term calculus for LKQ is presented as a variant of λ-calculus with a
more » ... t. We then define a translation from CND into LKQ and prove simulation theorem. We also show the translation we use can be thought of a familiar CBV CPS-translation without translation on types. keywords: Classical Logic, Classical Natural Deduction, LKQ, Call-By-Value, CPS-translation, classical proof theory. µ-substitution. This shows the duality of values and evaluation contexts in CBV λµ-calculus for the first time. Our λµ v , being different from Ong-Stewart's, does not contain CBV λ-calculus as a sub-calculus. Instead we present a simple encoding of CBV λ-calculus into our λµ v . See appendix D. Moreover, with the help of this refinement, we also get simple, intuitive proof of the CR-property by using standard parallel reduction method [25] . LKQ: LKQ is a variant of Gentzen's sequent-style classical logic LK. Gentzen's Hauptsatz states that any LK proof with cuts can be reduced into a cut-free proof. Numerous cut-elimination procedures have been described in the literature. However, all of them have problems in common -they intrinsically have non-deterministic choices which lead us to critical pairs. LKQ is an answer. It is equipped with SN and CR cut-elimination procedure, called the q-protocol [5]. CR property is recovered by adding some restrictions on logical rules of LK. Despite of these restrictions, soundness and completeness w.r.t. classical provability is still retained. What we do here is to develop a term calculus for LKQ, namely λµ let . The set of reduction rules of λµ let are set to be compatible to the q-protocol. It is presented as a classically typed λ-calculus with a let-construct. Translation and Simulation: The main result of this paper is the simulation theorem. The CBV normalization procedure for Classical Natural Deduction (CND)[17] is shown to be simulated by the q-protocol. First, we define a translation from λµ v to λµ let . This translation can be considered as a variant of CBV CPS-translation without translation on types. In previously known CPS-translations, there are so called administrative reductions in the target language [19] . That is, some superfluous redexes are produced by the translation, and they have nothing to do with any redexes in the source language. What we do here is to develop a neat translation (double colon translation) so that such unnecessary redex are not produced. This leads us to establish a quite tight reduction relation between normalization and cut-elimination. We further show that one can recover the Hofmann-Streicher-style [9] by considering intuitionistic decoration of LKQ (i.e., embedding classical types into intuitionistic types). With the help of this translation, CBV λµ v is shown to be simulated by λ-calculus with CBN strategy. This exactly is the Plotkin's CPS simulation theorem [19] . Our CPS-translation is general in the sense that we can also recover Plotkin-style [19] and Fischer-style [6] CPS-translation by considering different intuitionistic decoration (i.e., different embedding on classical types) of LKQ. Furthermore, considering linear decoration of LKQ, one can even use linear logic (and its cut-elimination) as a target language of CPS-translation. See appendix E and F for details. Since Griffin's pioneering work [8], it is known that there is a connection between the CPS and classical logic. Our work directly relates the classical logic (CND and LKQ) and the CPS.
doi:10.1007/3-540-45793-3_33 fatcat:vckx2etkdrb55m6sbj37wgu3gm