Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker)...

57
arXiv:1601.04147v4 [cs.LO] 19 Nov 2017 Dynamic Games and Strategies Norihiro Yamada and Samson Abramsky [email protected] [email protected] Department of Computer Science University of Oxford November 21, 2017 Abstract The present paper aims to provide a mathematical and syntax-independent formulation of dynamics and intensionality of computation; our approach is based on mathematical structures developed in game semantics. Specifically, we give a new game semantics of a prototypical programming language that distinguishes terms with the same value yet different algorithms, capturing intensionality of computation, equipped with the hiding operation on strategies that exactly corresponds to the (small-step) operational semantics of the programming language, modeling dynamics of computation. Categorically, our games and strategies give rise to a certain kind of a cartesian closed bicategory (CCB), and our game semantics forms an instance of a bicategorical refinement of the standard interpretation of functional languages in cartesian closed categories (CCCs) by CCBs. This work is intended to be a mathematical foundation of operational aspects of computation; our approach should be applicable to a wide range of logics and computations. Contents 1 Introduction 2 1.1 Game Semantics ...................................... 3 1.2 Existing Game Semantics Is Static And Extensional ................. 4 1.3 Dynamic Games and Strategies ............................. 6 1.4 Dynamic Game Semantics ................................ 7 1.5 Related Work and Our Contribution .......................... 7 1.6 Overview .......................................... 8 2 Dynamic Bicategorical Semantics 9 2.1 Bicategories of Computation ............................... 9 2.2 System T .......................................... 11 2.3 Dynamic Semantics of System T ............................. 16 1

Transcript of Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker)...

Page 1: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

arX

iv:1

601.

0414

7v4

[cs

.LO

] 1

9 N

ov 2

017

Dynamic Games and Strategies

Norihiro Yamadaand

Samson [email protected]

[email protected]

Department of Computer ScienceUniversity of Oxford

November 21, 2017

Abstract

The present paper aims to provide a mathematical and syntax-independent formulation ofdynamics and intensionality of computation; our approach is based on mathematical structuresdeveloped in game semantics. Specifically, we give a new game semantics of a prototypicalprogramming language that distinguishes terms with the same value yet different algorithms,capturing intensionality of computation, equipped with the hiding operation on strategies thatexactly corresponds to the (small-step) operational semantics of the programming language,modeling dynamics of computation. Categorically, our games and strategies give rise to acertain kind of a cartesian closed bicategory (CCB), and our game semantics forms an instance ofa bicategorical refinement of the standard interpretation of functional languages in cartesianclosed categories (CCCs) by CCBs. This work is intended to be a mathematical foundationof operational aspects of computation; our approach should be applicable to a wide range oflogics and computations.

Contents

1 Introduction 21.1 Game Semantics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2 Existing Game Semantics Is Static And Extensional . . . . . . . . . . . . . . . . . 41.3 Dynamic Games and Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.4 Dynamic Game Semantics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.5 Related Work and Our Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . 71.6 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2 Dynamic Bicategorical Semantics 92.1 Bicategories of Computation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2 System T . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.3 Dynamic Semantics of System T . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1

Page 2: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

3 Dynamic Games and Strategies 173.1 Dynamic Arenas and Legal Positions . . . . . . . . . . . . . . . . . . . . . . . . . . 183.2 Dynamic Games . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243.3 Constructions on Dynamic Games . . . . . . . . . . . . . . . . . . . . . . . . . . . 283.4 Dynamic Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373.5 Constructions on Dynamic Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4 Dynamic Game Semantics of System T 454.1 Dynamic Game Semantics of System T . . . . . . . . . . . . . . . . . . . . . . . . . 454.2 Main Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

5 Conclusion and Future Work 51

A Proof of Lemma 3.3.13 55

1 Introduction

In [GTL89], Jean-Yves Girard mentions the dichotomy between the static and dynamic view-points in logic and computation; the former identifies terms with their denotations (i.e., results oftheir computations in an ideal sense), while the latter focuses on their senses (i.e., algorithms orintensionality)1 and dynamics. This distinction is reflected as the two mutually complementarysemantics of programming languages: the denotational and operational ones [Win93, Gun92]. Hepoints out that a mathematical formulation of the former has been relatively well-developed,but it is not the case for the latter; the treatment of senses has been based on ad-hoc syntacticmanipulation. He then emphasizes the importance of a mathematical formulation of senses:

The establishment of a truly operational semantics of algorithms is perhaps the mostimportant problem in computer science [GTL89].

The present paper addresses this problem; more precisely, we establish an interpretationJ KD of a programming language L with a small-step operational semantics → and a syntax-independent operation ◮ that satisfy the following dynamic correspondence property (DCP):M1 → M2 in L if and only if (a.k.a. iff) JM1KD 6= JM2KD and the diagram

M1 → M2

JM1KD

J KD❄

........◮ JM2KD

J KD❄

........

commutes. Note that the “only if” and “if” directions correspond respectively to certain sound-ness and completeness of the interpretation ◮ of →. Also, the interpretation J KD is finer thanthe usual (sound) interpretation because M1 → M2 implies JM1KD 6= JM2KD . Thus, the interpre-tation J KD and the operation ◮ capture intensionality and dynamics of computation, respectively.

Although our framework in this paper is intended to be a general approach, and it should beapplicable to a wide range of computations, as the first step, we focus on a simple programminglanguage for intuitionistic Peano Arithmetic (PA) or Heyting Arithmetic (HA), known as System T[AF98, GTL89] customized for our purpose.

1Clearly, two terms often have the same denotation but different senses.

2

Page 3: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

1.1 Game Semantics

Our approach is based on a particular kind of semantics of computation [Win93, Gun92], calledgame semantics, for it is an intensional semantics that captures dynamics of computation in anintuitively natural yet mathematically precise and syntax-independent manner [A+97, Hyl97]. Also,it is very flexible: A wide range of programming languages have been modeled via the unifiedframework of game semantics by varying constraints on morphisms [AM99]; we have chosenthis approach with the hope that it is also the case for operational aspects of computation.

In game semantics, types and terms are interpreted as games and strategies, respectively. Agame is, roughly speaking, a certain kind of a rooted forest whose branches represent possibledevelopments or plays of the “game in the usual sense” (such as chess and poker) it represents;these branches are finite sequences of moves of the game. For our purpose, it suffices to focuson games played by just two participants, Player (who represents a “computational agent”) andOpponent (who represents an “environment”), in which Opponent always starts a play, and thenthey alternately perform moves allowed by the rules of the game. On the other hand, a strategyon a game is, roughly, what tells Player which move she should make next at each of her turnsin the game. Then, a game semantics J KG of a programming language L interprets a type A inL as the game JAKG that specifies possible interactions between Opponent and Player in it anda term M : A2 as a strategy JMKG on JAKG that describes an algorithm for Player to play in JAKG .

Let us consider a simple example. The game N of natural numbers looks like the followingtree (which is infinite in width):

q

. . .

0✛

1

2❄

3

. . .

in which a play starts with Opponent’s question q (“What is your number?”) and ends withPlayer’s answer n ∈ N (“My number is n!”). A strategy 10 on N that corresponds to 10 ∈ N, forinstance, is represented by the function q 7→ 10, or diagramatically:

10q10

As another example, consider the game N ⇒ N of numeric functions, in which a typicalmaximal play is of the form qqnm, where n,m ∈ N, or diagrammatically3:

N ⇒ Nq

qn

m

which can be read as follows:

1. Opponent’s question q for an output (“What is your output?”);

2. Player’s question q for an input (“Wait, what is your input?”);

2For simplicity, here we focus on terms with the empty context.3The diagram is depicted as above only to clarify which component game (i.e., the domain or the codomain) each

move belongs to; it should be read just as a finite sequence, namely qqnm. Also, here we simplify the argument byignoring “tags” for exponential ! and promotion ( )†), treating implication ⇒ just as linear implication ⊸, for brevity.

3

Page 4: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

3. Opponent’s answer, say n, to the second q (“OK, here is an input n.”);

4. Player’s answer, say m, to the first q (“Alright, the output is then m.”).

A strategy succ on this game that corresponds to the successor function can be represented bythe function q 7→ q, qqn 7→ n+ 1, or diagrammatically:

Nsucc⇒ N

qqn

n+ 1

Even these simple and informal examples illustrate the intuitive nature of game semanticsas well as how it represents dynamics and intensionality of computation.

1.2 Existing Game Semantics Is Static And Extensional

Game semantics is often said to be a dynamic and intensional semantics because a category ofgames is usually not well-pointed, and plays of a game may be regarded as “dynamic inter-actions” between the participants of the game. Nevertheless, it has been employed mainly asdenotational semantics [Win93, Gun92], and thus it is in particular sound: If two terms evaluate tothe same value, then their denotations are identical. As a consequence, existing game semanticsJ KG is actually static and extensional in the sense that if there is a reduction M1 → M2 in syntax,then the equation JM1KG = JM2KG holds in the semantics (i.e., it does not capture the dynamicsM1 → M2 or the intensional difference between M1 and M2). Concretely, it cannot satisfy a DCP.

Hence, we need a more dynamic and intensional variant of games and strategies so thatthey satisfy DCPs for programming languages. To get some insights to develop such games andstrategies, let us see how existing game semantics fails to be dynamic and intensional. In a word,it is because the “internal communication” between strategies for their composition is a priorihidden, and so the resulting strategy is always in normal form. For instance, the compositionsucc; double : N ⇒ N of the two strategies succ : N ⇒ N and double : N ⇒ N

Nsucc⇒ N N

double⇒ N

q qq qm n

m+1 2n

where m and n range over natural numbers, is calculated as follows. First, by “internal com-munication”, we mean that Player plays the role of Opponent in the intermediate componentgames N [2] and N [3] just by “copy-catting” her last moves, resulting in the following play:

N [1] succ⇒ N [2] N [3] double

⇒ N [4]

qq

q

qn

n+1

n+1

2·(n+1)

4

Page 5: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

where the superscripts [1], [2], [3] and [4] are just to distinguish different copies of N , and movesfor the internal communication are marked by square boxes. This play is to be read as follows:

1. Opponent’s question q for an output in N [1] → N [4] (“What is your output?”);

2. Player’s question q by double for an input in N [3] → N [4] (“Wait, what is your input?”);

3. 2 in turn triggers the question q for an output in N [1] → N [2] (“What is your output?”);

4. Player’s question q by succ for an input in N [1] → N [2] (“Wait, what is your input?”);

5. Opponent’s answer, say n, to 4 in N [1] → N [4] (“OK, here is the input n.”);

6. Player’s answer n+1 to 3 by succ in N [1] → N [2] (“The output is then n+1.”);

7. 6 in turn triggers the answer n+1 to 2 in N [3] → N [4] (“OK, here is the input n+1.”);

8. Player’s answer 2·(n+1) to 1 by double in N [1] → N [4] (“The output is then 2·(n+1).”)

where Opponent plays on the game N [1] → N [4], “seeing” only moves of N [1] or N [4].Next, hiding means to hide or delete all the moves with square boxes, resulting in the strategy

for the function n 7→ 2·(n+1) as expected:

Nsucc;double

⇒ Nq

qn

2·(n+1)

Now, let us further plug in the strategy 5 : q 7→ 5 on the game T ⇒ N , which is essentiallyN for there is no move in the terminal game T 4. The composition 5; succ; double : T ⇒ N of 5,succ and double5 is computed again by internal communication:

T5⇒ N N

succ⇒ N N

double⇒ N

qq

q

q

q

5

5

6

612

plus hiding:

T5;succ;double

⇒ Nq12

4We shall see its formal definition shortly.5Composition of strategies is associative; thus, the order of applying composition does not matter.

5

Page 6: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

In syntax, on the other hand, assuming the numeral n for each n ∈ N, succ and double forthe successor and doubling functions, respectively, equipped with the operational semantics

succn → n+1 and doublen → 2·n for all n ∈ N, the program p1df.≡ λx.(λy.doubley)((λz.succz)x)

represents the syntactic composition succ; double. When it is applied to the numeral 5, we havethe following chain of reductions:

p15 →∗ (λx.double(succx))5

→∗ double(succ5)

→∗ double6

→∗ 12.

Hence, it seems that reduction in syntax corresponds in game semantics to hiding “internalcommunication”. As seen in the above example, however, this game-semantic normalization isa priori executed and thus invisible in conventional game semantics J KG . As a result, the twoprograms p1 5 and 12 are interpreted as the same strategy, namely 12 : q 7→ 12. Moreover,observe that moves with square boxes describe intensionality or step-by-step processes in compu-tation to compute an output from an input, but they are again invisible after the hiding process.

Thus, e.g., another program p2df.≡ λx.(λy.succy)(λv.(λz.succz)((λw.doublew)v)x), which clearly

represents the same function as p1 but a different algorithm, is interpreted to be the same as p1:

Jp2KG = Jdouble; succ; succKG = Jsucc; doubleKG = Jp1KG .

To sum up, we have observed the following:

1. (REDUCTION AS HIDING) Reduction in syntax corresponds in game semantics to hiding“intermediate moves” (e.g., moves with square boxes in the example);

2. (A PRIORI NORMALIZATION) However, the hiding process is a priori executed in existinggame semantics, and thus strategies are always in normal form;

3. (INTERMEDIATE MOVES AS INTENSIONALITY) “Intermediate moves” constitute intension-ality of computation; however, they are not captured in existing game semantics again dueto a priori hiding.

1.3 Dynamic Games and Strategies

From these observations, a promising solution would be to define a dynamic variant of gamesand strategies, in which “intermediate moves” are not a priori hidden, representing intension-ality of computation, and also the hiding operations H on these dynamic games and strategiesthat hide “intermediate moves” in a step-by-step fashion, interpreting the dynamic process ofreduction.

In doing so, we shall try to develop additional structures and axioms that are conceptuallynatural and mathematically elegant. This is in order to inherit the natural and intuitive natureof existing game semantics so that the resulting interpretation would be insightful, convincingand useful. Also, mathematics often leads us to a “correct” formulation: If a definition givesrise to neat mathematical structures, then it is likely to succeed in capturing the essence ofconcepts and phenomena of concern and subsume various instances. In fact, dynamic gamesand strategies are a natural generalization of existing games and strategies, and they satisfyvarious algebraic laws so that they form a cartesian closed bicategory (CCB) [Oua97] DG, in which0- (resp. 1-) cells are a certain kind of dynamic games (resp. strategies) and 2-cells correspond

6

Page 7: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

to the extensional equivalence between 1-cells, and H induces the hiding functor Hω : DG → MG,where MG is the cartesian closed category (CCC) of an existing variant of games and strategies,and it can be seen as an “extensionally collapsed” DG (for the present work, it suffices to knowthat a CCB is a generalized CCC in the sense that the axioms are required to hold only up to2-cell isomorphisms).

1.4 Dynamic Game Semantics

We then give a game semantics J KDG of our variant of System T [AF98, GTL89] in DG thattogether with H on 1-cells satisfies a DCP, which we call dynamic game semantics as it capturesdynamics and intensionality of computation better than existing ones.

Note that it does not make much sense to ask whether full abstraction holds for our dynamicgame semantics for its aim is to capture intensionality of computation.

On the other hand, we may establish (intensional) definability by an inductive constructionof a subclass T DG of dynamic games and strategies; however, it is rather trivial. We leave anon-inductive characterization of T DG as future work.

Also, the model does not satisfy faithfulness: Our semantic equation is of course finer thanβ-equivalence yet coarser than α-equivalence, e.g., consider the terms (λx.0)1, (λx.0)2 : N. As al-ready explained, the semantic equation captures algorithmic difference of computations, whileα-equivalence distinguishes how programs are inductively constructed even if their algorithmsare the same. We leave it as future work to capture the semantics equality by a syntactic concept.

1.5 Related Work and Our Contribution

To the best of our knowledge, the present work is the first syntax-independent characterizationof dynamics of computation in the sense that it satisfies a DCP.

The work closest in spirit is Girard’s geometry of interaction (GoI) [Gir89, Gir90, Gir95, Gir03,Gir11, Gir13]. However, GoI appears mathematically ad-hoc for it does not conform to the stan-dard categorical semantics of type theories [Pit01, Cro93, Jac99]; also, it does not capture thestep-by-step process of reduction in the sense of DCPs. In contrast, our dynamic game semanticsfollows (or refines) the standard categorical semantics and satisfies a DCP.

Next, the idea of exhibiting “intermediate moves” in the composition of strategies is nothingnew; there are game-semantic approaches [DGL05, Gre05, BO08, Ong06] that give such movesan official status. However, since their aims are to develop a tool for program verification,they do not study in depth mathematical structures thereof, give an intensional game semanticsthat follows the usual categorical semantics of type theories [Pit01, Cro93, Jac99], or formulatea step-by-step hiding process. Therefore, our contribution for this point is to study categoricalstructures of games and strategies when we do not a priori hide “intermediate moves” andgeneralize the standard categorical semantics of computation in such a way that satisfies DCPs.

Also, there are several different approaches to model dynamics of computation by 2-categories[BS10, See87, Mel05]. In these papers, however, the horizontal composition of 1-cells is the nor-malizing one, which is why the structure is 2-categories rather than bicategories6. Also, their2-cells are rewriting, not external equivalence like ours; note that 2-cells in a bicategory cannotinterpret rewriting unless the horizontal composition of 1-cells is normalizing simply becauseassociativity of non-normalizing composition of 1-cells with respect to such rewriting 2-cellsdoes not hold7. Thus, although their motivations are similar to ours, our bicategorical modelof computation seems a novel one, which interprets application of terms via non-normalizing

6Otherwise, unit law does not strictly hold.7It is because we cannot have a “rewriting” between 1-cells (f ; g); h and f ; (g; h).

7

Page 8: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

composition, extensional equivalence of terms by 2-cells and rewriting by an equipped opera-tion on 1-cells. Moreover, their frameworks are just categorical, while we have instantiated ourbicategorical model by game semantics.

Finally, let us mention that this work has several implications from theoretical as well aspractical perspectives. From the theoretical viewpoint, it enables us to study dynamics and in-tensionality of computation as purely mathematical (or semantic) concepts, just like any conceptsin pure mathematics such as differentiation and integration in calculus, homotopy in topology,etc. Therefore, we may rigorously analyze the essence of these concepts ignoring superficialsyntactic details, e.g., it may be an accurate measure for computational complexity of functionalprogramming. On the other hand, from the practical view, it can be a useful tool for languageanalysis and design, e.g., our variant of System T would not exist without the present work.

1.6 Overview

The rest of the paper proceeds as follows. First, Section 2 defines our variant of System T andits bicategorical semantics that satisfies a DCP so that it remains to establish its game-semanticinstance. Next, Section 3 defines dynamic games and strategies, and Section 4 proves that theygive rise to an instance of the bicategorical semantics of System T given in Section 2, giving thefirst dynamic game semantics. Finally, Section 5 draws a conclusion and proposes future work.

◮ Notation. In the rest of the paper, we employ the following notations:

◮ Let V be a countably infinite set of variables, written x, y, z, etc., for which we assume thevariable convention (or Barendregt’s convention)8;

◮ Given a poset P and a subset S ⊆ P , we write Sup(S) for the supremum of S;

◮ Given a function f : A → B and a subset S ⊆ A, we define f ↾ S : S → B to be therestriction of f to S;

◮ We use bold letters s, t,u,v,w, etc. to denote sequences, and ǫ denotes the empty sequence;

◮ We use letters a, b, c, d, e,m, n, p, q, x, y, z, etc. to denote elements of sequences;

◮ We write s � t if s is a prefix of a sequence t;

◮ We write |s| for the length of a sequence s, i.e., the number of elements of s;

◮ A concatenation of sequences is represented by a juxtaposition of them, but we usuallywrite as, tb, ucv for sequences (a)s, t(b), u(c)v, respectively;

◮ For readability, we sometimes write s.t for the concatenation st;

◮ We write Even(s) and Odd(t) to mean that sequences s and t are of even-length and odd-length, respectively;

◮ Given a set S of sequences, let SEven df.= {s ∈ S |Even(s)} and SOdd df.

= {t ∈ S |Odd(t)};

◮ Given a set X , we define X∗ to be the set of all finite sequences of elements in X ;

◮ Given a sequence s and a set X , we write s ↾ X for the subsequence of s that consists ofelements in X , for which we often have s ∈ Z∗ with Z = X + Y for some set Y , and thenabuse notation: The operation deletes the “tags” for the disjoint union so that s ↾ X ∈ X∗.

8I.e., we assume that in any terms of concern every bound variable is chosen to be different from any free variables.

8

Page 9: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

2 Dynamic Bicategorical Semantics

This section gives a categorical description of how dynamic games and strategies capture dy-namics and intensionality of computation, and shows that it is a refinement of the standardcategorical semantics of type theories [Pit01, Cro93, Jac99].

2.1 Bicategories of Computation

The categorical structure that is essential for our interpretation is bicategories of computation(BoCs), which are bicategories whose 2-cells are extensional equivalences of 1-cells, equipped withan evaluation satisfying certain axioms:

◮ Definition 2.1.1 (BoCs). A bicategory of computation (BoC) is a bicategory C equipped witha function E on 1-cells of C, called the evaluation, that satisfies:

◮ (SUBJECT REDUCTION) ∀A,B ∈ C, f ∈ C(A,B).E(f) ∈ C(A,B);

◮ (COMPOSITION) ∀A,B,C ∈ C, f ∈ C(A,B), g ∈ C(B,C).E(f ; g) 6= f ; g∧ (f ↓ ∧ g ↓ ⇒ f ; g ↓);

◮ (IDENTITIES) ∀A ∈ C.E(idA) = idA;

◮ (2-CELLS) ∀A,B ∈ C, f, f ′ ∈ C(A,B).C(A,B)(f, f ′) 6= ∅ ⇔ f ∼= f ′

where we define V(A,B)df.= {f ∈ C(A,B) |E(f) = f }, write f ↓, or more specifically f ↓ En(f),

if En(f) ∈ V(A,B) for some n ∈ N9 and f ↑ otherwise, and define:

∀f, f ′ ∈ C(A,B).f ∼= f ′ df.⇔ (∃v ∈ V(A,B).f ↓ v ∧ f ′ ↓ v) ∨ (f ↑ ∧ f ′ ↑).

It is cartesian closed if so is C in the sense of [Oua97] (but we do not need its precise definitionthanks to Lemma 2.1.2 below).

◮ Convention. If f ↓ En(f) for some n ∈ N, then we call En(f) the fixed-point or value of f andalso write Eω(f) for it.

The intuition behind the definition is as follows. In a BoC C = (C, E), 1-cells are (not nec-essarily “effective”) computations with their domain and codomain types (i.e., 0-cells) specified,and values are extensional computations such as functions (as graphs). The horizontal com-position of 1-cells is concatenation of computations (so it is non-normalizing) and horizontalidentities are unit computations (they are just like identity functions). The execution of a compu-tation f is achieved by evaluating it into a unique value Eω(f), which corresponds to dynamics ofcomputation. Moreover, 2-cells just witness extensional equivalence ∼= between 1-cells. The fouraxioms should make sense from this perspective, where unit law holds only up to ∼= becausewe are concerned with processes. In this manner, a BoC provides a “universe” of dynamic andintensional computations.

Note that the (vertical and horizontal) compositions on 2-cells, 2-cell identities and the natu-ral isomorphisms for associativity and unit law of a BoC are the obvious and unique ones, andso the coherence trivially holds. It in particular implies:

9Note that if En1 (f), En2 (f) ∈ V(A,B) for any n1, n2 ∈ N, then clearly En1 (f) = En2 (f), where En denotes then-times iteration of E for all n ∈ N.

9

Page 10: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ Lemma 2.1.2 (Characterization lemma of BoCs). A (resp. cartesian closed) BoC is equivalentto a (resp. cartesian closed) category equipped with an evaluation satisfying the four axioms of Defini-tion 2.1.1 in which the composition (resp. the composition, the pairing and the currying) preserves ∼=,and the required equations hold up to ∼=.

Proof. For the necessity, let C = (C, E) be a BoC. Clearly, its 0-cells (as objects), 1-cells (as mor-phisms), horizontal identities (as identities) and composition on 1-cells (as composition) forma category in which associativity and unit law hold only up to ∼=. Note that the horizontalcomposition of 2-cells implies that the composition of morphisms preserves ∼=. If C is cartesianclosed, then it induces a cartesian closed structure of that category in which the pairing and thecurrying preserve ∼= (by these operations on 2-cells), and the required equations hold up to ∼=.

For the sufficiency, given a category C′ equipped with an evaluation E ′ satisfying the fouraxioms in which the composition preserves ∼=, and associativity and unit law hold up to ∼=, weconstruct a BoC C′ = (C′, E ′) as follows. Its 0- and 1-cells are objects and morphisms in C′, andits horizontal identities and composition on 1-cells are the identities and the composition in C′.Its 2-cells are the induced equivalence relation ∼=; its vertical identities as well as its vertical andhorizontal compositions on 2-cells are the obvious (and unique) ones. Note that the horizontalcomposition on 2-cells is well-defined as the composition on morphisms in C′ preserves ∼=. Also,note that the functoriality of the horizontal compositions trivially holds. Moreover, the natural2-cell isomorphisms for associativity and unit law exist simply by the axiom 2-cells on C′ and thefact that associativity and unit law of C′ hold up to ∼=, where note that the required coherenceconditions trivially hold. If the category C′ is cartesian closed in which the pairing and thecurrying preserve ∼=, and the required equations hold up to ∼=, then in the same manner it justgives the corresponding cartesian closed structure on the BoC C′ in the sense defined in [Oua97].

Clearly, these two constructions are mutually inverses, completing the proof. �

Thanks to Lemma 2.1.2, we do not have to care much about subtleties in CCBs such ascoherence. Also, it suffices for giving a cartesian closed BoC (CCBoC) to specify a CCC up to ∼=together with an evaluation that satisfies the required axioms.

Also, the lemma implies that a BoC C = (C, E) induces the category V of values given by:

◮ Objects are 0-cells of C;

◮ Morphisms A→ B are values in V(A,B);

◮ The composition of morphisms u : A→ B and v : B → C is Eω(u; v) : A→ C;

◮ The identities are those in C.

Clearly, V is cartesian closed if so is C. Moreover, regarding V as a trivial 2-category, E inducesthe 2-functor Eω : C → V that maps A 7→ A for 0-cells A, f 7→ Eω(f) for 1-cells f and ∼= 7→ = for2-cells ∼=, which translates the cartesian closed structure of C into that of V if C is a CCBoC.

The point is that we may decompose the standard interpretation J KS of functional pro-gramming languages in CCCs [Pit01, Cro93, Jac99] as a more intensional interpretation J KD ina CCBoC C = (C, E) and a semantic evaluation Eω on 1-cells, i.e., J KS = Eω(J KD), and talk aboutintensional difference between computations: Terms M and M′ are interpreted to be intensionallyequal if JMKD = JM′KD and extensionally equal if JMKD ∼= JM′KD . Also, the one-step evaluation Eis to capture the small-step operational semantics of the target language, i.e., to satisfy a DCP.

10

Page 11: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

2.2 System T

As the first target language for our framework, we select an extension of the simply-typed λ-calculus, known as Godel’s System T [AF98, GTL89]. Equipped with natural numbers andprimitive recursion, it is far more expressive than the simply-typed λ-calculus, correspondingto Heyting Arithmetic (HA) [Tro73] under the Curry-Howard isomorphism [SU06], but it has thestrong normalization property, i.e., every computation eventually terminates.

However, System T in the usual form does not match our view on computation; e.g., the 2nd-numeral is usually the expression succ(succ 0), but it should represent the process of applyingthe successor twice to 0, not the number 2. For this point, we represent every term via PCFBohm trees [AJM00, HO00, AC98], exploiting the strong definability of the game semantics in[HO00, AM99]. Moreover, we design an eager operational semantics that computes “genuinevalues”. We call the resulting variant System Tϑ:

◮ Definition 2.2.1 (System Tϑ). System Tϑ is a functional programming language defined asfollows:

◮ Types A are generated by the grammar:

Adf.≡ N | A1 ⇒ A2

where N is the natural number type and A1 ⇒ A2 is the function type from A1 to A2 (⇒is right associative). We write A,B,C, etc. for types. Note that each type A is of the formA1 ⇒ A2 ⇒ · · · ⇒ Ak ⇒ N, where k ∈ N.

◮ Raw-terms M are generated by the grammar:

Mdf.≡ x|n |case(M)[M′] |λxA.M |M1M2

where x ranges over variables, M′ over countably infinite sequences M′0|M

′1| . . . of raw-

terms, A over types, and ndf.≡

n︷ ︸︸ ︷|| · · · | for each n ∈ N. We write M,P,Q,R, etc. for raw-terms

and often omit A in λxA. As syntactic sugar, e.g., we write x 7→ M′x for M′ ≡ M′

0|M′1| . . . and

0 7→ 10, x.1 7→ M′x for M′ ≡ 10|M′

0|M′1| . . .

◮ Contexts Γ are finite sequences x1 : A1, x2 : A2, . . . , xk : Ak of (variable : type)-pairs suchthat xi 6= xj whenever i 6= j. We write Γ, ∆, Θ, etc. for contexts.

◮ Terms are judgements Γ ⊢ {M}e : B, where Γ is a context, M is a raw-term, e ∈ N is theexecution number, and B is a type, generated by the following typing rules:

(N)n ∈ N

Γ ⊢ {n}0 : N(C1)

A ≡ A1 ⇒ A2 ⇒ · · · ⇒ Ak ⇒ N

∀i ∈ {1, 2, . . . , k}.Γ ⊢ {Vi}0 : Ai ∀n ∈ N.Γ ⊢ {Wn}0 : N

Γ, x : A,∆ ⊢ {case(xV1V2 . . .Vk)[y 7→ Wy]}0 : N

(C2)Γ ⊢ {M}e : N ∀n ∈ N.Γ ⊢ {Pn}en : N

Γ ⊢ {case(M)[y 7→ Py]}0 : N(L)

Γ, x : A ⊢ {M}e : B

Γ ⊢ {λxA.M}e : A ⇒ B

(A)Γ ⊢ {M}e : A ⇒ B Γ ⊢ {N}e′ : A

Γ ⊢ {MN}Max(e,e′)+1 : B

11

Page 12: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

Note that a deduction (tree) of each term is unique. A term Γ ⊢ {M}e : B is finite if so is thelength (i.e., the number of letters) of M. We omit execution numbers and the brackets { }(even contexts and types) of terms whenever they are not important, and identify terms upto α-equivalence. A value is a term generated by the rules N, C1 and L, and a configurationis a term constructed by the rules N, C1, L and A. A subterm of a term Γ ⊢ M : B is a termthat occurs in the deduction of Γ ⊢ M : B. Atomic terms are the following values:

(N)n ∈ N

Γ ⊢ {n}0 : N(VAR)

Γ, x : A,∆ ⊢ {xA}0 : A(SUCC)

Γ ⊢ {succ}0 : N ⇒ N

(PRED)Γ ⊢ {pred}0 : N ⇒ N

(COND)Γ ⊢ {cond}0 : N ⇒ N ⇒ N ⇒ N

(ITR)Γ ⊢ {itrA}0 : (A ⇒ A) ⇒ A ⇒ N ⇒ A

where:

⊲ A ≡ A1 ⇒ A2 ⇒ · · · ⇒ Ak ⇒ N;

⊲ xAdf.≡ λxA1

1 xA2

2 . . . xAk

k .case(xx1A1x2

A2 . . . xkAk)[y 7→ y] (we often write x for xA);

⊲ succdf.≡ λxN.case(x)[y 7→ y.1];

⊲ preddf.≡ λxN.case(x)[0 7→ 0, y.1 7→ y];

⊲ conddf.≡ λxNyNzN.case(z)[0 7→ xN, y.1 7→ yN];

⊲ itrAdf.≡ λfA⇒AxAyN.case(y)[z 7→ nf (fzx)], fzx

df.≡ f(f(. . . (f︸ ︷︷ ︸

n

x) . . . )) if z ≡ n, and nf is de-

fined below.

Programs are terms generated from atomic terms by the rules L and A.

◮ The βϑ-reduction →βϑ on terms is the contextual closure10 [Han94] of the union of thefollowing rules:

(λx.M)P →β M[P/x]

case(n)[M] →ϑ1 Mn

case(case(xV)[P])[Q] →ϑ2 case(xV)[y 7→ case(Py)[Q]]

case(case(M)[P])[Q] →ϑ3 case(M)[x 7→ case(Px)[Q]]

where M[P/x] denotes the capture-free substitution [Han94] of P for x in M. The parallelβϑ-reduction ⇒βϑ on terms M is the simultaneous execution of →βϑ for every βϑ-redexin M (possibly infinitely many). We write nf (M) for the normal form of each term M withrespect to ⇒βϑ.

◮ The operational semantics →Tϑon terms M is the simultaneous execution of ⇒βϑ for

all subterms of M with the execution number 1, where the execution number of everysubterm of M is decreased by 1 if it is non-zero.

10I.e., the closure with respect to the typing rules.

12

Page 13: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

The theory Eq(Tϑ) is the equational theory consisting of judgements Γ ⊢ M =TϑM′ : B,

where Γ ⊢ M : B and Γ ⊢ M′ : B are programs of System Tϑ such that nf (M) ≡ nf (M′).

System Tϑ is infinitary due to the natural number type; however, this is inevitable if one aimsto compute “genuine values” or completely extensional outputs, e.g., a function as a graph, whichis our perspective on computation.

In this view, e.g., a lazy language that takes any λ-abstraction as a value can be seen as an“intensional compromise” to gain a finitary nature. Similarly, we focus on programs in SystemTϑ, employing the syntactic sugar for atomic terms, →βϑ and nf introduced above, so that weregain the finitary nature of the original System T.

Thus, System Tϑ computes as follows. Given a program Γ ⊢ {M}e : B, it produces a finitechain of finitary rewriting

M →TϑM1 →Tϑ

M2 →Tϑ· · · →Tϑ

Me (1)

where M1,M2, . . . ,Me are configurations, and in particular Me is a value.11 Note that M is afinite application of values (where currying is possibly involved), and the computation (1) isexecuted in the first-applications-first-evaluated (FAFE-) fashion, e.g., if M ≡ (V1V2)((V3V4)(V5V6))and e = 3, where V1,V2, . . . ,V6 are values, then the computation (1) would be of the form

(V1V2)((V3V4)(V5V6)) →TϑV7(V8V9) →Tϑ

V7V10 →TϑV11

where V7 ≡ nf (V1V2), V8 ≡ nf (V3V4), V9 ≡ nf (V5V6), V10 ≡ nf (V8V9) and V11 ≡ nf (V7V10).

◮ Example 2.2.2. Consider a program ⊢ double : N ⇒ N that doubles a given number, where

doubledf.≡ itrNsucc20 and succ2

df.≡ λxN.succ(succx). Then it computes as follows:

double

→2Tϑ

itrN(++)0,where ++df.≡ λxN.case(x)[v 7→ v.2]

→TϑλyNzN.case(z)[w 7→ nf ((f[++/f])wy)]0

→TϑλzN.case(z)[w 7→ nf ((f[++/f])wy[0/y])]

→TϑλzN.case(z)[w 7→ nf ((λxN.case(x)[v 7→ v.2])w0)]

≡ λzN.case(z)[0, 2, 4, . . . ]

where the last equation is easily derived by induction on n ∈ N. Note that here we use the fini-tary syntactic sugar for infinite terms and infinitary rewriting, evaluating to a “genuine value”.Clearly, this finite representability holds for any program.

The rest of the present section is devoted to showing that the computation (1) of System Tϑ

correctly works (Corollary 2.2.12). First, by the following Proposition 2.2.3 and Theorem 2.2.7,it makes sense that →βϑ is defined on terms:

◮ Proposition 2.2.3 (Unique typing). If Γ ⊢ {M}e : B and Γ ⊢ {M}e′ : B′, then e ≡ e′ and B ≡ B′.

Proof. By induction on the construction of Γ ⊢ {M}e : B. �

◮ Lemma 2.2.4 (Free variables). If Γ ⊢ M : B and x ∈ V occurs free in M, then x : A occurs in Γ forsome type A.

11We need the typing rule C2 and the reduction →ϑ3to handle the hidden “intermediate terms” between the config-

urations in (1).

13

Page 14: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

Proof. By induction on the construction of Γ ⊢ M : B. �

◮ Lemma 2.2.5 (Exchange and weakening lemma). If x1 : A1, x2 : A2, . . . , xk : Ak ⊢ {M}e : B, thenxσ(1) : Aσ(1), xσ(2) : Aσ(2), . . . , xσ(k) : Aσ(k) ⊢ {M}e : B for any permutation σ of the set {1, 2, . . . , k},and x1 : A1, x2 : A2, . . . , xk : Ak, xk+1 : Ak+1 ⊢ {M}e : B for any xk+1 ∈ V such that xk+1 6= xi for i =1, 2, . . . , k and type Ak+1.

Proof. By induction on the construction of x1 : A1, x2 : A2, . . . , xk : Ak ⊢ {M}e : B. �

◮ Lemma 2.2.6 (Substitution). If Γ, x : A ⊢ {P}e : B and Γ ⊢ Q : A, then Γ ⊢ {P[Q/x]}e : B.

Proof. By a simple induction on the length of P:

◮ If Γ, x : A ⊢ {n}0 : N and Γ ⊢ Q : A, then the claim holds as Γ ⊢ {n}0 : N by the rule N.

◮ If Γ, x : A ⊢ {λzC.P}d : C ⇒ B and Γ ⊢ Q : A, then Γ, x : A, z : C ⊢ {P}d : B; thus, we haveΓ, z : C, x : A ⊢ {P}d : B by Lemma 2.2.5. By the induction hypothesis, Γ, z : C ⊢ {P[Q/x]}d : B,whence Γ ⊢ {λzC.(P[Q/x])}d : C ⇒ B by the rule L.

◮ If Γ, x : A ⊢ {case(yM1M2 . . .Mk)[M′0|M

′1| . . . ]}0 : N and Γ ⊢ Q : A with y 6= x, then y : A ∈ Γ

by Lemma 2.2.4, A is of the form A1 ⇒ A2 ⇒ · · · ⇒ Ak ⇒ N for some types A1, A2, . . . ,Ak, Γ, x : A ⊢ {M′

n}0 : N for all n ∈ N, and Γ, x : A ⊢ {Mi}0 : Ai for i = 1, 2, . . . , k. By theinduction hypothesis, Γ ⊢ {Mi[Q/x]}0 : Ai for i = 1, 2, . . . , k, and Γ ⊢ {M′

n[Q/x]}0 : N for alln ∈ N. Thus, Γ ⊢ {case(y(M1[Q/x])(M2[Q/x]) . . . (Mk[Q/x]))[M

′0[Q/x]|M

′1[Q/x]| . . . ]}0 : N by

the rule C1, i.e., Γ ⊢ {case(yM1M2 . . .Mk)[M′0|M

′1| . . . ][Q/x]}0 : N.

◮ If Γ, x : A ⊢ {case(xM1M2 . . .Mk)[M′0|M

′1| . . . ]}0 : N and Γ ⊢ Q : A, then it may be handled in

the same way as the above case.

◮ If Γ, x : A ⊢ {MN}Max(d,e)+1 : B and Γ ⊢ Q : A, then Γ, x : A ⊢ {M}d : C ⇒ B and Γ, x : A ⊢ {N}e : C

for some typeC. By the induction hypothesis, Γ ⊢ {M[Q/x]}d : C ⇒ B and Γ ⊢ {N[Q/x]}e : C.Thus, by the rule A, Γ ⊢ {M[Q/x]N[Q/x]}Max(d,e)+1 : B, i.e., Γ ⊢ {MN[Q/x]}Max(d,e)+1 : B.

◮ If Γ, x : A ⊢ {case(M)[M′0|M

′1| . . . ]}0 : N and Γ ⊢ Q : A, then Γ, x : A ⊢ M : N and Γ, x : A ⊢ M′

n : Nfor all n ∈ N. By the induction hypothesis, Γ ⊢ M[Q/x] : N and Γ ⊢ M′

n[Q/x] : N for alln ∈ N. Thus, we have Γ ⊢ {case(M[Q/x])[M′

0[Q/x]|M′1[Q/x]| . . . ]}0 : N by the rule C2, i.e.,

Γ ⊢ {case(M)[M′0|M

′1| . . . ][Q/x]}0 : N.

We have shown the claim for all the cases, which establishes the lemma. �

◮ Theorem 2.2.7 (Subject reduction). If Γ ⊢ M : B and M →βϑ R, then Γ ⊢ R : B.

Proof. By a simple induction on the structure M →βϑ R. In the following, let us write P;Q forx → case(Px)[Q].

◮ IfM ≡ (λxA.P)Q andR ≡ P[Q/x], then Γ ⊢ Q : A and Γ, x : A ⊢ P : B. We have, by Lemma 2.2.6,Γ ⊢ P[Q/x] : B.

◮ If M ≡ case(n)[M′] and R ≡ M′n, then B ≡ N. From Γ ⊢ case(n)[M′] : N, we may conclude

that Γ ⊢ M′n : N.

◮ If M ≡ case(case(P)[P′])[Q′] and R ≡ case(P)[P′;Q′], then B ≡ N. Then we clearly haveΓ ⊢ case(P)[P′] : N, from which we deduce Γ ⊢ P : N and Γ ⊢ P′

n : N for all n ∈ N. Also,Γ ⊢ Q′

n : N for all n ∈ N, whence Γ ⊢ case(P′n)[Q

′] : N for all n ∈ N by the rule C2. Hence,Γ ⊢ case(P)[P′;Q′] : N by the rule C2.

14

Page 15: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ If M ≡ case(case(xV1 . . .Vk)[W])[U] and R ≡ case(xV1 . . .Vk)[W;U], then it is handled in asimilar way to the above case.

◮ If M ≡ λxA.P, B ≡ A ⇒ C, R ≡ λxA.Q and P →βϑ Q, then Γ, x : A ⊢ P : C. By the inductionhypothesis, Γ, x : A ⊢ Q : C. Hence, Γ ⊢ λxA.Q : B by the rule L.

◮ If M ≡ case(P)[P′] and R ≡ case(Q)[Q′] such that just one →βϑ holds in the following infi-nite conjunction (P →βϑ Q ∨ P ≡ Q)∧ (P′

0 →βϑ Q′0 ∨ P′

0 ≡ Q′0)∧ (P′

1 →βϑ Q′1 ∨ P′

1 ≡ Q′1)∧

. . . , then B ≡ N. In either case, it follows from the induction hypothesis and the rule C2that Γ ⊢ case(Q)[Q′] : N.

◮ IfM ≡ case(xV1V2 . . .Vk)[V′] and R ≡ case(xW1W2 . . .Wk)[W

′] such that just one →βϑ holdsin the following infinite conjunction (V1 →βϑ W1 ∨ V1 ≡ W1)∧ (V2 →βϑ W2 ∨ V2 ≡ W2)∧· · · ∧ (Vk →βϑ Wk ∨ Vk ≡ Wk) ∧ (V′

0 →βϑ W′0 ∨ V′

0 ≡ W′0) ∧ (V′

1 →βϑ W′1 ∨ V′

1 ≡ W′1) ∧ . . . ,

then B ≡ N. In either case, it immediately follows from the induction hypothesis and therule C1 that Γ ⊢ case(xW1 . . .Wk)[W

′] : N.

◮ IfM ≡ PQ, R ≡ TS and (P →βϑ T ∧ Q ≡ S) ∨ (Q →βϑ S ∧ P ≡ T), then clearly Γ ⊢ P : A ⇒ B

and Γ ⊢ Q : A for some type A. By the induction hypothesis, if P →βϑ T, then Γ ⊢ T : A ⇒ B

and Γ ⊢ S : A; thus, Γ ⊢ TS : B by the rule L. The other case is similar.

We have considered all the cases for M →βϑ R. �

Next, we show that ⇒βϑ is well-defined (Theorems 2.2.9 and 2.2.10).

◮ Lemma 2.2.8 (Hidley-Rosen [Han94]). Let R1 and R2 be any binary relations on the set T of terms,and let us write →Ri

for the contextual closure of Ri for i = 1, 2. If →R1 and →R2 are both Church-Rosser, and satisfy ∀M,P,Q ∈ T .M →∗

R1P∧M →∗

R2Q ⇒ ∃R ∈ T .P →∗

R2R∧Q →∗

R1R, then →R1∪R2

is Church-Rosser.

Proof. By a simple “diagram chase”; see [Han94] for the details. �

◮ Theorem 2.2.9 (CR). The βϑ-reduction →βϑ is Church-Rosser.

Proof. We follow the outline of the proof of Mitschke’s theorem [Han94] (note that we cannotsimply apply the theorem as the outputs of the rules →ϑi

depend on inputs). First, it is easy to

see that the ϑ-reduction →ϑdf.=

⋃3i=1→ϑi

is Church-Rosser. Also, we may show that:

M →β P ∧M →ϑ Q ⇒ ∃R.P →∗ϑ R ∧ Q →∗

β R (2)

for all terms M, P and Q by the case analysis on the relation between the β- and ϑ-redexes in M:

◮ If the β-redex is inside the ϑ-redex, then it is easy to see that (2) holds;

◮ If the ϑ-redex is inside the body of the function subterm of the β-redex, then it suffices toshow that →ϑ commutes with substitution, but it is straightforward;

◮ If ϑ-redex is inside the argument of the β-redex, then it may be duplicated by a finitenumber n, but whatever the number n is, (2) clearly holds;

◮ If the β- and ϑ-redexes are disjoint, then (2) trivially holds.

15

Page 16: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

It then follows from (2) that:

M →∗β P ∧M →∗

ϑ Q ⇒ ∃R.P →∗ϑ R ∧ Q →∗

β R (3)

for all terms M, P and Q. Applying Lemma 2.2.8 to (3) (or equivalently by the well-known“diagram chase” argument on →∗

β and →∗ϑ), we may conclude that the βϑ-reduction →βϑ=→β

∪ →ϑ is Church-Rosser. �

◮ Theorem 2.2.10 (Normalization). The parallel βϑ-reduction ⇒βϑ is normalizing, i.e., there is noinfinite chain of ⇒βϑ.

Proof. By a slight modification of the proof of strong normalization of the simply-typed λ-calculus in [Han94]. �

Thus, the normal form nf (M) of each term M uniquely exists. Moreover, we have:

◮ Theorem 2.2.11 (Normal forms are values). The normal form nf (M) of every term M is a value.

