Type of players #
This file implements the two-element type of players (Left, Right), alongside other basic
notational machinery to be used within game theory.
Players #
Equations
- instFintypePlayer = { elems := { val := ↑Player.enumList, nodup := Player.enumList_nodup }, complete := instFintypePlayer._proof_1 }
Equations
Instances For
Equations
- instInhabitedPlayer = { default := instInhabitedPlayer.default }
Specify a function Player → α from its two outputs.
Equations
- Player.cases l r Player.left = l
- Player.cases l r Player.right = r
Instances For
Equations
- Player.instNeg = { neg := Player.cases Player.right Player.left }
Equations
- Player.instInvolutiveNeg = { toNeg := Player.instNeg, neg_neg := Player.instInvolutiveNeg._proof_1 }
The multiplication of Players is used to state the lemmas about the multiplication of
combinatorial games, such as IGame.mulOption_mem_moves_mul.
Equations
- Player.instMul = { mul := fun (x x_1 : Player) => match x, x_1 with | Player.left, p => p | Player.right, p => -p }
Equations
- Player.instHasDistribNeg = { toInvolutiveNeg := Player.instInvolutiveNeg, neg_mul := Player.instHasDistribNeg._proof_1, mul_neg := Player.instHasDistribNeg._proof_2 }
Equations
- One or more equations did not get rendered due to their size.
OfSets #
Type class for the ofSets operation.
Used to implement the !{st} and !{s | t} syntax.
- ofSets (st : Player → Set α) (h : Valid st) [Small.{u, u + 1} ↑(st Player.left)] [Small.{u, u + 1} ↑(st Player.right)] : α
Construct a combinatorial game from its left and right sets.
Conventions for notations in identifiers:
Instances
Construct a combinatorial game from its left and right sets.
Conventions for notations in identifiers:
- The recommended spelling of
!{st}'hin identifiers isofSets.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Construct a combinatorial game from its left and right sets.
Conventions for notations in identifiers:
- The recommended spelling of
!{s | t}'hin identifiers isofSets.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- tacticOf_sets_tactic = Lean.ParserDescr.node `tacticOf_sets_tactic 1024 (Lean.ParserDescr.nonReservedSymbol "of_sets_tactic" false)
Instances For
Construct a combinatorial game from its left and right sets.
Conventions for notations in identifiers:
- The recommended spelling of
!{st}in identifiers isofSets.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Construct a combinatorial game from its left and right sets.
Conventions for notations in identifiers:
- The recommended spelling of
!{s | t}in identifiers isofSets.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.