SlideShare a Scribd company logo
Sequent calculus, proofs and programs
The ∗X calculus : explicit erasure and duplication
                   Explicit vs implicit : ∗X vs X
                              Strong normalisation




Classical computing with explicit structural rules
               –the ∗X calculus–

                                     s ˇ c
                                Dragiˇa Zuni´
            – together with: Silvia Ghilezan and Pierre Lescanne



                   Mathematical Institute SANU, Belgrade
        Matematiˇki Institut Srpske Akademije Nauka i Umetnosti, Beograd
                c
                               November 19, 2012.




                                         s ˇ c
                                    Dragiˇa Zuni´    Classical computing with explicit structural rules   1 / 50
Sequent calculus, proofs and programs
      The ∗X calculus : explicit erasure and duplication
                         Explicit vs implicit : ∗X vs X
                                    Strong normalisation


Outline



  1   Sequent calculus, proofs and programs

  2   The ∗X calculus : explicit erasure and duplication

  3   Explicit vs implicit : ∗X vs X

  4   Strong normalisation




                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   2 / 50
Sequent calculus, proofs and programs
      The ∗X calculus : explicit erasure and duplication   Implicit structural rules – the X calculus
                         Explicit vs implicit : ∗X vs X    Explicit structural rules – the ∗X calculus
                                    Strong normalisation


Outline

  1   Sequent calculus, proofs and programs
        Implicit structural rules – the X calculus
        Explicit structural rules – the ∗X calculus

  2   The ∗X calculus : explicit erasure and duplication
        Logical setting
        From sequent proofs to terms
        The syntax and reduction rules
        Diagrammatic view

  3   Explicit vs implicit : ∗X vs X

  4   Strong normalisation


                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   3 / 50
Sequent calculus, proofs and programs
    The ∗X calculus : explicit erasure and duplication   Implicit structural rules – the X calculus
                       Explicit vs implicit : ∗X vs X    Explicit structural rules – the ∗X calculus
                                  Strong normalisation


The framework


        Classical logic
        Sequent calculus of G.Gentzen (two important formalisms :
        sequent calculus and natural deduction calculus)
        The Curry-Howard correspondence (the relation between proof
        theory and the programming language theory)



  The goal is to study classical computation, by assigning
  computational interpretation(s) to classical logic represented in the
  sequent calculus.


                                             s ˇ c
                                        Dragiˇa Zuni´    Classical computing with explicit structural rules   4 / 50
Sequent calculus, proofs and programs
    The ∗X calculus : explicit erasure and duplication   Implicit structural rules – the X calculus
                       Explicit vs implicit : ∗X vs X    Explicit structural rules – the ∗X calculus
                                  Strong normalisation


The Curry-Howard correspondence


        Reveals a strong connection between logic and computation
        The intuitionistic logic and simply typed λ-calculus

                                         Proofs ⇔ Terms
                                    Propositions ⇔ Types
                                   Normalization ⇔ Reduction

        Extending the “Curry-Howard paradigm”
        Classical logic : T. Griffin (1990)
                M. Parigot (1992) : λµ-calculus (natural deduction)
                                          ¯ µ
                H. Herbelin (1995-2005) : λµ˜-calculus (sequent calculus)



                                             s ˇ c
                                        Dragiˇa Zuni´    Classical computing with explicit structural rules   5 / 50
Sequent calculus, proofs and programs
      The ∗X calculus : explicit erasure and duplication   Implicit structural rules – the X calculus
                         Explicit vs implicit : ∗X vs X    Explicit structural rules – the ∗X calculus
                                    Strong normalisation


Related work
The two predecessors

          Classical logic : the X calculus
                  C. Urban (2000)
                  S. Lengrand (2003)
                  S. van Bakel, S.Lengrand, P. Lescanne (2005)

          Intuitionistic logic : the λlxr-calculus
                  D. Kesner, S. Lengrand (2005)

                                     X                     λlxr




                                                 ∗X


                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   6 / 50
Sequent calculus, proofs and programs
    The ∗X calculus : explicit erasure and duplication        Implicit structural rules – the X calculus
                       Explicit vs implicit : ∗X vs X         Explicit structural rules – the ∗X calculus
                                  Strong normalisation


G3 sequent system for classical logic X -calculus

                                                              (axiom)
                                         Γ, A       A, ∆


    Γ     A, ∆              Γ, B       ∆                                     Γ, A     B, ∆
                                           (→ left)                                               (→ right)
            Γ, A → B           ∆                                         Γ      A → B, ∆

                                 Γ     A, ∆                  Γ, A     ∆
                                                                           (cut)
                                                Γ        ∆

        Contexts Γ, ∆ are sets
        Context-sharing style
        No structural rules
                                             s ˇ c
                                        Dragiˇa Zuni´         Classical computing with explicit structural rules   7 / 50
Sequent calculus, proofs and programs
    The ∗X calculus : explicit erasure and duplication     Implicit structural rules – the X calculus
                       Explicit vs implicit : ∗X vs X      Explicit structural rules – the ∗X calculus
                                  Strong normalisation


G1 sequent system for classical logic ∗X calculus

                                                         (axiom)
                                             A      A

    Γ    A, ∆               Γ ,B       ∆                                    Γ, A     B, ∆
                                             (→ left)                                           (→ right)
        Γ, Γ , A → B           ∆, ∆                                     Γ     A → B, ∆

                                Γ     A, ∆               Γ ,A       ∆
                                                                         (cut)
                                          Γ, Γ       ∆, ∆

            Γ      ∆                                            Γ    ∆
                         (left weakening)                                   (right weakening)
          Γ, A       ∆                                      Γ       A, ∆

    Γ, A, A        ∆                                        Γ       A, A, ∆
                       (left contraction)                                      (right contraction)
        Γ, A     ∆                                              Γ    A, ∆
                                             s ˇ c
                                        Dragiˇa Zuni´      Classical computing with explicit structural rules   8 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view


Outline

  1   Sequent calculus, proofs and programs
        Implicit structural rules – the X calculus
        Explicit structural rules – the ∗X calculus

  2   The ∗X calculus : explicit erasure and duplication
        Logical setting
        From sequent proofs to terms
        The syntax and reduction rules
        Diagrammatic view

  3   Explicit vs implicit : ∗X vs X

  4   Strong normalisation


                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   9 / 50
Sequent calculus, proofs and programs      Logical setting
The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                   Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                              Strong normalisation   Diagrammatic view




    Computational interpretation of classical proofs
    Sequent calculus with explicit structural rules
    (weakening and contraction)

    1) Terms in ∗X -calculus are in fact annotations for proofs,
    2) Computation in ∗X -calculus corresponds to cut-elimination

    Weakening as an eraser / Contraction as a duplicator




                                         s ˇ c
                                    Dragiˇa Zuni´    Classical computing with explicit structural rules   10 / 50
Sequent calculus, proofs and programs       Logical setting
   The ∗X calculus : explicit erasure and duplication    From sequent proofs to terms
                      Explicit vs implicit : ∗X vs X     The syntax and reduction rules
                                 Strong normalisation    Diagrammatic view


