Conflict nets: Efficient locally canonical MALL proof nets Dominic - - PowerPoint PPT Presentation

conflict nets efficient locally canonical mall proof nets
SMART_READER_LITE
LIVE PREVIEW

Conflict nets: Efficient locally canonical MALL proof nets Dominic - - PowerPoint PPT Presentation

Conflict nets: Efficient locally canonical MALL proof nets Dominic J. D. Hughes and Willem Heijltjes LICS, 6 July 2016 Conflict nets: Efficient locally canonical MALL proof nets Conflict nets: Efficient locally canonical MALL proof nets


slide-1
SLIDE 1

Conflict nets: Efficient locally canonical MALL proof nets

Dominic J. D. Hughes and Willem Heijltjes

LICS, 6 July 2016

slide-2
SLIDE 2

Conflict nets: Efficient locally canonical MALL proof nets

slide-3
SLIDE 3

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ NJ

LJ = Intuitionistic sequent calculus NJ = Intuitionistic natural deduction

slide-4
SLIDE 4

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ NJ

A B C D ⊢ E A B C∧D ⊢ E A∧B C∧D ⊢ E ≃ A B C D ⊢ E A∧B C D ⊢ E A∧B C∧D ⊢ E − → ← − A B A∧B C D C∧D E

slide-5
SLIDE 5

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ NJ

A B C D ⊢ E A B C∧D ⊢ E A∧B C∧D ⊢ E ≃ A B C D ⊢ E A∧B C D ⊢ E A∧B C∧D ⊢ E − → ← − x : A B A∧B y : C D C∧D N E N [ a, b / x ] [ c, d / y ]

slide-6
SLIDE 6

⊢ A B, C ⊢ D B ⊢ C D A B ⊢ C D ≃ ⊢ A B, C ⊢ D A B, C ⊢ D A B ⊢ C D − → ← − A B A B [C] D C D

slide-7
SLIDE 7

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ

NJ = Λ

efficient canonical for →∧

slide-8
SLIDE 8

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ

NJ = Λ

efficient canonical for →∧ ✗ canonical for →∧∨

slide-9
SLIDE 9

A ⊢ C B ⊢ C A∨B ⊢ C D ⊢ E A∨B, C D ⊢ E ∼ A ⊢ C D ⊢ E A, C D ⊢ E B ⊢ C D ⊢ E B, C D ⊢ E A∨B, C D ⊢ E − → − →

C D A∨B [A] C [B] C C D E A∨B C D [A] C D E C D [B] C D E E

slide-10
SLIDE 10

A ⊢ C B ⊢ C A∨B ⊢ C D ⊢ E A∨B, C D ⊢ E ∼ A ⊢ C D ⊢ E A, C D ⊢ E B ⊢ C D ⊢ E B, C D ⊢ E A∨B, C D ⊢ E − → − →

f : C D x : A∨B [A]

L

C [B]

R

C C D

N

E x : A∨B f : C D [A]

L

C D

N

E f : C D [B]

R

C D

N

E E

N[fM / d]

where

M = case v of inl a → L

inr b → R case v of inl a → N[fL / d] inr b → N[fR / d]

slide-11
SLIDE 11

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ

NJ = Λ

efficient canonical for →∧ ✗ canonical for →∧∨

  • 1987 Girard: LL

Box nets

efficient canonical for MLL

(⊗`)

slide-12
SLIDE 12

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ

NJ = Λ

efficient canonical for →∧ ✗ canonical for →∧∨

  • 1987 Girard: LL

Box nets

efficient canonical for MLL

(⊗`)

P P QQ ⊗ P P⊗QQ RR ⊗ P P⊗QQ⊗RR ≃ P P QQ RR ⊗ QQ⊗RR ⊗ P P⊗QQ⊗RR − → ← − P P⊗Q Q⊗R R

slide-13
SLIDE 13

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ

NJ = Λ

efficient canonical for →∧ ✗ canonical for →∧∨

  • 1987 Girard: LL

Box nets

efficient canonical for MLL

(⊗`)

✗ canonical for MALL (⊗`

` ⊕)

slide-14
SLIDE 14

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ

NJ = Λ

efficient canonical for →∧ ✗ canonical for →∧∨

  • 1987 Girard: LL

Box nets

efficient canonical for MLL

(⊗`)

✗ canonical for MALL (⊗`

` ⊕)

  • 1996 Girard: MALL

Monomial nets

✗ efficient ✗ canonical

slide-15
SLIDE 15

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ

NJ = Λ

efficient canonical for →∧ ✗ canonical for →∧∨

  • 1987 Girard: LL

Box nets

efficient canonical for MLL

