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 Intuitionistic Logic Classical Logic 2
Our ambition is to unify them... Intuitionistic Logic Classical Logic 3
and to disclose... 4
and to disclose... a series of primitive components ! 5
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
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
Three primitive components of logic [1] the negation ¬ [2] the linear conjunction ⊗ [3] ! the repetition modality Logic = Data Structure + Duality 8
Three primitive components of logic [1] the negation ¬ [2] the linear conjunction ⊗ [3] ! the repetition modality An algebraic account of games semantics. 9
Negation Every fact has two poles: Proponent and Opponent 10
An early observation... Fact: there are just as many canonical proofs 2 p 2 q � �� � � �� � R R ¬ · · · ¬ ¬ · · · ¬ ⊢ A 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
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
Negation A negation on a symmetric monoidal category A is defined as → A op ◦ a functor : ¬ : A − ◦ a bijection between the morphisms in ϕ A,B,C A ⊗ B − → ¬ C and the morphisms in − → ¬ ( B ⊗ C ) A natural in A, B and C . 13
� � The reason for the double negation monad Every negation induces a pair of adjoint functors L A op A ⊥ R where the adjunction is witnessed by the series of bijection: ∼ ∼ A op ( ¬ A, B ) A ( A, ¬ B ) A ( B, ¬ A ) = = 14
The reason for the double negation monad The unit and multiplication of the resulting monad R ◦ L are depicted as η : Id − µ : R ◦ L ◦ R ◦ L − → R ◦ L → R ◦ L R R R L µ η L R L L 15
The two generators in sequent calculus A ⊢ A 6 A , ¬ A ⊢ 5 A ⊢ A ¬ A ⊢ ¬ A 2 4 A , ¬ A ⊢ ¬ A , ¬¬ A ⊢ 1 3 A ⊢ ¬¬ A ¬ A ⊢ ¬¬¬ A 2 ¬¬¬¬ A , ¬ A ⊢ 1 ¬¬¬¬ A ⊢ ¬¬ A 16
A typical proof R L R R L R L R L L This discloses the secret algebra of game semantics 17
Cut elimination R L 18
A purely diagrammatic cut elimination L R ε ε L R L R = = η η L R The typical way to compose strategies in game semantics 19
Revisiting the negative translation 20
The algebraic point of view (in the style of Boole) The negated elements of a Heyting algebra form a Boolean algebra. 21
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: R R R R L L L L = = L L L L R R R R R R R R L L L L In that case, the negated elements form a ∗ -autonomous category. 22
Tensorial conjunction Let me tell you this ⊗ this ... 23
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
The two generators (1) A conjunctive strength κ + : R ( A � LB ) � C − → R ( A � L ( B � C )) R � � � � � � � � � R C � � � � � � � � � − → � A L � � � � � � � � A L � � � � � � � � � B B C 25
The two generators (2) A disjunctive strength κ − : L ( R ( A � B ) � C ) − → A � L ( R ( B ) � C ) L � � � � � � � � � � A L � � � � � � � � − → R C � � � � � � � � � R C � � � � � � � � � A B B 26
Leads to 3-dimensional proof diagrams κ + κ + R ε L R R B L L B A A 27
A factorization theorem The four proofs η, ǫ, κ + and κ − generate every proof of the logic. Moreover, every such proof → κ + → κ − → κ − → η → η → η → η → η ǫ ǫ ǫ ǫ ǫ − − → − → − − − − → − − → − − − − → Z X factors uniquely as κ + → κ − η ǫ − − → → − − → → − − → − − → → Z X Corollary: two proofs are equal iff their associated strategies are equal. 28
Repetition modality Let me tell you ! this again and again and again... 29
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
Existential quantification Looking for witnesses in logic 31
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
Krivine’s classical realizability A logic of tensor, negation and existential quantification 33
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
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
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
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
The interactive proof of the drinker’s formula The interactive proof goes like this: (1) Proponent chooses any customer y 1 , (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 y 1 for y 2 = x . 38
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
The formal proof in classical logic Axiom A ( x 0 ) ⊢ A ( x 0 ) Right Weakening A ( x 0 ) ⊢ ∀ x.A ( x ) , A ( x 0 ) Right ⇒ Axiom ⊢ A ( x 0 ) ⇒ ∀ x.A ( x ) , A ( x 0 ) B ⊢ B Left ⇒ ( A ( x 0 ) ⇒ ∀ x.A ( x )) ⇒ B ⊢ A ( x 0 ) , B Left ∀ ∀ y. { ( A ( y ) ⇒ ∀ x.A ( x )) ⇒ B } ⊢ A ( x 0 ) , B Right ∀ ∀ y. { ( A ( y ) ⇒ ∀ x.A ( x )) ⇒ B } ⊢ ∀ x.A ( x ) , B Left Weakening ∀ y. { ( A ( y ) ⇒ ∀ x.A ( x )) ⇒ B } , A ( y 0 ) ⊢ ∀ x.A ( x ) , B Right ⇒ Axiom ∀ y. { ( A ( y ) ⇒ ∀ x.A ( x )) ⇒ B } ⊢ A ( y 0 ) ⇒ ∀ x.A ( x ) , B B ⊢ B Left ⇒ ∀ y. { ( A ( y ) ⇒ ∀ x.A ( x )) ⇒ B } , ( A ( y 0 ) ⇒ ∀ 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
The classical formula decomposed in tensorial logic ¬ ⊗ �������� � � � � � ! ! ¬ B ∃ y ⊗ � ������� � � � � � � � ! ! ¬ B ⊗ � ������� � � � � � � ¬ ! A ( y ) ∃ x A ( x ) 41
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
Recommend
More recommend