Realizability games for the specification problem Mauricio Guillermo - - PowerPoint PPT Presentation

realizability games for the specification problem
SMART_READER_LITE
LIVE PREVIEW

Realizability games for the specification problem Mauricio Guillermo - - PowerPoint PPT Presentation

G 1 : a first game G 2 : general case Introduction Classical realizability Specification Conclusion Realizability games for the specification problem Mauricio Guillermo 2 , Etienne Miquey 1,2 1 Team r 2 (INRIA), PPS, Universit e


slide-1
SLIDE 1

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Realizability games for the specification problem

Mauricio Guillermo2, ´ Etienne Miquey1,2

1Team πr2 (INRIA), PPS, Universit´

e Paris-Diderot

  • 2Fac. de Ingenier´

ıa, Universidad de la Rep´ ublica, Uruguay

Realizability in Piri´ apolis

´ Etienne Miquey Realizability games for the specification problem 1/ 39

slide-2
SLIDE 2

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Starting picture

Proof/programs Classical logic ? Too strict ?

´ Etienne Miquey Realizability games for the specification problem 2/ 39

slide-3
SLIDE 3

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Starting picture

Proof/programs Classical calculus call/cc Realizability t A Classical realizability

´ Etienne Miquey Realizability games for the specification problem 2/ 39

slide-4
SLIDE 4

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Starting picture

Proof/programs Classical calculus call/cc backtrack ! Realizability t A Undecidable Classical realizability

´ Etienne Miquey Realizability games for the specification problem 2/ 39

slide-5
SLIDE 5

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

The question of this talk

Specification of A: Can we give a characterization of the realizers of A ? Subtitle: Extract computational properties from a logical information

(and not the other way round).

Focus of this talk Arithmetic formulæ: ∃x1∀y1...∃xh∀yhf ( x, y) = 0

´ Etienne Miquey Realizability games for the specification problem 3/ 39

slide-6
SLIDE 6

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

The question of this talk

Specification of A: Can we give a characterization of the realizers of A ? Subtitle: Extract computational properties from a logical information

(and not the other way round).

Focus of this talk Arithmetic formulæ: ∃x1∀y1...∃xh∀yhf ( x, y) = 0

´ Etienne Miquey Realizability games for the specification problem 3/ 39

slide-7
SLIDE 7

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

The question of this talk

Specification of A: Can we give a characterization of the realizers of A ? Subtitle: Extract computational properties from a logical information

(and not the other way round).

Focus of this talk Arithmetic formulæ: ∃x1∀y1...∃xh∀yhf ( x, y) = 0

´ Etienne Miquey Realizability games for the specification problem 3/ 39

slide-8
SLIDE 8

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

(A quick reminder about)

Krivine classical realizability

´ Etienne Miquey Realizability games for the specification problem 4/ 39

slide-9
SLIDE 9

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

λc-calculus

Terms, stacks, processes B: stack constants C: instructions (including c c), countable Terms t, u ::= x | λx.t | tu | kπ | κ κ ∈ C Stacks π ::= α | t · π (α ∈ B,t closed) Processes p, q ::= t ⋆ π (t closed) KAM :

´ Etienne Miquey Realizability games for the specification problem 5/ 39

slide-10
SLIDE 10

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

λc-calculus

Terms, stacks, processes B: stack constants C: instructions (including c c), countable Terms t, u ::= x | λx.t | tu | kπ | κ κ ∈ C Stacks π ::= α | t · π (α ∈ B,t closed) Processes p, q ::= t ⋆ π (t closed) KAM Push : (t)u ⋆ π ≻

1

t ⋆ u · π Grab : λx.t ⋆ u · π ≻

1

t{x := u} ⋆ π Save : c c ⋆ t · π ≻

1

t ⋆ kπ · π Restore : kπ ⋆ t · ρ ≻

1

t ⋆ π

´ Etienne Miquey Realizability games for the specification problem 5/ 39

slide-11
SLIDE 11

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

λc-calculus

Terms, stacks, processes B: stack constants C: instructions (including c c), countable Terms t, u ::= x | λx.t | tu | kπ | κ κ ∈ C Stacks π ::= α | t · π (α ∈ B,t closed) Processes p, q ::= t ⋆ π (t closed) KAM Push : (t)u ⋆ π ≻

1

t ⋆ u · π Grab : λx.t ⋆ u · π ≻

1

t{x := u} ⋆ π Save : c c ⋆ t · π ≻

1

t ⋆ kπ · π Restore : kπ ⋆ t · ρ ≻

1

t ⋆ π

´ Etienne Miquey Realizability games for the specification problem 5/ 39

slide-12
SLIDE 12

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

λc-calculus

Terms, stacks, processes B: stack constants C: instructions (including c c), countable Terms t, u ::= x | λx.t | tu | kπ | κ κ ∈ C Stacks π ::= α | t · π (α ∈ B,t closed) Processes p, q ::= t ⋆ π (t closed) KAM + C extended Save : c c ⋆ t · π ≻

1

t ⋆ kπ · π Quote : quote ⋆ φ · t · π ≻

1

t ⋆ nφ · π Fork : ⋔ ⋆ t · u · π ≻

1

t ⋆ π Fork : ⋔ ⋆ t · u · π ≻

1

u ⋆ π Print : print ⋆ n · t · π ≻

1

t ⋆ π

´ Etienne Miquey Realizability games for the specification problem 5/ 39

slide-13
SLIDE 13

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

2nd-order arithmetic

Language Expressions e ::= x | f (e1, . . . , ek) Formulæ A, B ::= X(e1, . . . , ek) | A ⇒ B | ∀xA | ∀XA Shorthands : ⊥ ≡ ∀Z.Z ¬A ≡ A ⇒ ⊥ A ∧ B ≡ ∀Z((A ⇒ B ⇒ Z) ⇒ Z) A ∨ B ≡ ∀Z((A ⇒ Z) ⇒ (B ⇒ Z) ⇒ Z) A ⇔ B ≡ (A ⇒ B) ∧ (B ⇒ A) ∃xA(x) ≡ ∀Z(∀x(A(x) ⇒ Z) ⇒ Z) ∃XA(X) ≡ ∀Z(∀X(A(X) ⇒ Z) ⇒ Z) e1 = e2 ≡ ∀Z(Z(e1) ⇒ Z(e2))

´ Etienne Miquey Realizability games for the specification problem 6/ 39

slide-14
SLIDE 14

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

2nd-order arithmetic

Language Expressions e ::= x | f (e1, . . . , ek) Formulæ A, B ::= X(e1, . . . , ek) | A ⇒ B | ∀xA | ∀XA Shorthands : ⊥ ≡ ∀Z.Z ¬A ≡ A ⇒ ⊥ A ∧ B ≡ ∀Z((A ⇒ B ⇒ Z) ⇒ Z) A ∨ B ≡ ∀Z((A ⇒ Z) ⇒ (B ⇒ Z) ⇒ Z) A ⇔ B ≡ (A ⇒ B) ∧ (B ⇒ A) ∃xA(x) ≡ ∀Z(∀x(A(x) ⇒ Z) ⇒ Z) ∃XA(X) ≡ ∀Z(∀X(A(X) ⇒ Z) ⇒ Z) e1 = e2 ≡ ∀Z(Z(e1) ⇒ Z(e2))

´ Etienne Miquey Realizability games for the specification problem 6/ 39

slide-15
SLIDE 15

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Typing rules

(x : A) ∈ Γ

Γ ⊢ x : A

FV (t) ⊂ dom(Γ)

Γ ⊢ t : ⊤ Γ ⊢ t : A ⇒ B Γ ⊢ t : A Γ ⊢ tu : B Γ, x : A ⊢ t : B Γ ⊢ λx.t : A ⇒ B Γ ⊢ t : A

x / ∈ FV (Γ)

