Existential quantification in games and logic (towards a - - PowerPoint PPT Presentation

existential quantification in games and logic
SMART_READER_LITE
LIVE PREVIEW

Existential quantification in games and logic (towards a - - PowerPoint PPT Presentation

Existential quantification in games and logic (towards a combinatorics of proofs) Paul-Andr e Melli` es CNRS, Universit e Paris 7 Computational Interpretations of Proofs 29-30 November 2007 1 Two totems inherited from history


slide-1
SLIDE 1

Existential quantification in games and logic

(towards a combinatorics of proofs)

Paul-Andr´ e Melli` es CNRS, Universit´ e Paris 7 Computational Interpretations of Proofs 29-30 November 2007

1

slide-2
SLIDE 2

Two totems inherited from history

Intuitionistic Logic Classical Logic

2

slide-3
SLIDE 3

Our ambition is to unify them...

Intuitionistic Logic Classical Logic

3

slide-4
SLIDE 4

and to disclose...

4

slide-5
SLIDE 5

and to disclose...

a series of primitive components !

5

slide-6
SLIDE 6

Guiding idea

A proof π : A ⊢ B is a linguistic choreography where Proponent tries to convince Opponent Opponent tries to refute Proponent which we would like to decompose in elementary particles of logic

slide-7
SLIDE 7
slide-8
SLIDE 8

The linear decomposition of the intuitionistic arrow

A ⇒ B = (!A) ⊸ B [1] a proof of A ⊸ B uses its hypothesis A exactly once, [2] a proof of !A is a bag containing an infinite number of proofs of A. Andreas Blass discovered this decomposition as early as 1972...

7

slide-9
SLIDE 9

Three primitive components of logic

[1] the negation ¬ [2] the linear conjunction ⊗ [3] the repetition modality ! Logic = Data Structure + Duality

8

slide-10
SLIDE 10

Three primitive components of logic

[1] the negation ¬ [2] the linear conjunction ⊗ [3] the repetition modality ! An algebraic account of games semantics.

9

slide-11
SLIDE 11

Negation

Every fact has two poles: Proponent and Opponent

10

slide-12
SLIDE 12

An early observation...

Fact: there are just as many canonical proofs

2p

  • R

¬ · · · ¬ A ⊢

2q

  • R

¬ · · · ¬ A as there are increasing functions [p] − → [q] between the ordinals [p] = {0 < 1 < · · · < p − 1} and [q]. Hence, the same combinatorics as augmented simplices.

11

slide-13
SLIDE 13

The two generators

Every increasing function is composite of faces and degeneracies: η : [0] ⊢ [1] µ : [2] ⊢ [1] Similarly, every proof is composite of the two generators: η : A ⊢ ¬¬A µ : ¬¬¬¬A ⊢ ¬¬A Categorically speaking, double negation defines a monad.

12

slide-14
SLIDE 14

Negation

A negation on a symmetric monoidal category A is defined as

  • a functor:

¬ :

A −

→ Aop

  • a bijection

ϕA,B,C between the morphisms in A ⊗ B − → ¬ C and the morphisms in A − → ¬ (B ⊗ C) natural in A, B and C.

13

slide-15
SLIDE 15

The reason for the double negation monad

Every negation induces a pair of adjoint functors

A

L

Aop

R

  • where the adjunction is witnessed by the series of bijection:

A(A, ¬ B)

∼ =

A(B, ¬ A)

∼ =

Aop(¬ A, B)

14

slide-16
SLIDE 16

The reason for the double negation monad

The unit and multiplication of the resulting monad R ◦ L are depicted as η : Id − → R ◦ L

L R η

µ : R ◦ L ◦ R ◦ L − → R ◦ L

L L L R R R µ

15

slide-17
SLIDE 17

The two generators in sequent calculus A ⊢ A

2

A , ¬A ⊢

1

A ⊢ ¬¬A A ⊢ A

6

A , ¬A ⊢

5

¬A ⊢ ¬A

4

¬A , ¬¬A ⊢

3

¬A ⊢ ¬¬¬A

2

¬¬¬¬A , ¬A ⊢

1

¬¬¬¬A ⊢ ¬¬A

16

slide-18
SLIDE 18

A typical proof

L L L L L R R R R R

This discloses the secret algebra of game semantics

17

slide-19
SLIDE 19

Cut elimination

R L

18

slide-20
SLIDE 20

A purely diagrammatic cut elimination

ε η L L

=

L L η ε R R

=

R R

The typical way to compose strategies in game semantics

19

slide-21
SLIDE 21

Revisiting the negative translation

20

slide-22
SLIDE 22

The algebraic point of view (in the style of Boole)

The negated elements of a Heyting algebra form a Boolean algebra.

21

slide-23
SLIDE 23

The algebraic point of view (in the style of Frege)

A double negation monad is commutative iff it is involutive. This amounts to the following diagrammatic equations:

L L R R R R

=

L L R R R R R R L L L L

=

R R L L L L

In that case, the negated elements form a ∗-autonomous category.

22

slide-24
SLIDE 24

Tensorial conjunction

Let me tell you this ⊗ this...

23

slide-25
SLIDE 25

Tensor vs. negation

A well-known fact: the continuation monad is strong (¬¬ A) ⊗ B − → ¬¬ (A ⊗ B) The starting point of the theory of computational effects (Moggi)

24

slide-26
SLIDE 26

The two generators (1)

A conjunctive strength κ+ : R(A LB) C − → R(A L(B C))

  • R

C

  • A

L B − → R

  • A

L

  • B

C

25

slide-27
SLIDE 27

The two generators (2)

A disjunctive strength κ− : L(R(A B) C) − → A L(R(B) C) L

  • R

C

  • A

B − →

  • A

L

  • R

C B

26

slide-28
SLIDE 28

Leads to 3-dimensional proof diagrams

κ+ κ+ ε B A R A B R R L L L 27

slide-29
SLIDE 29

A factorization theorem

The four proofs η, ǫ, κ+ and κ− generate every proof of the logic. Moreover, every such proof X

ǫ

− → κ+ − →

ǫ

− →

ǫ

− → η − → η − → κ− − →

ǫ

− → η − →

ǫ

− → κ− − → η − → η − → Z factors uniquely as X

κ+

− → − →

ǫ

− → − →

η

− → − → κ− − → − → Z Corollary: two proofs are equal iff their associated strategies are equal.

28

slide-30
SLIDE 30

Repetition modality

Let me tell you ! this again and again and again...

29

slide-31
SLIDE 31

The algebraic laws of the modality are the generators

  • !A is a comonoid:

!A → !A ⊗ !A !A → 1

  • the functor ! is a comonad:

!A → A !A → !!A

  • the comonad ! is monoidal:

!A ⊗ !B → !(A ⊗ B) 1 → !1 Encodes the propositional fragment of intuitionistic and classical logic

30

slide-32
SLIDE 32

Existential quantification

Looking for witnesses in logic

31

slide-33
SLIDE 33

Four primitive components of logic

[1] the negation ¬ [2] the linear conjunction ⊗ [3] the repetition modality ! [4] existential quantification ∃ A theory of witnesses – what remains of intuitionism...

32

slide-34
SLIDE 34

Krivine’s classical realizability

A logic of tensor, negation and existential quantification

33

slide-35
SLIDE 35

A logic of tensor and negation

The term formula orthogonal to the stack formula X is given by ¬ ! X because a term can duplicate or erase its stack. The stack formula orthogonal to the term formula A is given by ¬ A because the term has the control and cannot be duplicated by the stack.

34

slide-36
SLIDE 36

A logic of tensor and negation

Given a term formula B induced by the stack formula X as B := ¬ ! X the logical implication from a term formula A is defined as: A ⇒ B := ¬ ⊗

  • !A

!X

35

slide-37
SLIDE 37

A logic of tensor and negation

This definition has the unexpected consequence that ∀u ∈ A, tu ∈ B does not necessarily imply that t ∈ A ⇒ B. Only the converse is true: ∀t ∈ A ⇒ B, ∀u ∈ A, tu ∈ B. Hence, Krivine’s system is not based on logical implication.

36

slide-38
SLIDE 38

The drinker’s formula

Suppose that you enter in a pub, and that A(x) means that the customer x does not drink. The formula ∃y(A(y) ⇒ ∀xA(x)) says that there exists a customer y (the drinker) such that if y does not drink, then nobody drinks in the pub. The formula is valid in classical logic, but not in intuitionistic logic.

37

slide-39
SLIDE 39

The interactive proof of the drinker’s formula

The interactive proof goes like this: (1) Proponent chooses any customer y1, (2a) Opponent looses if he cannot find a customer x which drinks, (2b) Otherwise, Opponent finds a customer x which drinks, and mentions it to Proponent, (3) Proponent reacts by changing his original witness y1 for y2 = x.

38

slide-40
SLIDE 40

The drinker’s formula

Krivine reformulates the formula ∃y(A(y) ⇒ ∀xA(x)) in the classically equivalent way: ∀B. ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ⇒ B.

39

slide-41
SLIDE 41

The formal proof in classical logic

Axiom A(x0) ⊢ A(x0) Right Weakening A(x0) ⊢ ∀x.A(x), A(x0) Right ⇒ ⊢ A(x0) ⇒ ∀x.A(x), A(x0) Axiom B ⊢ B Left ⇒ (A(x0) ⇒ ∀x.A(x)) ⇒ B ⊢ A(x0), B Left ∀ ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ⊢ A(x0), B Right ∀ ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ⊢ ∀x.A(x), B Left Weakening ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B}, A(y0) ⊢ ∀x.A(x), B Right ⇒ ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ⊢ A(y0) ⇒ ∀x.A(x), B Axiom B ⊢ B Left ⇒ ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B}, (A(y0) ⇒ ∀x.A(x)) ⇒ B ⊢ B, B Left ∀ ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B}, ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ⊢ B, B Contraction ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ⊢ B, B Contraction ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ⊢ B Right ⇒ ⊢ ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ⇒ B

