Outcomes of loopy games #
We define when a loopy game is a win, a draw, or a loss with each player going first (under the normal play convention).
A surviving strategy for player p, going second.
This is a set of states, such that for every move the opposite player makes, p can bring it back
to the set.
You can think of this as a nonconstructive version of the more common definition of a strategy, which gives an explicit answer for every reachable state.
Equations
- LGame.IsStrategy p s = ∀ y ∈ s, ∀ z ∈ LGame.moves (-p) y, ∃ r ∈ LGame.moves p z, r ∈ s
Instances For
theorem LGame.IsStrategy.neg {p : Player} {s : Set LGame} (h : IsStrategy p s) :
IsStrategy (-p) (-s)
@[simp]
theorem LGame.IsStrategy.iUnion {p : Player} {ι : Sort u_1} {s : ι → Set LGame} (h : ∀ (i : ι), IsStrategy p (s i)) :
IsStrategy p (⋃ (i : ι), s i)
theorem LGame.IsStrategy.sUnion {p : Player} {S : Set (Set LGame)} (h : ∀ s ∈ S, IsStrategy p s) :
IsStrategy p (⋃₀ S)
IsDraw p x means that p draws x going first.
Equations
- LGame.IsDraw p x = (¬LGame.IsWin p x ∧ ¬LGame.IsLoss p x)
Instances For
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]