Introduction Sequent calculus Natural deduction Results
Curry-Howard isomorphism for sequent calculusat last
Jose Carlos Espırito Santo
Centro de MatematicaUniversidade do Minho
Estonian-Finnish Logic MeetingRakvere, Estonia
14 November 2015
Introduction Sequent calculus Natural deduction Results
Goal
In the same sense as the simply-typed λ-calculus (resp.combinators) corresponds to natural deduction (Hilbertsystems), what variant of the simply-typed lambda-calculusdoes correspond to the sequent calculus for intuitionisticimplicational logic?
Question in the purest form
Clear-cut answer required
More than a term assignment, a computational interpretation
An interpretation of proofs in terms of a functional language,so that, when cut-elimination is rephrased accordingly, ameaningful, perhaps familiar, computational behavior isrecognized
Introduction Sequent calculus Natural deduction Results
Goal
In the same sense as the simply-typed λ-calculus (resp.combinators) corresponds to natural deduction (Hilbertsystems),
what variant of the simply-typed lambda-calculusdoes correspond to the sequent calculus for intuitionisticimplicational logic?
Question in the purest form
Clear-cut answer required
More than a term assignment, a computational interpretation
An interpretation of proofs in terms of a functional language,so that, when cut-elimination is rephrased accordingly, ameaningful, perhaps familiar, computational behavior isrecognized
Introduction Sequent calculus Natural deduction Results
Goal
In the same sense as the simply-typed λ-calculus (resp.combinators) corresponds to natural deduction (Hilbertsystems), what variant of the simply-typed lambda-calculusdoes correspond to the sequent calculus for intuitionisticimplicational logic?
Question in the purest form
Clear-cut answer required
More than a term assignment, a computational interpretation
An interpretation of proofs in terms of a functional language,so that, when cut-elimination is rephrased accordingly, ameaningful, perhaps familiar, computational behavior isrecognized
Introduction Sequent calculus Natural deduction Results
Goal
In the same sense as the simply-typed λ-calculus (resp.combinators) corresponds to natural deduction (Hilbertsystems), what variant of the simply-typed lambda-calculusdoes correspond to the sequent calculus for intuitionisticimplicational logic?
Question in the purest form
Clear-cut answer required
More than a term assignment, a computational interpretation
An interpretation of proofs in terms of a functional language,so that, when cut-elimination is rephrased accordingly, ameaningful, perhaps familiar, computational behavior isrecognized
Introduction Sequent calculus Natural deduction Results
Goal
In the same sense as the simply-typed λ-calculus (resp.combinators) corresponds to natural deduction (Hilbertsystems), what variant of the simply-typed lambda-calculusdoes correspond to the sequent calculus for intuitionisticimplicational logic?
Question in the purest form
Clear-cut answer required
More than a term assignment, a computational interpretation
An interpretation of proofs in terms of a functional language,so that, when cut-elimination is rephrased accordingly, ameaningful, perhaps familiar, computational behavior isrecognized
Introduction Sequent calculus Natural deduction Results
Goal
In the same sense as the simply-typed λ-calculus (resp.combinators) corresponds to natural deduction (Hilbertsystems), what variant of the simply-typed lambda-calculusdoes correspond to the sequent calculus for intuitionisticimplicational logic?
Question in the purest form
Clear-cut answer required
More than a term assignment, a computational interpretation
An interpretation of proofs in terms of a functional language,so that, when cut-elimination is rephrased accordingly, ameaningful, perhaps familiar, computational behavior isrecognized
Introduction Sequent calculus Natural deduction Results
An open question
Girard, 1989: “From an algorithmic viewpoint, the sequentcalculus has no Curry-Howard isomorphism, because of themultitude of ways of writing the same proof”
Sørensen-Urzykzyn, 2006: sequent calculus corresponds toexplicit substitutions, but “this is just the beginning of thestory”
Wikipedia: “The structure of sequent calculus relates to acalculus whose structure is close to the one of some abstractmachines”
Introduction Sequent calculus Natural deduction Results
An open question
Girard, 1989: “From an algorithmic viewpoint, the sequentcalculus has no Curry-Howard isomorphism, because of themultitude of ways of writing the same proof”
Sørensen-Urzykzyn, 2006: sequent calculus corresponds toexplicit substitutions, but “this is just the beginning of thestory”
Wikipedia: “The structure of sequent calculus relates to acalculus whose structure is close to the one of some abstractmachines”
Introduction Sequent calculus Natural deduction Results
An open question
Girard, 1989: “From an algorithmic viewpoint, the sequentcalculus has no Curry-Howard isomorphism, because of themultitude of ways of writing the same proof”
Sørensen-Urzykzyn, 2006: sequent calculus corresponds toexplicit substitutions, but “this is just the beginning of thestory”
Wikipedia: “The structure of sequent calculus relates to acalculus whose structure is close to the one of some abstractmachines”
Introduction Sequent calculus Natural deduction Results
An open question
Girard, 1989: “From an algorithmic viewpoint, the sequentcalculus has no Curry-Howard isomorphism, because of themultitude of ways of writing the same proof”
Sørensen-Urzykzyn, 2006: sequent calculus corresponds toexplicit substitutions, but “this is just the beginning of thestory”
Wikipedia: “The structure of sequent calculus relates to acalculus whose structure is close to the one of some abstractmachines”
Introduction Sequent calculus Natural deduction Results
Basic unanswered questions
What does a variable stand for in a sequent calculus proofexpression?
What is the related substitution operation?
What is co-control?
Introduction Sequent calculus Natural deduction Results
Basic unanswered questions
What does a variable stand for in a sequent calculus proofexpression?
What is the related substitution operation?
What is co-control?
Introduction Sequent calculus Natural deduction Results
Basic unanswered questions
What does a variable stand for in a sequent calculus proofexpression?
What is the related substitution operation?
What is co-control?
Introduction Sequent calculus Natural deduction Results
Plan
Sequent calculus λµ
Internal interpretation
Natural deduction λlet
External interpretationExplains co-control, justifies design of λµ
Results
Introduction Sequent calculus Natural deduction Results
SEQUENT CALCULUS
Introduction Sequent calculus Natural deduction Results
Preliminaries
Overview of λµ
System λµ: formal vector notation with first-class co-control
Generalization of (the essence of) λ-calculus
Re-interpretation of a 15-years-old result
The λ-calculus has an isomorphic copy inside λThis copy is a formal vector notation
Dualization of first-class control as found in λµ-calculus
Concept of co-continuationµx .t (known from λµµ) becomes a co-control operator
Variables in proof expressions stand for co-continuations
λµ is developed hand-in-hand with isomorphic naturaldeduction system λlet
Introduction Sequent calculus Natural deduction Results
Preliminaries
Overview of λµ
System λµ: formal vector notation with first-class co-control
Generalization of (the essence of) λ-calculus
Re-interpretation of a 15-years-old result
The λ-calculus has an isomorphic copy inside λThis copy is a formal vector notation
Dualization of first-class control as found in λµ-calculus
Concept of co-continuationµx .t (known from λµµ) becomes a co-control operator
Variables in proof expressions stand for co-continuations
λµ is developed hand-in-hand with isomorphic naturaldeduction system λlet
Introduction Sequent calculus Natural deduction Results
Preliminaries
Overview of λµ
System λµ: formal vector notation with first-class co-control
Generalization of (the essence of) λ-calculus
Re-interpretation of a 15-years-old result
The λ-calculus has an isomorphic copy inside λThis copy is a formal vector notation
Dualization of first-class control as found in λµ-calculus
Concept of co-continuationµx .t (known from λµµ) becomes a co-control operator
Variables in proof expressions stand for co-continuations
λµ is developed hand-in-hand with isomorphic naturaldeduction system λlet
Introduction Sequent calculus Natural deduction Results
Preliminaries
Overview of λµ
System λµ: formal vector notation with first-class co-control
Generalization of (the essence of) λ-calculus
Re-interpretation of a 15-years-old result
The λ-calculus has an isomorphic copy inside λThis copy is a formal vector notation
Dualization of first-class control as found in λµ-calculus
Concept of co-continuationµx .t (known from λµµ) becomes a co-control operator
Variables in proof expressions stand for co-continuations
λµ is developed hand-in-hand with isomorphic naturaldeduction system λlet
Introduction Sequent calculus Natural deduction Results
Preliminaries
Overview of λµ
System λµ: formal vector notation with first-class co-control
Generalization of (the essence of) λ-calculus
Re-interpretation of a 15-years-old result
The λ-calculus has an isomorphic copy inside λThis copy is a formal vector notation
Dualization of first-class control as found in λµ-calculus
Concept of co-continuationµx .t (known from λµµ) becomes a co-control operator
Variables in proof expressions stand for co-continuations
λµ is developed hand-in-hand with isomorphic naturaldeduction system λlet
Introduction Sequent calculus Natural deduction Results
Preliminaries
Overview of λµ
System λµ: formal vector notation with first-class co-control
Generalization of (the essence of) λ-calculus
Re-interpretation of a 15-years-old result
The λ-calculus has an isomorphic copy inside λThis copy is a formal vector notation
Dualization of first-class control as found in λµ-calculus
Concept of co-continuationµx .t (known from λµµ) becomes a co-control operator
Variables in proof expressions stand for co-continuations
λµ is developed hand-in-hand with isomorphic naturaldeduction system λlet
Introduction Sequent calculus Natural deduction Results
Preliminaries
Overview of λµ
System λµ: formal vector notation with first-class co-control
Generalization of (the essence of) λ-calculus
Re-interpretation of a 15-years-old result
The λ-calculus has an isomorphic copy inside λThis copy is a formal vector notation
Dualization of first-class control as found in λµ-calculus
Concept of co-continuationµx .t (known from λµµ) becomes a co-control operator
Variables in proof expressions stand for co-continuations
λµ is developed hand-in-hand with isomorphic naturaldeduction system λlet
Introduction Sequent calculus Natural deduction Results
Preliminaries
Herbelin’s λ-calculus
Permutation-free, focused fragment of sequent calculus
Two-sorted syntax
Proof terms t and lists lSequents Γ⇒ t : A and Γ|A⇒ l : B
Sketch of two computational interpretationsInternal interpretation
Lists are stacksCuts tl are states in a rudimentary abstract machine
External interpretation
Lists l = u1 :: · · · :: um :: [] are “evaluationcontexts”/continuations [·]N1 · · ·Nm
Cuts tl denote M filled in [·]N1 · · ·Nm
S.c. versus n.d.: inversion of associativity of non-abstractions
N.d. is left associative (· · · (MN1) · · ·Nm)S.c. is right associative t(u1 :: · · · (um :: []) · · · )
Introduction Sequent calculus Natural deduction Results
Preliminaries
Herbelin’s λ-calculus
Permutation-free, focused fragment of sequent calculus
Two-sorted syntax
Proof terms t and lists lSequents Γ⇒ t : A and Γ|A⇒ l : B
Sketch of two computational interpretationsInternal interpretation
Lists are stacksCuts tl are states in a rudimentary abstract machine
External interpretation
Lists l = u1 :: · · · :: um :: [] are “evaluationcontexts”/continuations [·]N1 · · ·Nm
Cuts tl denote M filled in [·]N1 · · ·Nm
S.c. versus n.d.: inversion of associativity of non-abstractions
N.d. is left associative (· · · (MN1) · · ·Nm)S.c. is right associative t(u1 :: · · · (um :: []) · · · )
Introduction Sequent calculus Natural deduction Results
Preliminaries
Herbelin’s λ-calculus
Permutation-free, focused fragment of sequent calculus
Two-sorted syntax
Proof terms t and lists lSequents Γ⇒ t : A and Γ|A⇒ l : B
Sketch of two computational interpretationsInternal interpretation
Lists are stacksCuts tl are states in a rudimentary abstract machine
External interpretation
Lists l = u1 :: · · · :: um :: [] are “evaluationcontexts”/continuations [·]N1 · · ·Nm
Cuts tl denote M filled in [·]N1 · · ·Nm
S.c. versus n.d.: inversion of associativity of non-abstractions
N.d. is left associative (· · · (MN1) · · ·Nm)S.c. is right associative t(u1 :: · · · (um :: []) · · · )
Introduction Sequent calculus Natural deduction Results
Preliminaries
Herbelin’s λ-calculus
Permutation-free, focused fragment of sequent calculus
Two-sorted syntax
Proof terms t and lists lSequents Γ⇒ t : A and Γ|A⇒ l : B
Sketch of two computational interpretationsInternal interpretation
Lists are stacksCuts tl are states in a rudimentary abstract machine
External interpretation
Lists l = u1 :: · · · :: um :: [] are “evaluationcontexts”/continuations [·]N1 · · ·Nm
Cuts tl denote M filled in [·]N1 · · ·Nm
S.c. versus n.d.: inversion of associativity of non-abstractions
N.d. is left associative (· · · (MN1) · · ·Nm)S.c. is right associative t(u1 :: · · · (um :: []) · · · )
Introduction Sequent calculus Natural deduction Results
Preliminaries
Herbelin’s λ-calculus
Permutation-free, focused fragment of sequent calculus
Two-sorted syntax
Proof terms t and lists lSequents Γ⇒ t : A and Γ|A⇒ l : B
Sketch of two computational interpretationsInternal interpretation
Lists are stacksCuts tl are states in a rudimentary abstract machine
External interpretation
Lists l = u1 :: · · · :: um :: [] are “evaluationcontexts”/continuations [·]N1 · · ·Nm
Cuts tl denote M filled in [·]N1 · · ·Nm
S.c. versus n.d.: inversion of associativity of non-abstractions
N.d. is left associative (· · · (MN1) · · ·Nm)S.c. is right associative t(u1 :: · · · (um :: []) · · · )
Introduction Sequent calculus Natural deduction Results
Preliminaries
Vector notation
RecallM,N ::= λx .M (1st form)
| x ~N (2nd form)
| (λx .M)N ~N (3rd form)
Relaxed vector notation: 3rd form becomes M ~N
This introduces the need for vector bookkeeping
M[] = M
(x ~Q)N ~N = x( ~QN ~N)
(P ~Q)N ~N = P( ~QN ~N)
Introduction Sequent calculus Natural deduction Results
Preliminaries
Vector notation
RecallM,N ::= λx .M (1st form)
| x ~N (2nd form)
| (λx .M)N ~N (3rd form)
Relaxed vector notation: 3rd form becomes M ~N
This introduces the need for vector bookkeeping
M[] = M
(x ~Q)N ~N = x( ~QN ~N)
(P ~Q)N ~N = P( ~QN ~N)
Introduction Sequent calculus Natural deduction Results
Preliminaries
Vector notation
RecallM,N ::= λx .M (1st form)
| x ~N (2nd form)
| (λx .M)N ~N (3rd form)
Relaxed vector notation: 3rd form becomes M ~N
This introduces the need for vector bookkeeping
M[] = M
(x ~Q)N ~N = x( ~QN ~N)
(P ~Q)N ~N = P( ~QN ~N)
Introduction Sequent calculus Natural deduction Results
Preliminaries
Vector notation
RecallM,N ::= λx .M (1st form)
| x ~N (2nd form)
| (λx .M)N ~N (3rd form)
Relaxed vector notation: 3rd form becomes M ~N
This introduces the need for vector bookkeeping
M[] = M
(x ~Q)N ~N = x( ~QN ~N)
(P ~Q)N ~N = P( ~QN ~N)
Introduction Sequent calculus Natural deduction Results
Preliminaries
A variant of Parigot’s λµ-calculus...
... called λµ-calculus
... whose management of sequents’ RHS we want to “dualize”
Control points M a, where a, b, · · · are co-variables
Control operator µa.M
Control operation: if C = ([·]N1 · · ·Nm) b
C[µa.M]→ [C/a]M
Context substitution (rather than “structural substitution”)
[C/a](M a) = C[M ′] where M ′ = [C/a]M
Introduction Sequent calculus Natural deduction Results
Preliminaries
A variant of Parigot’s λµ-calculus...
... called λµ-calculus
... whose management of sequents’ RHS we want to “dualize”
Control points M a, where a, b, · · · are co-variables
Control operator µa.M
Control operation: if C = ([·]N1 · · ·Nm) b
C[µa.M]→ [C/a]M
Context substitution (rather than “structural substitution”)
[C/a](M a) = C[M ′] where M ′ = [C/a]M
Introduction Sequent calculus Natural deduction Results
Preliminaries
A variant of Parigot’s λµ-calculus...
... called λµ-calculus
... whose management of sequents’ RHS we want to “dualize”
Control points M a, where a, b, · · · are co-variables
Control operator µa.M
Control operation: if C = ([·]N1 · · ·Nm) b
C[µa.M]→ [C/a]M
Context substitution (rather than “structural substitution”)
[C/a](M a) = C[M ′] where M ′ = [C/a]M
Introduction Sequent calculus Natural deduction Results
Preliminaries
A variant of Parigot’s λµ-calculus...
... called λµ-calculus
... whose management of sequents’ RHS we want to “dualize”
Control points M a, where a, b, · · · are co-variables
Control operator µa.M
Control operation: if C = ([·]N1 · · ·Nm) b
C[µa.M]→ [C/a]M
Context substitution (rather than “structural substitution”)
[C/a](M a) = C[M ′] where M ′ = [C/a]M
Introduction Sequent calculus Natural deduction Results
Preliminaries
A variant of Parigot’s λµ-calculus...
... called λµ-calculus
... whose management of sequents’ RHS we want to “dualize”
Control points M a, where a, b, · · · are co-variables
Control operator µa.M
Control operation: if C = ([·]N1 · · ·Nm) b
C[µa.M]→ [C/a]M
Context substitution (rather than “structural substitution”)
[C/a](M a) = C[M ′] where M ′ = [C/a]M
Introduction Sequent calculus Natural deduction Results
Preliminaries
A variant of Parigot’s λµ-calculus...
... called λµ-calculus
... whose management of sequents’ RHS we want to “dualize”
Control points M a, where a, b, · · · are co-variables
Control operator µa.M
Control operation: if C = ([·]N1 · · ·Nm) b
C[µa.M]→ [C/a]M
Context substitution (rather than “structural substitution”)
[C/a](M a) = C[M ′] where M ′ = [C/a]M
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Syntax of proof expressions
(Terms) t, u, v ::= λx .t (1st form)| x k (2nd form, co-control point)| tk (3rd form)
(Generalized vectors) k ::= [] (empty vector)| µx .v (co-control operator)| u :: k (vector constructor)
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Syntax of proof expressions
(Terms) t, u, v ::= λx .t (1st form)| x k (2nd form, co-control point)| tk (3rd form)
(Generalized vectors) k ::= [] (empty vector)| µx .v (co-control operator)| u :: k (vector constructor)
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Typing
Recall
(terms) t, u, v ::= λx .t | x k | tk(gen. vectors) k ::= [] | µx .t | u :: k
Sequents Γ ` t : A and Γ|A ` k : A
Typing/inference rules
AxΓ|A ` [] : A
CutΓ ` t : A Γ|A ` k : B
Γ ` tk : B
PassΓ, x : A|A ` k : BΓ, x : A ` x k : B Act Γ, x : A ` v : B
Γ|A ` µx .v : B
⊃LΓ ` u : A Γ|B ` k : C
Γ|A ⊃ B ` u :: k : C⊃R
Γ, x : A ` t : BΓ ` λx .t : A ⊃ B
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Typing
Recall
(terms) t, u, v ::= λx .t | x k | tk(gen. vectors) k ::= [] | µx .t | u :: k
Sequents Γ ` t : A and Γ|A ` k : A
Typing/inference rules
AxΓ|A ` [] : A
CutΓ ` t : A Γ|A ` k : B
Γ ` tk : B
PassΓ, x : A|A ` k : BΓ, x : A ` x k : B Act Γ, x : A ` v : B
Γ|A ` µx .v : B
⊃LΓ ` u : A Γ|B ` k : C
Γ|A ⊃ B ` u :: k : C⊃R
Γ, x : A ` t : BΓ ` λx .t : A ⊃ B
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Typing
Recall
(terms) t, u, v ::= λx .t | x k | tk(gen. vectors) k ::= [] | µx .t | u :: k
Sequents Γ ` t : A and Γ|A ` k : A
Typing/inference rules
AxΓ|A ` [] : A
CutΓ ` t : A Γ|A ` k : B
Γ ` tk : B
PassΓ, x : A|A ` k : BΓ, x : A ` x k : B Act Γ, x : A ` v : B
Γ|A ` µx .v : B
⊃LΓ ` u : A Γ|B ` k : C
Γ|A ⊃ B ` u :: k : C⊃R
Γ, x : A ` t : BΓ ` λx .t : A ⊃ B
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Derived syntax
Concatenation of two generalized vectors k@k ′
[]@k ′ = k ′
(u :: k)@k ′ = u :: (k@k ′)(µx .t)@k ′ = µx .tk ′
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Derived syntax
Concatenation of two generalized vectors k@k ′
[]@k ′ = k ′
(u :: k)@k ′ = u :: (k@k ′)(µx .t)@k ′ = µx .tk ′
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Derived syntax: co-continuations
Recall
(terms) t, u, v ::= λx .t | x k | tk(gen. vectors) k ::= [] | µx .t | u :: k
Co-continuations
H ::= x [·] | t([·]) |H[u :: [·]]
Hence co-continuations have the forms
x (u1 :: · · · :: um :: [·]) or t(u1 :: · · · :: um :: [·]) (m ≥ 0)that is, a non-abstraction with a hole at the right endhole expects a vector
Co-continuation substitution [H/x ]t and [H/x ]k
[H/x ](x k) = H[k ′] with k ′ = [H/x ]k
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Derived syntax: co-continuations
Recall
(terms) t, u, v ::= λx .t | x k | tk(gen. vectors) k ::= [] | µx .t | u :: k
Co-continuations
H ::= x [·] | t([·]) |H[u :: [·]]
Hence co-continuations have the forms
x (u1 :: · · · :: um :: [·]) or t(u1 :: · · · :: um :: [·]) (m ≥ 0)that is, a non-abstraction with a hole at the right endhole expects a vector
Co-continuation substitution [H/x ]t and [H/x ]k
[H/x ](x k) = H[k ′] with k ′ = [H/x ]k
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Derived syntax: co-continuations
Recall
(terms) t, u, v ::= λx .t | x k | tk(gen. vectors) k ::= [] | µx .t | u :: k
Co-continuations
H ::= x [·] | t([·]) |H[u :: [·]]
Hence co-continuations have the forms
x (u1 :: · · · :: um :: [·]) or t(u1 :: · · · :: um :: [·]) (m ≥ 0)that is, a non-abstraction with a hole at the right endhole expects a vector
Co-continuation substitution [H/x ]t and [H/x ]k
[H/x ](x k) = H[k ′] with k ′ = [H/x ]k
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Derived syntax: co-continuations
Recall
(terms) t, u, v ::= λx .t | x k | tk(gen. vectors) k ::= [] | µx .t | u :: k
Co-continuations
H ::= x [·] | t([·]) |H[u :: [·]]
Hence co-continuations have the forms
x (u1 :: · · · :: um :: [·]) or t(u1 :: · · · :: um :: [·]) (m ≥ 0)that is, a non-abstraction with a hole at the right endhole expects a vector
Co-continuation substitution [H/x ]t and [H/x ]k
[H/x ](x k) = H[k ′] with k ′ = [H/x ]k
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Reduction
Recall
(terms) t, u, v ::= λx .t | x k | tk(gen. vectors) k ::= [] | µx .t | u :: k
Reduction rules
(β) (λx .t)(u :: k) → (u(µx .t))k(µ) H[µx .t] → [H/x ]t(ε) t[] → t
(π1) (x k)k ′ → x (k@k ′)(π2) (tk)k ′ → t(k@k ′)
Interp: formal vector notation with first-class co-controlβ: function callµ: co-control operationε and πi : vector bookkeeping in relaxed vector notation
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Reduction
Recall
(terms) t, u, v ::= λx .t | x k | tk(gen. vectors) k ::= [] | µx .t | u :: k
Reduction rules
(β) (λx .t)(u :: k) → (u(µx .t))k(µ) H[µx .t] → [H/x ]t(ε) t[] → t
(π1) (x k)k ′ → x (k@k ′)(π2) (tk)k ′ → t(k@k ′)
Interp: formal vector notation with first-class co-controlβ: function callµ: co-control operationε and πi : vector bookkeeping in relaxed vector notation
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Reduction
Recall
(terms) t, u, v ::= λx .t | x k | tk(gen. vectors) k ::= [] | µx .t | u :: k
Reduction rules
(β) (λx .t)(u :: k) → (u(µx .t))k(µ) H[µx .t] → [H/x ]t(ε) t[] → t
(π1) (x k)k ′ → x (k@k ′)(π2) (tk)k ′ → t(k@k ′)
Interp: formal vector notation with first-class co-controlβ: function callµ: co-control operationε and πi : vector bookkeeping in relaxed vector notation
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Reduction
Recall the µ-rule: H[µx .t]→ [H/x ]t
Partition of µ
(ρ) y (µx .t) → [y ([·])/x ]t(σ) t(µx .t) → [t([·])/x ]t(τ) H[u :: µx .t] → [H[u :: [·]]/x ]t
Logical procedurescut-elimination β, σ, ε, π
µ-elimination = co-control ρ, τ, σpermutation τ, σ, ε, πfocalization ρ, τ
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Reduction
Recall the µ-rule: H[µx .t]→ [H/x ]t
Partition of µ
(ρ) y (µx .t) → [y ([·])/x ]t(σ) t(µx .t) → [t([·])/x ]t(τ) H[u :: µx .t] → [H[u :: [·]]/x ]t
Logical procedurescut-elimination β, σ, ε, π
µ-elimination = co-control ρ, τ, σpermutation τ, σ, ε, πfocalization ρ, τ
Introduction Sequent calculus Natural deduction Results
The λµ-calculus
Reduction
Recall the µ-rule: H[µx .t]→ [H/x ]t
Partition of µ
(ρ) y (µx .t) → [y ([·])/x ]t(σ) t(µx .t) → [t([·])/x ]t(τ) H[u :: µx .t] → [H[u :: [·]]/x ]t
Logical procedurescut-elimination β, σ, ε, π
µ-elimination = co-control ρ, τ, σpermutation τ, σ, ε, πfocalization ρ, τ
Introduction Sequent calculus Natural deduction Results
NATURAL DEDUCTION
Introduction Sequent calculus Natural deduction Results
Preliminaries
Developing natural deduction
Bidirectional syntax
Let-expressions (“Lets” vs cuts)
Lets vs explicit substitutions
Isomorphic to sequent calculus
Introduction Sequent calculus Natural deduction Results
Preliminaries
Developing natural deduction
Bidirectional syntax
Let-expressions (“Lets” vs cuts)
Lets vs explicit substitutions
Isomorphic to sequent calculus
Introduction Sequent calculus Natural deduction Results
Preliminaries
Developing natural deduction
Bidirectional syntax
Let-expressions (“Lets” vs cuts)
Lets vs explicit substitutions
Isomorphic to sequent calculus
Introduction Sequent calculus Natural deduction Results
Preliminaries
Developing natural deduction
Bidirectional syntax
Let-expressions (“Lets” vs cuts)
Lets vs explicit substitutions
Isomorphic to sequent calculus
Introduction Sequent calculus Natural deduction Results
The system
Syntax of proof terms of λlet
(Terms) M,N,P ::= λx .M (abstraction)| app(H) (applicative term)| let x := H inP (let-expression)
(Heads) H ::= x (variable)| hd(M) (head term)| HN (application)
Introduction Sequent calculus Natural deduction Results
The system
Syntax of proof terms of λlet
(Terms) M,N,P ::= λx .M (abstraction)| app(H) (applicative term)| let x := H inP (let-expression)
(Heads) H ::= x (variable)| hd(M) (head term)| HN (application)
Introduction Sequent calculus Natural deduction Results
The system
Typing in λlet
Recall
(Terms) M,N,P ::= λx .M | app(H) | let x := H inP(Heads) H ::= x | hd(M) |HN
Sequents Γ ` M : A and Γ B H : A
Rules
Γ, x : AB x : AHyp
Γ B H : A Γ, x : A ` P : B
Γ ` let x := H inP : BLet
Γ B H : AΓ ` app(H) : A
WCoercionΓ ` M : A
Γ B hd(M) : ASCoercion
Γ, x : A ` M : B
Γ ` λx .M : A ⊃ BIntro
Γ B H : A ⊃ B Γ ` N : AΓ B HN : B
Elim
Introduction Sequent calculus Natural deduction Results
The system
Typing in λlet
Recall
(Terms) M,N,P ::= λx .M | app(H) | let x := H inP(Heads) H ::= x | hd(M) |HN
Sequents Γ ` M : A and Γ B H : A
Rules
Γ, x : AB x : AHyp
Γ B H : A Γ, x : A ` P : B
Γ ` let x := H inP : BLet
Γ B H : AΓ ` app(H) : A
WCoercionΓ ` M : A
Γ B hd(M) : ASCoercion
Γ, x : A ` M : B
Γ ` λx .M : A ⊃ BIntro
Γ B H : A ⊃ B Γ ` N : AΓ B HN : B
Elim
Introduction Sequent calculus Natural deduction Results
The system
Typing in λlet
Recall
(Terms) M,N,P ::= λx .M | app(H) | let x := H inP(Heads) H ::= x | hd(M) |HN
Sequents Γ ` M : A and Γ B H : A
Rules
Γ, x : AB x : AHyp
Γ B H : A Γ, x : A ` P : B
Γ ` let x := H inP : BLet
Γ B H : AΓ ` app(H) : A
WCoercionΓ ` M : A
Γ B hd(M) : ASCoercion
Γ, x : A ` M : B
Γ ` λx .M : A ⊃ BIntro
Γ B H : A ⊃ B Γ ` N : AΓ B HN : B
Elim
Introduction Sequent calculus Natural deduction Results
The system
Derived syntax
Recall
(Terms) M,N,P ::= λx .M | app(H) | let x := H inP(Heads) H ::= x | hd(M) |HN
Continuations
K ::= app([·]) | let x := [·] inP | K[[·]N]
Hence co-continuations have the forms
app([·]N1 · · ·Nm) or let x := [·]N1 · · ·Nm inP (m ≥ 0)that is, a non-abstraction with a hole at the left endhole expects a head
Introduction Sequent calculus Natural deduction Results
The system
Derived syntax
Recall
(Terms) M,N,P ::= λx .M | app(H) | let x := H inP(Heads) H ::= x | hd(M) |HN
Continuations
K ::= app([·]) | let x := [·] inP | K[[·]N]
Hence co-continuations have the forms
app([·]N1 · · ·Nm) or let x := [·]N1 · · ·Nm inP (m ≥ 0)that is, a non-abstraction with a hole at the left endhole expects a head
Introduction Sequent calculus Natural deduction Results
The system
Reduction in λlet
Recall
(Terms) M,N,P ::= λx .M | app(H) | let x := H inP(Heads) H ::= x | hd(M) |HN
Rules
(beta) hd(λx .M)N → hd(let x := hd(N) inM)(let) let x := H inP → [H/x ]P
(triv) app(hd(M)) → M(head1) hd(app(H)) → H(head2) K[hd(let x := H inP)] → let x := H inK[hd(P)]
Comments: bidirectional, agnostic, computational λ-calculus
Introduction Sequent calculus Natural deduction Results
The system
Reduction in λlet
Recall
(Terms) M,N,P ::= λx .M | app(H) | let x := H inP(Heads) H ::= x | hd(M) |HN
Rules
(beta) hd(λx .M)N → hd(let x := hd(N) inM)(let) let x := H inP → [H/x ]P
(triv) app(hd(M)) → M(head1) hd(app(H)) → H(head2) K[hd(let x := H inP)] → let x := H inK[hd(P)]
Comments: bidirectional, agnostic, computational λ-calculus
Introduction Sequent calculus Natural deduction Results
The system
Reduction in λlet
Recall
(Terms) M,N,P ::= λx .M | app(H) | let x := H inP(Heads) H ::= x | hd(M) |HN
Rules
(beta) hd(λx .M)N → hd(let x := hd(N) inM)(let) let x := H inP → [H/x ]P
(triv) app(hd(M)) → M(head1) hd(app(H)) → H(head2) K[hd(let x := H inP)] → let x := H inK[hd(P)]
Comments: bidirectional, agnostic, computational λ-calculus
Introduction Sequent calculus Natural deduction Results
Mapping sequent calculus
Map Θ : λµ→ λlet
x (u1 :: · · · um :: []) 7→ app(xN1 · · ·Nm)x (u1 :: · · · um :: µy .v) 7→ let y := (xN1 · · ·Nm) inP
t(u1 :: · · · um :: []) 7→ app(hd(M)N1 · · ·Nm)t(u1 :: · · · um :: µy .v) 7→ let y := (hd(M)N1 · · ·Nm) inP
Replace each left-introduction by an elimination
Inversion of the associativity of non-abstractions
Introduction Sequent calculus Natural deduction Results
Mapping sequent calculus
Map Θ : λµ→ λlet
x (u1 :: · · · um :: []) 7→ app(xN1 · · ·Nm)x (u1 :: · · · um :: µy .v) 7→ let y := (xN1 · · ·Nm) inP
t(u1 :: · · · um :: []) 7→ app(hd(M)N1 · · ·Nm)t(u1 :: · · · um :: µy .v) 7→ let y := (hd(M)N1 · · ·Nm) inP
Replace each left-introduction by an elimination
Inversion of the associativity of non-abstractions
Introduction Sequent calculus Natural deduction Results
Mapping sequent calculus
Map Θ : λµ→ λlet
x (u1 :: · · · um :: []) 7→ app(xN1 · · ·Nm)x (u1 :: · · · um :: µy .v) 7→ let y := (xN1 · · ·Nm) inP
t(u1 :: · · · um :: []) 7→ app(hd(M)N1 · · ·Nm)t(u1 :: · · · um :: µy .v) 7→ let y := (hd(M)N1 · · ·Nm) inP
Replace each left-introduction by an elimination
Inversion of the associativity of non-abstractions
Introduction Sequent calculus Natural deduction Results
Mapping sequent calculus
Map Θ : λµ→ λlet
x (u1 :: · · · um :: []) 7→ app(xN1 · · ·Nm)x (u1 :: · · · um :: µy .v) 7→ let y := (xN1 · · ·Nm) inP
t(u1 :: · · · um :: []) 7→ app(hd(M)N1 · · ·Nm)t(u1 :: · · · um :: µy .v) 7→ let y := (hd(M)N1 · · ·Nm) inP
Proof expressions of λµ as instructions to build λlet proofs
tk 7→ K[hd(M)] where t 7→ M and k 7→ Kx k 7→ K[x ] where k 7→ K
u :: k 7→ K[[·]N] where u 7→ N and k 7→ Kµx .v 7→ let x := [·] inP where v 7→ P
[] 7→ app([·])
Introduction Sequent calculus Natural deduction Results
Mapping sequent calculus
Map Θ : λµ→ λlet
x (u1 :: · · · um :: []) 7→ app(xN1 · · ·Nm)x (u1 :: · · · um :: µy .v) 7→ let y := (xN1 · · ·Nm) inP
t(u1 :: · · · um :: []) 7→ app(hd(M)N1 · · ·Nm)t(u1 :: · · · um :: µy .v) 7→ let y := (hd(M)N1 · · ·Nm) inP
Proof expressions of λµ as instructions to build λlet proofs
tk 7→ K[hd(M)] where t 7→ M and k 7→ Kx k 7→ K[x ] where k 7→ K
u :: k 7→ K[[·]N] where u 7→ N and k 7→ Kµx .v 7→ let x := [·] inP where v 7→ P
[] 7→ app([·])
Introduction Sequent calculus Natural deduction Results
RESULTS
Introduction Sequent calculus Natural deduction Results
Results
Isomorphism
Isomorphism Θ : λµ ∼= λlet
Bijections of syntactic classes
terms t M termsgen. vectors k K continuations
co-continuations H H heads
Remark: exchange of primitive/derived concepts
Isomorphism of reduction relations
β betaµ letε trivπ head
Introduction Sequent calculus Natural deduction Results
Results
Isomorphism
Isomorphism Θ : λµ ∼= λlet
Bijections of syntactic classes
terms t M termsgen. vectors k K continuations
co-continuations H H heads
Remark: exchange of primitive/derived concepts
Isomorphism of reduction relations
β betaµ letε trivπ head
Introduction Sequent calculus Natural deduction Results
Results
Isomorphism
Isomorphism Θ : λµ ∼= λlet
Bijections of syntactic classes
terms t M termsgen. vectors k K continuations
co-continuations H H heads
Remark: exchange of primitive/derived concepts
Isomorphism of reduction relations
β betaµ letε trivπ head
Introduction Sequent calculus Natural deduction Results
Results
Isomorphism
Isomorphism Θ : λµ ∼= λlet
Bijections of syntactic classes
terms t M termsgen. vectors k K continuations
co-continuations H H heads
Remark: exchange of primitive/derived concepts
Isomorphism of reduction relations
β betaµ letε trivπ head
Introduction Sequent calculus Natural deduction Results
Results
Isomorphism
Isomorphism Θ : λµ ∼= λlet
Bijections of syntactic classes
terms t M termsgen. vectors k K continuations
co-continuations H H heads
Remark: exchange of primitive/derived concepts
Isomorphism of reduction relations
β betaµ letε trivπ head
Introduction Sequent calculus Natural deduction Results
Results
Curry Howard at last
The two faces of the coin:
Internal interpretation: formal vector notation with first-classco-controlExternal interpretation: bidirectional, agnostic, computationalλ-calculus
Example: expression x k
Internal interpretation: co-control point, fill k in the hole ofthe co-continuation H that will substitute xExternal interpretation: fill head x in the hole of continuationK, where K = Θk - an instruction for the construction of aλlet derivation (fill x in k better notation for this reading)
Example: β-rule (λx .t)(u :: k)→ (u(µx .t))k
Internal interpretation: β-rule of a relaxed vector notationExternal interpretation: rule beta of λlet written in thenotation of instructions that λµ is
Introduction Sequent calculus Natural deduction Results
Results
Curry Howard at last
The two faces of the coin:
Internal interpretation: formal vector notation with first-classco-controlExternal interpretation: bidirectional, agnostic, computationalλ-calculus
Example: expression x k
Internal interpretation: co-control point, fill k in the hole ofthe co-continuation H that will substitute xExternal interpretation: fill head x in the hole of continuationK, where K = Θk - an instruction for the construction of aλlet derivation (fill x in k better notation for this reading)
Example: β-rule (λx .t)(u :: k)→ (u(µx .t))k
Internal interpretation: β-rule of a relaxed vector notationExternal interpretation: rule beta of λlet written in thenotation of instructions that λµ is
Introduction Sequent calculus Natural deduction Results
Results
Curry Howard at last
The two faces of the coin:
Internal interpretation: formal vector notation with first-classco-controlExternal interpretation: bidirectional, agnostic, computationalλ-calculus
Example: expression x k
Internal interpretation: co-control point, fill k in the hole ofthe co-continuation H that will substitute x
External interpretation: fill head x in the hole of continuationK, where K = Θk - an instruction for the construction of aλlet derivation (fill x in k better notation for this reading)
Example: β-rule (λx .t)(u :: k)→ (u(µx .t))k
Internal interpretation: β-rule of a relaxed vector notationExternal interpretation: rule beta of λlet written in thenotation of instructions that λµ is
Introduction Sequent calculus Natural deduction Results
Results
Curry Howard at last
The two faces of the coin:
Internal interpretation: formal vector notation with first-classco-controlExternal interpretation: bidirectional, agnostic, computationalλ-calculus
Example: expression x k
Internal interpretation: co-control point, fill k in the hole ofthe co-continuation H that will substitute xExternal interpretation: fill head x in the hole of continuationK, where K = Θk - an instruction for the construction of aλlet derivation (fill x in k better notation for this reading)
Example: β-rule (λx .t)(u :: k)→ (u(µx .t))k
Internal interpretation: β-rule of a relaxed vector notationExternal interpretation: rule beta of λlet written in thenotation of instructions that λµ is
Introduction Sequent calculus Natural deduction Results
Results
Curry Howard at last
The two faces of the coin:
Internal interpretation: formal vector notation with first-classco-controlExternal interpretation: bidirectional, agnostic, computationalλ-calculus
Example: expression x k
Internal interpretation: co-control point, fill k in the hole ofthe co-continuation H that will substitute xExternal interpretation: fill head x in the hole of continuationK, where K = Θk - an instruction for the construction of aλlet derivation (fill x in k better notation for this reading)
Example: β-rule (λx .t)(u :: k)→ (u(µx .t))k
Internal interpretation: β-rule of a relaxed vector notation
External interpretation: rule beta of λlet written in thenotation of instructions that λµ is
Introduction Sequent calculus Natural deduction Results
Results
Curry Howard at last
The two faces of the coin:
Internal interpretation: formal vector notation with first-classco-controlExternal interpretation: bidirectional, agnostic, computationalλ-calculus
Example: expression x k
Internal interpretation: co-control point, fill k in the hole ofthe co-continuation H that will substitute xExternal interpretation: fill head x in the hole of continuationK, where K = Θk - an instruction for the construction of aλlet derivation (fill x in k better notation for this reading)
Example: β-rule (λx .t)(u :: k)→ (u(µx .t))k
Internal interpretation: β-rule of a relaxed vector notationExternal interpretation: rule beta of λlet written in thenotation of instructions that λµ is
Introduction Sequent calculus Natural deduction Results
Results
More Results
Studying forgetful/desugaring maps λlet→ λ one gets
strong normalization of λlet, hence of λµtermination of the let rule, hence of µ rule of λµthe latter gives a focalization result: every t ∈ λµ has a uniqueµ-nf (which is a LJT proof, if t is typable)
Agnosticism theorem
take the s.c. characterization of CBN and CBV...obtain the isomorphic characterization in n.d...and see how CBN and CBV are superimposed in λlet
“Co-control theorem”
given that the let rule is isomorphic to the µ rule...one understands why co-control is almost invisible in n.d.
Introduction Sequent calculus Natural deduction Results
Results
More Results
Studying forgetful/desugaring maps λlet→ λ one gets
strong normalization of λlet, hence of λµ
termination of the let rule, hence of µ rule of λµthe latter gives a focalization result: every t ∈ λµ has a uniqueµ-nf (which is a LJT proof, if t is typable)
Agnosticism theorem
take the s.c. characterization of CBN and CBV...obtain the isomorphic characterization in n.d...and see how CBN and CBV are superimposed in λlet
“Co-control theorem”
given that the let rule is isomorphic to the µ rule...one understands why co-control is almost invisible in n.d.
Introduction Sequent calculus Natural deduction Results
Results
More Results
Studying forgetful/desugaring maps λlet→ λ one gets
strong normalization of λlet, hence of λµtermination of the let rule, hence of µ rule of λµ
the latter gives a focalization result: every t ∈ λµ has a uniqueµ-nf (which is a LJT proof, if t is typable)
Agnosticism theorem
take the s.c. characterization of CBN and CBV...obtain the isomorphic characterization in n.d...and see how CBN and CBV are superimposed in λlet
“Co-control theorem”
given that the let rule is isomorphic to the µ rule...one understands why co-control is almost invisible in n.d.
Introduction Sequent calculus Natural deduction Results
Results
More Results
Studying forgetful/desugaring maps λlet→ λ one gets
strong normalization of λlet, hence of λµtermination of the let rule, hence of µ rule of λµthe latter gives a focalization result: every t ∈ λµ has a uniqueµ-nf (which is a LJT proof, if t is typable)
Agnosticism theorem
take the s.c. characterization of CBN and CBV...obtain the isomorphic characterization in n.d...and see how CBN and CBV are superimposed in λlet
“Co-control theorem”
given that the let rule is isomorphic to the µ rule...one understands why co-control is almost invisible in n.d.
Introduction Sequent calculus Natural deduction Results
Results
More Results
Studying forgetful/desugaring maps λlet→ λ one gets
strong normalization of λlet, hence of λµtermination of the let rule, hence of µ rule of λµthe latter gives a focalization result: every t ∈ λµ has a uniqueµ-nf (which is a LJT proof, if t is typable)
Agnosticism theorem
take the s.c. characterization of CBN and CBV...obtain the isomorphic characterization in n.d...and see how CBN and CBV are superimposed in λlet
“Co-control theorem”
given that the let rule is isomorphic to the µ rule...one understands why co-control is almost invisible in n.d.
Introduction Sequent calculus Natural deduction Results
Results
More Results
Studying forgetful/desugaring maps λlet→ λ one gets
strong normalization of λlet, hence of λµtermination of the let rule, hence of µ rule of λµthe latter gives a focalization result: every t ∈ λµ has a uniqueµ-nf (which is a LJT proof, if t is typable)
Agnosticism theorem
take the s.c. characterization of CBN and CBV...
obtain the isomorphic characterization in n.d...and see how CBN and CBV are superimposed in λlet
“Co-control theorem”
given that the let rule is isomorphic to the µ rule...one understands why co-control is almost invisible in n.d.
Introduction Sequent calculus Natural deduction Results
Results
More Results
Studying forgetful/desugaring maps λlet→ λ one gets
strong normalization of λlet, hence of λµtermination of the let rule, hence of µ rule of λµthe latter gives a focalization result: every t ∈ λµ has a uniqueµ-nf (which is a LJT proof, if t is typable)
Agnosticism theorem
take the s.c. characterization of CBN and CBV...obtain the isomorphic characterization in n.d...
and see how CBN and CBV are superimposed in λlet
“Co-control theorem”
given that the let rule is isomorphic to the µ rule...one understands why co-control is almost invisible in n.d.
Introduction Sequent calculus Natural deduction Results
Results
More Results
Studying forgetful/desugaring maps λlet→ λ one gets
strong normalization of λlet, hence of λµtermination of the let rule, hence of µ rule of λµthe latter gives a focalization result: every t ∈ λµ has a uniqueµ-nf (which is a LJT proof, if t is typable)
Agnosticism theorem
take the s.c. characterization of CBN and CBV...obtain the isomorphic characterization in n.d...and see how CBN and CBV are superimposed in λlet
“Co-control theorem”
given that the let rule is isomorphic to the µ rule...one understands why co-control is almost invisible in n.d.
Introduction Sequent calculus Natural deduction Results
Results
More Results
Studying forgetful/desugaring maps λlet→ λ one gets
strong normalization of λlet, hence of λµtermination of the let rule, hence of µ rule of λµthe latter gives a focalization result: every t ∈ λµ has a uniqueµ-nf (which is a LJT proof, if t is typable)
Agnosticism theorem
take the s.c. characterization of CBN and CBV...obtain the isomorphic characterization in n.d...and see how CBN and CBV are superimposed in λlet
“Co-control theorem”
given that the let rule is isomorphic to the µ rule...
one understands why co-control is almost invisible in n.d.
Introduction Sequent calculus Natural deduction Results
Results
More Results
Studying forgetful/desugaring maps λlet→ λ one gets
strong normalization of λlet, hence of λµtermination of the let rule, hence of µ rule of λµthe latter gives a focalization result: every t ∈ λµ has a uniqueµ-nf (which is a LJT proof, if t is typable)
Agnosticism theorem
take the s.c. characterization of CBN and CBV...obtain the isomorphic characterization in n.d...and see how CBN and CBV are superimposed in λlet
“Co-control theorem”
given that the let rule is isomorphic to the µ rule...one understands why co-control is almost invisible in n.d.
Introduction Sequent calculus Natural deduction Results
Results
Duality
Are control and co-control related by classical duality?
Not within classical sequent calculus!
E.g. not in λµµ, because there
variables stand for terms (not co-continuations)µ is an ordinary term substitution former
Yes in a system that unifies λµ and λlet - see the paper
Introduction Sequent calculus Natural deduction Results
Results
Duality
Are control and co-control related by classical duality?
Not within classical sequent calculus!
E.g. not in λµµ, because there
variables stand for terms (not co-continuations)µ is an ordinary term substitution former
Yes in a system that unifies λµ and λlet - see the paper
Introduction Sequent calculus Natural deduction Results
Results
Duality
Are control and co-control related by classical duality?
Not within classical sequent calculus!
E.g. not in λµµ, because there
variables stand for terms (not co-continuations)µ is an ordinary term substitution former
Yes in a system that unifies λµ and λlet - see the paper
Introduction Sequent calculus Natural deduction Results
Results
Duality
Are control and co-control related by classical duality?
Not within classical sequent calculus!
E.g. not in λµµ, because there
variables stand for terms (not co-continuations)µ is an ordinary term substitution former
Yes in a system that unifies λµ and λlet - see the paper
Introduction Sequent calculus Natural deduction Results
Results
Duality
Are control and co-control related by classical duality?
Not within classical sequent calculus!
E.g. not in λµµ, because there
variables stand for terms (not co-continuations)µ is an ordinary term substitution former
Yes in a system that unifies λµ and λlet - see the paper
Introduction Sequent calculus Natural deduction Results
Results
THANKS