Γ ⊢ t : ∀x.A Γ ⊢ t : ∀x.A Γ ⊢ t : A{x := e} Γ ⊢ t : A

X / ∈ FV (Γ)

Γ ⊢ t : ∀X.A Γ ⊢ t : ∀X.A Γ ⊢ t : A{X(x1, . . . , xk) := B} Γ ⊢ c c : ((A ⇒ B) ⇒ A) ⇒ A

´ Etienne Miquey Realizability games for the specification problem 7/ 39

slide-16
SLIDE 16

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Semantics

Intuition falsity value A: stacks, opponent to A truth value |A| : terms, player of A pole ⊥ ⊥: processes, referee t ⋆ π ≻ p0 ≻ · · · ≻ pn ∈ ⊥ ⊥? ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction Truth value defined by orthogonality : |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥}

´ Etienne Miquey Realizability games for the specification problem 8/ 39

slide-17
SLIDE 17

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Semantics

Intuition falsity value A: stacks, opponent to A truth value |A| : terms, player of A pole ⊥ ⊥: processes, referee t ⋆ π ≻ p0 ≻ · · · ≻ pn ∈ ⊥ ⊥? ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction Truth value defined by orthogonality : |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥}

´ Etienne Miquey Realizability games for the specification problem 8/ 39

slide-18
SLIDE 18

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Semantics

Intuition falsity value A: stacks, opponent to A truth value |A| : terms, player of A pole ⊥ ⊥: processes, referee t ⋆ π ≻ p0 ≻ · · · ≻ pn ∈ ⊥ ⊥? ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction Truth value defined by orthogonality : |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥}

´ Etienne Miquey Realizability games for the specification problem 8/ 39

slide-19
SLIDE 19

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Semantics

Intuition falsity value A: stacks, opponent to A truth value |A| : terms, player of A pole ⊥ ⊥: processes, referee t ⋆ π ≻ p0 ≻ · · · ≻ pn ∈ ⊥ ⊥? ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction Truth value defined by orthogonality : |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥}

´ Etienne Miquey Realizability games for the specification problem 8/ 39

slide-20
SLIDE 20

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Semantics

Intuition falsity value A: stacks, opponent to A truth value |A| : terms, player of A pole ⊥ ⊥: processes, referee t ⋆ π ≻ p0 ≻ · · · ≻ pn ∈ ⊥ ⊥? ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction Truth value defined by orthogonality : |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥}

´ Etienne Miquey Realizability games for the specification problem 8/ 39

slide-21
SLIDE 21

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Semantics

Intuition falsity value A: stacks, opponent to A truth value |A| : terms, player of A pole ⊥ ⊥: processes, referee t ⋆ π ≻ p0 ≻ · · · ≻ pn ∈ ⊥ ⊥? ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction Truth value defined by orthogonality : |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥}

´ Etienne Miquey Realizability games for the specification problem 8/ 39

slide-22
SLIDE 22

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Semantics

Intuition falsity value A: stacks, opponent to A truth value |A| : terms, player of A pole ⊥ ⊥: processes, referee t ⋆ π ≻ p0 ≻ · · · ≻ pn ∈ ⊥ ⊥? ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction Truth value defined by orthogonality : |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥}

´ Etienne Miquey Realizability games for the specification problem 8/ 39

slide-23
SLIDE 23

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Models (M, ⊥ ⊥)

Ground model M Pole ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction : ∀p, p′ ∈ Λc ⋆ Π : (p ≻ p′) ∧ (p′ ∈ ⊥ ⊥) ⇒ p ∈ ⊥ ⊥ Truth value (player): |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥} Falsity value (opponent): A ⇒ B = {t · π : t ∈ |A| ∧ π ∈ B} ∀xA =

n∈N A{x := n}

∀XA =

F:Nk→P(Π) A{X := ˙

F} ˙ F(e1, ..., ek) = F(e1, . . . , ek)

´ Etienne Miquey Realizability games for the specification problem 9/ 39

slide-24
SLIDE 24

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Models (M, ⊥ ⊥)

Ground model M Pole ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction : ∀p, p′ ∈ Λc ⋆ Π : (p ≻ p′) ∧ (p′ ∈ ⊥ ⊥) ⇒ p ∈ ⊥ ⊥ Truth value (player): |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥} Falsity value (opponent): A ⇒ B = {t · π : t ∈ |A| ∧ π ∈ B} ∀xA =

n∈N A{x := n}

∀XA =

F:Nk→P(Π) A{X := ˙

F} ˙ F(e1, ..., ek) = F(e1, . . . , ek)

´ Etienne Miquey Realizability games for the specification problem 9/ 39

slide-25
SLIDE 25

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Models (M, ⊥ ⊥)

Ground model M Pole ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction : ∀p, p′ ∈ Λc ⋆ Π : (p ≻ p′) ∧ (p′ ∈ ⊥ ⊥) ⇒ p ∈ ⊥ ⊥ Truth value (player): |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥} Falsity value (opponent): A ⇒ B = {t · π : t ∈ |A| ∧ π ∈ B} ∀xA =

n∈N A{x := n}

∀XA =

F:Nk→P(Π) A{X := ˙

F} ˙ F(e1, ..., ek) = F(e1, . . . , ek)

´ Etienne Miquey Realizability games for the specification problem 9/ 39

slide-26
SLIDE 26

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Models (M, ⊥ ⊥)

Ground model M Pole ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction : ∀p, p′ ∈ Λc ⋆ Π : (p ≻ p′) ∧ (p′ ∈ ⊥ ⊥) ⇒ p ∈ ⊥ ⊥ Truth value (player): |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥} Falsity value (opponent): A ⇒ B = {t · π : t ∈ |A| ∧ π ∈ B} ∀xA =

n∈N A{x := n}

∀XA =

F:Nk→P(Π) A{X := ˙

F} ˙ F(e1, ..., ek) = F(e1, . . . , ek)

´ Etienne Miquey Realizability games for the specification problem 9/ 39

slide-27
SLIDE 27

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Models (M, ⊥ ⊥)

Ground model M Pole ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction : ∀p, p′ ∈ Λc ⋆ Π : (p ≻ p′) ∧ (p′ ∈ ⊥ ⊥) ⇒ p ∈ ⊥ ⊥ Truth value (player): |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥} Falsity value (opponent): A ⇒ B = {t · π : t ∈ |A| ∧ π ∈ B} ∀xA =

n∈N A{x := n}

∀XA =

F:Nk→P(Π) A{X := ˙

F} ˙ F(e1, ..., ek) = F(e1, . . . , ek)

´ Etienne Miquey Realizability games for the specification problem 9/ 39

slide-28
SLIDE 28

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Models (M, ⊥ ⊥)

Ground model M Pole ⊥ ⊥ ⊂ Λc ⋆ Π closed by anti-reduction : ∀p, p′ ∈ Λc ⋆ Π : (p ≻ p′) ∧ (p′ ∈ ⊥ ⊥) ⇒ p ∈ ⊥ ⊥ Truth value (player): |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥} Falsity value (opponent): A ⇒ B = {t · π : t ∈ |A| ∧ π ∈ B} ∀xA =

n∈N A{x := n}

∀XA =

F:Nk→P(Π) A{X := ˙

F} ˙ F(e1, ..., ek) = F(e1, . . . , ek)

´ Etienne Miquey Realizability games for the specification problem 9/ 39

slide-29
SLIDE 29

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Models (M, ⊥ ⊥)

Ground model M Truth value (player): |A| = A⊥

⊥ = {t ∈ Λc : ∀π ∈ A, t ⋆ π ∈ ⊥

⊥} Falsity value (opponent): A ⇒ B = {t · π : t ∈ |A| ∧ π ∈ B} ∀xA =

n∈N A{x := n}

∀XA =