Proof. It has been shown in [AC98] during the proof to show that PCF Bohm trees are closedunder composition. �

Therefore, we have shown that the operational semantics →Tϑis well-defined:

◮ Corollary 2.2.12 (Correctness). If Γ ⊢ {M}e : B is a configuration and e > 1 (resp. e = 1), thenthere exists a unique configuration (resp. value) Γ ⊢ {M′}e−1 : B that satisfies M →Tϑ

M′.

Proof. Immediate from Theorems 2.2.7, 2.2.9, 2.2.10 and 2.2.11. �

2.3 Dynamic Semantics of System T

Now, we describe a recipe to give a semantics of System Tϑ in a CCBoC that satisfies a DCP:

◮ Definition 2.3.1 (Structures for System Tϑ). A structure for System Tϑ in a CCBoC C = (C, E)with countable products is a triple T = (N, ( ), ϑ), such that:

◮ N ∈ C;

◮ ( ) assigns a value n : 1 → N in C to each n ∈ N, where 1 is a terminal object;

◮ ϑ : N ×Nω → N is a value in C, where Nω is the countable product of N .

An interpretation J KTC of System Tϑ induced by T in C assigns a 0-cell JAKTC ∈ C to each typeA, a 0-cell JΓKTC ∈ C to each context Γ and a 1-cell JMKTC : JΓKTC → JBKTC to each configurationΓ ⊢ M : B as follows:

◮ (TYPES) JNKTCdf.= N and JA ⇒ BKTC

df.= JAKTC ⇒ JBKTC ;

◮ (CONTEXTS) JǫKTCdf.= 1 and JΓ, x : AKTC

df.= JΓKTC × JAKTC ;

◮ (CONFIGURATIONS) Writing Λ and ev for the currying and the evaluation, respectively, andJΓ ⊢ x : AKTC : JΓKTC ⇒ JAKTC for the projection in C12,

JΓ ⊢ n : NKTCdf.= Eω(!JΓKT

C;n);

JΓ ⊢ λx.M : A ⇒ BKTCdf.= ΛJAKT

C(JΓ, x : A ⊢ M : BKTC );

JΓ ⊢ MN : BKTCdf.= 〈JΓ ⊢ M : A ⇒ BKTC , JΓ ⊢ N : AKTC 〉; ev JAKTC ,JBKTC

;

JΓ ⊢ case(xM)[n 7→ M′n] : NKTC

df.= Eω(〈JΓ ⊢ xM : NKTC , 〈JΓ ⊢ M′

0 : NKTC , JΓ ⊢ M′1 : NKTC , . . . 〉〉;ϑ).

12Γ ⊢ x : A is not a configuration, but we need it to interpret the application xM.

16

Page 17: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

Note that the interpretation J KTC followed by Eω , i.e., Eω(J KTC ), coincides with the standardinterpretation of the equational theory Eq(Tϑ) in the CCC V [Pit01, Cro93, Jac99]. In this sense,we have generalized the standard categorical semantics of type theories.

Now, we may reduce the DCP for System Tϑ to the following:

◮ Definition 2.3.2 (PDCP). The interpretation J KTC of System Tϑ induced by a structure Tin a CCBoC C = (C, E) satisfies the pointwise dynamic correspondence property (PDCP) ifE(JΓ ⊢ (λxA.V)W : BKTC ) = JΓ ⊢ U : BKTC for every rewriting (λxA.V)W →Tϑ

U, where V, W and U

are values, and E evaluates configurations in the first-concatenations-first-evaluated (FCFE-) fash-ion, i.e., it evaluates the 1-cells corresponding to subterms with the execution number 1.

For instance, the evaluation (v1; v2); ((v3; v4); (v5; v6))E7→ v7; (v8; v9)

E7→ v7; v10

E7→ v11, where

vi’s are values such that E(v1; v2) = v7, E(v3; v4) = v8, E(v5; v6) = v9, E(v8; v9) = v10 andE(v7; v10) = v11, is FCFE-fashion (which corresponds to the syntactic example given above).

◮ Theorem 2.3.3 (Standard semantics of System Tϑ). The interpretation J KTC of System Tϑ inducedby a structure T in a CCBoC C = (C, E) satisfies the DCP for configurations if it satisfies the PDCP.

Proof. Assume that J KTC satisfies the PDCP. Then, the operational semantics →Tϑand the eval-

uation E compute the corresponding applications and concatenations. Thus, it remains for theDCP to show JΓ ⊢ (λxA.V)W : BKTC 6= JΓ ⊢ U : BKTC for every rewriting (λxA.V)W →Tϑ

U on val-ues. But it clearly holds by the axiom composition on the BoC C. �

To summarize, we have defined bicategorical “universes” of dynamic and intensional com-putations, i.e., CCBoCs, introduced our variant of System T, viz., System Tϑ, and given aninterpretation of the latter in the former as well as a sufficient condition, namely PDCP, for theinterpretation to satisfy the DCP.

Thus, our research problem has been reduced to giving a CCBoC of games and strategiesthat satisfies the PDCP. We develop a new variant of games and strategies, called dynamic gamesand strategies, in Section 3 and show that they form a CCBoC that satisfies PDCP in Section 4.

3 Dynamic Games and Strategies

The main idea of dynamic games and strategies is to introduce a distinction between internaland external moves to games and strategies; internal moves constitute “internal communica-tion” between dynamic strategies, representing intensionality of computation (n.b. they corre-spond to what is called “intermediate moves” before), and they are to be a posteriori hiddenby the hiding operation, capturing dynamics of computation. Internal moves are “invisible” toOpponent for they represent how Player “internally” computes the next external move.

Dynamic games and strategies are based on Guy McCusker’s variant [AM99], which wesimply call games and strategies in this paper. We have chosen this variant for it in some sensecombines good points of the two best-known variants: AJM-games [AJM00] and HO-games[HO00]: It interprets linear decomposition of implication or Girard’s translation [Gir87] (thoughit does not play a major role in this paper), and also it is flexible enough to model a wide rangeof programming languages [AM99] (thus, we hope that our framework is also applicable tovarious logics and programming languages, but it is left as future work).

The present section introduces dynamic games and strategies and studies their algebraicand categorical structures.

17

Page 18: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

3.1 Dynamic Arenas and Legal Positions

Just like games [AM99], dynamic games are based on arenas and legal positions. An arena definesthe basic components of a game, which in turn induces a set of legal positions that specifies thebasic rules of the game. Let us first introduce these two preliminary concepts.

◮ Definition 3.1.1 (Dynamic arenas). A dynamic arena is a triple G = (MG, λG,⊢G) such that:

◮ MG is a set, whose elements are called moves;

◮ λG : MG → {O,P} × {Q,A} × N is a function, called the labeling function, that satisfies

µ(G)df.= Sup({λNG(m)|m ∈MG}) ∈ N;

◮ ⊢G ⊆ ({⋆} ∪MG) ×MG, where ⋆ is an arbitrary element such that ⋆ 6∈ MG, is a relation,called the enabling relation, that satisfies:

⊲ (E1) If ⋆ ⊢G m, then λG(m) = OQ0 and n = ⋆ whenever n ⊢G m;

⊲ (E2) If m ⊢G n and λQAG (n) = A, then λQA

G (m) = Q and λNG(m) = λNG(n);

⊲ (E3) If m ⊢G n and m 6= ⋆, then λOPG (m) 6= λOP

G (n);

⊲ (E4) If m ⊢G n, m 6= ⋆ and λNG(m) 6= λNG(n), then λOPG (m) = O

in which λOPG

df.= π1 ◦ λG : MG → {O,P}, λQA

G

df.= π2 ◦ λG : MG → {Q,A} and λNG

df.= π3 ◦ λG :

MG → N. A move m ∈ MG is initial if ⋆ ⊢G m, an Opponent (O-) move (resp. a Player (P-)

move) if λOPG (m) = O (resp. if λOP

G (m) = P), a question (resp. an answer) if λQAG (m) = Q (resp. if

λQAG (m) = A), and internal (resp. external) if λNG(m) > 0 (resp. if λNG(m) = 0). A finite sequence

s ∈ M∗G of moves is d-complete if it ends with an external or d′-internal move with d′ > d,

where d, d′ ∈ N ∪ {ω}, and ω is the least transfinite ordinal.

◮ Notation. We write M InitG (resp. M Int

G , MExtG ) for the set of all initial (resp. internal, external)

moves of a dynamic arena G.

Recall that an arena [AM99] G determines possible moves of a game, each of which is Oppo-nent’s/Player’s question/answer, and specifies which move n can be performed for each movem by the relation m ⊢G n (and ⋆ ⊢G m means that m can initiate a play). Its axioms are E1, E2and E3 (excluding conditions on degrees of internality):

◮ E1 sets the convention that an initial move must be Opponent’s question, and an initialmove cannot be performed for a previous move;

◮ E2 states that an answer must be performed for a question;

◮ E3 mentions that an O-move must be performed for a P-move, and vice versa.

Then, the additional axioms for dynamic areas are intuitively natural:

◮ We require an upper bound µ(G) of degrees of internality to be finite as it is conceptuallynatural and technically necessary for concatenation ‡ of games (Definition 3.3.11);

◮ E1 adds λNG(m) = 0 for all m ∈M InitG as Opponent cannot “see” internal moves;

◮ E2 additionally requires the degrees of internality between a “QA-pair” to be the same asit is intuitively reasonable;

18

Page 19: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ E4 states that only Player can make a move for a previous move if they have differentdegrees of internality for internal moves are “invisible” to Opponent (as we shall see, ifλNG(m1) = k1 < k2 = λNG(m2), then after the k1-many iteration of the hiding operation, m1

and m2 get external and internal, respectively, i.e., the I/E-parity is relative, which is whyE4 is not only concerned with I/E-parity but more fine-grained degrees of internality).

◮ Example 3.1.2. The simplest dynamic arena is the terminal dynamic arena Tdf.= (∅, ∅, ∅).

◮ Example 3.1.3. We define the flat dynamic arena flat(S) on a given set S byMflat(S)df.= {q}∪S,

where q is any element such that q 6∈ S; λflat(S) : q 7→ OQ0, (m ∈ S) 7→ PA0; ⊢flat(S)df.=

{(⋆, q)} ∪ {(q,m) |m ∈ S }. For instance, Ndf.= flat(N) is the dynamic arena of natural numbers,

and 2df.= flat(B), where B

df.= {tt ,ff }, is the dynamic arena of booleans tt and ff .

As mentioned before, interactions between Opponent and Player in a (dynamic) game arerepresented by certain finite sequences of moves of the underlying (dynamic) arena. However,strictly speaking, we need to equip such sequences with an additional structure, called justifiers,to distinguish similar but different computational processes (see [AM99, Cur06] for this point):

◮ Notation. The ith-occurrence of an element a in a sequence s is temporalily (see the conventionbelow) written a[i].

◮ Definition 3.1.4 (J-sequences [HO00, AM99]). A justified (j-) sequence of a (dynamic) arenaG is a finite sequence s ∈M∗

G in which each occurrence n[i] of a non-initial move n is associatedwith a unique occurrencem[j] of a movem, called the justifier of n[i] in s, that occurs previouslyin s and satisfies m ⊢G n. In this case, we say that n[i] is justified by m[j], or equivalently thereis a pointer from n[i] to m[j].

The idea is that each occurrence of a non-initial move in a j-sequence must be made for aspecific previous occurrence of a move, viz., its justifier, in the j-sequence.

◮ Convention. In the rest of the paper, we simply say “an occurrence m (of a move)” instead of“an occurrence m[i] of a move m”. This abuse of notation does not bring any serious confusionin practice. Moreover, we call an occurrence of an initial (resp. non-initial) move an initialoccurrence (resp. a non-initial occurrence).

◮ Notation. We write Js(n) for the justifier of a non-initial occurrence n in a j-sequence s, whereJs may be thought of as the “function of pointers in s”, and JG for the set of all j-sequences ofa (dynamic) arena G. We write s = t for any s, t ∈ JG if s and t are the same j-sequence of G,i.e., they are the same sequence with the same justifiers.

◮ Definition 3.1.5 (J-subsequences). Given a (dynamic) arena G and a j-sequence s ∈ JG, aj-subsequence of s is a j-sequence t ∈ JG that satisfies:

◮ t is a subsequence of s;

◮ Jt(n) = m iff there exist occurrences m1,m2, . . . ,mk (k ∈ N) in s eliminated in t such thatJs(n) = m1 ∧ Js(m1) = m2 ∧ · · · ∧ Js(mk−1) = mk ∧ Js(mk) = m.

We now consider justifiers, j-sequences and dynamic arenas from the “external viewpoint”:

◮ Definition 3.1.6 (External justifiers). Let G be a dynamic arena, and assume that s ∈ JG andd ∈ N∪{ω}. Each non-initial occurrencen in s has a unique sequence of justifiersmm1m2 . . .mkn(k > 0), i.e., Js(n) = mk, Js(mk) = mk−1, . . . , Js(m2) = m1 and Js(m1) = m, such that mi isdi-internal with 0 < di 6 d for i = 1, 2, . . . , k but m is not (i.e., λNG(m) = 0∨ λNG(m) > d). We callm the d-external justifier of n in s.

19

Page 20: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ Notation. We write J ⊖ds (n) for the d-external justifier of n in a j-sequence s.

Note that d-external justifiers are a simple generalization of justifiers: 0-external justifierscoincide with justifiers. More generally, d-external justifiers are intended to be justifiers afterthe d-times iteration of the hiding operation, as we shall see shortly.

◮ Definition 3.1.7 (External j-subsequences). Let G be a dynamic arena, s ∈ JG and d ∈N∪ {ω}. The d-external j-subsequence Hd

G(s) of s is obtained from s by deleting occurrences ofd′-internal moves such that 0 < d′ 6 d and equipping it with the pointers J⊖d

s (more precisely,JHd

G(s) is a restriction of J⊖d

s ).

◮ Definition 3.1.8 (External dynamic arenas). Given a dynamic arena G and d ∈ N ∪ {ω}, thed-external dynamic arena Hd(G) of G is given by:

◮ MHd(G)df.= {m ∈MG |λNG(m) = 0 ∨ λNG(m) > d}

◮ λHd(G)df.= λ⊖d

G ↾MHd(G), where λ⊖dG

df.= 〈λOP

G , λQAG , n 7→ λNG(n)⊖d〉 and n⊖d

df.=

