LeanPool.AFormalizationOfBorelDeterminacyInLean.Game.Games #
Auxiliary declarations for the Borel determinacy formalization.
a Gale-Stewart game is given by a tree of valid plays (usually pruned) and a payoff set
specifying the winner of an infinite play a : player 0 wins if and only if a ∈ G.payoff
- tree : ↥(Descriptive.tree A)
Auxiliary declaration for the Borel determinacy formalization.
- payoff : Set ↑(Descriptive.Tree.body self.tree)
Auxiliary declaration for the Borel determinacy formalization.
Instances For
The residual game starting in position x
Equations
Instances For
Auxiliary declaration for the Borel determinacy formalization.
Equations
- S.subgame = { tree := S.subtree, payoff := Subtype.val ⁻¹' Subtype.val '' G.payoff }
Instances For
player p wins if and only if the resulting play lies in p.payoff G
Equations
Instances For
A pre-strategy is winning if all compatible plays are won. Keeping this as a definition lets API-level simp lemmas remain stated in terms of winning strategies.
Equations
- s.IsWinning = (Descriptive.Tree.body s.subtree ⊆ Subtype.val '' p.payoff G)
Instances For
whether a winning strategy exists for player p
Equations
- G.ExistsWinning p = ∃ (S : GaleStewartGame.Strategy G.tree p), S.pre.IsWinning
Instances For
a game is determined if some player has a winning strategy
Equations
- G.IsDetermined = ∃ (p : GaleStewartGame.Player), G.ExistsWinning p