Hypergame semantics: Ten years later Dominic J. D. Hughes Stanford - - PowerPoint PPT Presentation

hypergame semantics ten years later
SMART_READER_LITE
LIVE PREVIEW

Hypergame semantics: Ten years later Dominic J. D. Hughes Stanford - - PowerPoint PPT Presentation

Hypergame semantics: Ten years later Dominic J. D. Hughes Stanford University GaLoP06, Seattle, 11 August 2006 Hypergames model/semantics For a 2 nd -order logic / polymorphic progr. language Two principles: - ( GM ) G ames as M oves


slide-1
SLIDE 1

Hypergame semantics: Ten years later

Dominic J. D. Hughes Stanford University

GaLoP’06, Seattle, 11 August 2006

slide-2
SLIDE 2

Hypergames model/semantics

  • For a 2nd-order logic / polymorphic progr. language
  • Two principles:
  • (GM) Games as Moves
  • (UC) Uniformity by Copycat expansion
  • Imperial College Games Workshop 1996

LICS 97, PhD thesis (Luke Ong, Oxford)

  • System F (LICS 97, PhD)
  • affine linear (Murawski-Ong ’01, Murawski PhD ’01)
  • Type isos (de Lataillade, yesterday)
  • Here cleaner notation: no ×, transition games, Felscher
slide-3
SLIDE 3

(GM) Games as Moves

  • Zwicker’s Hypergame H (1987)
  • O chooses terminating game G;

❅ ❅ ❅ ❘

Chess

✁ ✁ ✁ ✁ ☛

Nf3

❆ ❆ ❆ ❆ ❯

e4

✁ ✁ ✁ ✁ ☛ ❆ ❆ ❆ ❆ ❯

Nf6 d5

O’s & X’s

X

play G ( P starts )

  • “ Is H terminating? ”

∼ Russell’s paradox (Mirimanoff 1917)

slide-4
SLIDE 4

(GM) Games as Moves

  • a, b → a

: ∀X . X × X → X

slide-5
SLIDE 5

(GM) Games as Moves

  • a, b → a

: ∀X . X × X → X

  • at N :

7, 3 → 7 : N × N → N

slide-6
SLIDE 6

(GM) Games as Moves

  • a, b → a

: ∀X . X × X → X

  • at N :

7, 3 → 7 : N × N → N

  • at B :

true, false → true : B × B → B

slide-7
SLIDE 7

(GM) Games as Moves

  • π1
  • a, b → a

:

P

  • ∀X . X × X → X
  • at N :

7, 3 → 7 : N × N → N

  • at B :

true, false → true : B × B → B

slide-8
SLIDE 8

(GM) Games as Moves

  • π1
  • a, b → a

:

P

  • ∀X . X × X → X
  • at N :

7, 3 → 7 : N × N → N

  • at B :

true, false → true : B × B → B

  • at P :

π2, π1 → π2 : P × P → P

slide-9
SLIDE 9

(GM) Games as Moves

  • π1
  • a, b → a

:

P

  • ∀X . X × X → X
  • at N :

7, 3 → 7 : N × N → N

  • at B :

true, false → true : B × B → B

  • at P :

π2, π1 → π2 : P × P → P

slide-10
SLIDE 10

(UC) Uniformity by Copycat expansion

  • a, b → a

: ∀X . X × X → X Uniform

slide-11
SLIDE 11

(UC) Uniformity by Copycat expansion

  • a, b → a

: ∀X . X × X → X Uniform

  • at N :

7, 3 → 7 : N × N → N

  • at B :

true, false → true : B × B → B

slide-12
SLIDE 12

(UC) Uniformity by Copycat expansion

  • a, b → a

: ∀X . X × X → X Uniform

  • at N :

7, 3 → 7 : N × N → N

  • at B :

true, false → true : B × B → B

  a, b → a if X = N a, b → b

  • therw.

   : ∀X . X × X → X

Ad hoc Uniform

slide-13
SLIDE 13

(UC) Uniformity by Copycat expansion

  • a, b → a

: ∀X . X × X → X Uniform

  • at N :

7, 3 → 7 : N × N → N

  • at B :

true, false → true : B × B → B

  a, b → a if X = N a, b → b

  • therw.

   : ∀X . X × X → X

Ad hoc Uniform

  • at N :

7, 3 → 7 : N × N → N

slide-14
SLIDE 14

