Constructive Game Logic [chapter]

Brandon Bohrer, André Platzer
2020 Lecture Notes in Computer Science  
Game Logic is an excellent setting to study proofs-aboutprograms via the interpretation of those proofs as programs, because constructive proofs for games correspond to effective winning strategies to follow in response to the opponent's actions. We thus develop Constructive Game Logic, which extends Parikh's Game Logic (GL) with constructivity and with first-order programs à la Pratt's first-order dynamic logic (DL). Our major contributions include: 1. a novel realizability semantics capturing
more » ... the adversarial dynamics of games, 2. a natural deduction calculus and operational semantics describing the computational meaning of strategies via proof-terms, and 3. theoretical results including soundness of the proof calculus w.r.t. realizability semantics, progress and preservation of the operational semantics of proofs, and Existential Properties enabling the extraction of computational artifacts from game proofs. Together, these results provide the most general account of a Curry-Howard interpretation for any program logic to date, and the first at all for Game Logic. This work is at the intersection of game logic and constructive modal logics. Individually, they have a rich literature, but little work has been done at their intersection. Of these, we are the first for GL and the first with a proofs-asprograms interpretation for a full first-order program logic. Games in Logic. Parikh's propositional GL [38] was followed by coalitional GL [39]. A first-order version of GL is the basis of differential game logic dGL [42] for hybrid games. GL's are unique in their clear delegation of strategy to the proof language rather than the model language, crucially allowing succinct game specifications with sophisticated winning strategies. Succinct specifications are important: specifications are trusted because proving the wrong theorem would not ensure correctness. Relatives without this separation include Strategy Logic [15], Alternating-Time Temporal Logic (ATL) [5], CATL [30], Ghosh's SDGL [24], Ramanujam's structured strategies [46], Dynamic-epistemic logics [6,10,49], evidence logics [9], and Angelic Hoare logic [35]. Constructive Modal Logics. A major contribution of CGL is our constructive semantics for games, not to be confused with game semantics [1], which are used to give programs semantics in terms of games. We draw on work in semantics for constructive modal logics, of which two main approaches are intuitionistic Kripke semantics and realizability semantics. An overview of Intuitionistic Kripke semantics is given by Wijesekera [52]. Intuitionistic Kripke semantics are parameterized over worlds, but in contrast to classical Kripke semantics, possible worlds represent what is currently known of the state. Worlds are preordered by w 1 ≥ w 2 when w 1 contains at least the knowledge in w 2 . Kripke semantics were used in Constructive Concurrent DL [53], where both the world and knowledge of it change during execution. A key advantage of realizability semantics [37, 33] is their explicit interpretation of constructivity as computability by giving a realizer, a program which witnesses a fact. Our semantics combine elements of both: Strategies are represented by realizers, while the game state is a Kripke world. Constructive set theory [2] aids in understanding which set operations are permissible in constructive semantics. Modal semantics have also exploited mathematical structures such as: i) Neighborhood models [8], topological models for spatial logics [7], and temporal logics of dynamical systems [20]. ii) Categorical [3], sheaf [28], and pre-sheaf [23] models. iii) Coalgebraic semantics for classical Propositional Dynamic Logic 86 B. Bohrer and A. Platzer Definition 3 (CGL Formulas). The set of CGL formulas φ (also ψ, ρ) is given recursively by the grammar: φ ::= α φ | [α]φ | f ∼ g 88 B. Bohrer and A. Platzer
doi:10.1007/978-3-030-44914-8_4 fatcat:by5xt6i2g5gi7ds2kebai5otgu