F:Nk→P(Π) A{X := ˙

F} ˙ F(e1, ..., ek) = F(e1, . . . , ek) Notation t A iff t ∈ |A| = A⊥

t A iff t A for all ⊥ ⊥

´ Etienne Miquey Realizability games for the specification problem 9/ 39

slide-30
SLIDE 30

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Remarks

Case ⊥ ⊥ = ∅ (degenerated model) Truth as in the standard model: |A| =

  • Λ

if A = 1 ∅ if A = 0 Realizable ⇔ True in the standard model Case ⊥ ⊥ = ∅ t ⋆ π ∈ ⊥ ⊥ ⇒ forall A, kπt A Restriction to proof-like

´ Etienne Miquey Realizability games for the specification problem 10/ 39

slide-31
SLIDE 31

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Remarks

Case ⊥ ⊥ = ∅ (degenerated model) Truth as in the standard model: |A| =

  • Λ

if A = 1 ∅ if A = 0 Realizable ⇔ True in the standard model Case ⊥ ⊥ = ∅ t ⋆ π ∈ ⊥ ⊥ ⇒ forall A, kπt A Restriction to proof-like

´ Etienne Miquey Realizability games for the specification problem 10/ 39

slide-32
SLIDE 32

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Properties

Adequacy

  • x1 : A1, . . . , xk : Ak ⊢ t : A

∀i ∈ [1, k](ti Ai) ⇒ t[t1/x1, . . . , tk/xk] A Realizing Peano axioms If PA2− ⊢ A, then there is a closed proof-like term t s.t. t A. Witness extraction If t ∃Nx A(x) and A(x) is atomic or decidable, then we can build a term u s.t. that ∀π ∈ Π: t ⋆ u · π ≻ stop ⋆ n · π ∧ A(n) holds

´ Etienne Miquey Realizability games for the specification problem 11/ 39

slide-33
SLIDE 33

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Relativization

Nat(x) ≡ ∀Z (Z(0) ⇒ ∀y (Z(y) ⇒ Z(s(y))) ⇒ Z(x)) Proposition There is no t ∈ Λc such that t ∀n.Nat(n)

´ Etienne Miquey Realizability games for the specification problem 12/ 39

slide-34
SLIDE 34

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Relativization

Nat(x) ≡ ∀Z (Z(0) ⇒ ∀y (Z(y) ⇒ Z(s(y))) ⇒ Z(x)) Proposition There is no t ∈ Λc such that t ∀n.Nat(n) Fix: ∀natx A := ∀x(Nat(x) ⇒ A) Obviously, λx.x ∀natx Nat(x)

´ Etienne Miquey Realizability games for the specification problem 12/ 39

slide-35
SLIDE 35

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Relativization

Nat(x) ≡ ∀Z (Z(0) ⇒ ∀y (Z(y) ⇒ Z(s(y))) ⇒ Z(x)) Proposition There is no t ∈ Λc such that t ∀n.Nat(n) Better : A, B ::= . . . | {e} ⇒ A {e} ⇒ A = {¯ n · π : e = n ∧ π ∈ A} ∀Nx A(x) ≡ ∀x ({x} ⇒ A(x)) Let T be a storage operator. The following holds for any formula A(x):

1 λx.x ∀natx A(x) ⇒ ∀Nx A(x) 2 λx.Tx ∀Nx A(x) ⇒ ∀natx A(x) ´ Etienne Miquey Realizability games for the specification problem 12/ 39

slide-36
SLIDE 36

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Our problem

Specification of A Can we give a characterization of {t ∈ Λc : t A} ? Absoluteness Are arithmetical formulæ absolute for realizability models (M, ⊥ ⊥)?

´ Etienne Miquey Realizability games for the specification problem 13/ 39

slide-37
SLIDE 37

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

The specification problem

´ Etienne Miquey Realizability games for the specification problem 14/ 39

slide-38
SLIDE 38

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Our leverage: the pole

Two ways of building poles from any set P of processes.

1 goal-oriented :

⊥ ⊥ := {p ∈ Λc ⋆ Π : ∃p′ ∈ P, p ≻ p′}

2 thread-oriented :

Thread of p: thp = {p′ ∈ Λc ⋆ Π : p ≻ p′} ⊥ ⊥ := (

  • p∈P

thp)c ≡

  • p∈P

thc

p

´ Etienne Miquey Realizability games for the specification problem 15/ 39

slide-39
SLIDE 39

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Our leverage: the pole

Two ways of building poles from any set P of processes.

1 goal-oriented :

⊥ ⊥ := {p ∈ Λc ⋆ Π : ∃p′ ∈ P, p ≻ p′}

Proof: Let p0 ∈ Λ ⋆ Π and ⊥ ⊥0 := {p ∈ Λc ⋆ Π : p ≻ p0}. Let p1, p2 ∈ Λ ⋆ Π be such that: p1 ≻ p2 and p2 ∈ ⊥ ⊥0 ≡ p2 ≻ p0. Then p1 ≻ p2 ≻ p0, thus p1 ∈ ⊥ ⊥0.

  • 2 thread-oriented :

´ Etienne Miquey Realizability games for the specification problem 15/ 39

slide-40
SLIDE 40

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Our leverage: the pole

Two ways of building poles from any set P of processes.

1 goal-oriented :

⊥ ⊥ := {p ∈ Λc ⋆ Π : ∃p′ ∈ P, p ≻ p′}

Proof: Let p0 ∈ Λ ⋆ Π and ⊥ ⊥0 := {p ∈ Λc ⋆ Π : p ≻ p0}. Let p1, p2 ∈ Λ ⋆ Π be such that: p1 ≻ p2 and p2 ∈ ⊥ ⊥0 ≡ p2 ≻ p0. Then p1 ≻ p2 ≻ p0, thus p1 ∈ ⊥ ⊥0.

  • 2 thread-oriented :

´ Etienne Miquey Realizability games for the specification problem 15/ 39

slide-41
SLIDE 41

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Our leverage: the pole

2 thread-oriented :

Thread of p: thp = {p′ ∈ Λc ⋆ Π : p ≻ p′} ⊥ ⊥ := (

  • p∈P

thp)c ≡

  • p∈P

thc

p

´ Etienne Miquey Realizability games for the specification problem 15/ 39

slide-42
SLIDE 42

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Our leverage: the pole

2 thread-oriented :

Thread of p: thp = {p′ ∈ Λc ⋆ Π : p ≻ p′} ⊥ ⊥ := (

  • p∈P

thp)c ≡

  • p∈P

thc

p

Proof: Let p0 ∈ Λ ⋆ Π and ⊥ ⊥0 := thc

p0 ≡ {p ∈ Λc ⋆ Π : p0 ≻ p}.

Let p1, p2 ∈ Λ ⋆ Π be such that: p1 ≻ p2 and p2 ∈ ⊥ ⊥0 ≡ p0 ≻ p2. Assume p0 ≻ p1, then p0 ≻ p1 ≻ p2 / ∈ ⊥ ⊥0 Absurd !

´ Etienne Miquey Realizability games for the specification problem 15/ 39

slide-43
SLIDE 43

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Our leverage: the pole

2 thread-oriented :

Thread of p: thp = {p′ ∈ Λc ⋆ Π : p ≻ p′} ⊥ ⊥ := (

  • p∈P

thp)c ≡

  • p∈P

thc

p

Proof: Let p0 ∈ Λ ⋆ Π and ⊥ ⊥0 := thc

p0 ≡ {p ∈ Λc ⋆ Π : p0 ≻ p}.

Let p1, p2 ∈ Λ ⋆ Π be such that: p1 ≻ p2 and p2 ∈ ⊥ ⊥0 ≡ p0 ≻ p2. Assume p0 ≻ p1, then p0 ≻ p1 ≻ p2 / ∈ ⊥ ⊥0 Absurd !

´ Etienne Miquey Realizability games for the specification problem 15/ 39