(UC) Uniformity by Copycat expansion

  • a, b → a

: ∀X . X × X → X Uniform

  • at N :

7, 3 → 7 : N × N → N

  • at B :

true, false → true : B × B → B

  a, b → a if X = N a, b → b

  • therw.

   : ∀X . X × X → X

Ad hoc Uniform

  • at N :

7, 3 → 7 : N × N → N

  • at B :

true, false → false : B × B → B

slide-15
SLIDE 15

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
slide-16
SLIDE 16

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
slide-17
SLIDE 17

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
slide-18
SLIDE 18

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
slide-19
SLIDE 19

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
  • at N :

N × N → N

slide-20
SLIDE 20

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
  • at N :

N × N → N n

slide-21
SLIDE 21

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
  • at N :

N × N → N n n

slide-22
SLIDE 22

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
  • at N :

N × N → N n n 7

slide-23
SLIDE 23

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
  • at N :

N × N → N n n 7 7

slide-24
SLIDE 24

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
  • at N :

N × N → N n n 7 7

Convention: O = Opponent = Orange P = Player = Purple

slide-25
SLIDE 25

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
slide-26
SLIDE 26

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
slide-27
SLIDE 27

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
slide-28
SLIDE 28

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
slide-29
SLIDE 29

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
  • at B :

B × B → B

slide-30
SLIDE 30

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
  • at B :

B × B → B b

slide-31
SLIDE 31

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
  • at B :

B × B → B b b

slide-32
SLIDE 32

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
  • at B :

B × B → B b b true

slide-33
SLIDE 33

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • × ◦ → ◦
  • at B :

B × B → B b b true true

slide-34
SLIDE 34

(UC) Uniformity by Copycat expansion

∀X. X × X → X at N : N × N → N n n 3 3 at B : B × B → B Ad hoc Uniform b b true true

slide-35
SLIDE 35

(UC) Uniformity by Copycat expansion

∀X. X × X → X at N→B : (N→B) × (N→B) → (N→B)

slide-36
SLIDE 36

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B)

slide-37
SLIDE 37

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B)

slide-38
SLIDE 38

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B)

slide-39
SLIDE 39

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B)

slide-40
SLIDE 40

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B) b

slide-41
SLIDE 41

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B) b b

slide-42
SLIDE 42

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B) b b n

slide-43
SLIDE 43

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B) b b n n

slide-44
SLIDE 44

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B) b b n n 5

slide-45
SLIDE 45

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B) b b n n 5 5

slide-46
SLIDE 46

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B) b b n n 5 5 true

slide-47
SLIDE 47

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B) b b n n 5 5 true true

slide-48
SLIDE 48

(UC) Uniformity by Copycat expansion

∀X. X × X → X at ◦ :

  • ×
  • at N→B :

(N→B) × (N→B) → (N→B) b b n n 5 5 true true prime? , even? → prime?

slide-49
SLIDE 49

Related

  • Hypergame semantics: (GM) & (UC)
  • System F (Imperial ’96, LICS 97, PhD)
  • affine linear (Murawski-Ong ’01, Murawski PhD’01)
  • full

compl.

  • Type isos (de Lataillade, yesterday)
  • ∩-game semantics: ¬(GM) & (U∩)
  • affine linear (Abramsky ’97, Newton Inst. ’95)

· · · Abramsky & Lenisa · · ·

  • Generic game semantics: ¬(GM) & (UC′)
  • system F (Abramsky-Jagadeesan ’05)

full compl. ML types

slide-50
SLIDE 50

Impredicativity

  • π1
  • a, b → a

:

P

  • ∀X . X × X → X
  • at N :

7, 3 → 7 : N × N → N

  • at P :

π2, π1 → π2 : P × P → P ML , F

  • { barbers : shave non-self-shavers }
  • H is a move in H: “H ∈ H” (Zwicker)
slide-51
SLIDE 51

Impredicativity: dynamic solution

  • Static approaches not fully complete for F:
  • Domain models

(continuity/approximation/limit)

  • PER models

(families/∩)

  • Abramsky-Jagadeesan ’05

(no 2nd-order moves)

  • Dynamic solution: (GM) Games as Moves
slide-52
SLIDE 52

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P

slide-53
SLIDE 53

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X

slide-54
SLIDE 54

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z)

slide-55
SLIDE 55

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z)