40

slide-42
SLIDE 42

The classical formula decomposed in tensorial logic

¬ ⊗

  • !

! ¬ B ∃y ⊗

  • !

! ¬ B ⊗

  • !

¬ A(y) ∃x A(x)

41

slide-43
SLIDE 43

An equivalent formula

¬ ! ¬ ∃y ⊗

  • A(y)

¬ ∃x A(x) The repetition modality ! gives an explicit account of the fact that Proponent is allowed to change her witness.

42

slide-44
SLIDE 44

An equivalent formula

¬ ! ¬ ∃y ⊗

  • A(y)

¬ ∃x A(x) The formula explicates the exact rules of the game (and space of logical interaction)

43

slide-45
SLIDE 45

An equivalent formula

¬ ! ¬ ∃y ⊗

  • A(y)

¬ ∃x A(x) The formula is valid in tensorial logic.

44

slide-46
SLIDE 46

The intuitionistic formula decomposed in tensorial logic

∃y ⊗

  • A(y)

¬ ∃x A(x) This formula is not valid in tensorial logic, because Proponent has to choose the witness y immediately – and cannot change its mind later.

45

slide-47
SLIDE 47

  • del’s Dialectica interpretation

As revisited by Martin Hyland and Valeria de Paiva

46

slide-48
SLIDE 48

  • del’s original Dialectica interpretation