slide-44
SLIDE 44

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example: Identity-like

t ∀X.(X ⇒ X) iff ?

By definition: ∀X.(X ⇒ X) =

S∈P(Π){u · π :

u ˙ S ∧ π ∈ S} Proof:

´ Etienne Miquey Realizability games for the specification problem 16/ 39

slide-45
SLIDE 45

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example: Identity-like

t ∀X.(X ⇒ X) iff ?

By definition: ∀X.(X ⇒ X) =

S∈P(Π) ˙

S ⇒ ˙ S =

S∈P(Π){u · π :

u ∈ | ˙ S| ∧ π ∈ ˙ S} =

S∈P(Π){u · π :

u ˙ S ∧ π ∈ S} Proof:

´ Etienne Miquey Realizability games for the specification problem 16/ 39

slide-46
SLIDE 46

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example: Identity-like

t ∀X.(X ⇒ X) iff t ⋆ u · π ≻ u ⋆ π

By definition: ∀X.(X ⇒ X) =

S∈P(Π) ˙

S ⇒ ˙ S =

S∈P(Π){u · π :

u ∈ | ˙ S| ∧ π ∈ ˙ S} =

S∈P(Π){u · π :

u ˙ S ∧ π ∈ S} Proof: (⇐) Obvious.

´ Etienne Miquey Realizability games for the specification problem 16/ 39

slide-47
SLIDE 47

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example: Identity-like

t ∀X.(X ⇒ X) iff t ⋆ u · π ≻ u ⋆ π

By definition: ∀X.(X ⇒ X) =

S∈P(Π){u · π :

u ˙ S ∧ π ∈ S} Proof: (⇒) Assume t ∀X(X ⇐ X) and fix u ∈ Λ and π ∈ Π.

1

goal-oriented : ⊥ ⊥ := {p : p ≻ u ⋆ π} Amounts to: u · π ∈ ∀X.(X ⇒ X) ? Define S := {π}. We check that: π ∈ S u ˙ S ⇔ ∀ρ ∈ S, u ⋆ ρ ∈ ⊥ ⊥ ⇔ u ⋆ π ∈ ⊥ ⊥ Thus t ⋆ u · π ∈ ⊥ ⊥ and t ⋆ u · π ≻ u ⋆ π.

  • ´

Etienne Miquey Realizability games for the specification problem 16/ 39

slide-48
SLIDE 48

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example: Identity-like

t ∀X.(X ⇒ X) iff t ⋆ u · π ≻ u ⋆ π

By definition: ∀X.(X ⇒ X) =

S∈P(Π){u · π :

u ˙ S ∧ π ∈ S} Proof: (⇒) Assume t ∀X(X ⇐ X) and fix u ∈ Λ and π ∈ Π.

1

goal-oriented : ⊥ ⊥ := {p : p ≻ u ⋆ π} Amounts to: u · π ∈ ∀X.(X ⇒ X) ? Define S := {π}. We check that: π ∈ S u ˙ S ⇔ ∀ρ ∈ S, u ⋆ ρ ∈ ⊥ ⊥ ⇔ u ⋆ π ∈ ⊥ ⊥ Thus t ⋆ u · π ∈ ⊥ ⊥ and t ⋆ u · π ≻ u ⋆ π.

  • ´

Etienne Miquey Realizability games for the specification problem 16/ 39

slide-49
SLIDE 49

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example: Identity-like

t ∀X.(X ⇒ X) iff t ⋆ u · π ≻ u ⋆ π

By definition: ∀X.(X ⇒ X) =

S∈P(Π){u · π :

u ˙ S ∧ π ∈ S} Proof: (⇒) Assume t ∀X(X ⇐ X) and fix u ∈ Λ and π ∈ Π.

1

goal-oriented : ⊥ ⊥ := {p : p ≻ u ⋆ π} Amounts to: u · π ∈ ∀X.(X ⇒ X) ? Define S := {π}. We check that: π ∈ S u ˙ S ⇔ ∀ρ ∈ S, u ⋆ ρ ∈ ⊥ ⊥ ⇔ u ⋆ π ∈ ⊥ ⊥ Thus t ⋆ u · π ∈ ⊥ ⊥ and t ⋆ u · π ≻ u ⋆ π.

  • ´

Etienne Miquey Realizability games for the specification problem 16/ 39

slide-50
SLIDE 50

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example: Identity-like

t ∀X.(X ⇒ X) iff t ⋆ u · π ≻ u ⋆ π

By definition: ∀X.(X ⇒ X) =

S∈P(Π){u · π :

u ˙ S ∧ π ∈ S} Proof: (⇒) Assume t ∀X(X ⇐ X) and fix u ∈ Λ and π ∈ Π.

2

thread-oriented : ⊥ ⊥ := thc

t⋆u·π ≡ {p ∈ Λc ⋆ Π : t ⋆ u · π ≻ p}.

Obviously, t ⋆ u · π / ∈ ⊥ ⊥. Thus u · π / ∈ ∀X.(X ⇒ X). Defining S := {π}, we deduce that : u ˙ S ⇔ ∃ρ ∈ S, u ⋆ ρ / ∈ ⊥ ⊥ ⇔ u ⋆ π / ∈ ⊥ ⊥ ⇔ t ⋆ u · π ≻ u ⋆ π

  • ´

Etienne Miquey Realizability games for the specification problem 16/ 39

slide-51
SLIDE 51

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example: Identity-like

t ∀X.(X ⇒ X) iff t ⋆ u · π ≻ u ⋆ π

By definition: ∀X.(X ⇒ X) =

S∈P(Π){u · π :

u ˙ S ∧ π ∈ S} Proof: (⇒) Assume t ∀X(X ⇐ X) and fix u ∈ Λ and π ∈ Π.

2

thread-oriented : ⊥ ⊥ := thc

t⋆u·π ≡ {p ∈ Λc ⋆ Π : t ⋆ u · π ≻ p}.

Obviously, t ⋆ u · π / ∈ ⊥ ⊥. Thus u · π / ∈ ∀X.(X ⇒ X). Defining S := {π}, we deduce that : u ˙ S ⇔ ∃ρ ∈ S, u ⋆ ρ / ∈ ⊥ ⊥ ⇔ u ⋆ π / ∈ ⊥ ⊥ ⇔ t ⋆ u · π ≻ u ⋆ π

  • ´

Etienne Miquey Realizability games for the specification problem 16/ 39

slide-52
SLIDE 52

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example: Identity-like

t ∀X.(X ⇒ X) iff t ⋆ u · π ≻ u ⋆ π

By definition: ∀X.(X ⇒ X) =

S∈P(Π){u · π :

u ˙ S ∧ π ∈ S} Proof: (⇒) Assume t ∀X(X ⇐ X) and fix u ∈ Λ and π ∈ Π.

2

thread-oriented : ⊥ ⊥ := thc

t⋆u·π ≡ {p ∈ Λc ⋆ Π : t ⋆ u · π ≻ p}.

Obviously, t ⋆ u · π / ∈ ⊥ ⊥. Thus u · π / ∈ ∀X.(X ⇒ X). Defining S := {π}, we deduce that : u ˙ S ⇔ ∃ρ ∈ S, u ⋆ ρ / ∈ ⊥ ⊥ ⇔ u ⋆ π / ∈ ⊥ ⊥ ⇔ t ⋆ u · π ≻ u ⋆ π

  • ´

Etienne Miquey Realizability games for the specification problem 16/ 39

slide-53
SLIDE 53

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

t0 ∀X.(X ⇒ X) ⇒ X ⇒ X iff ???

t0 ⋆ κs · κz · π ≻ κs ⋆ t1 · π t1 ⋆ π ≻ κs ⋆ t2 · π . . . ti ⋆ π ≻ κs ⋆ ti+1 · π . . . ts ⋆ π ≻ κz ⋆ π