slide-56
SLIDE 56

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N

slide-57
SLIDE 57

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n

slide-58
SLIDE 58

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N    O’s

hyper- move

n

slide-59
SLIDE 59

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n

slide-60
SLIDE 60

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n at N : N × N → N × (∀Y.Y ×Y →Y ) → N × N → N

slide-61
SLIDE 61

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n at N : N × N → N × (∀Y.Y ×Y →Y ) → N × N → N n

slide-62
SLIDE 62

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n at N : N × N → N × (∀Y.Y ×Y →Y ) → N × N → N P’s

hyper- move

n

slide-63
SLIDE 63

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n at N : N × N → N × (∀Y.Y ×Y →Y ) → N × N → N n

slide-64
SLIDE 64

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n at N : N × N → N × (∀Y.Y ×Y →Y ) → N × N → N n m

slide-65
SLIDE 65

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n at N : N × N → N × (∀Y.Y ×Y →Y ) → N × N → N n m m

slide-66
SLIDE 66

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n at N : N × N → N × (∀Y.Y ×Y →Y ) → N × N → N n m m 4

slide-67
SLIDE 67

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n at N : N × N → N × (∀Y.Y ×Y →Y ) → N × N → N n m m 4 4

slide-68
SLIDE 68

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n at N : N × N → N × (∀Y.Y ×Y →Y ) → N × N → N n m m 4 4 5

slide-69
SLIDE 69

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n at N : N × N → N × (∀Y.Y ×Y →Y ) → N × N → N n m m 4 4 5 5

slide-70
SLIDE 70

Impredicativity: dynamic solution

a, b → a : ∀X . X × X → X = P ∀X . X × X → X at P : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → (∀Z.Z ×Z→Z) at N : (∀X.X ×X→X) × (∀Y.Y ×Y →Y ) → N × N → N n at N : N × N → N × (∀Y.Y ×Y →Y ) → N × N → N n m m 4 4 5 5

succ

slide-71
SLIDE 71

Full completeness for system F

  • Uniform (UC)
  • Innocent ← Hyland-Ong
  • Total

← λ fragment

  • Compact = finite ‘spine’
slide-72
SLIDE 72

Full completeness for system F

  • Uniform (UC)
  • Innocent ← Hyland-Ong
  • Total

← λ fragment

  • Compact = finite ‘spine’
slide-73
SLIDE 73

Full completeness for system F

  • Uniform (UC)
  • Innocent ← Hyland-Ong
  • Total

← λ fragment

  • Compact = finite ‘spine’
slide-74
SLIDE 74

Full completeness for system F

  • Uniform (UC)
  • Innocent ← Hyland-Ong
  • Total

← λ fragment

  • Compact = finite ‘spine’
slide-75
SLIDE 75

Full completeness for system F

  • Uniform (UC)
  • Innocent ← Hyland-Ong
  • Total

← λ fragment

  • Compact = finite ‘spine’
slide-76
SLIDE 76

Full completeness for system F

  • Uniform (UC)
  • Innocent ← Hyland-Ong
  • Total

← λ fragment

  • Compact = finite ‘spine’

∀X. X × X → X at ◦ : ◦ × ◦ → ◦

slide-77
SLIDE 77

Formal Hypergames

slide-78
SLIDE 78
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y

∀Y . (∀Y.Y ) → Y

N→B

(∀Y.Y ) → (N→B)

slide-79
SLIDE 79
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y

∀Y . (∀Y.Y ) → Y

N→B

(∀Y.Y ) → (N→B)

slide-80
SLIDE 80
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y

∀Y . (∀Y.Y ) → Y

N→B

(∀Y.Y ) → (N→B)

slide-81
SLIDE 81
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y

(∀Y.Y ) → (∀Y.Y )

N→B

(∀Y.Y ) → (N→B)

slide-82
SLIDE 82
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y

(∀Y.Y ) → (∀Y.Y )

N→B

  • prenex

(∀Y.Y ) → (N→B)

slide-83
SLIDE 83
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y

(∀Y.Y ) → (∀Y.Y )

N→B

  • prenex

∀Y . (∀Y.Y ) → Y (∀Y.Y ) → (N→B)

slide-84
SLIDE 84
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y

(∀Y.Y ) → (∀Y.Y )

N→B

  • prenex

∀Y . (∀Y.Y ) → Y (∀Y.Y ) → (N→B)

