SLIDE 1 Hypergame semantics: Ten years later
Dominic J. D. Hughes Stanford University
GaLoP’06, Seattle, 11 August 2006
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 (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 )
∼ Russell’s paradox (Mirimanoff 1917)
SLIDE 4 (GM) Games as Moves
: ∀X . X × X → X
SLIDE 5 (GM) Games as Moves
: ∀X . X × X → X
7, 3 → 7 : N × N → N
SLIDE 6 (GM) Games as Moves
: ∀X . X × X → X
7, 3 → 7 : N × N → N
true, false → true : B × B → B
SLIDE 7 (GM) Games as Moves
:
P
7, 3 → 7 : N × N → N
true, false → true : B × B → B
SLIDE 8 (GM) Games as Moves
:
P
7, 3 → 7 : N × N → N
true, false → true : B × B → B
π2, π1 → π2 : P × P → P
SLIDE 9 (GM) Games as Moves
:
P
7, 3 → 7 : N × N → N
true, false → true : B × B → B
π2, π1 → π2 : P × P → P
SLIDE 10 (UC) Uniformity by Copycat expansion
: ∀X . X × X → X Uniform
SLIDE 11 (UC) Uniformity by Copycat expansion
: ∀X . X × X → X Uniform
7, 3 → 7 : N × N → N
true, false → true : B × B → B
SLIDE 12 (UC) Uniformity by Copycat expansion
: ∀X . X × X → X Uniform
7, 3 → 7 : N × N → N
true, false → true : B × B → B
a, b → a if X = N a, b → b
: ∀X . X × X → X
Ad hoc Uniform
SLIDE 13 (UC) Uniformity by Copycat expansion
: ∀X . X × X → X Uniform
7, 3 → 7 : N × N → N
true, false → true : B × B → B
a, b → a if X = N a, b → b
: ∀X . X × X → X
Ad hoc Uniform
7, 3 → 7 : N × N → N
SLIDE 14 (UC) Uniformity by Copycat expansion
: ∀X . X × X → X Uniform
7, 3 → 7 : N × N → N
true, false → true : B × B → B
a, b → a if X = N a, b → b
: ∀X . X × X → X
Ad hoc Uniform
7, 3 → 7 : N × N → N
true, false → false : B × B → B
SLIDE 15 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
SLIDE 16 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
SLIDE 17 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
SLIDE 18 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
SLIDE 19 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
N × N → N
SLIDE 20 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
N × N → N n
SLIDE 21 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
N × N → N n n
SLIDE 22 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
N × N → N n n 7
SLIDE 23 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
N × N → N n n 7 7
SLIDE 24 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
N × N → N n n 7 7
Convention: O = Opponent = Orange P = Player = Purple
SLIDE 25 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
SLIDE 26 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
SLIDE 27 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
SLIDE 28 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
SLIDE 29 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
B × B → B
SLIDE 30 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
B × B → B b
SLIDE 31 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
B × B → B b b
SLIDE 32 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
B × B → B b b true
SLIDE 33 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
B × B → B b b true true
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
(UC) Uniformity by Copycat expansion
∀X. X × X → X at N→B : (N→B) × (N→B) → (N→B)
SLIDE 36 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B)
SLIDE 37 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B)
SLIDE 38 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B)
SLIDE 39 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B)
SLIDE 40 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B) b
SLIDE 41 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B) b b
SLIDE 42 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B) b b n
SLIDE 43 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B) b b n n
SLIDE 44 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B) b b n n 5
SLIDE 45 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B) b b n n 5 5
SLIDE 46 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B) b b n n 5 5 true
SLIDE 47 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B) b b n n 5 5 true true
SLIDE 48 (UC) Uniformity by Copycat expansion
∀X. X × X → X at ◦ :
(N→B) × (N→B) → (N→B) b b n n 5 5 true true prime? , even? → prime?
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 Impredicativity
:
P
7, 3 → 7 : N × N → N
π2, π1 → π2 : P × P → P ML , F
- { barbers : shave non-self-shavers }
- H is a move in H: “H ∈ H” (Zwicker)
SLIDE 51 Impredicativity: dynamic solution
- Static approaches not fully complete for F:
- Domain models
(continuity/approximation/limit)
(families/∩)
(no 2nd-order moves)
- Dynamic solution: (GM) Games as Moves
SLIDE 52
Impredicativity: dynamic solution
a, b → a : ∀X . X × X → X = P
SLIDE 53
Impredicativity: dynamic solution
a, b → a : ∀X . X × X → X = P ∀X . X × X → X
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
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
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
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 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
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
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
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 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
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
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
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
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
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
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
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 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 Full completeness for system F
- Uniform (UC)
- Innocent ← Hyland-Ong
- Total
← λ fragment
SLIDE 72 Full completeness for system F
- Uniform (UC)
- Innocent ← Hyland-Ong
- Total
← λ fragment
SLIDE 73 Full completeness for system F
- Uniform (UC)
- Innocent ← Hyland-Ong
- Total
← λ fragment
SLIDE 74 Full completeness for system F
- Uniform (UC)
- Innocent ← Hyland-Ong
- Total
← λ fragment
SLIDE 75 Full completeness for system F
- Uniform (UC)
- Innocent ← Hyland-Ong
- Total
← λ fragment
SLIDE 76 Full completeness for system F
- Uniform (UC)
- Innocent ← Hyland-Ong
- Total
← λ fragment
∀X. X × X → X at ◦ : ◦ × ◦ → ◦
SLIDE 77
Formal Hypergames
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
- 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
- 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
- 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
- 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 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
∀Y . (∀Y.Y ) → Y (∀Y.Y ) → (N→B)
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
∀Y . (∀Y.Y ) → Y (∀Y.Y ) → (N→B)
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
- 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
- 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
- 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
- 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
- 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
Hypergame H(A)
SLIDE 93 Hypergame H(A)
∀X. X → X → X
❄ N
N → N → N
SLIDE 94 Hypergame H(A)
∀X. X → X → X
❄ N
N → N → N
SLIDE 95 Hypergame H(A)
∀X. X → X → X
❄ N
N → N → N O
SLIDE 96 Hypergame H(A)
- O resolves A
- resolve opposing branch
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 Hypergame H(A)
- O resolves A
- resolve opposing branch
A1→. . .→Ai→. . .→An→X O
❄ i
Ai [X1 :=B1, . . . , Xm :=Bm] P
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 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 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 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 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 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 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 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
∀X. X →X
SLIDE 108 ∀X. X →X
❄ ∀Y.Y N
(∀Y.Y )→N O
SLIDE 109 ∀X. X →X
❄ ∀Y.Y N
(∀Y.Y )→N O
∀X. X → X ❄
∀Y.Y
(∀Y.Y ) → (∀Y.Y ) ❄
N→B
∀Y . (∀Y.Y ) → Y ❄
N
(∀Y.Y ) → N
SLIDE 110 ∀X. X →X
❄ ∀Y.Y N
(∀Y.Y )→N O
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 ∀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 ∀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 ∀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 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 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 Transition game LTS(A)
- States: TYPES(F ∪ {⋆})
- Transitions:
A1→. . .→An→X i
− →
B1 · · · Bm
Ai [X1:=B1, . . . , Xm :=Bm]
A → ⋆
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 (∀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 (∀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 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
Loops in LTS(A) (∀X. X)→Y
1 (∀X. X)→Y
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)
Ar(A→B) ∼ = Ar(A) ⇒ Ar(B) Ar(∀X.A) ∼ =
Ar(A[B/X])
SLIDE 124 Transition game G(A)
- Hyland-Ong arena Ar(LTS) := Tracesne(LTS)
- Hyland-Ong game G(LTS)
(−VISIBILITY)
= H(A)
Ar(A→B) ∼ = Ar(A) ⇒ Ar(B) Ar(∀X.A) ∼ =
Ar(A[B/X])
SLIDE 125
Hypergame composition Ar(B →C) ∼ = Ar(B) ⇒ Ar(C) Composition = Hyland-Ong composition
SLIDE 126
Uniformity & Full Completeness
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 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 ∀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 ∀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 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 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 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 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
− → total compact strategies