302 articles – 345 references  [version française]
HAL: hal-00695534, version 1

Detailed view  Export this paper
Theoretical Computer Science 435 (2012) 106-138
Böhm theorem and Böhm trees for the Lambda-mu-calculus
Alexis Saurin ( ) 1, 2
(2012-06)

Parigot's λμ-calculus (Parigot, 1992) is now a standard reference about the computational content of classical logic as well as for the formal study of control operators in functional languages. In addition to the fine-grained Curry-Howard correspondence between minimal classical deductions and simply typed λμ-terms and to the ability to encode many usual control operators such as call/cc in the λμ-calculus (in its historical call-by-name presentation or in call-by-value versions), the success of the λμ-calculus comes from its simplicity, its good meta-theoretical properties both as a typed and an untyped calculus (confluence, strong normalization, etc.) as well as the fact that it naturally extends Church's λ-calculus. Though, in 2001, David and Py proved that Böhm's theorem, which is a fundamental result of the untyped λ-calculus, cannot be lifted to Parigot's calculus. In the present article, we exhibit a natural extension to Parigot's calculus, the Λμ-calculus, in which Böhm's property, also known as separation property, can be stated and proved. This is made possible by a careful and detailed analysis of David and Py's proof of non-separability and of the characteristics of the λμ-calculus which break the property: we identify that the crucial point lies in the design of Parigot's λμ-calculus with a twolevel syntax. In addition, we establish a standardization theorem for the extended calculus, deduce a characterization of solvability, describe Λμ-Böhm trees and connect the calculus with stream computing and delimited control.
1:  Preuves, Programmes et Systèmes (PPS)
CNRS : UMR7126 – Université Paris VII - Paris Diderot
2:  PI.R2 (INRIA Paris - Rocquencourt)
INRIA – Université Paris VII - Paris Diderot – CNRS : UMR7126
Computer Science/Logic in Computer Science
λμ-calculus – Böhm theorem – Böhm trees – Classical λ-calculi – (Delimited) control – Infinitary λ-calculus – Separation property – Shift/reset – Streams