slide-85
SLIDE 85
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y

∀Y . (∀Y.Y ) → Y

N→B

(∀Y.Y ) → (N→B)

slide-86
SLIDE 86
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y

∀Y . (∀Y.Y ) → Y

N→B

(∀Y.Y ) → (N→B)

slide-87
SLIDE 87
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y

∀Y . (∀Y.Y ) → Y

N→B

(∀Y.Y ) → (N→B)

slide-88
SLIDE 88
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y

∀Y . (∀Y.Y ) → Y

N→B

N→B

(∀Y.Y ) → (N→B) (∀Y.Y ) → (N→B)

slide-89
SLIDE 89
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y N→B

(∀Y.Y ) → (N→B)

N→B

(∀Y.Y ) → (N→B)

slide-90
SLIDE 90
  • Assertion: type occurrence
  • Lorenzen/Felscher dialogue games (1960, 1985)
  • A → ∀X.B

prenex

  • ∀X.(A → B)
  • resolve = exhaustively instantiate leading ∀s

∀X. X → X

∀Y.Y N→B

(∀Y.Y ) → (N→B)

N→B

(∀Y.Y ) → (N→B)

  • n branches: A1 → A2 → . . . → An → X
slide-91
SLIDE 91

Hypergame H(A)

slide-92
SLIDE 92

Hypergame H(A)

  • O resolves A
slide-93
SLIDE 93

Hypergame H(A)

  • O resolves A

∀X. X → X → X

❄ N

N → N → N

slide-94
SLIDE 94

Hypergame H(A)

  • O resolves A

∀X. X → X → X

❄ N

N → N → N

slide-95
SLIDE 95

Hypergame H(A)

  • O resolves A

∀X. X → X → X

❄ N

N → N → N O

slide-96
SLIDE 96

Hypergame H(A)

  • O resolves A
  • resolve opposing branch
slide-97
SLIDE 97

Hypergame H(A)

  • O resolves A
  • resolve opposing branch

A1→. . .→Ai→. . .→An→X O

❄ i B1 . . . Bm

Ai [X1 :=B1, . . . , Xm :=Bm] P

slide-98
SLIDE 98

Hypergame H(A)

  • O resolves A
  • resolve opposing branch

A1→. . .→Ai→. . .→An→X O

❄ i

Ai [X1 :=B1, . . . , Xm :=Bm] P

slide-99
SLIDE 99

Hypergame H(A)

  • O resolves A
  • resolve opposing branch

A1→. . .→Ai→. . .→An→X O

❄ i B1 . . . Bm

Ai [X1 :=B1, . . . , Xm :=Bm] P

slide-100
SLIDE 100

Hypergame H(A)

  • O resolves A
  • resolve opposing branch

A1→. . .→Ai→. . .→An→X O

❄ i B1 . . . Bm

Ai [X1 :=B1, . . . , Xm :=Bm] P

slide-101
SLIDE 101

Hypergame H(A)

  • O resolves A
  • resolve opposing branch

A1→. . .→Ai→. . .→An→X P

❄ i B1 . . . Bm

Ai [X1 :=B1, . . . , Xm :=Bm] O

slide-102
SLIDE 102

Hypergame H(A)

  • O resolves A
  • resolve opposing branch

A1→. . .→Ai→. . .→An→X O

❄ i B1 . . . Bm

Ai [X1 :=B1, . . . , Xm :=Bm] P

slide-103
SLIDE 103

Hypergame H(A)

  • O resolves A
  • resolve opposing branch

A1→. . .→Ai→. . .→An→X O . . . · · ·

P

· · ·

O

. . . · · ·

P

· · ·

O

. . .

i B1 . . . Bm Ai [X1 :=B1, . . . , Xm :=Bm] P

slide-104
SLIDE 104

Hypergame H(A)

  • O resolves A
  • resolve opposing branch

A1→. . .→Ai→. . .→An→X O . . . · · ·

P

· · ·

O

. . . · · ·

P

· · ·

O

. . . i B1 . . . Bm

✑ ✑ ✰

Ai [X1 :=B1, . . . , Xm :=Bm] P

slide-105
SLIDE 105

Hypergame H(A)

  • O resolves A
  • resolve opposing branch

A1→. . .→Ai→. . .→An→X O . . . · · ·

P

· · ·

O

. . . · · ·

P

· · ·