´ Etienne Miquey Realizability games for the specification problem 17/ 39

slide-54
SLIDE 54

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

t0 ∀X.(X ⇒ X) ⇒ X ⇒ X iff ???

t0 ⋆ κs · κz · π ≻ κs ⋆ t1 · π t1 ⋆ π ≻ κs ⋆ t2 · π . . . ti ⋆ π ≻ κs ⋆ ti+1 · π . . . ts ⋆ π ≻ κz ⋆ π

´ Etienne Miquey Realizability games for the specification problem 17/ 39

slide-55
SLIDE 55

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

t0 ∀X.(X ⇒ X) ⇒ X ⇒ X iff ???

t0 ⋆ κs · κz · π ≻ κs ⋆ t1 · π t1 ⋆ π ≻ κs ⋆ t2 · π . . . ti ⋆ π ≻ κs ⋆ ti+1 · π . . . ts ⋆ π ≻ κz ⋆ π

0 Define p0 := t0 ⋆ κs · κz · π,⊥

⊥0 := (th(p0))c and X = {π}:

κz 0 X implies p0 ≻ κz ⋆ π κz 0 X implies κs 0 X ⇒ X and p0 ≻ κs ⋆ t1 · π

´ Etienne Miquey Realizability games for the specification problem 17/ 39

slide-56
SLIDE 56

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

t0 ∀X.(X ⇒ X) ⇒ X ⇒ X iff ???

t0 ⋆ κs · κz · π ≻ κs ⋆ t1 · π t1 ⋆ π ≻ κs ⋆ t2 · π . . . ti ⋆ π ≻ κs ⋆ ti+1 · π . . . ts ⋆ π ≻ κz ⋆ π

0 Define p0 := t0 ⋆ κs · κz · π,⊥

⊥0 := (th(p0))c and X = {π}:

κz 0 X implies p0 ≻ κz ⋆ π κz 0 X implies κs 0 X ⇒ X and p0 ≻ κs ⋆ t1 · π

´ Etienne Miquey Realizability games for the specification problem 17/ 39

slide-57
SLIDE 57

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

t0 ∀X.(X ⇒ X) ⇒ X ⇒ X iff ???

t0 ⋆ κs · κz · π ≻ κs ⋆ t1 · π t1 ⋆ π ≻ κs ⋆ t2 · π . . . ti ⋆ π ≻ κs ⋆ ti+1 · π . . . ts ⋆ π ≻ κz ⋆ π

i

Define pi := ti ⋆ π, ⊥ ⊥i :=

j∈[0,i](th(pj))c and X = {π}:

κz i X implies pi ≻ κz ⋆ π κz i X implies κs i X ⇒ X and pi ≻ κs ⋆ ti+1 · π

´ Etienne Miquey Realizability games for the specification problem 17/ 39

slide-58
SLIDE 58

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

t0 ∀X.(X ⇒ X) ⇒ X ⇒ X iff ???

t0 ⋆ κs · κz · π ≻ κs ⋆ t1 · π t1 ⋆ π ≻ κs ⋆ t2 · π . . . ti ⋆ π ≻ κs ⋆ ti+1 · π . . . ts ⋆ π ≻ κz ⋆ π

i

Define pi := ti ⋆ π, ⊥ ⊥i :=

j∈[0,i](th(pj))c and X = {π}:

κz i X implies pi ≻ κz ⋆ π κz i X implies κs i X ⇒ X and pi ≻ κs ⋆ ti+1 · π

Termination: If ∀i ∈ N(κz i X), define ⊥ ⊥∞ :=

i∈N(th(pi))c, get a

contradiction.

´ Etienne Miquey Realizability games for the specification problem 17/ 39

slide-59
SLIDE 59

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

t0 ∀XY .(X ⇒ Y ) ⇒ X ⇒ Y iff ???

t0 ⋆ κf · κx · π ≻ κf ⋆ t1 · π t1 ⋆ π′ ≻ κf ⋆ t2 · π . . . ti ⋆ π′ ≻ κf ⋆ ti+1 · π . . . ts ⋆ π′ ≻ κx ⋆ π′ (Same proof)

´ Etienne Miquey Realizability games for the specification problem 18/ 39

slide-60
SLIDE 60

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

t0 ∀XY .(X ⇒ Y ) ⇒ X ⇒ Y iff ???

t0 ⋆ κf · κx · π ≻ κf ⋆ t1 · π t1 ⋆ π′ ≻ κf ⋆ t2 · π . . . ti ⋆ π′ ≻ κf ⋆ ti+1 · π . . . ts ⋆ π′ ≻ κx ⋆ π′ (Same proof)

´ Etienne Miquey Realizability games for the specification problem 18/ 39

slide-61
SLIDE 61

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Arithmetical formulæ by hand

Player ∃ ∀ ∃ ∀ ∃ ∀ ∃ ∀ Depth (1) (2) (3) (4) . . . (2n-1) (2n) Game θ ⋆ k· · π· k· ⋆ m1 · ξ1 · π· 1 1 ξ1 ⋆ p1 · k1 · π1 2 k· ⋆ m2 · ξ2 · π· 2 2 ξ2 ⋆ p2 · k2 · π2

k2 ⋆ m21 · ξ21 · π2 1 3

k· ⋆ mk· · ξj· · π· · · · j· ξk· ⋆ pk· · kj· · πj· · · ·

k2 ⋆ m22 · ξ22 · π2 k2 ⋆ mj2 · ξj2 · π2 2 j21

. . . . . . . . . . . . . . .

ξ˚ σ ⋆ p˚ σ · k˚ σ · π˚ σ

· · · · · ·

k˚ σ ⋆ m˚ σ·1 · ξ˚ σ·1 · π˚ σ k˚ σ ⋆ m˚ σ·i · ξ˚ σ·i · π˚ σ k˚ σ ⋆ m˚ σ·j˚ σ · ξ˚ σ·j˚ σ · π˚ σ 1 i j˚ σ ξ˚ σ·1 ⋆ p˚ σ·1 · k˚ σ·1 · π˚ σ·1 ξ˚ σ·i ⋆ p˚ σ·i · k˚ σ·i · π˚ σ·i ξ˚ σ·j˚ σ ⋆ p˚ σ·j˚ σ · k˚ σ·j˚ σ · π˚ σ·j˚ σ

k k˚

σ·i ⋆ π˚ σ·i

k X

´ Etienne Miquey Realizability games for the specification problem 19/ 39

slide-62
SLIDE 62

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Advertisement

Problem You want to specify A. Methodology: requirement: some intuition...

1 direct-style: define the good poles, 2 indirect-style: try the thread method, 3 induction-style: define a game ´ Etienne Miquey Realizability games for the specification problem 20/ 39

slide-63
SLIDE 63

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Advertisement

Problem You want to specify A. Methodology: requirement: some intuition...

1 direct-style: define the good poles, 2 indirect-style: try the thread method, 3 induction-style: define a game ´ Etienne Miquey Realizability games for the specification problem 20/ 39

slide-64
SLIDE 64

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

A first notion of game

´ Etienne Miquey Realizability games for the specification problem 21/ 39

slide-65
SLIDE 65

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Coquand’s game

Arithmetical formula Φ2h : ∃x1∀y1 . . . ∃xh∀yhf ( xh, yh) = 0 Rules: Players : Eloise ∃ and Abelard ∀ . Moves : - at his turn, each player instantiates his variable

  • Eloise allowed to backtrack

Final position : evaluation of f ( mh, nh) = 0 :

true : Eloise wins false : game continues

Abelard wins if the game never ends Winning strategy Way of playing that ensures the victory, independently of the

  • pponent moves.

´ Etienne Miquey Realizability games for the specification problem 22/ 39

slide-66
SLIDE 66

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Coquand’s game

