Documentation

CombinatorialGames.Player

inductive Player :

Either the Left or Right player.

  • left : Player

    The Left player.

  • right : Player

    The Right player.

Instances For
    @[instance_reducible]
    Equations
    @[instance_reducible]
    Equations
    @[reducible, inline]
    abbrev Player.cases {α : Sort u_1} (l r : α) :
    Player → α

    Specify a function Player → α from its two outputs.

    Equations
    Instances For
      theorem Player.apply_cases {α : Sort u_1} {β : Sort u_2} (f : α → β) (l r : α) (p : Player) :
      f (cases l r p) = cases (f l) (f r) p
      @[simp]
      theorem Player.cases_inj {α : Sort u_1} {l₁ r₁ l₂ r₂ : α} :
      cases l₁ r₁ = cases l₂ r₂ ↔ l₁ = l₂ ∧ r₁ = r₂
      theorem Player.const_of_left_eq_right {α : Sort u_1} {f : Player → α} (hf : f left = f right) (p q : Player) :
      f p = f q
      theorem Player.const_of_left_eq_right' {f : Player → Prop} (hf : f left ↔ f right) (p q : Player) :
      f p ↔ f q
      @[simp]
      theorem Player.forall {p : Player → Prop} :
      (∀ (x : Player), p x) ↔ p left ∧ p right
      @[simp]
      theorem Player.exists {p : Player → Prop} :
      (∃ (x : Player), p x) ↔ p left ∨ p right
      @[instance_reducible]
      Equations
      @[simp]
      theorem Player.ne_iff_eq_neg {a b : Player} :
      a ≠ b ↔ a = -b
      theorem Player.absurd {p q : Player} (h1 : p = q) (h2 : p = -q) :
      @[instance_reducible]
      Equations
      @[simp]
      theorem Player.le_right_eq (p : Player) (h1 : p ≤ right) :
      @[simp]
      theorem Player.le_left_eq (p : Player) (h1 : left ≤ p) :
      @[simp]
      theorem Player.right_le (p : Player) :
      @[simp]
      theorem Player.le_left (p : Player) :