φD ≡ ∃u∀x φD(u, x) ψD ≡ ∃v∀y ψD(v, y) (φ ∧ ψ)D ≡ ∃uv∀xy φD(u, x) ∧ ψD(x, y) (φ ∨ ψ)D ≡ ∃cuv∀xy (c = 0 ∧ φD(u, x)) ∨ (c = 0 ∧ ψD(x, y)) (φ ⇒ ψ)D ≡ ∃xv∀uy φD(u, xuy) ⇒ ψD(vu, y) (∀z φ)D ≡ ∃u∀zx φD(uz, x, z) (∃z φ)D ≡ ∃zu∀x φD(u, x, z).

47

slide-49
SLIDE 49

Dialectica interpretation of linear logic

φL ≡ ∃u∀x φL(u, x) ψL ≡ ∃v∀y ψL(v, y) (φ ⊗ ψ)L ≡ ∃uv∀xy (φ ⊗ ψ)L ≡ ∃uv∀xy φL(u, xv) ∧ ψL(v, yu) (!φ)L ≡ ∃u∀x φL(u, xu) (∃xφ)L ≡ ∃uz∀x φL(u, xz, z) (¬ φ)L ≡ ∃x∀u ¬φL(u, x). Here, a recent variant by Masaru Shirahata

48

slide-50
SLIDE 50

The fundamental observation

  • del’s Dialectica interpretation commutes to the tensorial negation.

φL ≡ ∃u∀x φL(u, x). (¬ φ)L ≡ ∃x∀u ¬φL(u, x). A contemporary perspective on the Dialectica interpretation.

49

slide-51
SLIDE 51

Illustration

Linear decomposition of the intuitionistic implication φL ≡ ∃u∀x φL(u, x) ψL ≡ ∃v∀y ψL(v, y) The linear implication is defined as follows φ ⊸ ψ := ¬(φ ⊗ ¬ψ) Now, (φ ⊸ ψ)L ≡ ∃xv∀uy φL(u, xy) ⇒ ψL(y, vu) ((!φ) ⊸ ψ)L ≡ ∃xv∀uy φL(u, xyu) ⇒ ψL(y, vu)

50

slide-52
SLIDE 52

Existential quantifiers as left adjoints

An algebraic point of view on quantification by Bill Lawvere

51

slide-53
SLIDE 53

The Dialectica interpretation induces a fibration

E

F

  • B

Every element X of the basis B induces a category FX called its fiber. So, a fibration may be seen alternatively as a contravariant pseudo-functor F :

B

− →

Cat.

Typically, F associates to X ∈ Set its powerset ℘(X).

52

slide-54
SLIDE 54

Existential quantifiers

Every projection map X × Y − → X in the basis B induces a fresh variable functor newy : FX − → FX×Y Every term t of sort Y induces a map X − → X × Y and thus a substitution functor [y := t] : FX×Y − → FX

53

slide-55
SLIDE 55

An easy diagrammatic equality

=

FX FX FX new(y) y := t FX×Y

54

slide-56
SLIDE 56

Existential quantification is left adjoint to substitution

FX(∃y.P, Q) ∼ = FX×Y (P, newy.Q) In particular, the associated monad indicates that: P ⊢X×Y newy.∃y.P for every predicate in the fiber FX×Y .

55

slide-57
SLIDE 57

The introduction law of existential quantification

y := t ∃y new(y) ∃y y := t FX×Y FX FX×Y FX

Similar diagrammatic analysis of the Beck-Chevalley conditions.

56

slide-58
SLIDE 58

Current and future works

  • Existential quantification in programming languages – eg. the logical

status of modules in ML, investigated by Montagu and R´ emy (INRIA)

  • Dynamic linking interpreted by Hilbert’s notation εx.A,
  • General study of modalities in algebra and string diagrams,
  • Axiom of Choice and bar induction in games (Coquand, Krivine)
  • A clean semantics of assembly code and computational effects,
  • Connections to algebraic geometry and model theory.

57