O

. . . i B1 . . . Bm

✑ ✑ ✰

Ai [X1 :=B1, . . . , Xm :=Bm] P

slide-106
SLIDE 106

Hypergame H(A)

  • O resolves A
  • resolve opposing branch

A1→. . .→Ai→. . .→An→X O . . . · · ·

P

· · ·

O

. . . · · ·

P

· · ·

O

. . . i B1 . . . Bm

✑ ✑ ✰

Ai [X1 :=B1, . . . , Xm :=Bm] P

slide-107
SLIDE 107

∀X. X →X

slide-108
SLIDE 108

∀X. X →X

❄ ∀Y.Y N

(∀Y.Y )→N O

slide-109
SLIDE 109

∀X. X →X

❄ ∀Y.Y N

(∀Y.Y )→N O

∀X. X → X ❄

∀Y.Y

(∀Y.Y ) → (∀Y.Y ) ❄

N→B

  • prenex

∀Y . (∀Y.Y ) → Y ❄

N

(∀Y.Y ) → N

slide-110
SLIDE 110

∀X. X →X

❄ ∀Y.Y N

(∀Y.Y )→N O

slide-111
SLIDE 111

∀X. X →X

❄ ∀Y.Y N

(∀Y.Y )→N O

❄ 1 (∀Z. Z→ Z)→R→B

(∀Z. Z→ Z)→R→B P

slide-112
SLIDE 112

∀X. X →X

❄ ∀Y.Y N

(∀Y.Y )→N O

❄ 1 (∀Z. Z→ Z)→R→B

(∀Z. Z→ Z)→R→B P

❄ 2

R

O

slide-113
SLIDE 113

∀X. X →X

❄ ∀Y.Y N

(∀Y.Y )→N O

❄ 1 (∀Z. Z→ Z)→R→B

(∀Z. Z→ Z)→R→B P

❄ 2

R

O 1 C→C ❍ ❥ C→C P

slide-114
SLIDE 114

∀X. X →X

❄ ∀Y.Y N

(∀Y.Y )→N O

❄ 1 (∀Z. Z→ Z)→R→B

(∀Z. Z→ Z)→R→B P

❄ 2

R

O 1 C→C ❍ ❥ C→C P 1 N→N ✑ ✰

(N→N) → (N→N) O

slide-115
SLIDE 115

Hypergame H(A)

  • O resolves A
  • resolve opposing branch

A1→. . .→Ai→. . .→An→X O . . . · · ·

P

· · ·

O

. . . · · ·

P

· · ·

O

. . . i B1 . . . Bm

✑ ✑ ✰

Ai [X1 :=B1, . . . , Xm :=Bm] P

slide-116
SLIDE 116

Composition

  • 2nd-order extension of Hyland-Ong (λ fragment):

Interaction = Hyland-Ong interaction

  • Originally (LICS’97, PhD) abstract machine style:

(uniform) view ↔ (uniform) view [Danos-Herbelin-Regnier, LICS’96; Nickau PhD ’96]

  • This tutorial:
  • back to Hyland-Ong style (all info shared)
  • Transition (system) games
slide-117
SLIDE 117

Transition game LTS(A)

  • States: TYPES(F ∪ {⋆})
  • Transitions:

A1→. . .→An→X i

− →

B1 · · · Bm

Ai [X1:=B1, . . . , Xm :=Bm]

  • Initial state:

A → ⋆

slide-118
SLIDE 118

∀X. X →X

❄ ∀Y.Y N

(∀Y.Y )→N O

❄ 1 (∀Z. Z→ Z)→R→B

(∀Z. Z→ Z)→R→B P

❄ 2

R

O 1 C→C ❍ ❥ C→C P 1 N→N ✑ ✰

(N→N) → (N→N) O

slide-119
SLIDE 119

(∀X. X →X) → ⋆

❄ 1 ∀Y.Y N

(∀Y.Y )→N O

❄ 1 (∀Z. Z→ Z)→R→B

(∀Z. Z→ Z)→R→B P

❄ 2

R

O 1 C→C ❍ ❥ C→C P 1 N→N ✑ ✰

(N→N) → (N→N) O

slide-120
SLIDE 120

(∀X. X →X) → ⋆

❄ 1 ∀Y.Y N

(∀Y.Y )→N

❄ 1 (∀Z. Z→ Z)→R→B