Arithmetical formula Φ2h : ∃x1∀y1 . . . ∃xh∀yhf ( xh, yh) = 0 Rules: Players : Eloise ∃ and Abelard ∀ . Moves : - at his turn, each player instantiates his variable

  • Eloise allowed to backtrack

Final position : evaluation of f ( mh, nh) = 0 :

true : Eloise wins false : game continues

Abelard wins if the game never ends Winning strategy Way of playing that ensures the victory, independently of the

  • pponent moves.

´ Etienne Miquey Realizability games for the specification problem 22/ 39

slide-67
SLIDE 67

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

The need of backtrack

f (m, n, p) = 0 := (n > 0 ∧ Halt(m, n)) ∨ (n = 0 ∧ ¬Halt(m, p)) Halt(m, n) := the mth Turing machine stops before n steps Formula ∀m∃n∀p(f (m, n, p) = 0) Winning strategy ? Abelard plays the code m of a Turing machine M . Eloise chooses to play n = 0 (”M never stops”) Abelard answers a given number of steps p Eloise checks whether M stops before p steps:

either M is still running after p steps : Eloise wins. either M stops before p steps : Eloise backtracks and plays p instead of 0 (“M stops before p steps”)

´ Etienne Miquey Realizability games for the specification problem 23/ 39

slide-68
SLIDE 68

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

The need of backtrack

f (m, n, p) = 0 := (n > 0 ∧ Halt(m, n)) ∨ (n = 0 ∧ ¬Halt(m, p)) Halt(m, n) := the mth Turing machine stops before n steps Formula ∀m∃n∀p(f (m, n, p) = 0) Winning strategy : Abelard plays the code m of a Turing machine M . Eloise chooses to play n = 0 (”M never stops”) Abelard answers a given number of steps p Eloise checks whether M stops before p steps:

either M is still running after p steps : Eloise wins. either M stops before p steps : Eloise backtracks and plays p instead of 0 (“M stops before p steps”)

´ Etienne Miquey Realizability games for the specification problem 23/ 39

slide-69
SLIDE 69

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example

Formula ∃x∀y∃z(x · y = 2 · z) Player Action Position Start P0 = (·, ·, ·)

´ Etienne Miquey Realizability games for the specification problem 24/ 39

slide-70
SLIDE 70

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example

Formula ∀y∃z(1 · y = 2 · z) Player Action Position Start P0 = (·, ·, ·) ∃ x := 1 P1 = (1, ·, ·)

´ Etienne Miquey Realizability games for the specification problem 24/ 39

slide-71
SLIDE 71

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example

Formula ∃z(1 = 2 · z) Player Action Position Start P0 = (·, ·, ·) ∃ x := 1 P1 = (1, ·, ·) ∀ y := 1 P2 = (1, 1, ·)

´ Etienne Miquey Realizability games for the specification problem 24/ 39

slide-72
SLIDE 72

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example

Formula ∀y∃z(2 · y = 2 · z) Player Action Position Start P0 = (·, ·, ·) ∃ x := 1 P1 = (1, ·, ·) ∀ y := 1 P2 = (1, 1, ·) ∃ backtrack to P0 + x := 2 P3 = (2, ·, ·)

´ Etienne Miquey Realizability games for the specification problem 24/ 39

slide-73
SLIDE 73

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example

Formula ∃z(2 = 2 · z) Player Action Position Start P0 = (·, ·, ·) ∃ x := 1 P1 = (1, ·, ·) ∀ y := 1 P2 = (1, 1, ·) ∃ backtrack to P0 + x := 2 P3 = (2, ·, ·) ∀ y := 1 P4 = (2, 1, ·)

´ Etienne Miquey Realizability games for the specification problem 24/ 39

slide-74
SLIDE 74

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example

Formula 2 = 2 Player Action Position Start P0 = (·, ·, ·) ∃ x := 1 P1 = (1, ·, ·) ∀ y := 1 P2 = (1, 1, ·) ∃ backtrack to P0 + x := 2 P3 = (2, ·, ·) ∀ y := 1 P4 = (2, 1, ·) ∃ z := 1 P5 = (2, 1, 1)

´ Etienne Miquey Realizability games for the specification problem 24/ 39

slide-75
SLIDE 75

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example

Formula 2 = 2 Player Action Position Start P0 = (·, ·, ·) ∃ x := 1 P1 = (1, ·, ·) ∀ y := 1 P2 = (1, 1, ·) ∃ backtrack to P0 + x := 2 P3 = (2, ·, ·) ∀ y := 1 P4 = (2, 1, ·) ∃ z := 1 P5 = (2, 1, 1) evaluation ∃ wins

´ Etienne Miquey Realizability games for the specification problem 24/ 39

slide-76
SLIDE 76

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Example

Formula 2 = 2 Player Action Position Start P0 = (·, ·, ·) ∃ x := 1 P1 = (1, ·, ·) ∀ y := 1 P2 = (1, 1, ·) ∃ backtrack to P0 + x := 2 P3 = (2, ·, ·) ∀ y := 1 P4 = (2, 1, ·) ∃ z := 1 P5 = (2, 1, 1) evaluation ∃ wins History H :=

n Pn

´ Etienne Miquey Realizability games for the specification problem 24/ 39

slide-77
SLIDE 77

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G0: deductive system

Rules: If there exists ( mh, nh) ∈ H such that M f ( mh, nh) = 0: H ∈ W0

Φ

Win For all i < h, ( mi, ni) ∈ H and m ∈ N: H ∪ {( mi · m, ni · n)} ∈ W0

Φ

∀n ∈ N H ∈ W0

Φ

Play

´ Etienne Miquey Realizability games for the specification problem 25/ 39

slide-78
SLIDE 78

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G1: playing with realizability

Formulæ structure Φ ≡ ∃Nx1∀Ny1 . . . ∃Nxh∀yh(f ( xh, yh) = 0) ≡ ∀X1(∀Nx1(∀Ny1Φ1 ⇒ X1) ⇒ X1)

´ Etienne Miquey Realizability games for the specification problem 26/ 39

slide-79
SLIDE 79

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G1: playing with realizability

Formulæ structure Φ ≡ ∃Nx1∀Ny1 . . . ∃Nxh∀yh(f ( xh, yh) = 0) Φ0 ≡ ∀X1(∀Nx1(∀Ny1Φ1 ⇒ X1) ⇒ X1) Φi−1 ≡ ∀Xi(∀Nxi(∀NyiΦi ⇒ Xi) ⇒ Xi) Φh ≡ ∀W (W (f ( xh, yh)) ⇒ W (0))

´ Etienne Miquey Realizability games for the specification problem 26/ 39

slide-80
SLIDE 80

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G1: playing with realizability

Formulæ structure Φ0 ≡ ∀X1(∀Nx1(∀Ny1Φ1 ⇒ X1) ⇒ X1) Φi−1 ≡ ∀Xi(∀Nxi(∀NyiΦi ⇒ Xi) ⇒ Xi) Φh ≡ ∀W (W (f ( xh, yh)) ⇒ W (0)) Realizability A ⇒ B = {u · π : u ∈ |A| ∧ π ∈ B} ∀NxA(x) =

n∈N{n · π : π ∈ A(n)}

´ Etienne Miquey Realizability games for the specification problem 26/ 39

slide-81
SLIDE 81

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G1: playing with realizability

Formulæ structure Φ0 ≡ ∀X1(∀Nx1(∀Ny1Φ1 ⇒ X1)⇒ X1) Start : Eloise proposes t0 to defend Φ0 Abelard proposes u0 · π0 to attack Φ0 move pi (∃-position) history t0 ⋆ u0 · π0 H0 := {(∅, ∅, u0, π0)}

´ Etienne Miquey Realizability games for the specification problem 26/ 39

slide-82
SLIDE 82

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G1: playing with realizability