(⊗`)

✗ canonical for MALL (⊗`

` ⊕)

  • 1996 Girard: MALL

Monomial nets

✗ efficient ✗ canonical

  • 2003 Hughes + Van Glabbeek: MALL

Slice nets

✗ efficient canonical

slide-16
SLIDE 16

PP PP P ` P P QQ P ` P P⊗Q Q ≃ PP QQ P P⊗Q Q PP QQ P P⊗Q Q P ` P P⊗Q Q − → ← − P ` P P⊗Q Q

slide-17
SLIDE 17

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ

NJ = Λ

efficient canonical for →∧ ✗ canonical for →∧∨

  • 1987 Girard: LL

Box nets

efficient canonical for MLL

(⊗`)

✗ canonical for MALL (⊗`

` ⊕)

  • 1996 Girard: MALL

Monomial nets

✗ efficient ✗ canonical

  • 2003 Hughes + Van Glabbeek: MALL

Slice nets

✗ efficient canonical

slide-18
SLIDE 18

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ

NJ = Λ

efficient canonical for →∧ ✗ canonical for →∧∨

  • 1987 Girard: LL

Box nets

efficient canonical for MLL

(⊗`)

✗ canonical for MALL (⊗`

` ⊕)

  • 1996 Girard: MALL

Monomial nets

✗ efficient ✗ canonical

  • 2003 Hughes + Van Glabbeek: MALL

Slice nets

✗ efficient canonical

  • This paper: MALL

Conflict nets

efficient locally canonical

slide-19
SLIDE 19

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ

NJ = Λ

efficient canonical for →∧ ✗ locally canonical for →∧∨

  • 1987 Girard: LL

Box nets

efficient canonical for MLL

(⊗`)

✗ locally canonical for MALL (⊗`

` ⊕)

  • 1996 Girard: MALL

Monomial nets

✗ efficient ✗ locally canonical

  • 2003 Hughes + Van Glabbeek: MALL

Slice nets

✗ efficient strongly canonical

  • This paper: MALL

Conflict nets

efficient locally canonical

slide-20
SLIDE 20

All MLL and ALL rule commutations are local

P

  • P

Q Q ⊗ P P⊗Q Q R R S

  • S

⊗ R R⊗S S ` R⊗S R`S ⊗ P P⊗Q Q⊗(R⊗S) R`S ` P`(P⊗Q)Q⊗(R⊗S)R`S → P

  • P

Q Q ⊗ P P⊗Q Q R

  • R

S

  • S

⊗ R R⊗S S ⊗ P P⊗Q Q⊗(R⊗S)R S ` P P⊗Q Q⊗(R⊗S) R`S ` P`(P⊗Q)Q⊗(R⊗S)R`S

slide-21
SLIDE 21

One MALL rule commutation is not local Π

. . .

Γ, A B,∆,C B,∆,D ` B∆C ` D ⊗ Γ, A⊗B, ∆, C ` D → Π

. . .

Γ, A B,∆,C ⊗ Γ, A⊗B, ∆,C Π

. . .

Γ, A B,∆,D ⊗ Γ, A⊗B, ∆,D ` Γ, A⊗B, ∆, C ` D

slide-22
SLIDE 22

Local/strong canonicity

  • Local canonicity

Invariance under local rule commutations

  • Strong canonicity

Invariance under all rule commutations

slide-23
SLIDE 23

Conflict nets: Efficient locally canonical MALL proof nets

  • 1934 Gentzen: LJ

NJ = Λ

efficient canonical for →∧ ✗ locally canonical for →∧∨

  • 1987 Girard: LL

Box nets

efficient canonical for MLL