Names

 The terms are built from names.

 Two categories of names :                         x, y , z...          in-names
                                                   α, β, γ...           out-names


 Binders wear “hats” :                       x, y , z... α, β, γ...

 Examples :

                                                                                     β
                   x.α                     x x.β β . α                         [P    γ >α




                                            s ˇ c
                                       Dragiˇa Zuni´     Classical computing with explicit structural rules   11 / 50
Sequent calculus, proofs and programs      Logical setting
   The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                      Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                 Strong normalisation   Diagrammatic view


Name = Variable



       In λ-calculus : variables
                                  β
               (λy .xyz)M − xMz
                           →
               An arbitrary term M substitutes the variable y

       In ∗X -calculus : names
               A name can never be substituted for a term
               A name can only be renamed




                                            s ˇ c
                                       Dragiˇa Zuni´    Classical computing with explicit structural rules   12 / 50
Sequent calculus, proofs and programs        Logical setting
    The ∗X calculus : explicit erasure and duplication     From sequent proofs to terms
                       Explicit vs implicit : ∗X vs X      The syntax and reduction rules
                                  Strong normalisation     Diagrammatic view


G1 sequent system for classical logic

                                                         (axiom)
                                             A      A

    Γ    A, ∆               Γ ,B       ∆                                    Γ, A     B, ∆
                                             (→ left)                                           (→ right)
        Γ, Γ , A → B           ∆, ∆                                     Γ     A → B, ∆

                                Γ     A, ∆               Γ ,A       ∆
                                                                         (cut)
                                          Γ, Γ       ∆, ∆

            Γ      ∆                                            Γ    ∆
                         (left weakening)                                   (right weakening)
          Γ, A       ∆                                      Γ       A, ∆

    Γ, A, A        ∆                                        Γ       A, A, ∆
                       (left contraction)                                      (right contraction)
        Γ, A     ∆                                              Γ    A, ∆
                                             s ˇ c
                                        Dragiˇa Zuni´      Classical computing with explicit structural rules   13 / 50
Sequent calculus, proofs and programs        Logical setting
             The ∗X calculus : explicit erasure and duplication     From sequent proofs to terms
                                Explicit vs implicit : ∗X vs X      The syntax and reduction rules
                                           Strong normalisation     Diagrammatic view


  The terms correspond to proofs :

                                                                             (caps)
                                             x.α :. x : A           α:A

P :. Γ       α : A, ∆               Q :. Γ , x : B           ∆                   P :. Γ, x : A           α : B, ∆
                                                                  (imp)                                                  (exp)
  P α [y ] xQ :. Γ, Γ , y : A → B                    ∆, ∆                    x P α . β :. Γ           β : A → B, ∆

                            P :. Γ        α : A, ∆                Q :. Γ , x : A          ∆
                                                                                               (cut)
                                         P α † xQ :. Γ, Γ              ∆, ∆

                P :. Γ        ∆                                                P :. Γ         ∆
                                          (left eraser)                                                    (right eraser)
         x     P :. Γ, x : A          ∆                                P      α :. Γ         α : A, ∆

         P :. Γ, y : A, z : A            ∆                              P :. Γ        β : A, γ : A, ∆
                                             (left dupl.)                                                      (right dupl.)
         x < y P] :. Γ, x : A
             z                           ∆                              [P   β
                                                                             γ >α     :. Γ      α : A, ∆
                                                      s ˇ c
                                                 Dragiˇa Zuni´      Classical computing with explicit structural rules   14 / 50
Sequent calculus, proofs and programs        Logical setting
             The ∗X calculus : explicit erasure and duplication     From sequent proofs to terms
                                Explicit vs implicit : ∗X vs X      The syntax and reduction rules
                                           Strong normalisation     Diagrammatic view


  The terms correspond to proofs :

                                                                             (caps)
                                             x.α :. x : A           α:A

P :. Γ       α : A, ∆               Q :. Γ , x : B           ∆                   P :. Γ, x : A           α : B, ∆
                                                                  (imp)                                                  (exp)
  P α [y ] xQ :. Γ, Γ , y : A → B                    ∆, ∆                    x P α . β :. Γ           β : A → B, ∆

                            P :. Γ        α : A, ∆                Q :. Γ , x : A          ∆
                                                                                               (cut)
                                         P α † xQ :. Γ, Γ              ∆, ∆

                P :. Γ        ∆                                                P :. Γ         ∆
                                          (left eraser)                                                    (right eraser)
         x     P :. Γ, x : A          ∆                                P      α :. Γ         α : A, ∆

         P :. Γ, y : A, z : A            ∆                              P :. Γ        β : A, γ : A, ∆
                                             (left dupl.)                                                      (right dupl.)
         x < y P] :. Γ, x : A
             z                           ∆                              [P   β
                                                                             γ >α     :. Γ      α : A, ∆
                                                      s ˇ c
                                                 Dragiˇa Zuni´      Classical computing with explicit structural rules   14 / 50
Sequent calculus, proofs and programs        Logical setting
             The ∗X calculus : explicit erasure and duplication     From sequent proofs to terms
                                Explicit vs implicit : ∗X vs X      The syntax and reduction rules
                                           Strong normalisation     Diagrammatic view


  The terms correspond to proofs :

                                                                             (caps)
                                             x.α :. x : A           α:A

P :. Γ       α : A, ∆               Q :. Γ , x : B           ∆                   P :. Γ, x : A           α : B, ∆
                                                                  (imp)                                                  (exp)
  P α [y ] xQ :. Γ, Γ , y : A → B                    ∆, ∆                    x P α . β :. Γ           β : A → B, ∆

                            P :. Γ        α : A, ∆                Q :. Γ , x : A          ∆
                                                                                               (cut)
                                         P α † xQ :. Γ, Γ              ∆, ∆

                P :. Γ        ∆                                                P :. Γ         ∆
                                          (left eraser)                                                    (right eraser)
         x     P :. Γ, x : A          ∆                                P      α :. Γ         α : A, ∆

         P :. Γ, y : A, z : A            ∆                              P :. Γ        β : A, γ : A, ∆
                                             (left dupl.)                                                      (right dupl.)
         x < y P] :. Γ, x : A
             z                           ∆                              [P   β
                                                                             γ >α     :. Γ      α : A, ∆
                                                      s ˇ c
                                                 Dragiˇa Zuni´      Classical computing with explicit structural rules   14 / 50
Sequent calculus, proofs and programs        Logical setting
             The ∗X calculus : explicit erasure and duplication     From sequent proofs to terms
                                Explicit vs implicit : ∗X vs X      The syntax and reduction rules
                                           Strong normalisation     Diagrammatic view


  The terms correspond to proofs :

                                                                             (caps)
                                             x.α :. x : A           α:A

P :. Γ       α : A, ∆               Q :. Γ , x : B           ∆                   P :. Γ, x : A           α : B, ∆
                                                                  (imp)                                                  (exp)
  P α [y ] xQ :. Γ, Γ , y : A → B                    ∆, ∆                    x P α . β :. Γ           β : A → B, ∆

                            P :. Γ        α : A, ∆                Q :. Γ , x : A          ∆
                                                                                               (cut)
                                         P α † xQ :. Γ, Γ              ∆, ∆

                P :. Γ        ∆                                                P :. Γ         ∆
                                          (left eraser)                                                    (right eraser)
         x     P :. Γ, x : A          ∆                                P      α :. Γ         α : A, ∆

         P :. Γ, y : A, z : A            ∆                              P :. Γ        β : A, γ : A, ∆
                                             (left dupl.)                                                      (right dupl.)
         x < y P] :. Γ, x : A
             z                           ∆                              [P   β
                                                                             γ >α     :. Γ      α : A, ∆
                                                      s ˇ c
                                                 Dragiˇa Zuni´      Classical computing with explicit structural rules   14 / 50
Sequent calculus, proofs and programs        Logical setting
             The ∗X calculus : explicit erasure and duplication     From sequent proofs to terms
                                Explicit vs implicit : ∗X vs X      The syntax and reduction rules
                                           Strong normalisation     Diagrammatic view


  The terms correspond to proofs :

                                                                             (caps)
                                             x.α :. x : A           α:A

P :. Γ       α : A, ∆               Q :. Γ , x : B           ∆                   P :. Γ, x : A           α : B, ∆
                                                                  (imp)                                                  (exp)
  P α [y ] xQ :. Γ, Γ , y : A → B                    ∆, ∆                    x P α . β :. Γ           β : A → B, ∆

                            P :. Γ        α : A, ∆                Q :. Γ , x : A          ∆
                                                                                               (cut)
                                         P α † xQ :. Γ, Γ              ∆, ∆

                P :. Γ        ∆                                                P :. Γ         ∆
                                          (left eraser)                                                    (right eraser)
         x     P :. Γ, x : A          ∆                                P      α :. Γ         α : A, ∆

         P :. Γ, y : A, z : A            ∆                              P :. Γ        β : A, γ : A, ∆
                                             (left dupl.)                                                      (right dupl.)
         x < y P] :. Γ, x : A
             z                           ∆                              [P   β
                                                                             γ >α     :. Γ      α : A, ∆
                                                      s ˇ c
                                                 Dragiˇa Zuni´      Classical computing with explicit structural rules   14 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view


The ∗X calculus
The syntax




                      P, Q ::=               x.α                   capsule
                                    |      x P β .α                exporter
                                    |      P α [y ] xQ             importer
                                    |      P α † xQ                cut
                                    |      x         P             left-eraser
                                    |      P         α             right-eraser
                                                 y
                                    |      x < z P]                left-duplicator
                                                 β
                                    |      [P    γ >α              right-duplicator



                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   15 / 50
Sequent calculus, proofs and programs        Logical setting
    The ∗X calculus : explicit erasure and duplication     From sequent proofs to terms
                       Explicit vs implicit : ∗X vs X      The syntax and reduction rules
                                  Strong normalisation     Diagrammatic view


Linearity

        In ∗X -calculus only linear terms are considered :

           every free name occurs only once
           every binder does bind an occurrence of a free name
          (and therefore only one)

        Examples of non-linear terms :
                               x y .β β . α               and              x.α          α
        Every non-linear term has a linear representation :
                                                                                              α1
                  x (x        y .β ) β . α               and          [ x.α1            α2    α2 > α



                                             s ˇ c
                                        Dragiˇa Zuni´      Classical computing with explicit structural rules   16 / 50
Sequent calculus, proofs and programs        Logical setting
    The ∗X calculus : explicit erasure and duplication     From sequent proofs to terms
                       Explicit vs implicit : ∗X vs X      The syntax and reduction rules
                                  Strong normalisation     Diagrammatic view


Linearity

        In ∗X -calculus only linear terms are considered :

           every free name occurs only once
           every binder does bind an occurrence of a free name
          (and therefore only one)

        Examples of non-linear terms :
                               x y .β β . α               and              x.α          α
        Every non-linear term has a linear representation :
                                                                                              α1
                  x (x        y .β ) β . α               and          [ x.α1            α2    α2 > α



                                             s ˇ c
                                        Dragiˇa Zuni´      Classical computing with explicit structural rules   16 / 50
Sequent calculus, proofs and programs        Logical setting
    The ∗X calculus : explicit erasure and duplication     From sequent proofs to terms
                       Explicit vs implicit : ∗X vs X      The syntax and reduction rules
                                  Strong normalisation     Diagrammatic view


Linearity

        In ∗X -calculus only linear terms are considered :

           every free name occurs only once
           every binder does bind an occurrence of a free name
          (and therefore only one)

        Examples of non-linear terms :
                               x y .β β . α               and              x.α          α
        Every non-linear term has a linear representation :
                                                                                              α1
                  x (x        y .β ) β . α               and          [ x.α1            α2    α2 >α



                                             s ˇ c
                                        Dragiˇa Zuni´      Classical computing with explicit structural rules   16 / 50
Sequent calculus, proofs and programs        Logical setting
    The ∗X calculus : explicit erasure and duplication     From sequent proofs to terms
                       Explicit vs implicit : ∗X vs X      The syntax and reduction rules
                                  Strong normalisation     Diagrammatic view


Linearity

        In ∗X -calculus only linear terms are considered :

           every free name occurs only once
           every binder does bind an occurrence of a free name
          (and therefore only one)

        Examples of non-linear terms :
                               x y .β β . α               and              x.α          α
        Every non-linear term has a linear representation :
                                                                                              α1
                  x (x        y .β ) β . α               and          [ x.α1            α2    α2 >α



                                             s ˇ c
                                        Dragiˇa Zuni´      Classical computing with explicit structural rules   16 / 50
Sequent calculus, proofs and programs        Logical setting
    The ∗X calculus : explicit erasure and duplication     From sequent proofs to terms
                       Explicit vs implicit : ∗X vs X      The syntax and reduction rules
                                  Strong normalisation     Diagrammatic view


Linearity

        In ∗X -calculus only linear terms are considered :

           every free name occurs only once
           every binder does bind an occurrence of a free name
          (and therefore only one)

        Examples of non-linear terms :
                               x y .β β . α               and              x.α          α
        Every non-linear term has a linear representation :
                                                                                              α1
                  x (x        y .β ) β . α               and          [ x.α1            α2    α2 >α



                                             s ˇ c
                                        Dragiˇa Zuni´      Classical computing with explicit structural rules   16 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view


The ∗X calculus
Grouping the rules :




          Logical rules (L-principal names involved)
          Structural rules (S-principal names involved)


          (Activation rules)
          (Deactivation rules)


          Propagation rules




                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   17 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view


The ∗X calculus
The syntax


                      P, Q ::=               x.α                   capsule
                                    |      x P β .α                exporter
                                    |      P α [y ] xQ             importer
                                    |      P α † xQ                cut
                                    |      x      P                left-eraser
                                    |      P       α               right-eraser
                                               y
                                    |      x < z P]                left-duplicator
                                               β
                                    |      [P γ >α                 right-duplicator

          The notion of principal name of a term.
             1    L-principal name
             2    S–principal name
                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   18 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view


The ∗X calculus
The syntax


                      P, Q ::=               x.α                   capsule
                                    |      x P β .α                exporter
                                    |      P α [y ] xQ             importer
                                    |      P α † xQ                cut
                                    |      x      P                left-eraser
                                    |      P       α               right-eraser
                                               y
                                    |      x < z P]                left-duplicator
                                               β
                                    |      [P γ >α                 right-duplicator

          The notion of principal name of a term.
             1    L–principal name
             2    S-principal name
                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   19 / 50
Sequent calculus, proofs and programs       Logical setting
      The ∗X calculus : explicit erasure and duplication    From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X     The syntax and reduction rules
                                    Strong normalisation    Diagrammatic view

∗
X : logical rules

          Renaming and inserting
    Renaming :
                         (ren-L)        :         y .α α † xQ         →       Q{y /x}
                         (ren-R)        :         P α † x x.β         →       P{β/α}


    Diagrammatically :

                           y                  x                                y
    (ren-L) :                   α
                                                       Q                             Q

                                    α              x   β                               β
    (ren-R) :               P                                                  P

                                                 s ˇ c
                                            Dragiˇa Zuni´   Classical computing with explicit structural rules   20 / 50
Sequent calculus, proofs and programs             Logical setting
      The ∗X calculus : explicit erasure and duplication          From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X           The syntax and reduction rules
                                    Strong normalisation          Diagrammatic view

∗
X : logical rules

    Inserting (ei-insert) :
                                                                                      (Qγ † y P)β † zR
       (y P β . α)α † x(Qγ [x] zR) → either
                                                                                      Qγ † y (P β † zR)

    Diagrammatically :
                                      y               β
                                          P                       γ           z
                                                              Q           I       R
                                              E
                                                  α                   x




                                                  γ       y       β           z
                                          Q                   P                   R

          Notice : logical rules define reducing when a cut binds
          L-principal names
                                               s ˇ c
                                          Dragiˇa Zuni´           Classical computing with explicit structural rules   21 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view

∗
X : structural rules

    Left erasure :
                ( † -eras)        : (P         α)α † xQ          →       IQ         P        OQ ,
                                      where I Q = I (Q) x, OQ = O(Q)


    Diagrammatically :
                   I   {
                       Q



                                         P          α             x
                                                                       Q                }O    Q




                   I   {
                       Q
                                         P                                               }O    Q




                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   22 / 50
Sequent calculus, proofs and programs          Logical setting
      The ∗X calculus : explicit erasure and duplication       From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X        The syntax and reduction rules
                                    Strong normalisation       Diagrammatic view

∗
X : structural rules
    Left duplication ( † -dupl) :


                                                           IQ                                                   Q
                                                                                                               O1
           ([P   α1             † xQ          →     I Q < I1        (P α1 † x1 Q1 )α2 † x2 Q2                       >O
                                                                                                                         Q
                 α2 >α)α                                   Q                                                    Q
                                                                                                               O2
                                                                                                                             ,
                                                               2




    Diagrammatically :
                        I   {
                            Q

                                               β

                                          P          α         x
                                                                    Q
                                               γ
                                                                                        }O    Q




                        I   {
                            Q

                                               β                    x
                                                                        Q1
                                          P    γ           x
                                                               Q2                        }O   Q




                                               s ˇ c
                                          Dragiˇa Zuni´        Classical computing with explicit structural rules    23 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view


Symmetry...
The † -erasure


                                                                                                  P
                                                                                          }   O


                       I
                           P
                               {       P     α               x
                                                                     Q




                   I
                       P

                           {                                         Q                   }    O
                                                                                                  P




          An illustration of the symmetry...

                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   24 / 50
Sequent calculus, proofs and programs          Logical setting
      The ∗X calculus : explicit erasure and duplication       From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X        The syntax and reduction rules
                                    Strong normalisation       Diagrammatic view


Symmetry...
The † -duplication

                                                                                              }O   P

                                                                       y

                   IP   {                      P     α          x
                                                                        z
                                                                            Q




                                                                                              }O   P

                                                                       y
                                         P1    α

                                                                            Q
                   IP   {                          P2      α           z




          An illustration of the symmetry...
                                               s ˇ c
                                          Dragiˇa Zuni´        Classical computing with explicit structural rules   25 / 50
Sequent calculus, proofs and programs      Logical setting
    The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                       Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                  Strong normalisation   Diagrammatic view


Duplication, informally




                                   Classical Logic                                        Intuitionistic Logic




        Component duplicated, interface preserved.
        Similarly for erasure
                                             s ˇ c
                                        Dragiˇa Zuni´    Classical computing with explicit structural rules      26 / 50
Sequent calculus, proofs and programs                     Logical setting
    The ∗X calculus : explicit erasure and duplication                  From sequent proofs to terms
                       Explicit vs implicit : ∗X vs X                   The syntax and reduction rules
                                  Strong normalisation                  Diagrammatic view

∗
X : propagation rules (left subgroup)
           †                                     †                                 †
    (exp       − prop)        : (x P γ . α)β             yR       → x (P β              y R) γ . α
           †                                         †                     †
    (imp       − prop1 )      : (P α [x] zQ)β             yR      → (P β           y R)α [x] zQ,              β ∈ O(P)
           †                                         †                                           †
    (imp       − prop2 )      : (P α [x] zQ)β             yR      → P α [x] z(Q β                    y R),    β ∈ O(Q)

               †                                          †
    (cut(c)         − prop)   : (P α † x x.β )β                y R → Pα † y R

    (cut † − prop1 )          : (P α † xQ)β † y R                 → (P β † y R)α † xQ,                        β ∈ O(P), Q = x.β

    (cut † − prop2 )          : (P α † xQ)β † y R                 → P α † x(Q β † y R),                       β ∈ O(Q), Q = x.β

               †                            †                                           †
    (L–eras         − prop) : (x     M)β         yR               → x      (M β                 y R)
               †                            †                                  †
    (R–eras         − prop) : (M      α)β        yR               → (M β               y R)          α,      α=β

               †                   x             †                      x                   †
    (L–dupl         − prop) : (x < x1 M])β               yR       → x < x1 M β                   y R]
                                     2                                     2
                †                   α1      †                               †               α1
    (R–dupl         − prop) : ([M   α2
                                       >α)β               yR      → [M β               yR   α2
                                                                                               >α,           α=β




        Propagation rules do not have a diagrammatic representation
                                                     s ˇ c
                                                Dragiˇa Zuni´           Classical computing with explicit structural rules        27 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view


The ∗X calculus
Propagation rules




                                                                              ^      ^
                                                    α                         α      xQ




                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   28 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view


The ∗X calculus
Propagation rules




                                                                            ^     ^
                                                    α                       α     xQ




                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   29 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view


The ∗X calculus
Propagation rules




                                                                          ^      ^
                                                    α                     α      xQ




                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   30 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view


The ∗X calculus
Propagation rules




                                                                         ^     ^
                                                    α                    α     xQ




                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   31 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view


The ∗X calculus
Propagation rules




                                                     ^     ^
                                                    αα     xQ




                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   32 / 50
Sequent calculus, proofs and programs      Logical setting
      The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                    Strong normalisation   Diagrammatic view


The ∗X calculus
Propagation rules




                                                     ^     ^
                                                    αα     xQ




          We may think of              α † xQ       as an explicit substitution



                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   33 / 50
Sequent calculus, proofs and programs      Logical setting
    The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                       Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                  Strong normalisation   Diagrammatic view

∗
X : the basic properties

    1   Linearity preservation
                If P is linear and P → Q then Q is linear

    2   Free names (“interface”) preservation
                If P → Q then N(P) = N(Q)

    3   Type preservation – computation ——– (has to be) seen as
                                        can be
        proof-transformation
                If P :. Γ           ∆ and P → P , then P :. Γ                                ∆
    4   Strong normalisation (termination of reduction)


                                             s ˇ c
                                        Dragiˇa Zuni´    Classical computing with explicit structural rules   34 / 50
Sequent calculus, proofs and programs                  Logical setting
    The ∗X calculus : explicit erasure and duplication               From sequent proofs to terms
                       Explicit vs implicit : ∗X vs X                The syntax and reduction rules
                                  Strong normalisation               Diagrammatic view


Peirce’s law in ∗X
                                                    (capsule)
                     x.α1   :. x : A       α1 : A
                                                           (R − eraser )
            x.α1        β :. x : A         α1 : A, β : B
                                                                (exporter )                                  (capsule)
      x ( x.α1        β) β . γ :.        α1 : A, γ : A → B                      y .α2   :. y : A    α2 : A
                                                                                                             (importer )
          (x ( x.α1         β) β . γ) γ [z] y y .α2        :. z : (A → B) → A           α1 : A, α2 : A
                                                                                                         (R − duplicator )
                                                             α1
          [(x ( x.α1        β) β . γ) γ [z] y y .α2          α2
                                                                >α   :. z : (A → B) → A            α:A
                                                                                                              (exporter )
                                                       α1
     z ([(x ( x.α1       β) β . γ) γ [z] y y .α2          >α) α . δ     :.      δ : ((A → B) → A) → A
                                                       α2


                                                   (axiom)
                                       A       A
                                                    (R − weakening )
                                     A       A, B
                                                      (→ R)                          (axiom)
                                         A, A → B                           A    A
                                                                                     (→ L)
                                             (A → B) → A             A, A
                                                                          (R − contraction)
                                                   s ˇ c
                                              Dragiˇa B) → A
                                              (A → Zuni´             Classical computing with explicit structural rules
                                                                      A                                                      35 / 50
Sequent calculus, proofs and programs             Logical setting
The ∗X calculus : explicit erasure and duplication          From sequent proofs to terms
                   Explicit vs implicit : ∗X vs X           The syntax and reduction rules
                              Strong normalisation          Diagrammatic view


                                                     *X :
                                          (axiom)
                              A       A
                                           (R − weakening )
                             A     A, B
                                             (→ R)                              (axiom)
                                 A, A → B                          A        A
                                                                                (→ L)
                                   (A → B) → A              A, A
                                                                   (R − contraction)
                                      (A → B) → A            A
                                                                       (→ R)
                                        ((A → B) → A) → A

                                                       X:


                                                  (axiom)
                                  A        A, B
                                                    (→ R)                   (axiom)
                                      A, A → B               A          A
                                                                            (→ L)
                                       (A → B) → A            A
                                                                       (→ R)
                                         ((A → B) → A) → A
                                           s ˇ c
                                      Dragiˇa Zuni´  Classical computing with explicit structural rules   36 / 50
Sequent calculus, proofs and programs      Logical setting
  The ∗X calculus : explicit erasure and duplication   From sequent proofs to terms
                     Explicit vs implicit : ∗X vs X    The syntax and reduction rules
                                Strong normalisation   Diagrammatic view




The terms of ∗X are convenient for two-dimensional representation,
due to
      the presence of erasers and duplicators
      but also the linearity constraints




                                           s ˇ c
                                      Dragiˇa Zuni´    Classical computing with explicit structural rules   37 / 50
Sequent calculus, proofs and programs                           Logical setting
      The ∗X calculus : explicit erasure and duplication                        From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X                         The syntax and reduction rules
                                    Strong normalisation                        Diagrammatic view


The diagrammatic calculus
The syntax


                                                                                x           α
                                 P            Q                   ::=
                                      ,

                                          x                   β
                                                  P                                         α               y
                                                                                                                Q
                                                                                    P               I

                                                                                                x
                                                  E
                                                      α




                                              P           α                 x
                                                                                Q

                                                          α                                             x
                                                                        γ               z
                                              P           β                                             y       P

                                                                  α
                                              P                                                     x
                                                                                                                P


                                                   s ˇ c
                                              Dragiˇa Zuni´                     Classical computing with explicit structural rules   38 / 50
Sequent calculus, proofs and programs            Logical setting
    The ∗X calculus : explicit erasure and duplication         From sequent proofs to terms
                       Explicit vs implicit : ∗X vs X          The syntax and reduction rules
                                  Strong normalisation         Diagrammatic view


The main source of non-confluence

                                                                               Q               Q
                                                                           I               O
                         P                       Q                                 P

                                                         and
                                                                               P               P
                                                                           I               O
                         P                        Q                                Q


        non-confluence is a feature of sequent calculus
        an intrinsic property of classical computation
        the “choice” represented by activation rules
        in literature this is known as “Lafont’s example”

                                             s ˇ c
                                        Dragiˇa Zuni´          Classical computing with explicit structural rules   39 / 50
Sequent calculus, proofs and programs          Logical setting
      The ∗X calculus : explicit erasure and duplication       From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X        The syntax and reduction rules
                                    Strong normalisation       Diagrammatic view


An example
The Peirce’s law




                              E


                                           I




                                                           E




                                               s ˇ c
                                          Dragiˇa Zuni´        Classical computing with explicit structural rules   40 / 50
Sequent calculus, proofs and programs          Logical setting
      The ∗X calculus : explicit erasure and duplication       From sequent proofs to terms
                         Explicit vs implicit : ∗X vs X        The syntax and reduction rules
                                    Strong normalisation       Diagrammatic view


An example
The Peirce’s law - with types assigned


                    x: A            α1 : A
                                                                                  α: A
                                    β: B               y: A         α2: A


                              E
                                  γ: A     B
                                            I
                   z: (A       B)     A


                                                           E

                                                                  δ: ((A        B)     A)       A



                                                s ˇ c
                                           Dragiˇa Zuni´       Classical computing with explicit structural rules   41 / 50
Sequent calculus, proofs and programs
      The ∗X calculus : explicit erasure and duplication
                         Explicit vs implicit : ∗X vs X
                                    Strong normalisation


Outline

  1   Sequent calculus, proofs and programs
        Implicit structural rules – the X calculus
        Explicit structural rules – the ∗X calculus

  2   The ∗X calculus : explicit erasure and duplication
        Logical setting
        From sequent proofs to terms
        The syntax and reduction rules
        Diagrammatic view

  3   Explicit vs implicit : ∗X vs X

  4   Strong normalisation


                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   42 / 50
Sequent calculus, proofs and programs
    The ∗X calculus : explicit erasure and duplication
                       Explicit vs implicit : ∗X vs X
                                  Strong normalisation


Encoding ∗X in X calculus
  Definition (Encoding)




                                             s ˇ c
                                        Dragiˇa Zuni´    Classical computing with explicit structural rules   43 / 50
Sequent calculus, proofs and programs
    The ∗X calculus : explicit erasure and duplication
                       Explicit vs implicit : ∗X vs X
                                  Strong normalisation


Encoding preserves types




  Lemma (Type preservation)
   For an arbitrary ∗X -term




                                             s ˇ c
                                        Dragiˇa Zuni´    Classical computing with explicit structural rules   44 / 50
Sequent calculus, proofs and programs
    The ∗X calculus : explicit erasure and duplication
                       Explicit vs implicit : ∗X vs X
                                  Strong normalisation


Simulating ∗X reduction



  Theorem (Reduction simulation)




                                             s ˇ c
                                        Dragiˇa Zuni´    Classical computing with explicit structural rules   45 / 50
Sequent calculus, proofs and programs
      The ∗X calculus : explicit erasure and duplication
                         Explicit vs implicit : ∗X vs X
                                    Strong normalisation


Outline

  1   Sequent calculus, proofs and programs
        Implicit structural rules – the X calculus
        Explicit structural rules – the ∗X calculus

  2   The ∗X calculus : explicit erasure and duplication
        Logical setting
        From sequent proofs to terms
        The syntax and reduction rules
        Diagrammatic view

  3   Explicit vs implicit : ∗X vs X

  4   Strong normalisation


                                               s ˇ c
                                          Dragiˇa Zuni´    Classical computing with explicit structural rules   46 / 50
Sequent calculus, proofs and programs
    The ∗X calculus : explicit erasure and duplication
                       Explicit vs implicit : ∗X vs X
                                  Strong normalisation


Strong normalisation of ∗X -calculus
  Theorem (SN)




                                             s ˇ c
                                        Dragiˇa Zuni´    Classical computing with explicit structural rules   47 / 50
Sequent calculus, proofs and programs
    The ∗X calculus : explicit erasure and duplication
                       Explicit vs implicit : ∗X vs X
                                  Strong normalisation


Future work




        define equivalent terms, the c X calculus
        formalize the diagrammatic calculus (capturing the essence of
        computation)
        a 3d computational model ?
        possible applications of non-confluent systems ?




                                             s ˇ c
                                        Dragiˇa Zuni´    Classical computing with explicit structural rules   48 / 50
Sequent calculus, proofs and programs
    The ∗X calculus : explicit erasure and duplication
                       Explicit vs implicit : ∗X vs X
                                  Strong normalisation


Some references

        S. Ghilezan, P. Lescanne, D. Zuni´    ˇ    c
        Comp. interpretation of classical logic with expl. struct. rules, 2012.
        S. Ghilezan, J. Ivetic, P. Lescanne, D. ˇuni´         Z     c
        Intuitionistic sequent-style calculus with explicit struct. rules, 2010.
        D. Kesner and S. Lengrand
        Explicit operators for λ-calculus, 2006.
        C. Urban and G. M. Bierman
        Strong normalisation of cut-elimination in classical logic, 1999.
        S. van Bakel, S. Lengrand, P. Lescanne
        The language X . Circuits, computations and classical logic, 2005.
        E. Robinson
        Proof nets for classical logic, 2005.

                                             s ˇ c
                                        Dragiˇa Zuni´    Classical computing with explicit structural rules   49 / 50
Sequent calculus, proofs and programs
The ∗X calculus : explicit erasure and duplication
                   Explicit vs implicit : ∗X vs X
                              Strong normalisation




                                  Thank you. Hvala na paˇnji !
                                                        z




                                         s ˇ c
                                    Dragiˇa Zuni´    Classical computing with explicit structural rules   50 / 50

More Related Content

What's hot (20)

PDF
Hibbeler chapter10
ahmedalnamer
 
PDF
Csr2011 june17 11_30_vyalyi
CSR2011
 
PDF
Mathematics notes and formula for class 12 chapter 7. integrals
sakhi pathak
 
PDF
Fibrational Versions of Dialectica Categories
Valeria de Paiva
 
PDF
Jeju2013
Corneliu Sochichiu
 
PDF
presentation
Jiguang Shen
 
PDF
03 banach
balajiparthasarathy82
 
PDF
Some fundamental theorems in Banach spaces and Hilbert spaces
Sanjay Sharma
 
PDF
Noncrossing partitions and reflection discriminants
David Bessis
 
PDF
Complex reflection groups are somehow real
David Bessis
 
PDF
Chasing the Rabbit
David Bessis
 
PDF
On the proof theory for Description Logics
Alexandre Rademaker
 
PDF
Sparsity by worst-case quadratic penalties
Laboratoire Statistique et génome
 
PDF
Presentacion granada
Rene García
 
PDF
A lattice-based consensus clustering
Dmitrii Ignatov
 
PDF
Pattern-based classification of demographic sequences
Dmitrii Ignatov
 
PDF
Ldb Convergenze Parallele_De barros_02
laboratoridalbasso
 
PDF
Solvability of Matrix Riccati Inequality Talk Slides
Kevin Kissi
 
PDF
An elementary introduction to information geometry
Frank Nielsen
 
PDF
Information geometry: Dualistic manifold structures and their uses
Frank Nielsen
 
Hibbeler chapter10
ahmedalnamer
 
Csr2011 june17 11_30_vyalyi
CSR2011
 
Mathematics notes and formula for class 12 chapter 7. integrals
sakhi pathak
 
Fibrational Versions of Dialectica Categories
Valeria de Paiva
 
presentation
Jiguang Shen
 
Some fundamental theorems in Banach spaces and Hilbert spaces
Sanjay Sharma
 
Noncrossing partitions and reflection discriminants
David Bessis
 
Complex reflection groups are somehow real
David Bessis
 
Chasing the Rabbit
David Bessis
 
On the proof theory for Description Logics
Alexandre Rademaker
 
Sparsity by worst-case quadratic penalties
Laboratoire Statistique et génome
 
Presentacion granada
Rene García
 
A lattice-based consensus clustering
Dmitrii Ignatov
 
Pattern-based classification of demographic sequences
Dmitrii Ignatov
 
Ldb Convergenze Parallele_De barros_02
laboratoridalbasso
 
Solvability of Matrix Riccati Inequality Talk Slides
Kevin Kissi
 
An elementary introduction to information geometry
Frank Nielsen
 
Information geometry: Dualistic manifold structures and their uses
Frank Nielsen
 

Viewers also liked (20)

PPTX
Working in the Global Classroom: A Teacher's Journey (#RSCON4)
Michael Graffin
 
PPS
חקר רשת
lilachchn
 
PDF
Facebook Fan Page Video
Brad Sage
 
PDF
Governor's Program Bill: Property Tax
Unshackle Upstate
 
PPT
Launching Global Classroom: 2011-12
Michael Graffin
 
PDF
POWER POINT cargols 2011-12
Cucaferatona
 
PPTX
Teatro "Rudens"
mluzcc
 
PPT
SOFTWAREA
Aitoriker
 
PPTX
Measuring The Clouds
Guy Rosen
 
DOCX
Support Each Other in 140 Characters or Less
Linda Lindsey
 
PDF
Financial-multiparty-contracts bahr-berthold-elsman dragisa-zunic
Dragisa Zunic
 
PPT
IEEE-VESIT Presentation
varunk
 
PPT
Novetats setmanals biblioteca publica_municipal
Purabiblioteca
 
PDF
IV Jornades d'Història del Monestir de les Avellanes
Monestir de les Avellanes
 
PPTX
Scootle 101 - Resources for the Australian Curriculum
Michael Graffin
 
PPS
Mirror
teandson
 
PPTX
מצגת אני וחברות
guest75272f
 
KEY
rubykaigi.orgを支える技術 Ruby会議2011 Lightning Talk
Ryoichi SEKIGUCHI
 
PDF
Pt. Bybeka - at the Yogya Furniture Fair
PT. BYBEKA
 
PPT
b
riyaan143
 
Working in the Global Classroom: A Teacher's Journey (#RSCON4)
Michael Graffin
 
חקר רשת
lilachchn
 
Facebook Fan Page Video
Brad Sage
 
Governor's Program Bill: Property Tax
Unshackle Upstate
 
Launching Global Classroom: 2011-12
Michael Graffin
 
POWER POINT cargols 2011-12
Cucaferatona
 
Teatro "Rudens"
mluzcc
 
SOFTWAREA
Aitoriker
 
Measuring The Clouds
Guy Rosen
 
Support Each Other in 140 Characters or Less
Linda Lindsey
 
Financial-multiparty-contracts bahr-berthold-elsman dragisa-zunic
Dragisa Zunic
 
IEEE-VESIT Presentation
varunk
 
Novetats setmanals biblioteca publica_municipal
Purabiblioteca
 
IV Jornades d'Història del Monestir de les Avellanes
Monestir de les Avellanes
 
Scootle 101 - Resources for the Australian Curriculum
Michael Graffin
 
Mirror
teandson
 
מצגת אני וחברות
guest75272f
 
rubykaigi.orgを支える技術 Ruby会議2011 Lightning Talk
Ryoichi SEKIGUCHI
 
Pt. Bybeka - at the Yogya Furniture Fair
PT. BYBEKA
 
Ad

Similar to Dragisa Zunic - Classical computing with explicit structural rules - the *X calculus (20)

PDF
Slides used during my thesis defense "Du typage vectoriel"
Alejandro Díaz-Caro
 
PDF
A type system for the vectorial aspects of the linear-algebraic lambda-calculus
Alejandro Díaz-Caro
 
PDF
H-MLQ
Dan HERNEST
 
PDF
Categorical Semantics for Explicit Substitutions
Valeria de Paiva
 
PDF
Words Semigroups Transductions 1st Edition Masami Ito
gouiliowain
 
PDF
Math63032modal
Hanibei
 
PDF
Words Semigroups Transductions 1st Edition Masami Ito
amranfrancq
 
PDF
Words Semigroups Transductions 1st Edition Masami Ito
melaadtemes
 
PDF
leanCoR: lean Connection-based DL Reasoner
Adriano Melo
 
PDF
Logic And Structure 4th Ed Corrected 2nd Print Dalen Dirk
bvyajizmpp3438
 
PDF
Logic Colloquium 2004 1st Edition Alessandro Andretta
vjonisjionny21
 
PDF
Mathematical logic
ble nature
 
PDF
An Abstraction-Based Genetic Programming System
fbinard
 
PDF
Logic Colloquium 2004 1st Edition Alessandro Andretta
kapolireshat
 
PDF
Categorical Semantics for Explicit Substitutions
Valeria de Paiva
 
PDF
Cody Roux - Pure Type Systems - Boston Haskell Meetup
Greg Hale
 
PDF
History of lambda calculus and combinatory logic
sugeladi
 
PPTX
Class 34: Proving Unprovability
David Evans
 
PDF
Boolean Programs and Quantified Propositional Proof System -
Michael Soltys
 
PDF
A Course in Mathematical Logic for Mathematicians, Second Edition.pdf
ssuser2c74e2
 
Slides used during my thesis defense "Du typage vectoriel"
Alejandro Díaz-Caro
 
A type system for the vectorial aspects of the linear-algebraic lambda-calculus
Alejandro Díaz-Caro
 
Categorical Semantics for Explicit Substitutions
Valeria de Paiva
 
Words Semigroups Transductions 1st Edition Masami Ito
gouiliowain
 
Math63032modal
Hanibei
 
Words Semigroups Transductions 1st Edition Masami Ito
amranfrancq
 
Words Semigroups Transductions 1st Edition Masami Ito
melaadtemes
 
leanCoR: lean Connection-based DL Reasoner
Adriano Melo
 
Logic And Structure 4th Ed Corrected 2nd Print Dalen Dirk
bvyajizmpp3438
 
Logic Colloquium 2004 1st Edition Alessandro Andretta
vjonisjionny21
 
Mathematical logic
ble nature
 
An Abstraction-Based Genetic Programming System
fbinard
 
Logic Colloquium 2004 1st Edition Alessandro Andretta
kapolireshat
 
Categorical Semantics for Explicit Substitutions
Valeria de Paiva
 
Cody Roux - Pure Type Systems - Boston Haskell Meetup
Greg Hale
 
History of lambda calculus and combinatory logic
sugeladi
 
Class 34: Proving Unprovability
David Evans
 
Boolean Programs and Quantified Propositional Proof System -
Michael Soltys
 
A Course in Mathematical Logic for Mathematicians, Second Edition.pdf
ssuser2c74e2
 
Ad

Dragisa Zunic - Classical computing with explicit structural rules - the *X calculus

  • 1. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Explicit vs implicit : ∗X vs X Strong normalisation Classical computing with explicit structural rules –the ∗X calculus– s ˇ c Dragiˇa Zuni´ – together with: Silvia Ghilezan and Pierre Lescanne Mathematical Institute SANU, Belgrade Matematiˇki Institut Srpske Akademije Nauka i Umetnosti, Beograd c November 19, 2012. s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 1 / 50
  • 2. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Explicit vs implicit : ∗X vs X Strong normalisation Outline 1 Sequent calculus, proofs and programs 2 The ∗X calculus : explicit erasure and duplication 3 Explicit vs implicit : ∗X vs X 4 Strong normalisation s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 2 / 50
  • 3. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Implicit structural rules – the X calculus Explicit vs implicit : ∗X vs X Explicit structural rules – the ∗X calculus Strong normalisation Outline 1 Sequent calculus, proofs and programs Implicit structural rules – the X calculus Explicit structural rules – the ∗X calculus 2 The ∗X calculus : explicit erasure and duplication Logical setting From sequent proofs to terms The syntax and reduction rules Diagrammatic view 3 Explicit vs implicit : ∗X vs X 4 Strong normalisation s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 3 / 50
  • 4. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Implicit structural rules – the X calculus Explicit vs implicit : ∗X vs X Explicit structural rules – the ∗X calculus Strong normalisation The framework Classical logic Sequent calculus of G.Gentzen (two important formalisms : sequent calculus and natural deduction calculus) The Curry-Howard correspondence (the relation between proof theory and the programming language theory) The goal is to study classical computation, by assigning computational interpretation(s) to classical logic represented in the sequent calculus. s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 4 / 50
  • 5. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Implicit structural rules – the X calculus Explicit vs implicit : ∗X vs X Explicit structural rules – the ∗X calculus Strong normalisation The Curry-Howard correspondence Reveals a strong connection between logic and computation The intuitionistic logic and simply typed λ-calculus Proofs ⇔ Terms Propositions ⇔ Types Normalization ⇔ Reduction Extending the “Curry-Howard paradigm” Classical logic : T. Griffin (1990) M. Parigot (1992) : λµ-calculus (natural deduction) ¯ µ H. Herbelin (1995-2005) : λµ˜-calculus (sequent calculus) s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 5 / 50
  • 6. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Implicit structural rules – the X calculus Explicit vs implicit : ∗X vs X Explicit structural rules – the ∗X calculus Strong normalisation Related work The two predecessors Classical logic : the X calculus C. Urban (2000) S. Lengrand (2003) S. van Bakel, S.Lengrand, P. Lescanne (2005) Intuitionistic logic : the λlxr-calculus D. Kesner, S. Lengrand (2005) X λlxr ∗X s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 6 / 50
  • 7. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Implicit structural rules – the X calculus Explicit vs implicit : ∗X vs X Explicit structural rules – the ∗X calculus Strong normalisation G3 sequent system for classical logic X -calculus (axiom) Γ, A A, ∆ Γ A, ∆ Γ, B ∆ Γ, A B, ∆ (→ left) (→ right) Γ, A → B ∆ Γ A → B, ∆ Γ A, ∆ Γ, A ∆ (cut) Γ ∆ Contexts Γ, ∆ are sets Context-sharing style No structural rules s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 7 / 50
  • 8. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Implicit structural rules – the X calculus Explicit vs implicit : ∗X vs X Explicit structural rules – the ∗X calculus Strong normalisation G1 sequent system for classical logic ∗X calculus (axiom) A A Γ A, ∆ Γ ,B ∆ Γ, A B, ∆ (→ left) (→ right) Γ, Γ , A → B ∆, ∆ Γ A → B, ∆ Γ A, ∆ Γ ,A ∆ (cut) Γ, Γ ∆, ∆ Γ ∆ Γ ∆ (left weakening) (right weakening) Γ, A ∆ Γ A, ∆ Γ, A, A ∆ Γ A, A, ∆ (left contraction) (right contraction) Γ, A ∆ Γ A, ∆ s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 8 / 50
  • 9. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Outline 1 Sequent calculus, proofs and programs Implicit structural rules – the X calculus Explicit structural rules – the ∗X calculus 2 The ∗X calculus : explicit erasure and duplication Logical setting From sequent proofs to terms The syntax and reduction rules Diagrammatic view 3 Explicit vs implicit : ∗X vs X 4 Strong normalisation s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 9 / 50
  • 10. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Computational interpretation of classical proofs Sequent calculus with explicit structural rules (weakening and contraction) 1) Terms in ∗X -calculus are in fact annotations for proofs, 2) Computation in ∗X -calculus corresponds to cut-elimination Weakening as an eraser / Contraction as a duplicator s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 10 / 50
  • 11. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Names The terms are built from names. Two categories of names : x, y , z... in-names α, β, γ... out-names Binders wear “hats” : x, y , z... α, β, γ... Examples : β x.α x x.β β . α [P γ >α s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 11 / 50
  • 12. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Name = Variable In λ-calculus : variables β (λy .xyz)M − xMz → An arbitrary term M substitutes the variable y In ∗X -calculus : names A name can never be substituted for a term A name can only be renamed s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 12 / 50
  • 13. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view G1 sequent system for classical logic (axiom) A A Γ A, ∆ Γ ,B ∆ Γ, A B, ∆ (→ left) (→ right) Γ, Γ , A → B ∆, ∆ Γ A → B, ∆ Γ A, ∆ Γ ,A ∆ (cut) Γ, Γ ∆, ∆ Γ ∆ Γ ∆ (left weakening) (right weakening) Γ, A ∆ Γ A, ∆ Γ, A, A ∆ Γ A, A, ∆ (left contraction) (right contraction) Γ, A ∆ Γ A, ∆ s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 13 / 50
  • 14. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The terms correspond to proofs : (caps) x.α :. x : A α:A P :. Γ α : A, ∆ Q :. Γ , x : B ∆ P :. Γ, x : A α : B, ∆ (imp) (exp) P α [y ] xQ :. Γ, Γ , y : A → B ∆, ∆ x P α . β :. Γ β : A → B, ∆ P :. Γ α : A, ∆ Q :. Γ , x : A ∆ (cut) P α † xQ :. Γ, Γ ∆, ∆ P :. Γ ∆ P :. Γ ∆ (left eraser) (right eraser) x P :. Γ, x : A ∆ P α :. Γ α : A, ∆ P :. Γ, y : A, z : A ∆ P :. Γ β : A, γ : A, ∆ (left dupl.) (right dupl.) x < y P] :. Γ, x : A z ∆ [P β γ >α :. Γ α : A, ∆ s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 14 / 50
  • 15. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The terms correspond to proofs : (caps) x.α :. x : A α:A P :. Γ α : A, ∆ Q :. Γ , x : B ∆ P :. Γ, x : A α : B, ∆ (imp) (exp) P α [y ] xQ :. Γ, Γ , y : A → B ∆, ∆ x P α . β :. Γ β : A → B, ∆ P :. Γ α : A, ∆ Q :. Γ , x : A ∆ (cut) P α † xQ :. Γ, Γ ∆, ∆ P :. Γ ∆ P :. Γ ∆ (left eraser) (right eraser) x P :. Γ, x : A ∆ P α :. Γ α : A, ∆ P :. Γ, y : A, z : A ∆ P :. Γ β : A, γ : A, ∆ (left dupl.) (right dupl.) x < y P] :. Γ, x : A z ∆ [P β γ >α :. Γ α : A, ∆ s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 14 / 50
  • 16. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The terms correspond to proofs : (caps) x.α :. x : A α:A P :. Γ α : A, ∆ Q :. Γ , x : B ∆ P :. Γ, x : A α : B, ∆ (imp) (exp) P α [y ] xQ :. Γ, Γ , y : A → B ∆, ∆ x P α . β :. Γ β : A → B, ∆ P :. Γ α : A, ∆ Q :. Γ , x : A ∆ (cut) P α † xQ :. Γ, Γ ∆, ∆ P :. Γ ∆ P :. Γ ∆ (left eraser) (right eraser) x P :. Γ, x : A ∆ P α :. Γ α : A, ∆ P :. Γ, y : A, z : A ∆ P :. Γ β : A, γ : A, ∆ (left dupl.) (right dupl.) x < y P] :. Γ, x : A z ∆ [P β γ >α :. Γ α : A, ∆ s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 14 / 50
  • 17. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The terms correspond to proofs : (caps) x.α :. x : A α:A P :. Γ α : A, ∆ Q :. Γ , x : B ∆ P :. Γ, x : A α : B, ∆ (imp) (exp) P α [y ] xQ :. Γ, Γ , y : A → B ∆, ∆ x P α . β :. Γ β : A → B, ∆ P :. Γ α : A, ∆ Q :. Γ , x : A ∆ (cut) P α † xQ :. Γ, Γ ∆, ∆ P :. Γ ∆ P :. Γ ∆ (left eraser) (right eraser) x P :. Γ, x : A ∆ P α :. Γ α : A, ∆ P :. Γ, y : A, z : A ∆ P :. Γ β : A, γ : A, ∆ (left dupl.) (right dupl.) x < y P] :. Γ, x : A z ∆ [P β γ >α :. Γ α : A, ∆ s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 14 / 50
  • 18. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The terms correspond to proofs : (caps) x.α :. x : A α:A P :. Γ α : A, ∆ Q :. Γ , x : B ∆ P :. Γ, x : A α : B, ∆ (imp) (exp) P α [y ] xQ :. Γ, Γ , y : A → B ∆, ∆ x P α . β :. Γ β : A → B, ∆ P :. Γ α : A, ∆ Q :. Γ , x : A ∆ (cut) P α † xQ :. Γ, Γ ∆, ∆ P :. Γ ∆ P :. Γ ∆ (left eraser) (right eraser) x P :. Γ, x : A ∆ P α :. Γ α : A, ∆ P :. Γ, y : A, z : A ∆ P :. Γ β : A, γ : A, ∆ (left dupl.) (right dupl.) x < y P] :. Γ, x : A z ∆ [P β γ >α :. Γ α : A, ∆ s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 14 / 50
  • 19. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The ∗X calculus The syntax P, Q ::= x.α capsule | x P β .α exporter | P α [y ] xQ importer | P α † xQ cut | x P left-eraser | P α right-eraser y | x < z P] left-duplicator β | [P γ >α right-duplicator s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 15 / 50
  • 20. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Linearity In ∗X -calculus only linear terms are considered : every free name occurs only once every binder does bind an occurrence of a free name (and therefore only one) Examples of non-linear terms : x y .β β . α and x.α α Every non-linear term has a linear representation : α1 x (x y .β ) β . α and [ x.α1 α2 α2 > α s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 16 / 50
  • 21. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Linearity In ∗X -calculus only linear terms are considered : every free name occurs only once every binder does bind an occurrence of a free name (and therefore only one) Examples of non-linear terms : x y .β β . α and x.α α Every non-linear term has a linear representation : α1 x (x y .β ) β . α and [ x.α1 α2 α2 > α s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 16 / 50
  • 22. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Linearity In ∗X -calculus only linear terms are considered : every free name occurs only once every binder does bind an occurrence of a free name (and therefore only one) Examples of non-linear terms : x y .β β . α and x.α α Every non-linear term has a linear representation : α1 x (x y .β ) β . α and [ x.α1 α2 α2 >α s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 16 / 50
  • 23. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Linearity In ∗X -calculus only linear terms are considered : every free name occurs only once every binder does bind an occurrence of a free name (and therefore only one) Examples of non-linear terms : x y .β β . α and x.α α Every non-linear term has a linear representation : α1 x (x y .β ) β . α and [ x.α1 α2 α2 >α s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 16 / 50
  • 24. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Linearity In ∗X -calculus only linear terms are considered : every free name occurs only once every binder does bind an occurrence of a free name (and therefore only one) Examples of non-linear terms : x y .β β . α and x.α α Every non-linear term has a linear representation : α1 x (x y .β ) β . α and [ x.α1 α2 α2 >α s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 16 / 50
  • 25. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The ∗X calculus Grouping the rules : Logical rules (L-principal names involved) Structural rules (S-principal names involved) (Activation rules) (Deactivation rules) Propagation rules s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 17 / 50
  • 26. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The ∗X calculus The syntax P, Q ::= x.α capsule | x P β .α exporter | P α [y ] xQ importer | P α † xQ cut | x P left-eraser | P α right-eraser y | x < z P] left-duplicator β | [P γ >α right-duplicator The notion of principal name of a term. 1 L-principal name 2 S–principal name s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 18 / 50
  • 27. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The ∗X calculus The syntax P, Q ::= x.α capsule | x P β .α exporter | P α [y ] xQ importer | P α † xQ cut | x P left-eraser | P α right-eraser y | x < z P] left-duplicator β | [P γ >α right-duplicator The notion of principal name of a term. 1 L–principal name 2 S-principal name s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 19 / 50
  • 28. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view ∗ X : logical rules Renaming and inserting Renaming : (ren-L) : y .α α † xQ → Q{y /x} (ren-R) : P α † x x.β → P{β/α} Diagrammatically : y x y (ren-L) : α Q Q α x β β (ren-R) : P P s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 20 / 50
  • 29. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view ∗ X : logical rules Inserting (ei-insert) : (Qγ † y P)β † zR (y P β . α)α † x(Qγ [x] zR) → either Qγ † y (P β † zR) Diagrammatically : y β P γ z Q I R E α x γ y β z Q P R Notice : logical rules define reducing when a cut binds L-principal names s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 21 / 50
  • 30. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view ∗ X : structural rules Left erasure : ( † -eras) : (P α)α † xQ → IQ P OQ , where I Q = I (Q) x, OQ = O(Q) Diagrammatically : I { Q P α x Q }O Q I { Q P }O Q s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 22 / 50
  • 31. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view ∗ X : structural rules Left duplication ( † -dupl) : IQ Q O1 ([P α1 † xQ → I Q < I1 (P α1 † x1 Q1 )α2 † x2 Q2 >O Q α2 >α)α Q Q O2 , 2 Diagrammatically : I { Q β P α x Q γ }O Q I { Q β x Q1 P γ x Q2 }O Q s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 23 / 50
  • 32. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Symmetry... The † -erasure P } O I P { P α x Q I P { Q } O P An illustration of the symmetry... s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 24 / 50
  • 33. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Symmetry... The † -duplication }O P y IP { P α x z Q }O P y P1 α Q IP { P2 α z An illustration of the symmetry... s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 25 / 50
  • 34. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Duplication, informally Classical Logic Intuitionistic Logic Component duplicated, interface preserved. Similarly for erasure s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 26 / 50
  • 35. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view ∗ X : propagation rules (left subgroup) † † † (exp − prop) : (x P γ . α)β yR → x (P β y R) γ . α † † † (imp − prop1 ) : (P α [x] zQ)β yR → (P β y R)α [x] zQ, β ∈ O(P) † † † (imp − prop2 ) : (P α [x] zQ)β yR → P α [x] z(Q β y R), β ∈ O(Q) † † (cut(c) − prop) : (P α † x x.β )β y R → Pα † y R (cut † − prop1 ) : (P α † xQ)β † y R → (P β † y R)α † xQ, β ∈ O(P), Q = x.β (cut † − prop2 ) : (P α † xQ)β † y R → P α † x(Q β † y R), β ∈ O(Q), Q = x.β † † † (L–eras − prop) : (x M)β yR → x (M β y R) † † † (R–eras − prop) : (M α)β yR → (M β y R) α, α=β † x † x † (L–dupl − prop) : (x < x1 M])β yR → x < x1 M β y R] 2 2 † α1 † † α1 (R–dupl − prop) : ([M α2 >α)β yR → [M β yR α2 >α, α=β Propagation rules do not have a diagrammatic representation s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 27 / 50
  • 36. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The ∗X calculus Propagation rules ^ ^ α α xQ s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 28 / 50
  • 37. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The ∗X calculus Propagation rules ^ ^ α α xQ s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 29 / 50
  • 38. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The ∗X calculus Propagation rules ^ ^ α α xQ s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 30 / 50
  • 39. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The ∗X calculus Propagation rules ^ ^ α α xQ s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 31 / 50
  • 40. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The ∗X calculus Propagation rules ^ ^ αα xQ s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 32 / 50
  • 41. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The ∗X calculus Propagation rules ^ ^ αα xQ We may think of α † xQ as an explicit substitution s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 33 / 50
  • 42. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view ∗ X : the basic properties 1 Linearity preservation If P is linear and P → Q then Q is linear 2 Free names (“interface”) preservation If P → Q then N(P) = N(Q) 3 Type preservation – computation ——– (has to be) seen as can be proof-transformation If P :. Γ ∆ and P → P , then P :. Γ ∆ 4 Strong normalisation (termination of reduction) s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 34 / 50
  • 43. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view Peirce’s law in ∗X (capsule) x.α1 :. x : A α1 : A (R − eraser ) x.α1 β :. x : A α1 : A, β : B (exporter ) (capsule) x ( x.α1 β) β . γ :. α1 : A, γ : A → B y .α2 :. y : A α2 : A (importer ) (x ( x.α1 β) β . γ) γ [z] y y .α2 :. z : (A → B) → A α1 : A, α2 : A (R − duplicator ) α1 [(x ( x.α1 β) β . γ) γ [z] y y .α2 α2 >α :. z : (A → B) → A α:A (exporter ) α1 z ([(x ( x.α1 β) β . γ) γ [z] y y .α2 >α) α . δ :. δ : ((A → B) → A) → A α2 (axiom) A A (R − weakening ) A A, B (→ R) (axiom) A, A → B A A (→ L) (A → B) → A A, A (R − contraction) s ˇ c Dragiˇa B) → A (A → Zuni´ Classical computing with explicit structural rules A 35 / 50
  • 44. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view *X : (axiom) A A (R − weakening ) A A, B (→ R) (axiom) A, A → B A A (→ L) (A → B) → A A, A (R − contraction) (A → B) → A A (→ R) ((A → B) → A) → A X: (axiom) A A, B (→ R) (axiom) A, A → B A A (→ L) (A → B) → A A (→ R) ((A → B) → A) → A s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 36 / 50
  • 45. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The terms of ∗X are convenient for two-dimensional representation, due to the presence of erasers and duplicators but also the linearity constraints s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 37 / 50
  • 46. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The diagrammatic calculus The syntax x α P Q ::= , x β P α y Q P I x E α P α x Q α x γ z P β y P α P x P s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 38 / 50
  • 47. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view The main source of non-confluence Q Q I O P Q P and P P I O P Q Q non-confluence is a feature of sequent calculus an intrinsic property of classical computation the “choice” represented by activation rules in literature this is known as “Lafont’s example” s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 39 / 50
  • 48. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view An example The Peirce’s law E I E s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 40 / 50
  • 49. Sequent calculus, proofs and programs Logical setting The ∗X calculus : explicit erasure and duplication From sequent proofs to terms Explicit vs implicit : ∗X vs X The syntax and reduction rules Strong normalisation Diagrammatic view An example The Peirce’s law - with types assigned x: A α1 : A α: A β: B y: A α2: A E γ: A B I z: (A B) A E δ: ((A B) A) A s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 41 / 50
  • 50. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Explicit vs implicit : ∗X vs X Strong normalisation Outline 1 Sequent calculus, proofs and programs Implicit structural rules – the X calculus Explicit structural rules – the ∗X calculus 2 The ∗X calculus : explicit erasure and duplication Logical setting From sequent proofs to terms The syntax and reduction rules Diagrammatic view 3 Explicit vs implicit : ∗X vs X 4 Strong normalisation s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 42 / 50
  • 51. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Explicit vs implicit : ∗X vs X Strong normalisation Encoding ∗X in X calculus Definition (Encoding) s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 43 / 50
  • 52. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Explicit vs implicit : ∗X vs X Strong normalisation Encoding preserves types Lemma (Type preservation) For an arbitrary ∗X -term s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 44 / 50
  • 53. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Explicit vs implicit : ∗X vs X Strong normalisation Simulating ∗X reduction Theorem (Reduction simulation) s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 45 / 50
  • 54. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Explicit vs implicit : ∗X vs X Strong normalisation Outline 1 Sequent calculus, proofs and programs Implicit structural rules – the X calculus Explicit structural rules – the ∗X calculus 2 The ∗X calculus : explicit erasure and duplication Logical setting From sequent proofs to terms The syntax and reduction rules Diagrammatic view 3 Explicit vs implicit : ∗X vs X 4 Strong normalisation s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 46 / 50
  • 55. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Explicit vs implicit : ∗X vs X Strong normalisation Strong normalisation of ∗X -calculus Theorem (SN) s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 47 / 50
  • 56. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Explicit vs implicit : ∗X vs X Strong normalisation Future work define equivalent terms, the c X calculus formalize the diagrammatic calculus (capturing the essence of computation) a 3d computational model ? possible applications of non-confluent systems ? s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 48 / 50
  • 57. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Explicit vs implicit : ∗X vs X Strong normalisation Some references S. Ghilezan, P. Lescanne, D. Zuni´ ˇ c Comp. interpretation of classical logic with expl. struct. rules, 2012. S. Ghilezan, J. Ivetic, P. Lescanne, D. ˇuni´ Z c Intuitionistic sequent-style calculus with explicit struct. rules, 2010. D. Kesner and S. Lengrand Explicit operators for λ-calculus, 2006. C. Urban and G. M. Bierman Strong normalisation of cut-elimination in classical logic, 1999. S. van Bakel, S. Lengrand, P. Lescanne The language X . Circuits, computations and classical logic, 2005. E. Robinson Proof nets for classical logic, 2005. s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 49 / 50
  • 58. Sequent calculus, proofs and programs The ∗X calculus : explicit erasure and duplication Explicit vs implicit : ∗X vs X Strong normalisation Thank you. Hvala na paˇnji ! z s ˇ c Dragiˇa Zuni´ Classical computing with explicit structural rules 50 / 50