Formulæ structure Φ0 ≡ ∀X1(∀Nx1(∀Ny1Φ1 ⇒ X1)⇒ X1) move pi (∃-position) history t0 ⋆ u0 · π0 H0 := {(∅, ∅, u0, π0)} Eloise reduces p0 until p0 ≻ u0 ⋆ m1 · t1 · π0

she can decide to play (m1, t1) and ask for Abelard’s answer Abelard must give n1 · u′ · π′.

´ Etienne Miquey Realizability games for the specification problem 26/ 39

slide-83
SLIDE 83

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G1: playing with realizability

Formulæ structure Φ0 ≡ ∀X1(∀Nx1(∀Ny1Φ1 ⇒ X1)⇒ X1) move pi (∃-position) history t0 ⋆ u0 · π0 H0 := {(∅, ∅, u0, π0)} 1 t1 ⋆ n1 · u1 · π1 H1 := {(m1, n1, u1, π1)} ∪ H0 Eloise reduces p0 until p0 ≻ u0 ⋆ m1 · t1 · π0

she can decide to play (m1, t1) and ask for Abelard’s answer Abelard must give n1 · u′ · π′.

´ Etienne Miquey Realizability games for the specification problem 26/ 39

slide-84
SLIDE 84

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G1: playing with realizability

Formulæ structure Φi−1 ≡ ∀Xi(∀Nxi(∀NyiΦi ⇒ Xi)⇒ Xi) move pi (∃-position) history 1 t1 ⋆ n1 · u1 · π1 H1 := {(m1, n1, u1, π1)} ∪ H0 . . . . . . . . . i ti ⋆ ni · ui · πi Hi := {(mi, ni, ui, πi)} ∪ Hi−1 Eloise reduces pi until pi ≻ u ⋆ m · t · π with ( mj, nj, u, π) ∈ Hj where j < h.

she can decide to play (mi+1, ti+1) Abelard must give ni · u′ · π′.

´ Etienne Miquey Realizability games for the specification problem 26/ 39

slide-85
SLIDE 85

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G1: playing with realizability

Formulæ structure Φh ≡ ∀W (W (f ( xh, yh)) ⇒ W (0)) move pi (∃-position) history 1 t1 ⋆ n1 · u1 · π1 H1 := {(m1, n1, u1, π1)} ∪ H0 . . . . . . . . . i ti ⋆ ni · ui · πi Hi := {(mi, ni, ui, πi)} ∪ Hi−1 Eloise reduces pi until pi ≻ u ⋆ m · t · π with ( mj, nj, u, π) ∈ Hj where j < h.

she can decide to play (mi+1, ti+1) Abelard must give ni · u′ · π′.

pi ≻ u ⋆ π with ( mh, nh, u, π) ∈ Hj

she wins iff M | = f ( mh, nh) = 0.

´ Etienne Miquey Realizability games for the specification problem 26/ 39

slide-86
SLIDE 86

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G1: formal definition

if ∃( mh, nh, u, π) ∈ H s.t. p ≻ u ⋆ π and M f ( mh, nh) = 0 : p, H ∈ W1

Φ

Win for every ( mi, ni, u, π) ∈ H, m ∈ N s.t. p ≻ u ⋆ m · t · π : t ⋆ n · u′ · π′, H ∪ {( mi · m, ni · n, u′, π′)} ∈ W1

Φ

∀(n′, u′, π′) p, H ∈ W1

Φ

Play Winning strategy t ∈ Λc s.t. for any handle (u, π) ∈ Λ × Π : t ⋆ u · π, {(∅, ∅, u, π)} ∈ W1

Φ

´ Etienne Miquey Realizability games for the specification problem 27/ 39

slide-87
SLIDE 87

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G1: formal definition

if ∃( mh, nh, u, π) ∈ H s.t. p ≻ u ⋆ π and M f ( mh, nh) = 0 : p, H ∈ W1

Φ

Win for every ( mi, ni, u, π) ∈ H, m ∈ N s.t. p ≻ u ⋆ m · t · π : t ⋆ n · u′ · π′, H ∪ {( mi · m, ni · n, u′, π′)} ∈ W1

Φ

∀(n′, u′, π′) p, H ∈ W1

Φ

Play Winning strategy t ∈ Λc s.t. for any handle (u, π) ∈ Λ × Π : t ⋆ u · π, {(∅, ∅, u, π)} ∈ W1

Φ

´ Etienne Miquey Realizability games for the specification problem 27/ 39

slide-88
SLIDE 88

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Specification result

Adequacy If t is a winning strategy for G1

Φ, then t Φ

Proof (sketch):

  • play a match with stacks from falsity value,
  • conclude by anti-reduction.

´ Etienne Miquey Realizability games for the specification problem 28/ 39

slide-89
SLIDE 89

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Specification result

Adequacy If t is a winning strategy for G1

Φ, then t Φ

Proof (sketch):

  • play a match with stacks from falsity value,
  • conclude by anti-reduction.

Completeness of G1 If the calculus is deterministic and substitutive, then if t Φ then t is a winning strategy for the game G1

Φ

Proof (sketch): by contradiction

  • substitute Abelard’s winning answers along the thread scheme,
  • reach a winning position anyway.

´ Etienne Miquey Realizability games for the specification problem 28/ 39

slide-90
SLIDE 90

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Specification result

Adequacy If t is a winning strategy for G1

Φ, then t Φ

Proof (sketch):

  • play a match with stacks from falsity value,
  • conclude by anti-reduction.

Completeness of G1 If the calculus is deterministic and substitutive, then if t Φ then t is a winning strategy for the game G1

Φ

Proof (sketch): by contradiction

  • substitute Abelard’s winning answers along the thread scheme,
  • reach a winning position anyway.

´ Etienne Miquey Realizability games for the specification problem 28/ 39

slide-91
SLIDE 91

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

The general case

´ Etienne Miquey Realizability games for the specification problem 29/ 39

slide-92
SLIDE 92

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Loosing the substition

quote quote ⋆ ϕ · t · π ≻ t ⋆ nϕ · π the calculus is no longer substitutive there are some wild realizers which are not winning strategies! Consider Φ≤ ≡ ∃Nx∀Ny(x ≤ y) and t≤ s.t. : t≤ ⋆ u · π ≻ T0 ⋆ π ≻ u ⋆ 0 · T1 · π and : T1 ⋆ n · u′ · π′ ≻ ⋆ π′ if u′ ≡ T0 and π′ ≡ π u′ ⋆ π′

  • therwise

´ Etienne Miquey Realizability games for the specification problem 30/ 39

slide-93
SLIDE 93

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Loosing the substition

quote quote ⋆ ϕ · t · π ≻ t ⋆ nϕ · π the calculus is no longer substitutive there are some wild realizers which are not winning strategies! Consider Φ≤ ≡ ∃Nx∀Ny(x ≤ y) and t≤ s.t. : t≤ ⋆ u · π ≻ T0 ⋆ π ≻ u ⋆ 0 · T1 · π and : T1 ⋆ n · u′ · π′ ≻ ⋆ π′ if u′ ≡ T0 and π′ ≡ π u′ ⋆ π′

  • therwise

´ Etienne Miquey Realizability games for the specification problem 30/ 39

slide-94
SLIDE 94

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Loosing the substition

quote quote ⋆ ϕ · t · π ≻ t ⋆ nϕ · π the calculus is no longer substitutive there are some wild realizers which are not winning strategies! Consider Φ≤ ≡ ∃Nx∀Ny(x ≤ y) and t≤ s.t. : t≤ ⋆ u · π ≻ T0 ⋆ π ≻ u ⋆ 0 · T1 · π and : T1 ⋆ n · u′ · π′ ≻ ⋆ π′ if u′ ≡ T0 and π′ ≡ π u′ ⋆ π′

  • therwise

Idea : I’ve already been there...

´ Etienne Miquey Realizability games for the specification problem 30/ 39