{n− d if n > d;

0 otherwise

for all n ∈ N;

◮ m ⊢Hd(G) ndf.⇔ ∃k ∈ N,m1,m2, . . . ,m2k−1,m2k ∈MG \MHd(G).m ⊢G m1 ∧

m1 ⊢G m2 ∧ · · · ∧m2k−1 ⊢G m2k ∧m2k ⊢G n (⇔ m ⊢G n if k = 0).

That is, Hd(G) is obtained from G simply by deleting d′-internal moves such that 0 < d′ 6d, decreasing by d the degree of internality of the remaining moves and “concatenating” theenabling relation to form the d-external one. We regard Hd as an operation on dynamic arenasG and Hd

G as an operation on j-sequences s ∈ JG.Now, let us establish:

◮ Lemma 3.1.9 (External closure lemma). If G is a dynamic arena, then, for all d ∈ N ∪ {ω}, so isHd(G), and Hd

G(s) ∈ JHd(G) for all s ∈ JG.

Proof. The case d = 0 is trivial; thus, assume d > 0. Clearly, the set MHd(G) of moves andthe labeling function λHd(G) are well-defined. Now, let us verify the axioms for the enablingrelation ⊢Hd(G):

◮ (E1) Note that ⋆ ⊢Hd(G) m ⇔ ⋆ ⊢G m (⇐ is immediate, and ⇒ holds by E4 on G asinitial moves are all external). Thus, if ⋆ ⊢Hd(G) m, then λHd(G)(m) = λG(m) = OQ0, andn ⊢Hd(G) m⇔ n = ⋆.

◮ (E2) Assume m ⊢Hd(G) n and λQA

Hd(G)(n) = A. If m ⊢G n, then λQA

Hd(G)(m) = λQA

G (m) = Q

and λNHd(G)(m) = λNG(m)⊖ d = λNG(n)⊖ d = λNHd(G)(n). Otherwise, i.e., there are some k ∈

N+ and m1,m2, . . . ,m2k ∈MG \MHd(G) such that m ⊢G m1 ∧m1 ⊢G m2 ∧ · · · ∧m2k−1 ⊢G

m2k ∧m2k ⊢G n, then in particular m2k ⊢G n with λQAG (n) = A but λNG(m2k) 6= λNG(n), a

contradiction.

◮ (E3) Assume m ⊢Hd(G) n and m 6= ⋆. If m ⊢G n, then λOPHd(G)(m) = λOP

G (m) 6= λOPG (n) =

λOPHd(G)(n). If m ⊢G m1,m1 ⊢G m2, . . . ,m2k−1 ⊢G m2k,m2k ⊢G n for some k ∈ N

+,

m1,m2, . . . ,m2k ∈ MG \MHd(G), then λOPHd(G)(m) = λOP

G (m) = λOPG (m2) = λOP

G (m4) =

· · · = λOPG (m2k) 6= λOP

G (n) = λOPHd(G)(n).

20

Page 21: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ (E4) Assume m ⊢Hd(G) n, m 6= ⋆ and λNHd(G)(m) 6= λNHd(G)(n). Then, we have λNG(m) 6=

λNG(n). Ifm ⊢G n, then it is trivial; otherwise, i.e., there are some k ∈ N+,m1,m2, . . . ,m2k ∈

MG \MHd(G) with the same property as in E3 above, λOPHd(G)(m) = λOP

G (m) = O by E3 on

G since λNG(m) 6= λNG(m1).

Hence, we have shown that the structure Hd(G) forms a well-defined dynamic arena.Next, let s ∈ JG; we have to show Hd

G(s) ∈ JHd(G). Assume that m is a non-initial

occurrence in HdG(s). By the definition, the justifier JHd

G(s)(m) = m0 occurs in Hd

G(s). If m is

a P-move, then the sequence of justifiers m0 ⊢G m1 ⊢G · · · ⊢G mk ⊢ m satisfies Even(k) byE3 and E4 on G, so that m0 ⊢Hd(G) m by the definition. If m is an O-move, then its justifier

Js(m) = m′0 satisfies λNG(m

′0) = λNG(m) by E4 onG, and so m′

0 ⊢Hd(G) m by the definition. Since

m is arbitrary, we have shown that HdG(s) ∈ JHd(G), completing the proof. �

Next, let us introduce a useful lemma:

◮ Lemma 3.1.10 (Stepwise hiding on dynamic arenas). Given a dynamic arena G, Hi(G) = Hi(G)

for all i ∈ N, where Hi denotes the i-times iteration of H1.

Proof. Let G be a dynamic arena. We establish Hi(G) = Hi(G) for all i ∈ N by induction on i.

The base case i = 0 is trivial. For the inductive step i + 1, note that Hi+1(G) = H1(Hi(G)) =H1(Hi(G)) by the induction hypothesis; thus, it suffices to show Hi+1(G) = H1(Hi(G)). For thesets of moves, we clearly have:

MHi+1(G) = {m ∈MG |λNG(m) = 0 ∨ λNG(m) > i+ 1}

= {m ∈MHi(G) |λN

G(m) = 0 ∨ λNG(m) > i+ 1}

= {m ∈MHi(G) |λN

Hi(G)(m) = 0 ∨ λNHi(G)(m) > 1}

=MH1(Hi(G)).

Next, the labeling functions clearly coincide:

λHi+1(G) = λ⊖(i+1)G ↾MHi+1(G)

= (λ⊖iG ↾MHi(G))

⊖1 ↾MH1(Hi(G))

= λ⊖1Hi(G) ↾MH1(Hi(G))

= λH1(Hi(G)).

Finally, for the enabling relations between m and n, if m = ⋆, then it is trivial: ⋆ ⊢Hi+1(G)

n⇔ ⋆ ⊢G n⇔ ⋆ ⊢Hi(G) n⇔ ⋆ ⊢H1(Hi(G)) n; thus, assume m 6= ⋆. Then,

m ⊢Hi+1(G) n

⇔ ∃k ∈ N,m1,m2, . . . ,m2k ∈MG \MHi+1(G).m ⊢G m1 ∧m1 ⊢G m2 ∧ . . .

∧m2k−1 ⊢G m2k ∧m2k ⊢G n

⇔ (m ⊢Hi(G) n) ∨ ∃k, l ∈ N+.l 6 k ∧ ∃m1,m2, . . . ,m2k ∈MG \MHi+1(G),

m2j1−1,m2j1 ,m2j2−1,m2j2 , . . . ,m2jl−1,m2jl ∈MHi(G) \MHi+1(G).m ⊢G m1

∧m1 ⊢G m2 ∧ · · · ∧m2k−1 ⊢G m2k ∧m2k ⊢G n

⇔ (m ⊢Hi(G) n) ∨ ∃l ∈ N+,m′

1,m′2, . . . ,m

′2l ∈MHi(G) \MH1(Hi(G)).m ⊢Hi(G) m

′1

∧m′1 ⊢Hi(G) m

′2 ∧ · · · ∧m′

2l−1 ⊢Hi(G) m′2l ∧m

′2l ⊢Hi(G) n

⇔m ⊢H1(Hi(G)) n

21

Page 22: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

where N+ df.

= {n ∈ N |n > 0}, which completes the proof. �

Thus, we may just focus on H1:

◮ Convention. Henceforth, we write H for H1 and call it the hiding operation on arenas; Hi foreach i ∈ N denotes the i-times iteration of H (n.b. strictly speaking, we do not need Hω as thereis a finite upper bound of degrees of internality for each dynamic arena).

We may establish a similar inductive property for j-sequences:

◮ Lemma 3.1.11 (Stepwise hiding on j-sequences). Given a j-sequence s ∈ JG of a dynamic arenaG, Hi+1

G (s) = H1Hi(G)(H

iG(s)) for all i ∈ N.

Proof. Note that Hi+1G (s),H1

Hi(G)(HiG(s)) ∈ JHi+1(G) by Lemmata 3.1.9 and 3.1.10. We show

the equation by induction on i ∈ N. The base case i = 0 is trivial.Consider the inductive step i + 1. Recall that Hi+1

G (s) is obtained from s by deleting oc-

currences m with 1 6 λNG(m) 6 i + 1, equipped with the pointers J⊖(i+1)s . On the other

hand, H1Hi(G)(H

iG(s)) is obtained from Hi

G(s) by deleting occurrences m with λNHi(G)(m) = 1,

equipped with the pointers J ⊖1Hi

G(s)

= (J ⊖is )⊖1 = J

⊖(i+1)s . Since λNHi(G)(m) = 1 ⇔ λNG(m) = i+1

and HiG(s) is obtained from s by deleting occurrences m with 1 6 λNG(m) 6 i, they are in fact

the same j-sequence of Hi+1(G). �

Lemma 3.1.11 implies that the equation

HiG(s) = H1

Hi−1(G) ◦ H1Hi−2(G) ◦ · · · ◦ H

1H1(G) ◦ H

1G(s) (4)

holds for any given dynamic arena G, s ∈ JG and i ∈ N. Thus, we may focus on the operationH1

G on j-sequences of G (n.b. strictly, we do not need HωG as j-sequences are finite).

◮ Convention. Henceforth, we write HG for H1G and call it the hiding operation on j-sequences

of a dynamic arena G; HiG for each i ∈ N denotes the operation on the right-hand side of (4).

Next, to deal with external j-subsequences in a rigorous manner, we need to extend thehiding operation on j-sequences to j-subsequences:

◮ Definition 3.1.12 (Point-wise hiding on j-sequences). Let s ∈ JG be a j-sequence of a dynamic

arena G. The point-wise hiding operation HsG on each occurrence m and pointers to m in s is

defined by:

HsG(m)

df.=

{ǫ with pointers to m changed to pointing Js(m) if m is 1-internal;

m with pointers to m unchanged otherwise.

Given a j-subsequence t = m1m2 . . .mk of s, HsG(t) is defined to be the result of applying Hs

G

to mi for i = 1, 2, . . . , k.

Note that the point-wise hiding operation HsG makes sense only in the context of s; it affects

some part of s. The point here is that the hiding operation on j-sequences can be executed in the“point-wise” fashion (in any order):

◮ Lemma 3.1.13 (Point-wise lemma for hiding on j-sequences). Given a j-sequence s ∈ JG of a

dynamic arena G, HG(s) = HsG(s).

22

Page 23: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

Proof. It suffices to establish, for each s = m1m2 . . .mk ∈ JG, the equation

HG(s) = HsG(m1)H

sG(m2) . . . H

sG(mk).

First, it is clear by the definition that HG(s) and HsG(m1)H

sG(m2) . . . H

sG(mk) are both the sub-

sequence of s obtained from s by deleting 1-internal moves. Thus, it suffices to show that

each move m in HsG(m1)Hs

G(m2) . . . HsG(mk) points to J⊖1

s (m). Now, let m be any non-1-

internal move in s. For the pointer fromm in HsG(m1)H

sG(m2) . . . H

sG(mk), it suffices to consider

the subsequence nn1n2 . . . nlm of s, where n1, n2, . . . , nl are 1-internal but n is not, satisfyingJs(m) = nl,Js(nl) = nl−1, . . . ,Js(n2) = n1,Js(n1) = n since the operation on the other moves

will not affect the pointer from m. Applying HsG to n1, n2, . . . , nl in any order, the resulting

pointer from m clearly points to n, which is J ⊖1s (m). �

By virtue of Lemma 3.1.13, we may identify the operations HG and HsG; thus, from now

on, we shall not notationally distinguish them, and use only the former. As a result, what wehave established is the “point-wise” procedure to execute the hiding operation on j-sequences,in which the order of moves to apply the “point-wise” operation is irrelevant. In particular,Hd

G(st) = HdG(s)H

dG(t) for any dynamic arena G, d ∈ N ∪ {ω} and st ∈ JG.

Next, let us recall the notion of “relevant part” of previous occurrences:

◮ Definition 3.1.14 (Views [HO00, AM99]). The Player (P-) view ⌈s⌉G and the Opponent (O-)view ⌊s⌋G of a j-sequence s ∈ JG of a (dynamic) arena G are given by induction on |s|:

◮ ⌈ǫ⌉Gdf.= ǫ;

◮ ⌈sm⌉Gdf.= ⌈s⌉G.m if m is a P-move;

◮ ⌈sm⌉Gdf.= m if m is initial;

◮ ⌈smtn⌉Gdf.= ⌈s⌉G.mn if n is an O-move such that Jsmtn(n) = m;

◮ ⌊ǫ⌋Gdf.= ǫ;

◮ ⌊sm⌋Gdf.= ⌊s⌋G.m if m is an O-move;

◮ ⌊smtn⌋Gdf.= ⌊s⌋G.mn if n is a P-move such that Jsmtn(n) = m

where the justifiers of occurrences in ⌈s⌉G (resp. ⌊s⌋G) are unchanged if they occur in ⌈s⌉G(resp. ⌊s⌋G), and undefined otherwise. A view is a P- or O-view.

◮ Notation. We often omit the subscripts G in ⌈ ⌉G and ⌊ ⌋G when they are obvious.

The idea is as follows. Given a j-sequence sm of a (dynamic) arena G such that m is a P-move (resp. an O-move), the P-view ⌈s⌉ (resp. the O-view ⌊s⌋) is the currently “relevant part”of previous occurrences of moves for Player (resp. Opponent). That is, Player (resp. Opponent)is concerned only with the last occurrence of an O-move (resp. a P-move), its justifier and thatjustifier’s “concern”, i.e., P-view (resp. O-view), which then recursively proceeds.

We are now ready to introduce a “dynamic generalization” of legal positions:

◮ Definition 3.1.15 (Dynamic legal positions). Given a dynamic arena G, a dynamic legal posi-tion of G is a j-sequence s ∈ JG that satisfies:

◮ (ALTERNATION) If s = s1mns2, then λOPG (m) 6= λOP

G (n);

23

Page 24: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ (GENERALIZED VISIBILITY) If s = tmu withm non-initial and d ∈ N∪{ω} satisfy λNG(m) =0 ∨ λNG(m) > d, then J ⊖d

s (m) occurs in ⌈HdG(t)⌉Hd(G) if m is a P-move, and it occurs in

⌊HdG(t)⌋Hd(G) if m is an O-move;

◮ (IE-SWITCH) If s = s1mns2 with λNG(m) 6= λNG(n), then m is an O-move.

◮ Notation. LG denotes the set of all dynamic legal positions of a dynamic arena G.

Recall that a legal position [AM99] is a j-sequence that satisfies alternation and visibility, i.e.,generalized visibility only for d = 0 [HO00, AM99, McC98], which is technically to guaranteethat the P-view and the O-view of a j-sequence are again j-sequences and conceptually to ensurethat the justifier of each non-initial occurrence belongs to the “relevant part” of the history ofprevious moves. Legal positions are to specify the basic rules of a game in the sense that every(valid) position of the game must be a legal position of the underlying arena [AM99]:

◮ In a position of the game, Opponent always makes the first move by a question, and thenPlayer and Opponent alternately play (by alternation), in which every non-initial move isperformed for a specific previous move (by justification);

◮ The justifier of each non-initial occurrence belongs to the “relevant part”, i.e., the P-view,of the previous moves (by visibility) in a position.

The additional axioms for dynamic legal positions are conceptually natural ones:

◮ Generalized visibility is a natural generalization of visibility, which requires that visibilityholds after any iteration of the hiding operation;

◮ IE-switch states that only Player can change a degree of internality during a play as inter-nal moves are “invisible” to Opponent, to which the same remark as the one for the axiomE4 (Definition 3.1.1) is applied.

3.2 Dynamic Games

We are now ready to define the notion of dynamic games:

◮ Definition 3.2.1 (Dynamic games). A dynamic game is a quintuple G = (MG, λG,⊢G, PG,≃G)such that:

◮ The triple (MG, λG,⊢G) forms a dynamic arena;

◮ PG is a subset of LG whose elements are called (valid) positions of G that satisfies:

⊲ (P1) PG is non-empty and prefix-closed;

⊲ (DP2) Given sm, s′m′ ∈ POddG and i ∈ N such that i < λNG(m) = λNG(m

′), if HiG(s) =

HiG(s

′), then HiG(sm) = Hi

G(s′m′);

◮ ≃G is an equivalence relation on PG, called the identification of positions, that satisfies:

⊲ (I1) s ≃G t ⇒ |s| = |t|;

⊲ (I2) sm ≃G tn⇒ s ≃G t∧λG(m) = λG(n)∧(m,n ∈M InitG ∨(∃i ∈ {1, 2, . . . , |s|}.Jsm(m) =

si ∧ Jtn(n) = ti));

⊲ (DI3) ∀d ∈ N ∪ {ω}.s ≃dG t ∧ sm ∈ PG ⇒ ∃tn ∈ PG.sm ≃d

G tn, where u ≃dG v

df.⇔

∃u′,v′ ∈ PG.u′ ≃G v′ ∧Hd

G(u′) = Hd

G(u) ∧HdG(v

′) = HdG(v) for all u,v ∈ PG.

24

Page 25: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

A play of G is an (finitely or infinitely) increasing sequence ǫ,m1,m1m2, . . . of positionsof G.

A dynamic game whose moves are all external is particularly said to be normalized.

Thus, a dynamic game is a game [AM99] that satisfies the axioms DP2 and DI3. Recall thata game is a quintuple G = (MG, λG,⊢G, PG,≃G) such that the triple (MG, λG,⊢G) forms anarena, PG is a set of (selected) legal positions of the arena that satisfies the axiom P1, and ≃G isan equivalence relation on PG that satisfies the axioms I1, I2 and I3, where DI3 may be seen asa “dynamic generalization” of I3 (see [AJM00] and Section 3.6 of [McC98] for the axiom I3).

Conversely, a game is equivalent to a normalized dynamic game; in this sense, dynamicgames are a generalization of games.

The axiom DP2 is to enable Player to “play alone”, i.e., Opponent does not have to chooseodd-length positions, for the internal part of a position since conceptually Opponent cannot“see” moves there; technically, it is to ensure external consistency of dynamic strategies: A dy-namic strategy behaves always in the same manner from Opponent’s view, i.e., the external partof each position by a dynamic strategy does not depend on the internal part (Theorem 3.4.3).

◮ Example 3.2.2. There is the terminal dynamic game Tdf.= (∅, ∅, ∅, {ǫ}, {(ǫ, ǫ)}).

◮ Example 3.2.3. We define the flat dynamic game flat(S) on a given set S as follows. Thetriple flat(S) = (Mflat(S), λflat(S),⊢flat(S)) is the flat dynamic arena flat(S) in Example 3.1.3,

Pflat(S)df.= {ǫ, q} ∪ {qm |m ∈ S } and ≃flat(S)

df.= {(s, s) |s ∈ Pflat(S)}. For instance, N

df.= flat(N)

is the dynamic game of natural numbers sketched in the introduction, and 2df.= flat(B) is the

dynamic game of booleans. Moreover, 0df.= flat(∅) is the empty dynamic game.

Let us define a “substructure relation” between dynamic games:

◮ Definition 3.2.4 (Dynamic subgames). A dynamic gameH is a dynamic subgame of a dynamicgameG, writtenH P G, ifMH ⊆MG, λH = λG ↾MH , ⊢H ⊆ ⊢G ∩(({⋆}∪MH)×MH), PH ⊆ PG,∀d ∈ N ∪ {ω}. ≃d

H = ≃dG ∩ (PH × PH) and µ(H) = µ(G).

For H P G, the condition on the identifications of positions is for all d ∈ N ∪ {ω} so that thedynamic subgame relation P is preserved under the hiding operation (Theorem 3.2.6); the lastcondition µ(H) = µ(G) is to preserve P under concatenation (Definition 3.3.11).

Now, let us define the hiding operation on dynamic games:

◮ Definition 3.2.5 (External dynamic games). For each d ∈ N ∪ {ω}, the d-external dynamicgame Hd(G) of a dynamic game G is defined by:

◮ (MHd(G), λHd(G),⊢Hd(G)) is the d-external dynamic arena Hd(G) of G;

◮ PHd(G)df.= {Hd

G(s)|s ∈ PG};

◮ HdG(s) ≃Hd(G) H

dG(t)

df.⇔ s ≃d

G t.

We regard Hd as an operation on dynamic games for each d ∈ N ∪ {ω}. We now give thefirst main theorem of the paper:

◮ Theorem 3.2.6 (External closure of dynamic games). Given d ∈ N ∪ {ω}, dynamic games areclosed under the operation Hd, and H P G implies Hd(H) P Hd(G).

25

Page 26: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

Proof. Let G be a dynamic game, and assume d ∈ N ∪ {ω}; we have to show that Hd(G) isa dynamic game. By Lemma 3.1.9, it suffices to show that j-sequences in PHd(G) are dynamic

legal positions of the arena Hd(G), the set PHd(G) satisfies the axioms P1 and DP2, and therelation ≃Hd(G) is an equivalence relation on PHd(G) that satisfies the axioms I1, I2 and DI3.Since µ(G) ∈ N, we may assume d ∈ N.

For alternation, assume s1mns2 ∈ PHd(G); we have to show λOPHd(G)(m) 6= λOP

Hd(G)(n). We

have HdG(t1mm1m2 . . .mknt2) = s1mns2 for some t1mm1m2 . . .mknt2 ∈ PG, where Hd

G(t1) =s1, Hd

G(t2) = s2 and HdG(m1m2 . . .mk) = ǫ. Note that (λNG(m) = 0 ∨ λNG(m) > d) ∧ (λNG(n) =

0 ∨ λNG(n) > d) and 0 < λNG(mi) 6 d for i = 1, 2, . . . , k. By E3 and E4 on G, k must be even, andthus λOP

Hd(G)(m) = λOPG (m) = λOP

G (m2) = λOPG (m4) = · · · = λOP

G (mk) 6= λOPG (n) = λOP

Hd(G)(n).

For generalized visibility, let tmu ∈ PHd(G) with m non-initial. We have to show, for eache ∈ N ∪ {ω}, that if tm is e-complete, then:

◮ if m is a P-move, then the justifier (J ⊖ds )⊖e(m) occurs in ⌈He

Hd(G)(t)⌉He(Hd(G));

◮ if m is an O-move, then the justifier (J ⊖ds )⊖e(m) occurs in ⌊He

Hd(G)(t)⌋He(Hd(G)).

Again, for µ(G) ∈ N, we may assume without loss of generality that e ∈ N. Note that thecondition is then equivalent to:

◮ if m is a P-move, then the justifier J⊖(d+e)s (m) occurs in ⌈Hd+e

G (t′)⌉Hd+e(G);

◮ if m is an O-move, then the justifier J⊖(d+e)s (m) occurs in ⌊Hd+e

G (t′)⌋Hd+e(G)

where t′m ∈ PG such that HdG(t

′m) = tm. It holds by generalized visibility on G.For IE-switch, let s1mns2 ∈ PHd(G) such that λNHd(G)(m) 6= λNHd(G)(n). Then, there is some

t1munt2 ∈ PG such that HdG(t1munt2) = s1mns2, where note that λNG(m) 6= λNG(n). Therefore,

if u = ǫ, then we clearly have λOPHd(G)(m) = O by IE-switch on G; otherwise, i.e., u = lu′, then

we have the same conclusion as λNG(m) 6= λNG(l).We have established PHd(G) ⊆ LHd(G). Next, we verify the axioms P1 and DP2:

◮ (P1) Because ǫ ∈ PG, we have ǫ = HdG(ǫ) ∈ PHd(G); thus, PHd(G) is non-empty. For prefix-

closure, let sm ∈ PHd(G); we have to show s ∈ PHd(G). There must be some tm ∈ PG such

that sm = HdG(tm) = Hd

G(t)m. Thus, s = HdG(t) ∈ PHd(G).

◮ (DP2) Assume sm, s′m′ ∈ POddHd(G) and i ∈ N such that i < λNHd(G)(m) = λNHd(G)(m

′) and

HiHd(G)(s) = Hi

Hd(G)(s′). We have some tm, t′m′ ∈ PG with Hd

G(t) = s and HdG(t

′) =

s′. Then, Hd+iG (t) = Hi

Hd(G)(HdG(t)) = Hi

Hd(G)(s) = HiHd(G)(s

′) = HiHd(G)(H

dG(t

′)) =

Hd+iG (t′). Hence, by DP2 on G, m = m′ and J⊖i

sm(m) = J⊖(d+i)tm (m) = J

⊖(d+i)t′m′ (m′) =

J⊖is′m′(m′), establishing DP2 on Hd(G).

Next, ≃Hd(G) is well-defined for HdG(s) ≃Hd(G) H

dG(t) does not depend on the choice of rep-

resentatives s, t ∈ PG. Also, it is straightforward to see that ≃Hd(G) is an equivalence relation.Now, we show that ≃Hd(G) satisfies I1, I2 and DI3. Note that I1 and I2 on ≃Hd(G) follow from

those on ≃G. For DI3 on ≃Hd(G), if HdG(s) ≃

eHd(G) H

dG(t), and Hd

G(s).m ∈ PHd(G), where we may

assume e 6= ω, then ∃s′m ∈ PG.HdG(s

′m) = HdG(s).m, and so Hd+e

G (s′) = Hd+eG (s) ≃Hd+e(G)

Hd+eG (t). By DI3 on ≃G, we may conclude that ∃tn ∈ PG. s

′m ≃d+eG tn, whence we obtain

HdG(t).n ∈ PHd(G) such that Hd

G(s).m = HdG(s

′m) ≃eHd(G) H

dG(tn) = Hd

G(t).n.

Finally, the preservation of the dynamic subgame relation P under the operation Hd is clearfrom the definition, completing the proof. �

26

Page 27: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ Corollary 3.2.7 (Stepwise hiding on dynamic games). For any dynamic game G and i ∈ N,H1(Hi(G)) = Hi+1(G).

Proof. By Lemmata 3.1.10 and 3.1.11, it suffices to show ≃H1(Hi(G)) = ≃Hi+1(G). Then, givens, t ∈ PG, we have:

⇔ H1Hi(G)(H

iG(s)) ≃H1(Hi(G)) H

1Hi(G)(H

iG(t))

⇔ ∃Hi(s′),Hi(t′) ∈ PHi(G).Hi(s′) ≃Hi(G) H

i(t′) ∧H1Hi(G)(H

i(s′)) = H1Hi(G)(H

i(s))

∧H1Hi(G)(H

i(t′)) = H1Hi(G)(H

i(t))

⇔ ∃s′′, t′′ ∈ PG.s′′ ≃G t′′ ∧Hi+1

G (s′′) = Hi+1G (s) ∧Hi+1

G (t′′) = Hi+1G (t)

⇔ Hi+1G (s) ≃Hi+1(G) H

i+1G (t)

completing the proof. �

Hence, we may just focus on H1:

◮ Convention. We write H for H1 and call it the hiding operation on dynamic games; Hi denotesthe i-times iteration of H for all i ∈ N.

◮ Corollary 3.2.8 (Hiding on dynamic legal positions). Given a dynamic arena G and a numberd ∈ N ∪ {ω}, {Hd

G(s)|s ∈ LG} = LHd(G).

Proof. Since there is an upper bound µ(G) ∈ N, it suffices to consider the case d ∈ N. Then, byLemmata 3.1.10 and 3.1.11, we may just focus on the case d = 1.

The inclusion {HG(s) | s ∈ LG } ⊆ LH(G) is immediate by Theorem 3.2.6. For the otherinclusion, let t ∈ LH(G); we shall find some s ∈ LG such that

1. HG(s) = t;

2. 1-internal moves in s occur as even-length consecutive segments m1m2 . . .m2k, where mi

justifies mi+1 for i = 1, 2, . . . , 2k − 1;

3. s is 1-complete.

We proceed by induction on |t|. The base case t = ǫ is trivial. For the inductive step, lettm ∈ LH(G). Then, t ∈ LH(G), and by the induction hypothesis there is some s ∈ LG thatsatisfies the three conditions (where the condition 1 is for t).

If m is initial, then sm ∈ LG, and sm satisfies the three conditions. Thus, assume that m isnon-initial; we may write tm = t1nt2m, wherem is justified by n. We then need a case analysis:

◮ Assume n ⊢G m. We take sm, where m points to n. Then, sm ∈ LG since:

⊲ (JUSTIFICATION) It is immediate because n ⊢G m.

⊲ (ALTERNATION) By the condition 3 on s, the last moves of s and t just coincide. Thus,the alternation condition holds for sm.

⊲ (GENERALIZED VISIBILITY) It suffices to establish the visibility on sm, as the othercases are included as the generalized visibility on tm. It is straightforward to seethat, by the condition 2 on s, if the view of t contains n, then so does the view of s.And since tm ∈ LH(G), the view of t contains n. Hence, the view of s contains n.

⊲ (IE-SWITCH) Again, the last moves of s and t coincide by the condition 3 on s; thus,IE-switch on tm can be directly applied.

27

Page 28: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

Also, it is easy to see that sm satisfies the three conditions.

◮ Assume n 6= ⋆ and ∃k ∈ N+,m1,m2, . . . ,m2k ∈MG \MH(G) such that

n ⊢G m1 ∧m1 ⊢G m2 ∧ · · · ∧m2k−1 ⊢G m2k ∧m2k ⊢G m.

We then take sm1m2 . . .m2km, in whichm1 points to n,mi points tomi−1 for i = 2, 3, . . . , 2k,and m points to m2k. Then sm1m2 . . .m2km ∈ LG because:

⊲ (JUSTIFICATION) Obvious.

⊲ (ALTERNATION) By the condition 3 on s, the last moves of s and t just coincide. Thus,the alternation condition holds for sm1m2 . . .m2km.

⊲ (GENERALIZED VISIBILITY) By the same argument as the above case.

⊲ (IE-SWITCH) It clearly holds by the axiom E4.

Finally, it is easy to see that sm1m2 . . .m2km satisfies the three conditions.

3.3 Constructions on Dynamic Games

Next, we show that dynamic games accommodate all the standard constructions on games[AM99], i.e., they preserve the additional axioms for dynamic games. This result implies thatour definition of dynamic games is in some sense “correct”.

Let us begin with tensor (product) ⊗. Conceptually, a play of the tensor A ⊗ B consists of aplay of A and a play of B developed “in parallel without communication”:

◮ Definition 3.3.1 (Tensor of games [AJ94, AM99]). Given (dynamic) games A and B, theirtensor (product) A⊗B is defined by:

◮ MA⊗Bdf.= MA +MB ;

◮ λA⊗Bdf.= [λA, λB ];

◮ ⊢A⊗Bdf.= ⊢A + ⊢B ;

◮ PA⊗Bdf.= {s ∈ LA⊗B |s ↾ A ∈ PA, s ↾ B ∈ PB };

◮ s ≃A⊗B tdf.⇔ s ↾ A ≃A t ↾ A ∧ s ↾ B ≃B t ↾ B ∧ ∀i ∈ N.si ∈MA ⇔ ti ∈MA

where s ↾ A (resp. s ↾ B) denotes the j-subsequence of s that consists of occurrences of movesof A (resp. B).

◮ Theorem 3.3.2 (Well-defined tensor on dynamic games). Dynamic games are closed under ⊗.

Proof. It suffices to show that tensor ⊗ preserves the condition on labeling functions and theaxioms E1, E2, E4, DP2 and DI3. However, the non-trivial ones are just DP2 and DI3; thus, wejust focus on these two. Let A and B be any dynamic games.

To verify DP2 on A ⊗ B, let slmn, s′l′m′n′ ∈ POddA⊗B and i ∈ N such that Hi

A⊗B(slm) =

HiA⊗B(s

′l′m′) and i < λNA⊗B(n) = λNA⊗B(n′). Note that λNA⊗B(m) = λNA⊗B(n) = λNA⊗B(n

′) =

λNA⊗B(m′) by IE-switch. At a first glance, it seems that A ⊗ B does not satisfy DP2 as Oppo-

nent may choose to play in A or B at will. It is, however, not the case for internal moves for

28

Page 29: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

(PI,OE) ✛A

(OE,OE)B ✲ (OE,PI)

(OI,OE)

A❄✻

A✲ (PE,OE)✛A ✲

(OE,PE) ✛B

✛B✲

(OE,OI)

B❄✻

Table 1: The double parity diagram

slmn ∈ POddA⊗B with m internal implies m,n ∈ MA or m,n ∈ MB . This property immediately

follows from Table 1 which shows the possible transitions of OP- and IE-parities for a positionof A⊗B, where a state (XY , ZW ) indicates that the next move of A (resp. B) has the OP-parityX (resp. Z) and the IE-parity Y (resp. W ). Note that m = m′ and J ⊖i

slm(m) = J ⊖is′l′m′(m′) as

HiA⊗B(sl)m = Hi

A⊗B(slm) = HiA⊗B(s

′l′m′) = HiA⊗B(s

′l′)m′. Thus, m, n, m′ and n′ belong

to the same component game. If m,n,m′, n′ ∈ MA, then (sl ↾ A)mn, (s′l′ ↾ A)m′n′ ∈ POddA ,

HiA((sl ↾ A)m) = Hi

A⊗B(slm) ↾ A = HiA⊗B(s

′l′m′) ↾ A = HiA((s

′l′ ↾ A)m′) and i <

λNA(n) = λNA(n′); thus by DP2 on A, n = n′ and J⊖i

slmn(n) = J ⊖i(sl↾A)mn

(n) = J⊖i(s′l′↾A)m′n′(n

′) =

J ⊖is′l′m′n′(n′). The other case is completely similar, showing that A⊗B satisfies DP2.

Finally, to show that A ⊗ B satisfies DI3, assume that s ≃dA⊗B t and sm ∈ PA⊗B for some

d ∈ N; we have to find some tn ∈ PA⊗B such that sm ≃dA⊗B tn. Let us assume m ∈ MA

for the other case is completely symmetric. Since s ≃dA⊗B t, we have some s′ ≃A⊗B t′ such

that HdA⊗B(s

′) = HdA⊗B(s) and Hd

A⊗B(t′) = Hd

A⊗B(t). Thus, s′ ↾ A ≃A t′ ↾ A, HdA(s ↾ A) =

HdA⊗B(s) ↾ A = Hd

A⊗B(s′) ↾ A = Hd

A(s′ ↾ A) and Hd

A(t ↾ A) = HdA⊗B(t) ↾ A = Hd

A⊗B(t′) ↾ A =

HdA(t

′ ↾ A), whence s ↾ A ≃dA t ↾ A. Similarly, we have s ↾ B ≃d

B t ↾ B with s′ ↾ B ≃B t′ ↾ B,Hd

B(s ↾ B) = HdB(s

′ ↾ B) and HdB(t ↾ B) = Hd

B(t′ ↾ B). Now, since (s ↾ A).m = sm ↾ A ∈ PA,

we have some (t ↾ A).n ∈ PA such that (s ↾ A).m ≃dA (t ↾ A).n, i.e., some u ≃A v such

that HdA(u) = Hd

A((s ↾ A).m) and HdA(v) = Hd

A((t ↾ A).n). By Table 1, we may clearly obtains ∈ PA⊗B from u and s′ ↾ B as well as t ∈ PA⊗B from v and t′ ↾ B such that s ≃A⊗B t,Hd

A⊗B(s) = HdA⊗B(sm) and Hd

A⊗B(t) = HdA⊗B(tn), where the numbers of OP-parity changes

in s and t are both minimal, establishing sm ≃dA⊗B tn. �

Next, let us recall linear implication ⊸. The linear implication A ⊸ B is the space of linearfunctions from A to B in the sense of linear logic [Gir87], i.e., they consume exactly one input inA to produce an output inB (strictly speaking they consume at most one input since it is possiblefor Player not to play in A at all, i.e., ⊸ is actually affine implication; it is linear if strategies onA⊸ B are restricted to be strict [Abr14]).

One additional point for dynamic games is that we need to apply the ω-hiding operationHω to the domain A since otherwise the axiom DP2 may not be satisfied. It conceptually makessense as well for the roles of Player and Opponent in the domain A are exchanged, and thusPlayer should not be able to “see” internal moves of A.

◮ Definition 3.3.3 (Linear implication [AJ94, AM99]). The linear implication A ⊸ B from a(normalized dynamic) game A to a (dynamic) game B is defined by:

◮ MA⊸Bdf.= MA +MB ;

◮ λA⊸Bdf.= [λA, λB], where λA

df.= 〈λOP

A , λQAA 〉 and λOP

A (m)df.=

{P if λOP

A (m) = O

O otherwise;

29

Page 30: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ ⋆ ⊢A⊸B mdf.⇔ ⋆ ⊢B m;

◮ m ⊢A⊸B n (m 6= ⋆)df.⇔ (m ⊢A n) ∨ (m ⊢B n) ∨ (⋆ ⊢B m ∧ ⋆ ⊢A n);

◮ PA⊸Bdf.= {s ∈ LA⊸B |s ↾ A ∈ PA, s ↾ B ∈ PB };

◮ s ≃A⊸B tdf.⇔ s ↾ A ≃A t ↾ A ∧ s ↾ B ≃B t ↾ B ∧ ∀i ∈ N.si ∈MA ⇔ ti ∈MA

where s ↾ A and s ↾ B are as defined in Definition 3.3.1 except that pointers between initialoccurrences in A and B are deleted. Moreover, we generalize it to the case where A is not

normalized by A⊸ Bdf.= Hω(A) ⊸ B.

◮ Theorem 3.3.4 (Well-defined linear implication on dynamic games). Dynamic games are closedunder ⊸

Proof. Again, it suffices to show the preservation property of the additional conditions on thelabeling function and the axioms E1, E2, E4, DP2 and DI3. For brevity, let us just assume thatA is normalized, and consider A ⊸ B. Again, the non-trivial conditions are just DP2 and DI3,but DI3 may be shown in a way similar to the case of tensor.

To verify DP2, let i ∈ N and slmn, s′l′m′n′ ∈ POddA⊸B such that Hi

A⊸B(slm) = HiA⊸B(s

′l′m′)and i < λNA⊸B(n) = λNA⊸B(n

′). Again, m and m′ are both internal, and so m, n, m′ and n′

are all moves in B. Thus, (sl ↾ B).mn, (s′l′ ↾ B).m′n′ ∈ POddB such that Hi

B((sl ↾ B).m) =Hi

A⊸B(slm) ↾ B = HiA⊸B(s

′l′m′) ↾ B = HiB((s

′l′ ↾ B).m′) and i < λNB(n) = λNB(n′); thus, by

DP2 on B, n = n′ and J⊖islmn(n) = J ⊖i

(sl↾B).mn(n) = J⊖i

(sl↾B).mn(n′) = J⊖i

slmn(n′). �

Next, product & forms the categorical product in the categories of games [AM99]. A play ofthe product A&B is simply a play of A or a play of B:

◮ Definition 3.3.5 (Product [AJ94, AM99]). Given (dynamic) games A and B, their productA&B is defined by:

◮ MA&Bdf.= MA +MB ;

◮ λA&Bdf.= [λA, λB ];

◮ ⊢A&Bdf.= ⊢A + ⊢B ;

◮ PA&Bdf.= {s ∈ LA&B |(s ↾ A ∈ PA ∧ s ↾ B = ǫ) ∨ (s ↾ A = ǫ ∧ s ↾ B ∈ PB)};

◮ s ≃A&B tdf.⇔ s ≃A t ∨ s ≃B t.

Now, we make a straightforward generalization of product &:

◮ Notation. Given a function f : X → Y and a subset Z ⊆ X , we write f ⇂ Z : X \ Z → Y forthe restrictions of f to the subset X \ Z ⊆ X .

◮ Definition 3.3.6 (Pairing of dynamic games). The pairing 〈L,R〉 of dynamic games L and Rsuch that Hω(L) P C ⊸ A and Hω(R) P C ⊸ B for some normalized dynamic games A, Band C is given by:

◮ M〈L,R〉df.= MC + (ML \MC) + (MR \MC);

◮ λ〈L,R〉df.= [λC , λL ⇂MC , λR ⇂MC ];

30

Page 31: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ m ⊢〈L,R〉 ndf.⇔ m ⊢L n ∨m ⊢R n;

◮ P〈L,R〉df.= {s ∈ LL&R |(s ↾ L ∈ PL ∧ s ↾ R = ǫ) ∨ (s ↾ L = ǫ ∧ s ↾ R ∈ PR)};

◮ s ≃〈L,R〉 tdf.⇔ (s ↾ L = ǫ ⇔ t ↾ L = ǫ) ∧ s ↾ L ≃L t ↾ L ∧ s ↾ R ≃R t ↾ R.

◮ Theorem 3.3.7 (Well-defined pairing on dynamic games). Dynamic games are closed under 〈 , 〉.If dynamic games L and R satisfy Hω(L) P C ⊸ A and Hω(R) P C ⊸ B for some normalizeddynamic games A, B and C, then we have 〈Hω(L),Hω(R)〉 P C ⊸ A&B.

Proof. Similar to and simpler than the case of tensor ⊗. �

Pairing 〈 , 〉 is certainly a generalization of product & since 〈A,B〉 ∼= 〈T ⊸ A, T ⊸ B〉 =T ⊸ A&B ∼= A&B for any normalized dynamic games A and B.

Now, let us recall exponential !, which is intuitively the infinite iteration of tensor, i.e., !A ∼=A⊗A⊗ . . .

◮ Definition 3.3.8 (Exponential [AJ94, AJM00, McC98]). Given a (dynamic) game A, its expo-nential !A is defined by:

◮ M!Adf.= MA × N;

◮ λ!A : (a, i) 7→ λA(a);

◮ ⋆ ⊢!A (a, i)df.⇔ ⋆ ⊢A a;

◮ (a, i) ⊢!A (a′, j)df.⇔ i = j ∧ a ⊢A a′;

◮ P!Adf.= {s ∈ L!A |∀i ∈ N.s ↾ i ∈ PA};

◮ s ≃!A tdf.⇔ ∃ϕ ∈ P(N).∀i ∈ N.s ↾ ϕ(i) ≃A t ↾ i ∧ π∗

2(s) = (ϕ ◦ π2)∗(t)

where s ↾ i is the j-subsequence of s that consists of occurrences of moves of the form (a, i) butchanged into a, and P(N) is the set of all permutations of natural numbers.

Now, it should be clear, from the definition of ≃!A, why we need to equip each game withan identification of plays: A particular choice of “tags” ( , i) of a position of an exponential !Ashould not matter; and since this identification may occur locally in games in nested forms, e.g.,!!A⊗B and !A⊸ B, it gives a neat formulation to define a tailored identification ≃G of positionsas part of the structure of each game G.

Next, we generalize exponential !:

◮ Definition 3.3.9 (Promotion of dynamic games). Given a dynamic game G with Hω(G) P!A⊸ B for some normalized dynamic games A and B, its promotion G† is defined by:

◮ MG†df.= ((MG \M!A)× N) +M!A;

◮ λG† : ((m, i) ∈ (MG \M!A)× N) 7→ λG(m), ((a, j) ∈M!A) 7→ λG(a, j);

◮ ⋆ ⊢G† (m, i)df.⇔ ⋆ ⊢G m;

◮ (m, i) ⊢G† (n, j)df.⇔ (i = j ∧m,n ∈MG \M!A ∧m ⊢G n)

∨ (i = j ∧m ⊢A n) ∨ (m ∈MG \M!A ∧ (n, j) ∈M!A ∧m ⊢G (n, j));

31

Page 32: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ PG†df.= {s ∈ LG† |∀i ∈ N.s ↾ i ∈ PG }, where s ↾ i is the j-subsequence of s that consists

of moves of the form (m, i) with m ∈ MG \M!A or (a, 〈i, j〉) with a ∈ MA and j ∈ N butchanged into m and (a, j), respectively;

◮ s ≃G† tdf.⇔ ∃ϕ ∈ P(N).∀i ∈ N.s ↾ ϕ(i) ≃G t ↾ i ∧ π∗

2(s) = (ϕ ◦ π2)∗(t).

◮ Theorem 3.3.10 (Well-defined promotion on dynamic games). Dynamic games are closed under( )†. If a dynamic game G satisfies Hω(G) P !A ⊸ B for some normalized dynamic games A and B,then Hω(G)† P !A⊸ !B.

Proof. Straightforward. �

Again, promotion ( )† is clearly a generalization of exponential ! for A† ∼= (!T ⊸ A)† =!T ⊸ !A ∼= !A for any dynamic game A.

Now, let us introduce a new construction on dynamic games, which plays a central role inthe present paper:

◮ Definition 3.3.11 (Concatenation of dynamic games). Given dynamic games J and K suchthat Hω(J) P A ⊸ B and Hω(K) P B ⊸ C for some normalized dynamic games A, B and C,their concatenation J ‡K is defined by:

◮ MJ‡Kdf.= MJ +MK ;

◮ λJ‡Kdf.= [λJ ⇂ MB[1] , λ

+µJ ↾ MB[1] , λ

+µK ↾ MB[2] , λK ⇂ MB[2] ], where λ+µ

G

df.= 〈λOP

G , λQAG , n 7→

λNG(n) + µ〉 (G is J or K), and µdf.= Max(µ(J), µ(K)) + 1;

◮ ⋆ ⊢J‡K mdf.⇔ ⋆ ⊢K m;

◮ m ⊢J‡K n (m 6= ⋆)df.⇔ m ⊢J n ∨m ⊢K n ∨ (⋆ ⊢B[2] m ∧ ⋆ ⊢B[1] n);

◮ PJ‡Kdf.= {s ∈ JJ‡K |s ↾ J ∈ PJ , s ↾ K ∈ PK , s ↾ B[1], B[2] ∈ prB };

◮ s ≃J‡K tdf.⇔ (∀i ∈ N.si ∈MJ ⇔ ti ∈MJ) ∧ s ↾ J ≃J t ↾ J ∧ s ↾ K ≃K t ↾ K .

We shall see later that the “non-hiding composition” of dynamic strategies σ : J and τ : Kforms a dynamic strategy on the concatenation J ‡K .

◮ Theorem 3.3.12 (Well-defined concatenation on dynamic games). Dynamic games are closedunder ‡.

Proof. We first show that the dynamic arena J ‡K is well-defined. The set MJ‡K of moves andthe labeling function λJ‡K are clearly well-defined, where the upper bounds µ(J) and µ(K)are crucial. For the enabling relation, the axioms E1 and E3 clearly hold. For the axiom E2, if

m ⊢J‡K n and λQAJ‡K(n) = A, then either m,n ∈ MK \ MB[2] , m,n ∈ MB[2] , m,n ∈ MB[1] or

m,n ∈MJ \MB[1] . In either case, we clearly have λQAJ‡K(m) = Q and λNJ‡K(m) = λNJ‡K(n).

For the axiom E4, let m ⊢J‡K n, m 6= ⋆ and λNJ‡K(m) 6= λNJ‡K(n). We proceed by a caseanalysis. If (m ⊢K n)∧ (m,n ∈MK \MB[2] ∨m,n ∈MB[2]), then we may just apply E4 on K . Itis similar if (m ⊢J n)∧(m,n ∈MJ \MB[1]∨m,n ∈MB[1]). Note that the case ⋆ ⊢B[2] m∧⋆ ⊢B[1] ncannot happen. Now, consider the case m ⊢K n∧m ∈MK \MB[2] ∧ n ∈MB[2] . If m is external,then m ∈ MC , and so E4 on J ‡ K is satisfied by the definition of B ⊸ C; if m is internal,then we may apply E4 on K . The case m ⊢K n ∧ n ∈ MK \ MB[2] ∧ m ∈ MB[2] is simpler

32

Page 33: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

(OE,OE)C✲ (OE,PI)

(PI,OE) ✛...........B1B2

(OE,PE)

C❄

C✻

✛K (OE,OI)

K❄

K✻

(OI,OE)

J❄

J✻

J✲ (PE,OE)

B2

B1 ❄

.......B2

B1

✻.......

...........B1B2✲ (OE,PI)

K❄

K✻

(PI,OE)

J❄

J✻

✛A(OE,OE)

A❄

A✻

Table 2: The concatenation double parity diagram

as m must be internal. The remaining cases m ⊢J n ∧ m ∈ MJ \ MB[1] ∧ n ∈ MB[1] andm ⊢J n ∧ n ∈MJ \MB[1] ∧m ∈MB[1] are similar. Thus, the arena J ‡K is well-defined.

Next, we show that PJ‡K ⊆ LJ‡K . For justification, let sm ∈ PJ‡K with m non-initial. Thenon-trivial case is when m is initial in J . But in this case m is initial in B[1], and so it has ajustifier in B[2]. For alternation and IE-switch, similarly to Table 1 for tensor ⊗, we have Table 2for J ‡ K , in which the first (resp. second) component of each state is about the OP- and IE-parities of the next move of J (resp. K). For readability some states are written twice, and thedotted arrow indicates two consecutive moves in B. Then, alternation and IE-switch on J ‡Kimmediately follows from this diagram and the corresponding conditions on J and K .

For generalized visibility, let sm ∈ PJ‡K with m non-initial and d ∈ N ∪ {ω} such thatsm is d-complete. Without loss of generality, we may assume d ∈ N as s is finite. It is nothard to see that Hd

J‡K(sm) ∈ PHd(J)‡Hd(K) if Hd(J ‡ K) is not normalized; thus, this case is

reduced to the (usual) visibility on Hd(J) ‡ Hd(K). Otherwise, it is no harm to select the leastd ∈ N

+ such that Hd(J ‡K) is normalized; then Hd−1J‡K(sm) ∈ P(A⊸B[1])‡(B[2]⊸C), and thus the

visibility of HdJ‡K(sm) = HHd−1(J‡K)(H

d−1J‡K(sm)) can be shown completely in the same way

as the proof that shows the composition of strategies is well-defined (in particular it satisfiesvisibility) [McC98, AM99]. Consequently, it suffices to consider the case d = 0, i.e., to show the(usual) visibility.

For this, we need the following:

◮ Lemma 3.3.13 (Visibility lemma). Assume that t ∈ PJ‡K and t 6= ǫ. Then we have:

1. If the last move of t is in MJ \MB[1] , then ⌈t ↾ J⌉J � ⌈t⌉J‡K ↾ J and ⌊t ↾ J⌋J � ⌊t⌋J‡K ↾ J ;

2. If the last move of t is inMK\MB[2] , then ⌈t ↾ K⌉K � ⌈t⌉J‡K ↾ K and ⌊t ↾ K⌋K � ⌊t⌋J‡K ↾ K ;

3. If the last move of t is an O-move in MB[1] ∪ MB[2] , then ⌈t ↾ B[1], B[2]⌉B[1]⊸B[2] � ⌊t⌋J‡K ↾

B[1], B[2] and ⌊t ↾ B[1], B[2]⌋B[1]⊸B[2] � ⌈t⌉J‡K ↾ B[1], B[2].

Proof of the lemma. By induction on |t| with case analysis on the last move of t. �

Note that we may write sm = s1ns2m, where n justifies m. If s2 = ǫ, then it is trivial; soassume s2 = s′

2r. We then proceed by a case analysis on m:

33

Page 34: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ Assume m ∈MJ \MB[1] . Then we have n ∈MJ and r ∈MJ by Table 2. By Lemma 3.3.13,⌈s ↾ J⌉ � ⌈s⌉ ↾ J and ⌊s ↾ J⌋ � ⌊s⌋ ↾ J . Also, since (s ↾ J).m ∈ PJ , visibility on J implies:

n occurs in ⌈s ↾ J⌉ if m is a P-move;

n occurs in ⌊s ↾ J⌋ if m is an O-move.

Hence we may conclude that n occurs in ⌈s⌉ (resp. ⌊s⌋) ifm is a P-move (resp. an O-move).

◮ Assume m ∈MK \MB[2] . This case can be handled in analogously to the above case.

◮ Assume m ∈MB[1] . If m is a P-move, then n, r ∈MJ and so it can be handled in the sameway as the case m ∈ MJ \MB[1] ; thus, assume that m is an O-move. Then, r ∈ MB[2] andit is a “copy” of m. For r is an O-move of B[1] ⊸ B[2], by Lemma 3.3.13, ⌈s ↾ B[1], B[2]⌉ �⌊s⌋ ↾ B[1], B[2]. Note that n is a move of B[1] or an initial move of B[2]. In either case,(s ↾ B[1], B[2]).m ∈ PB[1]⊸B[2] ; thus, n occurs in ⌈s ↾ B[1], B[2]⌉. Hence, n occurs in ⌊s⌋.

◮ Assume m ∈ MB[2] . If m is a P-move, then n, r ∈ MK ; so it can be dealt with in the sameway as the case m ∈MK \MB[2] . Thus assume m is an O-move. By Table 2, r ∈MB[1] andit is an O-move of B[1] ⊸ B[2]. By Lemma 3.3.13, ⌈s ↾ B[1], B[2]⌉ � ⌊s⌋ ↾ B[1], B[2]. Again,(s ↾ B[1], B[2]).m ∈ PB[1]⊸B[2] ; thus, n occurs in ⌈s ↾ B[1], B[2]⌉, and so n occurs in ⌊s⌋.

Next, we verify the axioms P1 and DP2. For P1, it is clear that ǫ ∈ PJ‡K . For the prefix-closure, let sm ∈ PJ‡K . If m ∈ MJ \MB[1] , then (s ↾ J).m = sm ↾ J ∈ PJ ; thus s ↾ J ∈ PJ ,s ↾ K = sm ↾ K ∈ PK and s ↾ B[1], B[2] = sm ↾ B[1], B[2] ∈ prB , whence s ∈ PJ‡K . The othercases may be handled similarly.

For DP2, let i ∈ N and sm, s′m′ ∈ POddJ‡K such that i < λNJ‡K(m) = λNJ‡K(m′) and Hi

J‡K(s) =

HiJ‡K(s′). Without loss of generality, we may assume i = 0 and λNJ‡K(m) = 1 = λNJ‡K(m′)

because if λNJ‡K(m) = λNJ‡K(m′) = j > 1, then we may consider Hj−1J‡K(sm),Hj−1

J‡K (s′m′) ∈PHj−1(J)‡Hj−1(K) (n.b. the justifiers of m and m′ have the same degree of internality). Thus,s = s′ and m,m′ ∈ MJ ∨m,m′ ∈ MK . If m,m′ ∈ MJ (resp. m,m′ ∈ MK), then (s ↾ J).m, (s′ ↾J).m′ ∈ POdd

J (resp. (s ↾ K).m, (s′ ↾ K).m′ ∈ POddK ), and so we may apply DP2 on J (resp. K).

Finally, the axioms I1, I2 and DI3 on ≃J‡K can be verified similarly to the case of tensor ⊗,completing the proof. �

Next, we show that these constructions as well as the hiding operation preserve the dynamicsubgame relation P.

◮ Notation. We write ♣i∈I , where I is {1} or {1, 2}, for a construction on dynamic games, i.e.,♣i∈I is either ⊗, ⊸, 〈 , 〉, ( )† or ‡.

◮ Lemma 3.3.14 (Preservation of dynamic subgames). Let ♣i∈I be a construction on dynamic games,and assume Hi P Gi for all i ∈ I . Then, ♣i∈IHi P ♣i∈IGi.

Proof. Let us first consider tensor ⊗. It is trivial to check the conditions on the sets of moves andthe labeling functions, and so we omit them. For the enabling relations:

⊢H1⊗H2 = ⊢H1 + ⊢H2

⊆ (⊢G1 ∩ (({⋆} ∪MH1)×MH1)) + (⊢G2 ∩ (({⋆} ∪MH2)×MH2))

= (⊢G1 ∩ (({⋆} ∪MH1⊗H2)×MH1⊗H2)) + (⊢G2 ∩ (({⋆} ∪MH1⊗H2)×MH1⊗H2))

= (⊢G1 + ⊢G2) ∩ (({⋆} ∪MH1⊗H2)×MH1⊗H2)

= ⊢G1⊗G2 ∩ (({⋆} ∪MH1⊗H2)×MH1⊗H2).

34

Page 35: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

For the positions, we have:

PH1⊗H2 = {s ∈ LH1⊗H2 |∀i ∈ {1, 2}.s ↾ Hi ∈ PHi}

⊆ {s ∈ LG1⊗G2 |∀i ∈ {1, 2}.s ↾ Gi ∈ PGi}

= PG1⊗G2 .

For the identifications of positions, given d ∈ N ∪ {ω}, we have:

s ≃dH1⊗H2

t

⇔ ∃s′, t′ ∈ PH1⊗H2 .s′ ≃H1⊗H2 t′ ∧Hd

H1⊗H2(s′) = Hd

H1⊗H2(s)

∧HdH1⊗H2

(t′) = HdH1⊗H2

(t)

⇔ ∀j ∈ {1, 2}.∃s′j, t′

j ∈ PHj.s′j ≃Hj

t′j ∧HdHj

(s′j) = HdHj

(s ↾ Hj)

∧HdHj

(t′j) = HdHj

(t ↾ Hj) ∧ ∀k ∈ N.sk ∈MH1 ⇔ tk ∈MH1

⇔ ∀j ∈ {1, 2}.s ↾ Hj ≃dHj

t ↾ Hj ∧ ∀k ∈ N.sk ∈MH1 ⇔ tk ∈MH1

⇔ ∀j ∈ {1, 2}.s ↾ Gj , t ↾ Gj ∈ PHj∧ s ↾ Gj ≃

dGj

t ↾ Gj

∧ ∀k ∈ N.sk ∈MG1 ⇔ tk ∈MG1

⇔ s, t ∈ PH1⊗H2 ∧ s ≃dG1⊗G2

t.

Finally, µ(H1 ⊗ H2) = Max(µ(H1), µ(H2)) = Max(µ(G1), µ(G2)) = µ(G1 ⊗ G2). Therefore,we have shown that H1 ⊗H2 P G1 ⊗G2.

Linear implication and promotion are similar, and pairing is even simpler; thus we omitthem. Next, let us consider concatenation. Assume that Hω(H1) P A ⊸ B, Hω(H2) P B ⊸ C,Hω(G1) P D ⊸ E, Hω(G2) P E ⊸ F for some normalized dynamic games A, B, C, D, E andF ; without loss of generality, we assume that these normalized dynamic games are the leastones with respect to the dynamic subgame relation P. By Theorem 3.2.6, Hω(H1) P Hω(G1) PD ⊸ E and Hω(H2) P Hω(G2) P E ⊸ F , which in turn implies A P D, B P E and C P F .First, we clearly have MH1‡H2 ⊆MG1‡G2 and λG1‡G2 ↾MH1‡H2 = λH1‡H2 , where µ(Hi) = µ(Gi)for i = 1, 2 ensures that the degrees of internality of moves of B coincide.

Next, for the enabling relations, we have:

⋆ ⊢H1‡H2 m⇔ ⋆ ⊢H2 m⇔ ⋆ ⊢C m⇒ ⋆ ⊢F m⇔ ⋆ ⊢G1‡G2 m

as well as:

m ⊢H1‡H2 n⇔ m ⊢H1 n ∨m ⊢H2 n ∨ (⋆ ⊢B[2]m ∧ ⋆ ⊢B[1] n)

⇒ m ⊢G1 n ∨m ⊢G2 n ∨ (⋆ ⊢E[2] m ∧ ⋆ ⊢E[1] n)

⇔ m ⊢G1‡G2 n

for any m,n ∈MH1‡H2 .For the positions, we have:

PH1‡H2 = {s ∈ JH1‡H2 |s ↾ H1 ∈ PH1 , s ↾ H2 ∈ PH2 , s ↾ B[1], B[2] ∈ prB }

⊆ {s ∈ JG1‡G2 |s ↾ G1 ∈ PG1 , s ↾ G2 ∈ PG2 , s ↾ E[1], E[2] ∈ prE }

= PG1‡G2 .

Finally, we may show, in the same manner as in the case of tensor, the required condition onthe identifications of positions, completing the proof. �

35

Page 36: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

At the end of the present section, we establish the following useful lemma:

◮ Lemma 3.3.15 (Hiding lemma on dynamic games). Let ♣i∈I be a construction on dynamic gamesand Gi a dynamic game for all i ∈ I . For all d ∈ N ∪ {ω}, we have:

1. Hd(♣i∈IGi) P ♣i∈IHd(Gi) if ♣ is not ‡;

2. Hd((G1) ‡ (G2)) P A ⊸ C if Hd(G1 ‡ G2) is normalized, where A, B and C are normalizeddynamic games such that Hω(G1) P A⊸ B and Hω(G2) P B ⊸ C;

3. Hd(G1 ‡G2) = Hd(G1) ‡ Hd(G2) otherwise.

Proof. For there is an upper bound of degrees of internality for each dynamic game, it sufficesto consider the case d ∈ N. But then, because Hi+1 = H ◦ Hi for all i ∈ N, we may just focus onthe case d = 1. We just focus on tensor ⊗ as the other constructions may be handled similarly.

We have to show H(G1 ⊗G2) P H(G1)⊗H(G2). Their sets of moves and labeling functionsclearly coincide.

For the enabling relations, we have:

⋆ ⊢H(G1⊗G2) m⇔ ⋆ ⊢G1⊗G2 m⇔ ⋆ ⊢G1 m ∨ ⋆ ⊢G2 m

⇔ ⋆ ⊢H(G1) m ∨ ⋆ ⊢H(G2) m

⇔ ⋆ ⊢H(G1)⊗H(G2) m

as well as:

m ⊢H(G1⊗G2) n (m 6= ⋆)

⇔ (m ⊢G1⊗G2 n) ∨ ∃k ∈ N+,m1,m2, . . . ,m2k ∈MG1⊗G2 \MH(G1⊗G2).m ⊢G1⊗G2 m1

∧m1 ⊢G1⊗G2 m2 ∧ · · · ∧ m2k−1 ⊢G1⊗G2 m2k ∧m2k ⊢G1⊗G2 n

⇔ (m ⊢G1 n ∨m ⊢G2 n) ∨ ∃i ∈ {1, 2}, k ∈ N+,m1,m2, . . . ,m2k ∈MGi

\MH(Gi).

m ⊢Gim1 ∧ m1 ⊢Gi

m2 ∧ · · · ∧m2k−1 ⊢Gim2k ∧m2k ⊢Gi

n

⇔ ∃i ∈ {1, 2}.m ⊢Gin ∨ ∃k ∈ N

+,m1,m2, . . . ,m2k ∈MGi\MH(Gi).m ⊢Gi

m1

∧m1 ⊢Gim2 ∧ · · · ∧m2k−1 ⊢Gi

m2k ∧m2k ⊢Gin

⇔m ⊢H(G1)⊗H(G2) n.

Thus, the dynamic arenas H(G1 ⊗G2) and H(G1)⊗H(G2) coincide.For the positions, we have:

s ∈ PH(G1⊗G2) ⇒ ∃t ∈ LG1⊗G2 .HG1⊗G2(t) = s ∧ ∀i ∈ {1, 2}.t ↾ Gi ∈ PGi

⇒ ∃t ∈ LG1⊗G2 .HG1⊗G2(t) = s ∧ ∀i ∈ {1, 2}.HGi(t ↾ Gi) ∈ PH(Gi)

⇒ ∃t ∈ LG1⊗G2 .HG1⊗G2(t) = s ∧ ∀i ∈ {1, 2}.HG1⊗G2(t) ↾ H(Gi) ∈ PH(Gi)

⇒ s ∈ LH(G1⊗G2) = LH(G1)⊗H(G2) ∧ ∀i ∈ {1, 2}.s ↾ H(Gi) ∈ PH(Gi)

⇒ s ∈ PH(G1)⊗H(G2).

36

Page 37: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

Finally, for the identifications of positions, given d ∈ N ∪ {ω}, we have:

HG1⊗G2(s) ≃dH(G1⊗G2)

HG1⊗G2(t)

⇔ ∃s′, t′ ∈ PG1⊗G2 .HG1⊗G2(s′) ≃H(G1⊗G2) HG1⊗G2(t

′) ∧Hd+1G1⊗G2

(s′) = Hd+1G1⊗G2

(s)

∧Hd+1G1⊗G2

(t′) = Hd+1G1⊗G2

(t)

⇔ ∀j ∈ {1, 2}.∃s′j, t′

j ∈ PGj.HGj

(s′j) ≃H(Gj) HGj(t′j) ∧Hd+1

Gj(s′j) = Hd+1

Gj(s ↾ Gj)

∧Hd+1Gj

(t′j) = Hd+1Gj

(t ↾ Gj) ∧ ∀k ∈ N.Hd+1G1⊗G2

(sk) ∈MHd+1(G1) ⇔ Hd+1G1⊗G2

(tk) ∈MHd+1(G1)

⇔ ∀j ∈ {1, 2}.s ↾ Gj ≃d+1Gj

t ↾ Gj ∧ ∀k ∈ N.Hd+1G1⊗G2

(sk) ∈MHd+1(G1) ⇔ Hd+1G1⊗G2

(tk) ∈MHd+1(G1)

⇔ HG1⊗G2(s) ≃dH(G1)⊗H(G2)

HG1⊗G2(t) ∧HG1⊗G2(s),HG1⊗G2(t) ∈ PH(G1⊗G2).

3.4 Dynamic Strategies

To define the notion of dynamic strategies, we just apply the standard definition of strategies[AM99] in the context of dynamic games:

◮ Definition 3.4.1 (Dynamic strategies). A dynamic strategy on a dynamic game G is a subsetσ ⊆ P Even

G , written σ : G, that is:

◮ (S1) Non-empty and even-prefix-closed (i.e., ∀smn ∈ σ.s ∈ σ);

◮ (S2) Deterministic (i.e., ∀smn, smn′ ∈ σ.smn = smn′).

A dynamic strategy is particularly said to be normalized if it is on a normalized dynamic game.

It is clear that normalized dynamic strategies are equivalent to strategies; in this sense, theformer is a generalization of the latter.

Since internal moves are conceptually “invisible” to Opponent, a dynamic strategy σ : Gmust be externally consistent: If smn, s′m′n′ ∈ σ, λNG(n) = λNG(n

′) = 0 and HωG(sm) = Hω

G(s′m′),

then n = n′ and J ⊖ωsmn(n) = J ⊖ω

s′m′n′(n′). In fact, a stronger property holds (Theorem 3.4.3).

◮ Lemma 3.4.2 (O-determinacy). Let σ : G be a dynamic strategy, and assume that s, s′ ∈ σ,d ∈ N∪{ω}, and sm, s′m′ ∈ PG are both d-complete. Then, if Hd

G(sm) = HdG(s

′m′), then sm = s′m′.

Proof. By induction on |s|. The base case s = ǫ is trivial: For any d ∈ N ∪ {ω}, if HdG(sm) =

HdG(s

′m′), then HdG(s

′m′) = HdG(sm) = m, and so s′m′ = m = sm.

For the induction step, let d ∈ N ∪ {ω} be fixed, and assume HdG(sm) = Hd

G(s′m′). We may

suppose that sm = tlrm, where l is the rightmost O-move in s such that λNG(l) = 0 ∨ λNG(l) >d. Then Hd

G(s′m′) = Hd

G(sm) = HdG(t).l.H

dG(rm), and so we may write s′m′ = t′

1.l.t′

2.m′.

Now, t, t′1

∈ σ, tl, t′1l ∈ PG, Hd

G(tl) = HdG(t

1l), and tl and t′l′ are both d-complete; thus,

by the induction hypothesis, tl = t′1l. Thus, Hd

G(t).l.HdG(t

2m′) = Hd

G(s′m′) = Hd

G(sm) =Hd

G(t).l.HdG(rm), whence t′

2is of the form rt′′

2by the determinacy of σ. Hence, sm = tlrm and

s′m′ = tlrt′′2m′. Finally, if r is external, then so is m by IE-switch, and so s′m′ = sm; if r is

j-internal (j > d), then so is m, and so we may apply the axiom DP2 for i = j − 1 to s and s′,concluding that sm = s′m′. �

◮ Theorem 3.4.3 (External consistency). Let σ be a dynamic strategy on a dynamic game G, andassume that smn, s′m′n′ ∈ σ and d ∈ N ∪ {ω}. If smn, s′m′n′ are both d-complete and Hd

G(sm) =Hd

G(s′m′), then n = n′ and J ⊖d

smn(n) = J ⊖ds′m′n′(n′).

37

Page 38: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

Proof. Let σ : G be a dynamic strategy, smn, s′m′n′ ∈ σ and d ∈ N ∪ {ω}, and assume thatsmn, s′m′n′ are both d-complete and Hd

G(sm) = HdG(s

′m′). By Lemma 3.4.2, we have sm =s′m′; thus, by the axiom S2 on σ, we have n = n′ and Jsmn(n) = Js′m′n′(n′), whence J⊖d

smn(n) =J ⊖ds′m′n′(n′). �

Next, for positions of a (dynamic) game G are identified up to ≃G, we must identify two(dynamic) strategies on G if they behave in the same manner up to ≃G, leading to:

◮ Definition 3.4.4 (Identification of strategies). The identification of (dynamic) strategies on a(dynamic) game G, written ≃G, is the relation between (dynamic) strategies on G defined by:

∀σ, τ : G.σ ≃G τdf.⇔ ∀s ∈ σ, t ∈ τ.sm ≃G tl ⇒ ∀smn ∈ σ.∃tlr ∈ τ.smn ≃G tlr

∧ ∀tlr ∈ τ.∃smn ∈ σ.tlr ≃G smn.

It is not hard to see that the identification ≃G of (dynamic) strategies on each (dynamic)game G forms a partial equivalence relation (PER), i.e., a symmetric and transitive relation; in fact,the symmetry is clear, and the transitivity follows from the following lemma:

◮ Lemma 3.4.5 (First PER lemma). Given a (dynamic) gameG, let σ, τ : G such that σ ≃G τ . Then,(∀s ∈ σ.∃t ∈ τ.s ≃G t) ∧ (∀t ∈ τ.∃s ∈ σ.t ≃G s).

Proof. By symmetry, it suffices to show ∀s ∈ σ. ∃t ∈ τ. s ≃G t. We prove it by induction on|s|. The base case is trivial; for the inductive step, let smn ∈ σ. By the induction hypothesis,there exists some t ∈ τ such that s ≃G t. Then, by I3 on ≃G, there exists some tl ∈ τ such thatsm ≃G tl. Finally, since σ ≃G τ , there exists some tlr ∈ τ such that smn ≃G tlr, completing theproof. �

◮ Corollary 3.4.6 (PER on strategies). Given a (dynamic) gameG, the identification ≃G of (dynamic)strategies on G is a PER.

Proof. We just show the transitivity as the symmetry is obvious. Let σ, τ, µ : G such that σ ≃G τand τ ≃G µ. Assume that smn ∈ σ, u ∈ µ and sm ≃G up. By Lemma 3.4.5, there exists somet ∈ τ such that s ≃G t. By I3 on ≃G, there exists some tl ∈ PG such that sm ≃G tl, whencetl ≃G up. Also, since σ ≃G τ , there exists some tlr ∈ τ such that smn ≃G tlr. Finally, sinceτ ≃G µ, there exists some upq ∈ µ such that tlr ≃G upq, whence smn ≃G upq, completing theproof. �

We are particularly concerned with dynamic strategies identified with themselves:

◮ Definition 3.4.7 (Validity [AJM00, McC98]). A (dynamic) strategy σ on a dynamic game G isvalid if σ ≃G σ.

◮ Remark. This notion is introduced in [AJM00, McC98], but these papers do not call it validity.

More explicitly, a (dynamic) strategy σ : G is valid iff it satisfies:

(VAL) ∀s, t ∈ σ, sm, tl ∈ PG.sm ≃G tl ⇒ ∀smn ∈ σ.∃tlr ∈ σ.smn ≃G tlr.

Note that any (dynamic) strategy σ : G identified with a (dynamic) strategy τ : G is valid:σ ≃G τ ≃G σ.

Now, note that even-length positions are not necessarily preserved under the hiding oper-ation on j-sequences. For instance, let smnt be an even-length position of a dynamic game Gsuch that sm (resp. nt) consists of external (resp. internal) moves only. By IE-switch on G, m isan O-move, and so Hω

G(smnt) = sm is of odd-length.Taking into account this fact, we define:

38

Page 39: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ Definition 3.4.8 (Hiding operation on dynamic strategies). Let G be a dynamic game andd ∈ N ∪ {ω}. Given s ∈ PG, we define:

s♮HdG

df.=

{Hd

G(s) if s is d-complete;

t otherwise, where HdG(s) = tm.

The d-hiding operation Hd on dynamic strategies is then defined by:

Hd : (σ : G) 7→ {s♮HdG |s ∈ σ}.

Next, we shall show a beautiful fact: σ : G⇒ Hd(σ) : Hd(G) for all d ∈ N∪{ω}. For this, weneed the following lemma:

◮ Lemma 3.4.9 (Asymmetry lemma). Let σ : G be a dynamic strategy and d ∈ N ∪ {ω}. Assumethat smn ∈ Hd(σ), where smn = tmunv♮Hd

G with tmunv ∈ σ non-d-complete. Then smn =Hd(tmun) = Hd(t)mn.

Proof. Since tmunv ∈ σ is not d-complete, we may write v = v1lv2r with λNG(l) = 0 ∨ λNG(l) >d, 0 < λNG(r) 6 d and 0 < λNG(x) 6 d for all moves x in v1 or v2. Then, we have smn =tmunv1lv2r♮Hd

G = HdG(t)mHd

G(u)n = HdG(t)mn. �

We are now ready to establish:

◮ Theorem 3.4.10 (Hiding theorem). If σ : G, then Hd(σ) : Hd(G) for all d ∈ N ∪ {ω}.

Proof. We first show Hd(σ) ⊆ P EvenHd(G). Let s ∈ Hd(σ), i.e., s = t♮Hd

G for some t ∈ σ. Let us write

t = t′m as the case t = ǫ is trivial.

◮ If t is d-complete, then s = t♮HdG = Hd

G(t) ∈ PHd(G). Also, since s = HdG(t

′)m and m is a

P-move, s must be of even-length by alternation on Hd(G).

◮ If t is not d-complete, then we may write t = t′′m0m1 . . .mk, where mk = m, t′′m0 isd-complete, and 0 < λNG(mi) 6 d for i = 1, 2, . . . , k. By IE-switch, m0 is an O-move, andthus s = Hd

G(t′′) ∈ PHd(G) is of even-length.

It remains to verify the axioms S1 and S2. For S1, Hd(σ) is clearly non-empty as ǫ ∈ Hd(σ). Forthe even-prefix-closure, let smn ∈ Hd(σ); we have to show s ∈ Hd(σ). We have some tmunv ∈σ such that tmunv♮Hd

G = smn. By Lemma 3.4.9, smn = HdG(t)mn, whence s = Hd

G(t). For tmis d-complete, so is t by IE-switch. Therefore, s = Hd

G(t) = t♮HdG ∈ Hd(σ).

Finally for S2, let smn, smn′ ∈ Hd(σ); we have to show n = n′ and J⊖dsm (n) = J⊖d

sm (n′).By the definition, smn = tmunv♮Hd

G, smn′ = t′mu′n′v′♮HdG for some tmunv, t′mu′n′v′ ∈ σ.

Then, by Lemma 3.4.9, smn = HdG(tmu)n and smn′ = Hd

G(t′mu′)n′. Therefore, by Theo-

rem 3.4.3, we may conclude that n = n′ and J⊖dsmn(n) = J⊖d

smn′(n′), completing the proof. �

◮ Corollary 3.4.11 (Preservation of validity under hiding). If a dynamic strategy σ : G is valid, thenso is Hd(σ) : Hd(G) for all d ∈ N ∪ {ω}.

Proof. By the axiom DI3 on dynamic games, the corollary immediately follows from Lemma 3.4.2and Theorem 3.4.10. �

At the end of the present section, similarly to the case of dynamic games, we establish aninductive property of the d-hiding operation on dynamic strategies for each d ∈ N ∪ {ω}:

39

Page 40: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ Notation. Given a dynamic strategy σ : G and a number d ∈ N ∪ {ω}, we define σd↓

df.= {s ∈

σ |s is d-complete} and σd↑

df.= σ \ σd

↓ .

◮ Lemma 3.4.12 (Hiding and complete positions). Let σ : G be a dynamic strategy. Given i, d ∈ N

such that i > d, Hi(σ) = Hi(σd↓)

df.= {s♮Hi

G |s ∈ σd↓ }.

Proof. The inclusion Hi(σd↓) ⊆ Hi(σ) is obvious. For the opposite inclusion, let s ∈ Hi(σ), i.e.,

s = t♮HiG for some t ∈ σ; we have to show s ∈ Hi(σd

↓). If t ∈ σd↓ , then we are done; so assume

otherwise. Also, if there is no external or j-internal move with j > i other than the first movem0 in t, then s = ǫ ∈ Hi(σd

↓); so assume otherwise. As a consequence, we may write

t = m0t1mnt2r

where t2r consists of only j-internal moves with 0 < j 6 i, and m and n are P- and O-moves,respectively, such that λNG(m) = λNG(n) = 0 ∨ λNG(m) = λNG(n) > i. Now, we take m0t1m ∈ σd

that satisfies m0t1m♮HiG = m0Hi

G(t1)m = t♮HiG = s, whence s ∈ Hi(σd

↓). �

We are now ready to show:

◮ Lemma 3.4.13 (Stepwise hiding on dynamic strategies). Let σ : G be a dynamic strategy. ThenHi+1(σ) = H1(Hi(σ)) for all i ∈ N.

Proof. We first show the inclusion Hi+1(σ) ⊆ H1(Hi(σ)). By Lemma 3.4.12, we may write anyelement of the set Hi+1(σ) as s♮Hi+1

G for some s ∈ σi+1↓ . Then observe that:

s♮Hi+1G = Hi+1

G (s) = HHi(G)(HiG(s)) = (s♮Hi

G)♮H1Hi(G) ∈ H1(Hi(σ)).

For the opposite inclusion H1(Hi(σ)) ⊆ Hi+1(σ), again by Lemma 3.4.12, we may write anyelement of H1(Hi(σ)) as (s♮Hi

G)♮H1Hi(G) for some s ∈ σi

↓. We have to show that (s♮HiG)♮H

1Hi(G) ∈

Hi+1(σ). If s ∈ σi+1↓ , then it is completely analogous to the above argument; so assume other-

wise. Also, if an external or j-internal move with j > i + 1 in s is only the first move m0, then(s♮Hi

G)♮H1Hi(G) = ǫ ∈ Hi+1(σ); thus assume othewise. Now, we may write:

s = s′mnm1m2 . . .m2kr

where λNG(r) = i+1,m1,m2, . . . ,m2k are j-internal with 0 < j 6 i+1, andm and n are externalor j-internal P- and O-moves with j > i+ 1, respectively. Then,

(s♮HiG)♮H

1Hi(G) = Hi

G(s)♮H1Hi(G)

= HHi(G)(HiG(s

′)).m

= Hi+1G (s′).m (by Lemma 3.1.11)

= s♮Hi+1G ∈ Hi+1(σ)

which completes the proof. �

Thus, as in the case of dynamic games, we may focus on the 1-hiding operation H1 ondynamic strategies:

◮ Convention. From now on, we write H for H1 and call it the hiding operation on dynamicstrategies; Hi, where i ∈ N, denotes the i-times iteration of H.

40

Page 41: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

Now, let us recall two constraints on strategies: innocence and well-bracketing. One of thehighlights of HO-games [HO00] is to establish a one-to-one correspondence between programsof the programming language PCF in a certain η-long normal form, known as PCF Bohm trees[AC98], and innocent and well-bracketed strategies (on games modeling types of PCF). That is,the two conditions narrow down the hom-sets of the codomain of the interpretation functor, i.e.,the category of HO-games, so that the interpretation becomes full. Roughly, a strategy is innocentif its computation depends only on P-views, and well-bracketed if every ‘question-answering’ bythe strategy is achieved in the ‘last-question-first-answered’ fashion. Formally:

◮ Definition 3.4.14 (Innocence [HO00, AM99]). A strategy σ on a game G is innocent if:

(INN) ∀smn, t ∈ σ, tm ∈ PG.⌈tm⌉G = ⌈sm⌉G ⇒ tmn ∈ σ.

◮ Definition 3.4.15 (Well-bracketing [AM99, McC98]). A strategy σ on a gameG is well-bracketed(wb) if:

(WB) Given sqta ∈ σ, where λQAG (q) = Q, λQA

G (a) = A and Jsqta(a) = q, each

occurrence of a question in t′, defined by ⌈sqt⌉G = ⌈sq⌉G.t′, justifies an

occurrence of an answer in t′.

The bijective correspondence holds also for the game model of [AM99]. Moreover, it cor-responds respectively to modeling states and control operators in programming languages to re-lax innocence and well-bracketing in the model; in this sense, the two conditions characterizepurely functional computation [AM99].

Next, recall that a programming language is total if its computation always terminates in afinite period of time. This phenomenon is interpreted in game semantics by totality of strategiesin a sense similar to the totality of partial functions [A+97]:

◮ Definition 3.4.16 (Totality [A+97]). A strategy σ on a game G is total if it satisfies:

(TOT) ∀s ∈ σ, sm ∈ PG.∃smn ∈ σ.

Nevertheless, it is well-known that totality of strategies is not preserved under composition(Definition 3.5.7) due to the problem of ‘infinite chattering’ [A+97, CH10]. For this point, oneusually imposes a condition on strategies stronger than totality, e.g., winning [A+97], that ispreserved under composition. We may certainly just apply the winning condition in [A+97],but it requires an additional structure on games, which may be criticized as extrinsic and ad-hoc; thus, we prefer a simpler solution. A natural idea is to require for strategies not to containany strictly increasing infinite sequence of plays. However, we have to relax this constraint: Thedereliction derA (Definition 3.5.5), the identity on a game A in a category of games, satisfies itiff so does the game A, but we cannot impose it on games as the binary operation !( ) ⊸ ( ) ongames, which is the exponential construction (in the sense of the function space, not !) in thecategory, does not preserve it.

Instead, we apply the same idea to P-views, arriving at:

◮ Definition 3.4.17 (Noetherianity [CH10]). A strategy σ on a game G is noetherian if:

(NOE) σ does not contain any strictly increasing (with respect to �)

infinite sequence of P-views of plays of G.

◮ Remark. Nevertheless, since the main aim of the present paper is not a full completeness re-sult, innocence, well-bracketing, totality or noetherianity condition will not play any importantrole in the rest of the paper.

41

Page 42: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

3.5 Constructions on Dynamic Strategies

Next, let us consider constructions on dynamic strategies. However, since dynamic strategiesare just “strategies on dynamic games”, they are clearly closed under standard constructions onstrategies [AM99]. Hence, we just briefly recall their definitions:

◮ Definition 3.5.1 (Copy-cats [AJ94, AJM00, HO00, McC98]). The copy-cat (strategy) cpA :A⊸ A on a (normalized dynamic) game A is defined by:

cpA

df.= {s ∈ P Even

A[1]⊸A[2] |∀t � s. Even(t) ⇒ t ↾ A[1] = t ↾ A[2]}

where the superscripts [1] and [2] on A are to distinguish the two copies of A.

◮ Definition 3.5.2 (Tensor of strategies [AJ94, McC98]). Given (normalized dynamic) gamesA, B, C and D and (normalized dynamic) strategies φ : A ⊸ C and ψ : B ⊸ D, their tensor(product) φ⊗ ψ is defined by:

φ⊗ ψdf.= {s ∈ LA⊗B⊸C⊗D |s ↾ A,C ∈ φ, s ↾ B,D ∈ ψ}.

where s ↾ A,C (resp. s ↾ B,D) is the j-subsequence of s that consists of moves ofA and C (resp.B and D).

◮ Definition 3.5.3 (Pairing of strategies [AJM00, McC98]). Given (normalized dynamic) gamesA, B and C and (normalized dynamic) strategies φ : C ⊸ A and ψ : C ⊸ B, their pairing 〈φ, ψ〉is given by:

〈φ, ψ〉df.= {s ∈ LC⊸A&B |(s ↾ C,A ∈ φ ∧ s ↾ B = ǫ) ∨ (s ↾ C,B ∈ ψ ∧ s ↾ A = ǫ)}.

◮ Definition 3.5.4 (Promotion of strategies [AJM00, McC98]). Given (normalized dynamic)games A and B and a (normalized dynamic) strategy ϕ : !A⊸ B, its promotion ϕ† is given by:

ϕ† df.= {s ∈ L!A⊸!B |∀i ∈ N.s ↾ i ∈ ϕ}

where s ↾ i denotes the j-subsequence of s that consists of moves of the form (b, i) with b ∈MB

or (a, 〈i, j〉) with a ∈ MA changed into b and (a, j), respectively, and 〈 , 〉 : N × N → N is anyfixed bijection.

◮ Definition 3.5.5 (Derelictions [AJM00, McC98]). The dereliction derA : !A⊸ A on a (normal-ized dynamic) game A is defined by:

derAdf.= {s ∈ P Even

!A⊸A |∀t � s.Even(t) ⇒ (t ↾ !A) ↾ 0 = t ↾ A}.

Next, to formulate composition of strategies, it is convenient to first define the followingintermediate concept:

◮ Definition 3.5.6 (Parallel composition [A+97]). Given (normalized dynamic) games A, B andC and (normalized dynamic) strategies φ : A ⊸ B and ψ : B ⊸ C, the parallel compositionφ‖ψ is given by:

φ‖ψdf.= {s ∈ J((A⊸B[1])⊸B[2])⊸C |s ↾ A,B[1] ∈ φ, s ↾ B[2], C ∈ ψ, s ↾ B[1], B[2] ∈ prB }

where s ↾ A,B[1] (resp. s ↾ B[2], C, s ↾ B[1], B[2]) is the j-subsequence of s that consists of

moves of A and B[1] (resp. B[2] and C, B[1] and B[2]) as in Definition 3.3.3 and prBdf.= {s ∈

PB[1]⊸B[2] | ∀t � s. Even(t) ⇒ t ↾ B[1] = t ↾ B[2]}.

42

Page 43: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ Remark. Parallel composition is just a preliminary for the following composition of strategies;it does not preserve the structure of strategies.

Now, we are ready to recall composition of strategies.

◮ Definition 3.5.7 (Composition of strategies [HO00, AM99]). Given (normalized dynamic)games A, B and C and (normalized dynamic) strategies φ : A ⊸ B and ψ : B ⊸ C, theircomposition φ;ψ (also written ψ ◦ φ) is given by:

φ;ψdf.= {s ↾ A,C |s ∈ φ‖ψ}.

Now, recall that composition of strategies is “internal communication plus hiding”, whichcan be seen precisely in the above definition. We now reformulate it as follows:

◮ Definition 3.5.8 (Concatenation on dynamic strategies). Let σ : J and τ : K be dynamicstrategies such that Hω(J) P A ⊸ B and Hω(K) P B ⊸ C for some normalized dynamicgames A, B and C. Their concatenation σ ‡ τ is defined by:

σ ‡ τdf.= {s ∈ JJ‡K |s ↾ J ∈ σ, s ↾ K ∈ τ, s ↾ B[1], B[2] ∈ prB }

and their composition σ; τ is defined by:

σ; τdf.= Hω(σ ‡ τ).

◮ Theorem 3.5.9 (Well-defined concatenation on dynamic strategies). Let σ : J and τ : K bedynamic strategies such that Hω(J) P A ⊸ B and Hω(K) P B ⊸ C, where A, B and C arenormalized dynamic games. Then, σ ‡ τ : J ‡K and σ; τ = Hω(σ ‡ τ) : A⊸ C. If σ and τ are innocent(resp. wb, total, noetherian), then so is σ ‡ τ . Given σ′ : J and τ ′ : K with σ ≃J σ

′ and τ ≃K τ ′, wehave σ ‡ τ ≃J‡K σ′ ‡ τ ′.

Proof. We just show the first statement as the other ones are straightforward. It then suffices toprove σ ‡ τ : J ‡K and Hω(σ ‡ τ) = σ; τ since it implies σ; τ = Hω(σ ‡ τ) : Hω(J ‡K) P A⊸ Cby Lemmata 3.3.15 and 3.4.10. However, Hω(σ ‡ τ) = σ; τ is immediate from the definition ofconcatenation; thus, we focus on σ ‡ τ : J ‡K .

First, we have σ ‡ τ ⊆ PJ‡K as any s ∈ σ ‡ τ satisfies s ∈ JJ‡K , s ↾ J ∈ σ ⊆ PJ , s ↾ K ∈τ ⊆ PK and s ↾ B[1], B[2] ∈ prB . It is also immediate that such s is of even-length. It remains toverify the axioms S1 and S2. For this, we need:

(♦) Each s ∈ σ ‡ τ consists of adjacent pairs mn such that m,n ∈MJ or m,n ∈MK .

Proof of the claim ♦. By induction on |s|. The base case is trivial. For the inductive step, letsmn ∈ σ ‡ τ . If m ∈ MJ , then (s ↾ J).m.(n ↾ J) ∈ σ, where s ↾ J is of even-length by theinduction hypothesis. Thus, we must have n ∈ MJ . If m ∈ MK , then n ∈ MK by the sameargument. �

◮ (S1) Clearly, ǫ ∈ σ ‡ τ , so σ ‡ τ is non-empty. For even-prefix-closure, assume smn ∈ σ ‡ τ .Then, by the claim ♦, either m,n ∈MJ or m,n ∈MK . In either case, it is straightforwardto see that s ∈ PJ‡K , s ↾ J ∈ σ, s ↾ K ∈ τ and s ↾ B[1], B[2] ∈ prB , i.e., s ∈ σ ‡ τ .

◮ (S2) Assume smn, smn′ ∈ σ ‡ τ . By the claim ♦, either m,n, n′ ∈MJ or m,n, n′ ∈MK . Inthe former case, (s ↾ J).mn, (s ↾ J).mn′ ∈ σ. Thus, n = n′ and Jsmn(n) = J(s↾J).mn(n) =J(s↾J).mn′(n′) = Jsmn′(n′) by S2 on σ, where note that n and n′ are both P-moves andthus non-initial in J . The latter case may be handled similarly.

43

Page 44: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

Therefore, we have shown that σ ‡ τ : J ‡K . �

Next, to give a CCBoC of dynamic games and strategies in Section 4, we need to generalizepairing and promotion of (dynamic) strategies; pairing and promotion of dynamic games inSection 3.3 have been introduced for these generalizations.

◮ Definition 3.5.10 (Pairing of dynamic strategies). Given dynamic strategies φ : L and ψ : Rsuch that Hω(L) P C ⊸ A and Hω(R) P C ⊸ B for some normalized dynamic games A, Band C, their pairing 〈φ, ψ〉 is defined by:

〈φ, ψ〉df.= {s ∈ L〈L,R〉 |(s ↾ L ∈ φ ∧ s ↾ R = ǫ) ∨ (s ↾ R ∈ ψ ∧ s ↾ L = ǫ)}.

◮ Theorem 3.5.11 (Well-defined pairing on dynamic strategies). Given dynamic strategies φ : L andψ : R with Hω(L) P C ⊸ A and Hω(R) P C ⊸ B for some normalized dynamic games A, B and C,〈φ, ψ〉 is a dynamic strategy on 〈L,R〉. If φ and ψ are innocent (resp. wb, total, noetherian), then so is〈φ, ψ〉. Given φ′ : L and ψ′ : R with φ ≃L φ

′ and ψ ≃R ψ′, we have 〈φ, ψ〉 ≃〈L,R〉 〈φ′, ψ′〉.

Proof. Straightforward. �

◮ Definition 3.5.12 (Promotion of dynamic strategies). Given a dynamic strategy ϕ : G such thatHω(G) P !A ⊸ B for some normalized dynamic games A and B, its promotion ϕ† is definedby:

ϕ† df.= {s ∈ LG† |∀i ∈ N.s ↾ i ∈ ϕ}.

◮ Theorem 3.5.13 (Well-defined promotion on dynamic strategies). Given a dynamic strategy ϕ : Gwith Hω(G) P !A ⊸ B for some normalized dynamic games A and B, ϕ† is a dynamic strategy onG†. If ϕ is innocent (resp. wb, total, noetherian), then so is ϕ†. Given ϕ′ : G with ϕ ≃G ϕ′, we haveϕ† ≃G† ϕ′†.

Proof. Straightforward. �

It is easy to see that the new pairing and promotion on normalized dynamic strategies coin-cides with the conventional ones, respectively; in this sense, the former generalizes the latter.

At the end of the present section, as in the case of dynamic games, we establish the hidinglemma on dynamic strategies. We first need the following:

◮ Lemma 3.5.14 (Hiding on legal positions in the second form). For any dynamic arena G andnumber d ∈ N ∪ {ω}, we have LHd(G) = {s♮Hd

G |s ∈ LG}.

Proof. Observe that:

{s♮HdG |s ∈ LG} = {s♮Hd

G |s ∈ LG, s is d-complete}

(⊇ is clear; ⊆ is by the prefix-closure of the set of legal positions)

= {HdG(s)|s ∈ LG, s is d-complete}

= {HdG(s)|s ∈ LG} (by the same argument as above)

= LHd(G) (by Corollary 3.2.8)

completing the proof. �

◮ Notation. We write ♠i∈I , where I is {1} or {1, 2}, for a construction on dynamic strategies,i.e., ♠i∈I is either ⊗, ;, ( )†, 〈 , 〉 or ‡.

44

Page 45: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ Lemma 3.5.15 (Hiding lemma on dynamic strategies). Let ♠i∈I be a construction on dynamicstrategies, and σi : Gi for each i ∈ I . Then, for all d ∈ N ∪ {ω}, we have:

1. Hd(♠i∈Iσi) = ♠i∈IHd(σi) if ♠i∈I is ⊗, ;, ( )† or 〈 , 〉;

2. Hd(σ1 ‡ σ2) = Hd(σ1) ‡ Hd(σ2) if Hd(σ1 ‡ σ2) is not normalized;

3. Hd(σ1 ‡ σ2) = Hd(σ1);Hd(σ2) otherwise.

Proof. As in the case of dynamic games, it suffices to assume d = 1. Here, we just focus onpairing since the other constructions may be handled analogously.

Let σi : Gi, i = 1, 2, be dynamic strategies such that Hω(G1) P C ⊸ A, Hω(G2) P C ⊸ Bfor some normalized dynamic games A, B and C. For H(〈σ1, σ2〉) ⊆ 〈H(σ1),H(σ2)〉, observe:

s ∈ H(〈σ1, σ2〉)

⇒ ∃t ∈ 〈σ1, σ2〉.t♮H1〈G1,G2〉

= s

⇒ ∃t ∈ L〈G1,G2〉.t♮H1〈G1,G2〉

= s ∧ ((t ↾ G1 ∈ σ1 ∧ t ↾ G2 = ǫ) ∨ (t ↾ G2 ∈ σ2 ∧ t ↾ G1 = ǫ))

⇒ s ∈ LH(〈G1,G2〉) ∧ (s ↾ H(G1) ∈ H(σ1) ∧ s ↾ H(G2) = ǫ)

∨ (s ↾ H(G2) ∈ H(σ2) ∧ s ↾ H(G1) = ǫ)) (by Lemma 3.5.14)

⇒ s ∈ 〈H(σ1),H(σ2)〉.

Next, we show the converse:

s ∈ 〈H(σ1),H(σ2)〉

⇒ s ∈ LH(〈G1,G2〉) ∧ (s ↾ H(G1) ∈ H(σ1) ∧ s ↾ H(G2) = ǫ)

∨ (s ↾ H(G2) ∈ H(σ2) ∧ s ↾ H(G1) = ǫ))

⇒ (∃u ∈ σ1.u♮H1G1

= s ↾ H(G1) ∧ u ↾ G2 = ǫ)

∨ (∃v ∈ σ2.v♮H1G2

= s ↾ H(G2) ∧ v ↾ H(G1) = ǫ)

⇒ ∃w ∈ 〈σ1, σ2〉.w♮H1〈G1,G2〉

= s

⇒ s ∈ H(〈σ1, σ2〉).

This hiding lemma, together with the hiding lemma on dynamic games (Lemma 3.3.15), willplay a key role in establishing our game-semantic CCBoC in the next section.

4 Dynamic Game Semantics of System T

This section is the climax of the paper: We establish a game-semantic instance of a CCBoC DGand a structure T in DG, and show that the interpretation J KTDG satisfies PDCP, thus DCP, givingthe first instance of dynamic game semantics.

4.1 Dynamic Game Semantics of System T

Let us give our CCBoC DG of dynamic games and strategies. By Lemma 2.1.2, it suffices to givea CCC equipped with an evaluation, in which the equality = on morphisms is replaced by theequivalence relation ∼= induced by the evaluation.

45

Page 46: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ Definition 4.1.1 (The CCBoC DG). The CCBoC DG = (DG,H) is defined by:

◮ Objects are normalized dynamic games;

◮ Morphisms A → B are the equivalence classes [φ] of valid dynamic strategies13 φ : Jsuch that Hω(J) P A ⇒ B with respect to the equivalence relation ≃A→B defined by

φ ≃A→B φ′df.⇔ Hω(φ) ≃A⇒B Hω(φ′) for any valid φ′ : J ;

◮ The composition [φ]; [ψ] : A→ C of morphisms [φ] : A→ B and [ψ] : B → C is [φ† ‡ ψ];

◮ The identity idA : A→ A on each object A is [derA];

◮ The evaluation H is the hiding operation on dynamic strategies (Definition 3.4.8) defined

on morphisms [φ] : A→ B by H([φ])df.= [H(φ)];

◮ The terminal object is the terminal game T (Example 3.2.2) modified to be a normalizeddynamic game in the obvious manner;

◮ Binary product and exponential are defined by A × Bdf.= A&B and A ⇒ B

df.= !A ⊸ B,

respectively, for all objects A and B;

◮ Pairing is defined by 〈[α], [β]〉df.= [〈α, β〉] : C → A&B for all objects A, B and C and

morphisms [α] : C → A and [β] : C → B;

◮ The projections π1 : A&B → A and π2 : A&B → B are [derA] and [derB] up to “tags” forall objects A and B;

◮ Currying is defined by Λ([ϕ])df.= [Λ(ϕ)] : A → (B ⇒ C) for all objects A, B and C and

morphism [ϕ] : A&B → C, where Λ(ϕ) is ϕ up to “tags”;

◮ The evaluation evB,C : (B ⇒ C)&B → C is [derB⇒C ] up to “tags” for all objects B and C.

◮ Theorem 4.1.2 (Well-defined DG). The structure DG forms a CCBoC.

Proof. By Lemma 2.1.2, it suffices to show that DG is a CCC up to the equivalence relation ∼= onmorphisms induced by H.

For the composition, let [φ] : A→ B and [ψ] : B → C be any morphisms in DG, i.e., φ : J andψ : K are valid dynamic strategies such that Hω(J) P A ⇒ B and Hω(K) P B ⇒ C for somenormalized dynamic games A, B and C. Then, φ† : J† by Theorem 3.5.13 and ψ : K such thatHω(J†) P Hω(J)† P !A⊸ !B by Lemma 3.3.15 and Theorem 3.3.10 and Hω(K) P !B ⊸ C; thus,we may form the concatenation φ†‡ψ : J†‡K such that Hω(J†‡K) P Hω(J)†;Hω(K) P !A⊸ Cby Lemma 3.3.15. Since promotion and concatenation preserve validity of dynamic strategies,φ† ‡ ψ is valid, and thus [φ† ‡ ψ] is a morphism A → C in DG. Note that the composition doesnot depend on the choice of representatives φ and ψ.

13We may impose innocence, well-bracketing, totality and noetherianity conditions on morphisms, which makessense if we would like to focus on morphisms that may be regarded as proofs, but we have chosen not to do so forsimplicity.

46

Page 47: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

Clearly, associativity of the composition up to ∼= holds: Given morphisms [φ] : A → B,[ψ] : B → C and [ϕ] : C → D, we have:

Hω(([φ]; [ψ]); [ϕ]) = Hω([(φ† ‡ ψ)† ‡ ϕ])

= [Hω((φ† ‡ ψ)† ‡ ϕ)]

= [((Hω(φ)†;Hω(ψ))†;Hω(ϕ))]

= [((Hω(φ)†;Hω(ψ)†);Hω(ϕ))]

= [(Hω(φ)†; (Hω(ψ)†;Hω(ϕ))]

= [Hω(φ† ‡ (ψ† ‡ ϕ))]

= Hω([φ† ‡ (ψ† ‡ ϕ)])

= Hω([φ]; ([ψ]; [ϕ])).

Unit law up to ∼= holds in a similar manner:

Hω(idA; [φ]) = Hω([derA]; [φ])

= Hω([der†A ‡ φ])

= [Hω(der†A ‡ φ)]

= [der†A;Hω(φ)]

= [Hω(φ)]

= Hω([φ])

and also Hω([φ]; idB) = Hω([φ]) in a completely analogous manner.Also, H clearly satisfies the axioms of BoC (Definition 2.1.1). Thus, we have shown that DG

is a BoC. It remains to verify its cartesian closed structure up to ∼=.The universal property of the terminal dynamic game T up to ∼= is obvious: [!A] : A → T ,

where !A = : A⇒ T , is the unique morphism.The projections are clearly well-defined values. Given morphisms [α] : C → A and [β] : C →

B, i.e., α : L and β : R for some dynamic games L and R such that Hω(J) P C ⇒ A, Hω(R) PC ⇒ B, we may obtain the pairing 〈α, β〉 : 〈L,R〉 such that Hω(〈L,R〉) P 〈Hω(L),Hω(R)〉 PC ⇒ A&B again by Lemmata 3.3.15 and 3.3.14 and Theorem 3.3.7; thus 〈[α], [β]〉 is a morphismC → A&B. Also, we have:

Hω(〈[α], [β]〉;π1) = Hω([〈α, β〉]; [derA])

= Hω([〈α, β〉† ‡ derA])

= [Hω(〈α†, β†〉 ‡ derA)]

= [〈Hω(α)†,Hω(β)†〉; derA]

= [Hω(α)]

= Hω([α])

and similarly Hω(〈[α], [β]〉;π2) = Hω([β]).

47

Page 48: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

Next, given a morphism [ρ] : C → A&B, we have:

Hω(〈[ρ];π1, [ρ];π2〉) = Hω(〈[ρ† ‡ derA], [ρ† ‡ derB]〉)

= Hω([〈ρ† ‡ derA, ρ† ‡ derB〉])

= [Hω(〈ρ† ‡ derA, ρ† ‡ derB〉)]

= [〈Hω(ρ)†; derA,Hω(ρ)†; derB〉]

= [Hω(ρ)]

= Hω([ρ]).

The evaluation evB,C for any dynamic games B and C is clearly a value evB,C : (B ⇒C)&B → C that satisfies

Hω((ΛB([µ]) × idB)† ‡ evB,C) = [(ΛB(H

ω(µ)) × derB)†; derB⇒C ] = [Hω(µ)] = Hω([µ])

Hω(ΛB(([ν]× idB)† ‡ evB,C)) = [ΛB((H

ω(ν) × derB)†; derB⇒C)] = [Hω(ν)] = Hω([ν])

for any morphisms [µ] : A&B → C and [ν] : A→ (B ⇒ C).Finally, the composition, the pairing and the currying preserve the equivalence relation ∼=

by Lemma 3.5.15, completing the proof. �

We proceed to give a structure for System Tϑ in DG:

◮ Definition 4.1.3 (Structure T in DG). The structure T = (N, ( ), ϑ) of dynamic games andstrategies for System Tϑ in DG is defined as follows:

◮ N is the normalized dynamic game of natural numbers in Example 3.2.3;

◮ ndf.= [Pref({qn})] : T → N , where Pref({qn}) : T ⇒ N , for each n ∈ N;

◮ ϑ : N ×Nω ⇒ N is the standard interpretation of the case construction in PCF [AM99].

4.2 Main Result

At last, we are now ready to prove that our game semantics of System Tϑ in fact satisfies a DCP:

◮ Theorem 4.2.1 (Main theorem). The interpretation J KTDG of System Tϑ satisfies the PDCP withrespect to →Tϑ

.

Proof. As H clearly computes in the FCFE-fashion, it remains to show for any (λxA.V)W →TϑU,

where V, W and U are values, H(J(λxA.V)WKTDG) = JUKTDG . For this, we define the height Ht(B) ∈

N of each type B by Ht(N)df.= 0 and Ht(B1 ⇒ B2)

df.= max(Ht(B1)+1,Ht(B2)). Then, the equation

is shown by induction on the height of the type A of W.

Below, given morphisms [τ ] : C → (A ⇒ B) and [σ] : C → A in DG, we define [τ ]⌊[σ]⌋df.=

〈[τ ], [σ]〉† ‡ evA,B : C → B. If [τ ] : C → (A1 ⇒ A2 ⇒ · · · ⇒ Ak ⇒ B) and [σi] : C → Ai

for i = 1, 2, . . . , k, then we write [τ ]⌊[σ1], [σ2], . . . , [σk]⌋ for [τ ]⌊[σ1]⌋⌊[σ2]⌋ . . . ⌊[σk]⌋ : C → B. Weabbreviate the operational semantics →Tϑ

and the interpretation J KTD as → and J K, respectively.For the base case, assume Ht(A) = 0, i.e., A ≡ N. By induction on the length of V, we have:

◮ If V ≡ n with n ∈ N, then (λxA.n)W → n, and clearly H(J(λxA.n)WK) = JnK.

48

Page 49: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

◮ IfV ≡ λyC.V′, then (λxAyC.V′)W → λyC.U′ such that (λxA.V′)W → U′ (because nf ((λxAyC.V′)W) ≡nf (λyC.V′[W/x]) ≡ λyC.nf (V′[W/x]) ≡ λyC.nf ((λxA.V′)W)). By the induction hypothesis,we have H(J(λxA.V′)WK) = JU′K. Hence, we may conclude that:

H(JVWK) = H(〈ΛJAK(ΛJCK(JV′K)), JWK〉† ‡ ev)

= 〈ΛJAK(ΛJCK(JV′K)), JWK〉†; ev (by Lemma 3.5.15)

= ΛJCK(〈ΛJAK(JV′K), JWK〉†; ev)

= ΛJCK(H(〈ΛJAK(JV′K), JWK〉† ‡ ev))

= ΛJCK(H(J(λxA.V′)WK))

= ΛJCK(JU′K)

= JλyC.U′K.

◮ If V ≡ case(yV1 . . .Vk)[V0|V1| . . . ] with x 6= y, then (λxA.V)W → U, where

U ≡ case(ynf (V1[W/x]) . . . nf (Vk[W/x]))[nf (V0[W/x])|nf (V1[W/x])| . . . ].

By the induction hypothesis and the interpretation of the variable y, we have:

J(λxA.V)WK

=Hω(ΛJAK(〈JyK⌊JV1K, . . . , JVkK⌋, JV′0K, JV

′1K, . . . 〉

† ‡ ϑ)⌊JWK⌋)

=Hω(〈ΛJAK(JyK)⌊JWK⌋⌊ΛJAK(JV1K)⌊JWK⌋, . . . ,ΛJAK(JVkK)⌊JWK⌋⌋,ΛJAK(JV′0K)⌊JWK⌋,

ΛJAK(JV′1K)⌊JWK⌋, . . . 〉† ‡ ϑ)

=Hω(〈J(λx.y)WK⌊J(λx.V1)WK, . . . , J(λx.Vk)WK⌋, J(λx.V′0)WK, J(λx.V′

1)WK, . . . 〉† ‡ ϑ)

=Hω(〈JyK⌊Jnf (V1[W/x])K, . . . , Jnf (Vk[W/x])K⌋, Jnf (V′0[W/x])K, Jnf (V′

1[W/x])K, . . . 〉† ‡ ϑ)

(by the induction hypothesis)

= JUK.

◮ If V ≡ case(x)[V0|V1| . . . ], then (λxA.V)W → U, where

U ≡ case(W)[nf (V0[W/x])|nf (V1[W/x])| . . . ].

By the same reasoning as the above case, we have H(J(λxA.V)WK) = JUK.

Next, consider the inductive step; assume Ht(A) = h+1. We may proceed in the same way asthe base case, i.e., by induction on the length of V, except that the last case is now generalized asV ≡ case(xV1 . . .Vk)[V

′0|V

′1| . . . ] and A ≡ A1 ⇒ A2 ⇒ · · · ⇒ Ak ⇒ N (k > 0). We have to consider

the cases for k > 1; then we have (λxA.V)W → U, where

U ≡ case(nf (W(V1[W/x]) . . . (Vk[W/x])))[nf (V′0[W/x])|nf (V′

1[W/x])| . . . ].

49

Page 50: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

We then have the following chain of equations between dynamic strategies:

HJ(λx.V)WK

=H(ΛA(Hω(〈JxK⌊JV1K, . . . , JVkK⌋, JV

′0K, JV

′1K, . . . 〉

† ‡ ϑ))⌊JWK⌋)

=Hω(〈ΛA(JxK)⌊JWK⌋⌊ΛA(JV1K)⌊JWK⌋, . . . ,ΛA(JVkK)⌊JWK⌋⌋,ΛA(JV′0K)⌊JWK⌋,

ΛA(JV′1K)⌊JWK⌋, . . . 〉† ‡ ϑ)

=Hω(〈J(λx.x)WK⌊J(λx.V1)WK, . . . , J(λx.Vk)WK⌋, J(λx.V′0)WK, J(λx.V′

1)WK, . . . 〉† ‡ ϑ)

=Hω(〈JWK⌊Jnf (V1[W/x])K, . . . , Jnf (Vk[W/x])K⌋, Jnf (V′0[W/x])K, Jnf (V′

1[W/x])K . . . 〉† ‡ ϑ)

(by the induction hypothesis with respect to the length of V)

=Hω(〈Jnf (W(V1[W/x]) . . . (Vk[W/x]))K, Jnf (V′0[W/x])K, Jnf (V′

1[W/x])K, . . . 〉† ‡ ϑ)

(by the induction hypothesis (applied k-times) with respect to the hight of types A)

= Jcase(nf (W(V1[W/x]) . . . (Vk[W/x])))[nf (V′0[W/x])|nf (V′

1[W/x])| . . . ]K

= JUK

which completes the proof. �

◮ Corollary 4.2.2 (DCP of DG). The interpretation J KTDG of System Tϑ and the hiding operation Hsatisfy the DCP with respect to →Tϑ

.

Proof. By Theorems 2.3.3 and 4.2.1. �

In fact, the relation between the syntax and semantics is much tighter than this corollary:If we carve out a model of computation T DG from DG that consists of definable elements, thenexploiting the correspondence between PCF Bohm trees and strategies [AC98, HO00], SystemTϑ can be seen as a formal calculus for T DG. As an illustration:

◮ Example 4.2.3. Consider a program x : N ⊢ cond(succx)x : N ⇒ N. Some typical plays of ourinterpretation of the program in DG are described in Tables 3 and 4 in which component dy-namic games containing internal moves are attached its degree of internality as a subscript.Also, some moves duplicated by concatenation are “merged” for readability. Note in particularthat when the hiding operation is executed and all the internal moves are hidden, the resultcoincides with the usual game-semantic interpretation.

N → N1 ⇒ N ⇒ N3 ⇒ N2 ⇒ Nq

q0

qq

qm

mm+ 1

m+ 1

Table 3: The strategy Jx : N ⊢ cond(succx)x : N ⇒ NK : N ⇒ N

50

Page 51: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

N → N1 ⇒ N ⇒ N3 ⇒ N2 ⇒ Nq

q7

qqn

nn

Table 4: The strategy Jx : N ⊢ cond(succx)x : N ⇒ NK : N ⇒ N

◮ Example 4.2.4. The program ⊢ (λxN.double(succxN))5 : N evaluates as:

(λx.double(succx))5

→∗Tϑ

(λx.(λz.case(z)[n 7→ 2·n])case(x)[n 7→ n+1])5

→Tϑ(λx.case(x)[n 7→ 2·(n+1)])5 →Tϑ

12.

In T DG, the corresponding computation proceeds as:

q356(q3)6(012)(234)(456)(678)(89(10))((10)(11)(12))12

H

7→∗qqq56(12)H7→ qq5(12)

H7→ q(12)

where we simplify the duplication of internal moves. In contrast to the last example, here werepresent plays of a dynamic game simply as sequences of moves as the diagrams would bemuch larger.

In contrast, the program ⊢ (λyN.succ((λxN.succ(doublexN))y))5 : N evaluates as:

(λy.succ((λx.succ(doublex))y))5

→∗Tϑ

(λy.succ((λx.succ(case(x)[n 7→ 2·n]))y))5

→Tϑ(λy.succ((λx.case(x)[n 7→ (2·n)+1])y))5

→Tϑ(λy.succ(case(y)[n 7→ (2·n)+1]))5

→Tϑ(λy.case(y)[n 7→ (2·n)+1+1])5 →Tϑ

12.

The corresponding computation in T DG is as follows:

q45(q3)5(012)(234)(456)(678)(89(10))(10)(11)(12)

H

7→∗qqqq5(10)(11)(12)H7→ qqq5(11)(12)

H7→ qq5(12)

H7→ q(12).

5 Conclusion and Future Work

We have given a mathematical, in particular syntax-independent, formulation of dynamics andintensionality of computation in terms of games and strategies. From the opposite angle, wehave developed a game-semantic framework for computational processes with a convenientformal calculus.

51

Page 52: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

The most immediate future work is to apply this framework to various logics and computa-tions as in the case of normalized dynamic (usual) game semantics. Moreover, since the hidingoperation can be further refined into the “move-wise” fashion, the present work may be appli-cable for finer calculi such as explicit substitution [Ros96] and the differential λ-calculus [ER03].Also, it would be interesting to see how accurately our game-semantic approach can measurethe complexity of (higher-order) programming.

Finally, the notion of BoCs can be a concept of interest in its own right. For instance, it mightbe fruitful to develop it further to accommodate various models of computations in the samespirit of [LN15] but on computation, not computability.

Acknowledgment

Norihiro Yamada acknowleges the support from Funai Overseas Scholarship. Samson Abram-sky acknowleges support from the EPSRC grant EP/K015478/1 on Quantum Mathematics andComputation, and U.S. AFOSR FA9550-12-1-0136.

References

[A+97] Samson Abramsky et al. Semantics of interaction: An introduction to game semantics.Semantics and Logics of Computation, Publications of the Newton Institute, pages 1–31,1997.

[Abr14] Samson Abramsky. Axioms for definability and full completeness. arXiv preprintarXiv:1401.4735, 2014.

[AC98] Roberto M Amadio and Pierre-Louis Curien. Domains and lambda-calculi. Number 46.Cambridge University Press, 1998.

[AF98] Jeremy Avigad and Solomon Feferman. Godels functional (dialectica) interpretation.Handbook of proof theory, 137:337–405, 1998.

[AJ94] Samson Abramsky and Radha Jagadeesan. Games and full completeness for multi-plicative linear logic. The Journal of Symbolic Logic, 59(02):543–574, 1994.

[AJM00] Samson Abramsky, Radha Jagadeesan, and Pasquale Malacaria. Full abstraction forPCF. Information and Computation, 163(2):409–470, 2000.

[AM99] Samson Abramsky and Guy McCusker. Game semantics. In Computational logic, pages1–55. Springer, 1999.

[BO08] William Blum and CHL Ong. A concrete presentation of game semantics, 2008.

[BS10] John Baez and Mike Stay. Physics, topology, logic and computation: a rosetta stone.In New structures for physics, pages 95–172. Springer, 2010.

[CH10] Pierre Clairambault and Russ Harmer. Totality in arena games. Annals of pure andapplied logic, 161(5):673–689, 2010.

[Cro93] Roy L Crole. Categories for Types. Cambridge University Press, 1993.

[Cur06] Pierre-Louis Curien. Notes on game semantics. From the author?s web page, 2006.

52

Page 53: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

[DGL05] Aleksandar Dimovski, Dan R Ghica, and Ranko Lazic. Data-abstraction refinement:A game semantic approach. In International Static Analysis Symposium, pages 102–117.Springer, 2005.

[ER03] Thomas Ehrhard and Laurent Regnier. The differential lambda-calculus. TheoreticalComputer Science, 309(1):1–41, 2003.

[Gir87] Jean-Yves Girard. Linear logic. Theoretical computer science, 50(1):1–101, 1987.

[Gir89] Jean-Yves Girard. Geometry of interaction I: Interpretation of System F. Studies inLogic and the Foundations of Mathematics, 127:221–260, 1989.

[Gir90] Jean-Yves Girard. Geometry of interaction II: Deadlock-free algorithms. In COLOG-88,pages 76–93. Springer, 1990.

[Gir95] Jean-Yves Girard. Geometry of interaction III: accommodating the additives. LondonMathematical Society Lecture Note Series, pages 329–389, 1995.

[Gir03] Jean-Yves Girard. Geometry of interaction IV: the feedback equation. In Logic Collo-quium, volume 3, pages 76–117. Citeseer, 2003.

[Gir11] Jean-Yves Girard. Geometry of interaction V: logic in the hyperfinite factor. TheoreticalComputer Science, 412(20):1860–1883, 2011.

[Gir13] Jean-Yves Girard. Geometry of interaction VI: a blueprint for transcendental syntax.preprint, 2013.

[Gre05] William Edward Greenland. Game Semantics for Region Analysis. PhD thesis, Universityof Oxford, 2005.

[GTL89] Jean-Yves Girard, Paul Taylor, and Yves Lafont. Proofs and Types, volume 7. CambridgeUniversity Press Cambridge, 1989.

[Gun92] Carl A Gunter. Semantics of Programming Languages: Structures and Techniques. MITpress, 1992.

[Han94] Chris Hankin. Lambda calculi: A guide for the perplexed. 1994.

[HO00] J Martin E Hyland and C-HL Ong. On full abstraction for PCF: I, II, and III. Informationand computation, 163(2):285–408, 2000.

[Hyl97] Martin Hyland. Game semantics. Semantics and logics of computation, 14:131, 1997.

[Jac99] Bart Jacobs. Categorical Logic and Type Theory, volume 141. Elsevier, 1999.

[LN15] John Longley and Dag Normann. Higher-Order Computability. Springer, 2015.

[McC98] Guy McCusker. Games and Full Abstraction for a Functional Metalanguage with RecursiveTypes. Springer Science & Business Media, 1998.

[Mel05] Paul-Andre Mellies. Axiomatic rewriting theory I: A diagrammatic standardizationtheorem. In Processes, Terms and Cycles: steps on the road to infinity, pages 554–638.Springer, 2005.

[Ong06] C-HL Ong. On model-checking trees generated by higher-order recursion schemes. In21st Annual IEEE Symposium on Logic in Computer Science (LICS’06), pages 81–90. IEEE,2006.

53

Page 54: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

[Oua97] Joel Ouaknine. A Two-Dimensional Extension of Lambek’s Categorical Proof Theory. PhDthesis, McGill University, Montreal, 1997.

[Pit01] Andrew M Pitts. Categorical logic. In Handbook of logic in computer science, pages39–123. Oxford University Press, 2001.

[Ros96] Kristoffer Høgsbro Rose. Explicit Substitution: Tutorial & Survey. Computer ScienceDepartment, 1996.

[See87] Robert AG Seely. Modelling computations: A 2-categorical framework. In LICS, pages65–71, 1987.

[SU06] Morten Heine Sørensen and Pawel Urzyczyn. Lectures on the Curry-Howard isomor-phism, volume 149. Elsevier, 2006.

[Tro73] Anne S Troelstra. Metamathematical investigation of intuitionistic arithmetic and analysis,volume 344. Springer Science & Business Media, 1973.

[Win93] Glynn Winskel. The Formal Semantics of Programming Languages: An Introduction. MITpress, 1993.

54

Page 55: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

A Proof of Lemma 3.3.13

We proceed by induction on the length of t = ur. If r is initial, then the clause 2 holds:

⌈t↾K⌉K = ⌈(u↾K).r⌉K = r = r ↾K = ⌈ur⌉J‡K ↾K = ⌈t⌉J‡K ↾K

and

⌊t↾K⌋K = ⌊(u↾K).r⌋K

= ⌊u↾K⌋K.r

� (⌊u⌋J‡K ↾K).r (by the induction hypothesis)

= (⌊u⌋J‡K).r ↾K

= ⌊ur⌋J‡K ↾K

= ⌊t⌋J‡K ↾K

Now, we may assume that r is non-initial; so we may write t = ur = u1lu2r, where r isjustified by l. We proceed by a case analysis on r. Let us first assume that r is an O-move:

1. If r ∈MJ \MB1 , then l ∈MJ . Thus, we have:

⌈t↾J⌉J = ⌈(u1 ↾J).l.(u2 ↾J).r⌉J

= ⌈u1 ↾J⌉J .lr

� (⌈u1⌉J‡K ↾J).lr (by the induction hypothesis)

= (⌈u1⌉J‡K).lr ↾J

= ⌈u1lu2r⌉J‡K ↾J

= ⌈t⌉J‡K ↾J

and

⌊t↾J⌋J = ⌊(u↾J).r⌋J

= ⌊u↾J⌋J .r

� (⌊u⌋J‡K ↾J).r (by the induction hypothesis)

= ⌊u⌋J‡K .r ↾J

= ⌊ur⌋J‡K ↾J

= ⌊t⌋J‡K ↾J.

2. If r ∈MK \MB2 , then l ∈MK . Thus, we have:

⌈t↾K⌉K = ⌈(u1 ↾K).l.(t2 ↾K).r⌉K

= ⌈u1 ↾K⌉K .lr

� (⌈u1⌉J‡K ↾K).lr (by the induction hypothesis)

= (⌈u1⌉J‡K).lr ↾K

= ⌈u1lu2r⌉J‡K ↾K

= ⌈t⌉J‡K ↾K

55

Page 56: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

and

⌊t↾K⌋K = ⌊(u↾K).r⌋K

= ⌊u↾K⌋K .r

� (⌊u⌋J‡K ↾K).r (by the induction hypothesis)

= ⌊u⌋J‡K .r ↾K

= ⌊ur⌋J‡K ↾K

= ⌊t⌋J‡K ↾K.

3. If r ∈MB1∪MB2 and it is an O-move in B1⊸B2, then l ∈MB1∪MB2 . Thus, we have:

⌈t↾B1, B2⌉B1⊸B2 = ⌈(u1 ↾B1, B2).l.(u2 ↾B1, B2).r⌉B1⊸B2

= ⌈(u1 ↾B1, B2)⌉B1⊸B2 .lr

� (⌊u1⌋J‡K ↾B1, B2).lr (by the induction hypothesis)

= ⌊u1⌋J‡K .lr ↾B1, B2

= ⌊u1lu2r⌋J‡K ↾B1, B2 (as r is a P-move in J ‡K)

= ⌊t⌋J‡K ↾B1, B2.

and

⌊t↾B1, B2⌋B1⊸B2 = ⌊(u↾B1, B2).r⌋B1⊸B2

= ⌊u↾B1, B2⌋B1⊸B2 .r

� (⌈u⌉J‡K ↾B1, B2).r (by the inductions hypothesis)

= ⌈u⌉J‡K .r ↾B1, B2

= ⌈ur⌉J‡K ↾B1, B2 (as r is a P-move in J ‡K)

= ⌈t⌉J‡K ↾B1, B2.

Next, let us consider the case where r is a P -move:

1. If r ∈MJ \MB1 , then l ∈MJ . Thus, we have:

⌈t↾J⌉J = ⌈(u↾J).r⌉J

= ⌈u↾J⌉J .r

� (⌈u⌉J‡K ↾J).r (by the induction hypothesis)

= ⌈u⌉J‡K .r ↾J

= ⌈ur⌉J‡K ↾J

= ⌈t⌉J‡K ↾J

and

⌊t↾J⌋J = ⌊(u1 ↾J).l.(u2 ↾J).r⌋J

= ⌊u1 ↾J⌋J .lr

� (⌊u1⌋J‡K ↾J).lr (by the induction hypothesis)

= (⌊u1⌋J‡K).lr ↾J

= ⌊u1lu2r⌋J‡K ↾J

= ⌊t⌋J‡K ↾J.

56

Page 57: Dynamic Games and Strategies - arXiv · Dynamic Games and Strategies ... (such as chess and poker) ... A strategy succ on this game that corresponds to the successor function can

2. If r ∈MK \MB2 , then l ∈MK . Thus, we have:

⌈t↾K⌉K = ⌈(u↾K).r⌉K

= ⌈u↾K⌉K .r

� (⌈u⌉J‡K ↾K).r (by the induction hypothesis)

= ⌈u⌉J‡K .r ↾K

= ⌈ur⌉J‡K ↾K

= ⌈t⌉J‡K ↾K

and

⌊t↾K⌋K = ⌊(u1 ↾K).l.(u2 ↾K).r⌋K

= ⌊u1 ↾K⌋K .lr

� (⌊u1⌋J‡K ↾K).lr (by the induction hypothesis)

= (⌊u1⌋J‡K).lr ↾K

= ⌊u1lu2r⌋J‡K ↾K

= ⌊t⌋J‡K ↾K

which completes the proof of the lemma.

57