(⊗`)

✗ locally canonical for MALL (⊗`

` ⊕)

  • 1996 Girard: MALL

Monomial nets

✗ efficient ✗ locally canonical

  • 2003 Hughes + Van Glabbeek: MALL

Slice nets

✗ efficient strongly canonical

  • This paper: MALL

Conflict nets

efficient locally canonical

slide-24
SLIDE 24

Conflict net 1 P (P⊗(Q ` Q))`(Q⊕R)

a b c

  • a
>

b c

slide-25
SLIDE 25

Conflict net 2 P ` P P⊗R R ` R

a b c d f e g

>
  • a
>

b c

  • d e
  • f g
slide-26
SLIDE 26

Conflict nets are locally canonical PP QQ QQ ` Q ` QQ ⊗ PP⊗(Q ` Q)Q ⊕1 PP⊗(Q ` Q)Q⊕R ` P

  • P⊗(Q

` Q)

  • `(Q⊕R)

≃ PP QQ ⊕1 QQ⊕R QQ ⊕1 QQ⊕R ` Q ` QQ⊕R ⊗ PP⊗(Q ` Q)Q⊕R ` P

  • P⊗(Q

` Q)

  • `(Q⊕R)

− → − → P (P⊗(Q ` Q))`(Q⊕R)

a b c

  • a
>

b c

slide-27
SLIDE 27

Conflict nets: efficient rather than strongly canonical PP a PPb P ` P P QQ c P ` P P⊗Q Q ∼ PP a QQd P P⊗Q Q PP b QQ e P P⊗Q Q P ` P P⊗Q Q − → − → P ` P P⊗Q Q

a b c

  • >

a b c

P ` P P⊗Q Q

a b d e

>
  • a

d

  • b

e

slide-28
SLIDE 28

Coalescence correctness (generalizing MLL contractibility) P (P⊗(Q ` Q))`(Q⊕R)

a b c

  • a
>

b c

P (P⊗(Q ` Q))`(Q⊕R)

`

a bc

  • a

bc

P (P⊗(Q ` Q))`(Q⊕R)

⊕1

a bc

  • a

bc

P (P⊗(Q ` Q))`(Q⊕R)

a bc

a bc

P (P⊗(Q ` Q))`(Q⊕R)

`

a bc

a bc

slide-29
SLIDE 29

PP

a

QQ

bc

QQ

c

Q ` Q Q Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a b c

  • a
>

b c

slide-30
SLIDE 30

PP

a

QQ

bc

QQ

c

Q ` Q Q Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a b c

  • a
>

b c

P (P⊗(Q ` Q))`(Q⊕R)

`

a bc

  • a

bc

slide-31
SLIDE 31

PP

a

QQ QQ Q ` Q Q

bc

Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a b c

  • a
>

b c

P (P⊗(Q ` Q))`(Q⊕R)

`

a bc

  • a

bc

slide-32
SLIDE 32

PP

a

QQ QQ Q ` Q Q

bc

Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

  • a

bc

slide-33
SLIDE 33

PP

a

QQ QQ Q ` Q Q

bc

Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

  • a

bc

slide-34
SLIDE 34

PP

a

QQ QQ Q ` Q Q

bc

Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

  • a

bc

slide-35
SLIDE 35

PP

a

QQ QQ Q ` Q Q

bc

Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

  • a

bc

P (P⊗(Q ` Q))`(Q⊕R)

⊕1

a bc

  • a

bc

slide-36
SLIDE 36

PP

a

QQ QQ Q ` Q Q Q ` Q Q⊕R

bc

P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

  • a

bc

P (P⊗(Q ` Q))`(Q⊕R)

⊕1

a bc

  • a

bc

slide-37
SLIDE 37

PP

a

QQ QQ Q ` Q Q Q ` Q Q⊕R

bc

P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

  • a

bc

slide-38
SLIDE 38

PP

a

QQ QQ Q ` Q Q Q ` Q Q⊕R

bc

P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

  • a

bc

slide-39
SLIDE 39

PP

a

QQ QQ Q ` Q Q Q ` Q Q⊕R

bc

P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

  • a

bc

slide-40
SLIDE 40

PP

a

QQ QQ Q ` Q Q Q ` Q Q⊕R

bc

P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

  • a

bc

P (P⊗(Q ` Q))`(Q⊕R)

a bc

a bc

slide-41
SLIDE 41

PP QQ QQ Q ` Q Q Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R

a bc

P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

  • a

bc

P (P⊗(Q ` Q))`(Q⊕R)

a bc

a bc

slide-42
SLIDE 42

PP QQ QQ Q ` Q Q Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R

a bc

P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

a bc

slide-43
SLIDE 43

PP QQ QQ Q ` Q Q Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R

a bc

P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

a bc

slide-44
SLIDE 44

PP QQ QQ Q ` Q Q Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R

a bc

P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

a bc

slide-45
SLIDE 45

PP QQ QQ Q ` Q Q Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R

a bc

P (P⊗(Q ` Q))`(Q⊕R) P (P⊗(Q ` Q))`(Q⊕R)

a bc

a bc

P (P⊗(Q ` Q))`(Q⊕R)

`

a bc

a bc

slide-46
SLIDE 46

PP QQ QQ Q ` Q Q Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R)

a bc

P (P⊗(Q ` Q))`(Q⊕R)

a bc

a bc

P (P⊗(Q ` Q))`(Q⊕R)

`

a bc

a bc

slide-47
SLIDE 47

PP QQ QQ Q ` Q Q Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R)

a bc

P (P⊗(Q ` Q))`(Q⊕R)

a bc

a bc

slide-48
SLIDE 48

PP QQ QQ Q ` Q Q Q ` Q Q⊕R P P⊗(Q ` Q) Q⊕R P (P⊗(Q ` Q))`(Q⊕R)

a bc

P (P⊗(Q ` Q))`(Q⊕R)

a bc

a bc

slide-49
SLIDE 49

Cut elimination P P⊗Q

a

Q∗Q Q ` Q

b c d

  • a

b

>

c d

↓ P P⊗Q

a

Q∗Q Q∗Q Q ` Q

c

˙

b d

˜

b

  • a
>
  • ˙

b c

  • ˜

b d

↓ ↓ P P⊗Q

a

Q ` Q

˙

bc

˜

b d

  • a
>

˙

bc

˜

b d