(∀Z. Z→ Z)→R→B

❄ 2

R

1 C→C ❍ ❥ C→C 1 N→N ✑ ✰

(N→N) → (N→N)

slide-121
SLIDE 121

part of

LTS(∀X. X →X) (∀X. X →X) → ⋆

❄ 1 ∀Y.Y N

(∀Y.Y )→N

❄ 1 (∀Z. Z→ Z)→R→B

(∀Z. Z→ Z)→R→B

❄ 2

R

1 C→C ❍ ❥ C→C 1 N→N ✑ ✰

(N→N) → (N→N)

slide-122
SLIDE 122

Loops in LTS(A) (∀X. X)→Y

1 (∀X. X)→Y

slide-123
SLIDE 123

Transition game G(A)

  • Hyland-Ong arena Ar(LTS) := Tracesne(LTS)
  • Hyland-Ong game G(LTS)
  • G(A) := G(LTS(A)) ∼

= H(A)

  • Arena isos:

Ar(A→B) ∼ = Ar(A) ⇒ Ar(B) Ar(∀X.A) ∼ =

  • Types B

Ar(A[B/X])

slide-124
SLIDE 124

Transition game G(A)

  • Hyland-Ong arena Ar(LTS) := Tracesne(LTS)
  • Hyland-Ong game G(LTS)

(−VISIBILITY)

  • G(A) := G(LTS(A)) ∼

= H(A)

  • Arena isos:

Ar(A→B) ∼ = Ar(A) ⇒ Ar(B) Ar(∀X.A) ∼ =

  • Types B

Ar(A[B/X])

slide-125
SLIDE 125

Hypergame composition Ar(B →C) ∼ = Ar(B) ⇒ Ar(C) Composition = Hyland-Ong composition

slide-126
SLIDE 126

Uniformity & Full Completeness

slide-127
SLIDE 127

Uniformity precondition

  • COPYCAT Condition [LICS’97, PhD]:

X is rightmost var in O’s assertion ⇓ X is rightmost var in P’s assertion Strengthens (D10) in Felscher’85 ← Lorenz(en)

slide-128
SLIDE 128

Uniformity precondition

  • COPYCAT Condition [LICS’97, PhD]:

X is rightmost var in O’s assertion ⇓ X is rightmost var in P’s assertion Strengthens (D10) in

Note: henceforth read N, B, R, . . . as type variables

Felscher’85 ← Lorenz(en)

slide-129
SLIDE 129

∀X. X →X

❄ ∀Y.Y N

(∀Y.Y )→N O

❄ 1 (∀Z. Z→ Z)→R→B

(∀Z. Z→ Z)→R→B P

❄ 2

R

O 1 C→C ❍ ❥ C→C P 1 N→N ✑ ✰

(N→N) → (N→N) O

slide-130
SLIDE 130

∀X. X →X

❄ ∀Y.Y N

(∀Y.Y )→N O

❄ 1 (∀Z. Z→ Z)→R→N

(∀Z. Z→ Z)→R→N P

❄ 2

R

O 1 R→R ❍ ❥ R→R P 1 N→N ✑ ✰

(N→N) → (N→N) O

slide-131
SLIDE 131

COPYCAT → (UC) Uniformity by Copycat expansion

  • Suppose
  • play p satisfies COPYCAT
  • X free, first imported by O
  • Copycat expansion p(X → A) : copycat A+ ↔ A−

∼ Felscher’s skeleton expansion

  • Strategy uniform if:
  • satisfies COPYCAT
  • closed under copycat expansions
slide-132
SLIDE 132

Copycat expansion ∼ η expansion

ΛX.λf X.f : ∀X.X → X (η-exp. β-normal)

❄ N→N

λf N→N.f : (N → N) → (N → N) (not η-exp.)

❄ η

λf N→N.λxN.fx : (N → N) → (N → N)

slide-133
SLIDE 133

Copycat expansion ∼ η expansion

ΛX.λf X.f : ∀X.X → X (η-exp. β-normal)

❄ N→N

λf N→N.f : (N → N) → (N → N) (not η-exp.)

❄ η

λf N→N.λxN.fx : (N → N) → (N → N) (η-exp.)

slide-134
SLIDE 134

Full completeness

An innocent uniform strategy is compact if it is generated from a finite set of views by copycat expansion THEOREM: System F terms

  • nto

− → total compact strategies