slide-95
SLIDE 95

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G2: non-substitutive case

Idea : I’ve already been there... if ∃( mh, nh, u, π) ∈ H s.t. p ≻ u ⋆ π and M f ( mh, nh) = 0 : p, H ∈ W1

Φ

Win for every ( mi, ni, u, π) ∈ H, m ∈ N s.t. p ≻ u ⋆ m · t · π : t ⋆ n · u′ · π′, H ∪ {( mi · m, ni · n, u′, π′)} ∈ W1

Φ

∀(n′, u′, π′) p, H ∈ W1

Φ

Play

´ Etienne Miquey Realizability games for the specification problem 31/ 39

slide-96
SLIDE 96

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

G2: non-substitutive case

Idea : I’ve already been there... if ∃( mh, nh, u, π) ∈ H, ∃p ∈ P s.t. p ≻ u ⋆ π and M f ( mh, nh) = 0 : P, H ∈ W2

Φ

Win for every ( mi, ni, u, π) ∈ H, m ∈ N s.t. ∃p ∈ P, p ≻ u ⋆ m · t · π : {t ⋆ n · u′ · π′} ∪ P, H ∪ {( mi · m, ni · n, u′, π′)} ∈ W2

Φ

∀(n′, u′, π′) P, H ∈ W2

Φ

P

´ Etienne Miquey Realizability games for the specification problem 31/ 39

slide-97
SLIDE 97

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Specification result

Adequacy If t is a winning strategy for G2

Φ, then t Φ

Proof (sketch):

  • play a match with stacks from falsity value,
  • conclude by anti-reduction.

´ Etienne Miquey Realizability games for the specification problem 32/ 39

slide-98
SLIDE 98

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Specification result

Adequacy If t is a winning strategy for G2

Φ, then t Φ

Proof (sketch):

  • play a match with stacks from falsity value,
  • conclude by anti-reduction.

Completeness of G2 If t Φ then t is a winning strategy for the game G2

Φ

Proof (sketch): by contradiction,

  • build an increasing sequence Pi, Hi using ∀ winning answers,
  • define ⊥

⊥ := (

p∈P∞ th(p))c,

  • reach a contradiction.

´ Etienne Miquey Realizability games for the specification problem 32/ 39

slide-99
SLIDE 99

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Consequences

Proposition: Uniform winning strategy There exists a term T such that if:

  • M ∃x1∀y1...f (

x, y) = 0

  • θf computes f

then Tθf is a winning strategy for ∃x1∀y1...f ( x, y) = 0.

Proof: Enumeration of Nk, using θf to check whether we reached a winning position.

Theorem: Absoluteness If Φ is an arithmetical formula, then ∃t ∈ Λc, t Φ iff M Φ

´ Etienne Miquey Realizability games for the specification problem 33/ 39

slide-100
SLIDE 100

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Consequences

Proposition: Uniform winning strategy There exists a term T such that if:

  • M ∃x1∀y1...f (

x, y) = 0

  • θf computes f

then Tθf is a winning strategy for ∃x1∀y1...f ( x, y) = 0.

Proof: Enumeration of Nk, using θf to check whether we reached a winning position.

Theorem: Absoluteness If Φ is an arithmetical formula, then ∃t ∈ Λc, t Φ iff M Φ

´ Etienne Miquey Realizability games for the specification problem 33/ 39

slide-101
SLIDE 101

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Consequences

Proposition: Uniform winning strategy There exists a term T such that if:

  • M ∃x1∀y1...f (

x, y) = 0

  • θf computes f

then Tθf is a winning strategy for ∃x1∀y1...f ( x, y) = 0.

Proof: Enumeration of Nk, using θf to check whether we reached a winning position.

Theorem: Absoluteness If Φ is an arithmetical formula, then ∃t ∈ Λc, t Φ iff M Φ

´ Etienne Miquey Realizability games for the specification problem 33/ 39

slide-102
SLIDE 102

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Comments & conclusion

´ Etienne Miquey Realizability games for the specification problem 34/ 39

slide-103
SLIDE 103

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

About equality

Φ2h : ∃x1∀y1 . . . ∃xh∀yhf ( xh, yh)=0 f (x) = 0 f (x) = 0 M f (x) = 0 ∀X.X → X Π M f (x) = 0 Λc × Π ∅ Uniform realizer ∀n ∈ N, there exists tn ∈ Λc s.t. ∀f : N2n → N, M ∃x1∀y1 . . . f ( x, y) = 0 ⇒ tn ∃Nx1∀Ny1 . . . f ( x, y) = 0.

  • t does not necessarily play according to the formula...

´ Etienne Miquey Realizability games for the specification problem 35/ 39

slide-104
SLIDE 104

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

About equality

Φ2h : ∃x1∀y1 . . . ∃xh∀yhf ( xh, yh)=0 f (x) = 0 f (x) = 0 M f (x) = 0 ∀X.X → X Π M f (x) = 0 Λc × Π ∅ Uniform realizer ∀n ∈ N, there exists tn ∈ Λc s.t. ∀f : N2n → N, M ∃x1∀y1 . . . f ( x, y) = 0 ⇒ tn ∃Nx1∀Ny1 . . . f ( x, y) = 0.

  • t does not necessarily play according to the formula...

´ Etienne Miquey Realizability games for the specification problem 35/ 39

slide-105
SLIDE 105

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Combining strategies

Forall n, there exists a term Tn s.t. if θf computes f , then Tnθf Φ=

n ⇒ Φ= n

´ Etienne Miquey Realizability games for the specification problem 36/ 39

defender of Φ=

n

  • pponent of Φ=

n

(Tθf ) ⋆ uL

0 · uR 0 · π ∃ chooses uL 0 and proposes tL 1 ∀ proposes m1

. . .

∃ proposes pn−1 and tL n ∀ proposes mn ∃

plays pn and wins

∃ chooses uR n and proposes mn ∀ proposes pn

. . .

∃ proposes mn and tR n ∀ proposes pn ∃ plays and wins

θf needed . . . if f = 0 if f = 0

slide-106
SLIDE 106

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

About absoluteness

it was already known it extends to realizability algebras we now know even more : Shoenfield barrier Every Σ1

2/Π1 2-relation is absolute for all inner models M of ZF.

Krivine’14 There exists an ultrafilter onג2 Corollary For any realizability algebra A, MA contains a proper class M′ which is an inner model of ZF.

´ Etienne Miquey Realizability games for the specification problem 37/ 39

slide-107
SLIDE 107

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

About absoluteness

it was already known it extends to realizability algebras we now know even more : Shoenfield barrier Every Σ1

2/Π1 2-relation is absolute for all inner models M of ZF.

Krivine’14 There exists an ultrafilter onג2 Corollary For any realizability algebra A, MA contains a proper class M′ which is an inner model of ZF.

´ Etienne Miquey Realizability games for the specification problem 37/ 39

slide-108
SLIDE 108

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Conclusion

What we did : We defined two games for substitutive and non-substitutive cases We proved equivalence between universal realizers and winning strategies It solved both specification and absoluteness problems Further work : classes of formulæ compatible with games ? transformation G1 G2 generic ? + some kind of loss of innocence ? combination of strategies ?

´ Etienne Miquey Realizability games for the specification problem 38/ 39

slide-109
SLIDE 109

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Conclusion

What we did : We defined two games for substitutive and non-substitutive cases We proved equivalence between universal realizers and winning strategies It solved both specification and absoluteness problems Further work : classes of formulæ compatible with games ? transformation G1 G2 generic ? + some kind of loss of innocence ? combination of strategies ?

´ Etienne Miquey Realizability games for the specification problem 38/ 39

slide-110
SLIDE 110

Introduction Classical realizability Specification G1 : a first game G2: general case Conclusion

Thank you for your attention.

´ Etienne Miquey Realizability games for the specification problem 39/ 39