Documentation

LeanPool.AFormalizationOfBorelDeterminacyInLean.Proof.Zero.Lift

LeanPool.AFormalizationOfBorelDeterminacyInLean.Proof.Zero.Lift #

Auxiliary declarations for the Borel determinacy formalization.

Auxiliary declaration for the Borel determinacy formalization.

Equations
Instances For
    noncomputable def GaleStewartGame.BorelDet.Zero.Lift.toWLift {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : Lift hyp) :
    WLLift hyp

    Auxiliary declaration for the Borel determinacy formalization.

    Equations
    Instances For
      @[simp]
      theorem GaleStewartGame.BorelDet.Zero.Lift.toWLift_toLift {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : Lift hyp) :
      @[simp]
      theorem GaleStewartGame.BorelDet.Zero.Lift.liftTree_take {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : Lift hyp) (n : ) (h : 2 * k + 2 n) :
      @[simp]
      theorem GaleStewartGame.BorelDet.Zero.Lift.liftMediumVal_take {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : Lift hyp) (n : ) (h : 2 * k + 2 n) :
      @[simp]
      theorem GaleStewartGame.BorelDet.Zero.Lift.liftVal_take {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : Lift hyp) (n : ) (h : 2 * k + 2 n) :
      theorem GaleStewartGame.BorelDet.Zero.Lift.wLift_liftVal_mono {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H H' : Lift hyp} (h : H H') :
      theorem GaleStewartGame.BorelDet.Zero.Lift.Winnable.take {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (hW : H.Winnable) (n : ) (h : 2 * k + 2 n) :
      (H.take n h).Winnable
      noncomputable def GaleStewartGame.BorelDet.Zero.Lift.Winnable.toWLift' {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (hW : H.Winnable) :

      Auxiliary declaration for the Borel determinacy formalization.

      Equations
      Instances For
        @[simp]
        theorem GaleStewartGame.BorelDet.Zero.Lift.Winnable.toWLift'_toWLLift {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (hW : H.Winnable) :
        structure GaleStewartGame.BorelDet.Zero.Lift.LLift {A : Type u_1} {G : Game A} {k : } (hyp : Hyp G k) extends GaleStewartGame.BorelDet.Zero.Lift hyp :
        Type u_1

        Auxiliary declaration for the Borel determinacy formalization.

        Instances For
          theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.ext {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {x y : LLift hyp} (toLift : x.toLift = y.toLift) :
          x = y
          theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.ext_iff {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {x y : LLift hyp} :
          x = y x.toLift = y.toLift
          theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.losable {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) (h : H.ConLong) :
          theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.exists_prefix {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) :
          ∃ (n : ) (h : 2 * k + 2 n), (H.take n h).Lost'
          noncomputable def GaleStewartGame.BorelDet.Zero.Lift.LLift.minLength {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) :

          Auxiliary declaration for the Borel determinacy formalization.

          Equations
          Instances For
            @[simp]
            theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.minLength_le {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) :
            @[simp]
            theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.le_minLength {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) :
            2 * k + 2 H.minLength
            @[simp]
            theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.lt_minLength {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) :
            2 * k + 1 < H.minLength

            Auxiliary declaration for the Borel determinacy formalization.

            noncomputable def GaleStewartGame.BorelDet.Zero.Lift.LLift.takeMin {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) :
            Lift hyp

            Auxiliary declaration for the Borel determinacy formalization.

            Equations
            Instances For
              @[simp]
              theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.takeMin_x_coe {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) :
              @[simp]
              theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.takeMin_R {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) :
              H.takeMin.R = H.R
              @[simp]
              @[simp]
              theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.takeMin_game {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) :
              theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.min_prefix {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) :
              theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.le_of_take {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) {n : } {h : 2 * k + 2 n} (hL : (H.take n h).Lost') :
              noncomputable def GaleStewartGame.BorelDet.Zero.Lift.LLift.toWLLift {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) :
              WLLift hyp

              Auxiliary declaration for the Borel determinacy formalization.

              Equations
              Instances For
                @[simp]
                theorem GaleStewartGame.BorelDet.Zero.Lift.LLift.toWLLift_toLift {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : LLift hyp) :
                def GaleStewartGame.BorelDet.Zero.Lift.Lost'.mk {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Lost') :
                LLift hyp

                Auxiliary declaration for the Borel determinacy formalization.

                Equations
                • h.mk = { toLift := H, lost' := h }
                Instances For
                  @[simp]
                  theorem GaleStewartGame.BorelDet.Zero.Lift.Lost'.mk_toLift {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Lost') :
                  h.mk.toLift = H
                  def GaleStewartGame.BorelDet.Zero.Lift.extend' {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {n : } {H : Lift hyp} {h : 2 * k + 2 n} (hL : (H.take n h).Lost') :
                  LLift hyp

                  Auxiliary declaration for the Borel determinacy formalization.

                  Equations
                  Instances For
                    @[simp]
                    theorem GaleStewartGame.BorelDet.Zero.Lift.extend'_toLift {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {n : } {H : Lift hyp} {h : 2 * k + 2 n} (hL : (H.take n h).Lost') :
                    theorem GaleStewartGame.BorelDet.Zero.Lift.extend'_le {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {n : } {H : Lift hyp} {h : 2 * k + 2 n} (hL : (H.take n h).Lost') :
                    @[simp]
                    theorem GaleStewartGame.BorelDet.Zero.Lift.minLength_extend' {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {n : } {H : Lift hyp} {h : 2 * k + 2 n} (hL : (H.take n h).Lost') :
                    theorem GaleStewartGame.BorelDet.Zero.Lift.extend'_le' {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {n : } {H : Lift hyp} {h : 2 * k + 2 n} (hL : (H.take n h).Lost') :
                    @[simp]
                    theorem GaleStewartGame.BorelDet.Zero.Lift.takeMin_extend' {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {n : } {H : Lift hyp} {h : 2 * k + 2 n} (hL : (H.take n h).Lost') :
                    @[simp]
                    theorem GaleStewartGame.BorelDet.Zero.Lift.liftTree_extend' {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {n : } {H : Lift hyp} {h : 2 * k + 2 n} (hL : (H.take n h).Lost') :
                    @[simp]
                    theorem GaleStewartGame.BorelDet.Zero.Lift.liftMediumVal_extend' {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {n : } {H : Lift hyp} {h : 2 * k + 2 n} (hL : (H.take n h).Lost') :
                    @[simp]
                    theorem GaleStewartGame.BorelDet.Zero.Lift.liftVal_extend' {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {n : } {H : Lift hyp} {h : 2 * k + 2 n} (hL : (H.take n h).Lost') :
                    theorem GaleStewartGame.BorelDet.Zero.Lift.lost'_of_le {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H H' : Lift hyp} (h : H.Lost') (h' : H H') :
                    theorem GaleStewartGame.BorelDet.Zero.Lift.lLift_liftVal_mono {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H H' : Lift hyp} (h : H.Lost') (h' : H H') :
                    def GaleStewartGame.BorelDet.Zero.Lift.Lost {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : Lift hyp) :

                    Auxiliary declaration for the Borel determinacy formalization.

                    Equations
                    Instances For
                      theorem GaleStewartGame.BorelDet.Zero.Lift.Lost.extend {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {n : } {H : Lift hyp} {h : 2 * k + 2 n} (hL : (H.take n h).Lost) :
                      theorem GaleStewartGame.BorelDet.Zero.Lift.Lost.lost_of_le {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H H' : Lift hyp} (h : H.Lost) (h' : H H') :
                      H'.Lost
                      theorem GaleStewartGame.BorelDet.Zero.Lift.Lost.liftMedium_mem {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (hL : H.Lost) :
                      theorem GaleStewartGame.BorelDet.Zero.Lift.Lost.lift_mem {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (hL : H.Lost) (n : ) :
                      noncomputable def GaleStewartGame.BorelDet.Zero.Lift.Lost.toLLift' {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (hL : H.Lost) :

                      Auxiliary declaration for the Borel determinacy formalization.

                      Equations
                      Instances For
                        @[simp]
                        theorem GaleStewartGame.BorelDet.Zero.Lift.Lost.toLLift'_toWLLift {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (hL : H.Lost) :
                        theorem GaleStewartGame.BorelDet.Zero.Lift.Losable.extend {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {n : } {H : Lift hyp} {h : 2 * k + 2 n} (hL : (H.take n h).Losable) (hc : H.ConLong) :
                        theorem GaleStewartGame.BorelDet.Zero.Lift.Losable.losable_of_le {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H H' : Lift hyp} (h : H.Losable) (h' : H H') (hc : H'.ConLong) :
                        theorem GaleStewartGame.BorelDet.Zero.Lift.Losable.take {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {n : } {H : Lift hyp} (h : H.Losable) (hn : 1 .num + n) :
                        (H.take (2 * k + 1 + .num + n) ).Losable
                        noncomputable def GaleStewartGame.BorelDet.Zero.Lift.Losable.x' {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) :
                        (H.game.residual (List.take .num (List.drop (2 * k + 1) H.x))).tree

                        Auxiliary declaration for the Borel determinacy formalization.

                        Equations
                        Instances For
                          @[simp]
                          theorem GaleStewartGame.BorelDet.Zero.Lift.Losable.x'_coe {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) :
                          h.x' = List.drop (2 * k + 1 + .num) H.x
                          noncomputable def GaleStewartGame.BorelDet.Zero.Lift.Losable.a {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) (hp : IsPosition (↑H.x) Player.zero) :

                          Auxiliary declaration for the Borel determinacy formalization.

                          Equations
                          Instances For
                            noncomputable def GaleStewartGame.BorelDet.Zero.Lift.Losable.extension {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) (hp : IsPosition (↑H.x) Player.zero) :

                            Auxiliary declaration for the Borel determinacy formalization.

                            Equations
                            Instances For
                              noncomputable def GaleStewartGame.BorelDet.Zero.Lift.Losable.extensionPreLift {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) (hp : IsPosition (↑H.x) Player.zero) :

                              Auxiliary declaration for the Borel determinacy formalization.

                              Equations
                              Instances For
                                @[simp]
                                theorem GaleStewartGame.BorelDet.Zero.Lift.Losable.extensionPreLift_R {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) (hp : IsPosition (↑H.x) Player.zero) :
                                @[simp]
                                theorem GaleStewartGame.BorelDet.Zero.Lift.Losable.extensionPreLift_x {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) (hp : IsPosition (↑H.x) Player.zero) :
                                theorem GaleStewartGame.BorelDet.Zero.Lift.Losable.extensionPreLift_take {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) (hp : IsPosition (↑H.x) Player.zero) :
                                (h.extensionPreLift hp).take (↑H.x).length = H.toPreLift
                                @[simp]
                                theorem GaleStewartGame.BorelDet.Zero.Lift.Losable.extensionPreLift_game {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) (hp : IsPosition (↑H.x) Player.zero) :
                                noncomputable def GaleStewartGame.BorelDet.Zero.Lift.Losable.extensionLift {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) (hp : IsPosition (↑H.x) Player.zero) :
                                Lift hyp

                                Auxiliary declaration for the Borel determinacy formalization.

                                Equations
                                Instances For
                                  @[simp]
                                  theorem GaleStewartGame.BorelDet.Zero.Lift.Losable.extensionLift_toPreLift {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) (hp : IsPosition (↑H.x) Player.zero) :
                                  theorem GaleStewartGame.BorelDet.Zero.Lift.Losable.extensionLift_take {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) (hp : IsPosition (↑H.x) Player.zero) :
                                  (h.extensionLift hp).take (↑H.x).length = H
                                  theorem GaleStewartGame.BorelDet.Zero.Lift.Losable.extension_losable {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} {H : Lift hyp} (h : H.Losable) (hp : IsPosition (↑H.x) Player.zero) :
                                  noncomputable def GaleStewartGame.BorelDet.Zero.Lift.extension {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : Lift hyp) (hp : IsPosition (↑H.x) Player.zero) (R : ResStrategy upA hyp, T' Player.zero (↑H.x).length) :

                                  Auxiliary declaration for the Borel determinacy formalization.

                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  Instances For
                                    theorem GaleStewartGame.BorelDet.Zero.Lift.extension_winnable {A : Type u_1} {G : Game A} {k : } {hyp : Hyp G k} (H : Lift hyp) (hp : IsPosition (↑H.x) Player.zero) (R : ResStrategy upA hyp, T' Player.zero (↑H.x).length) (h : H.Winnable) :