Documentation

MulticolorRamsey.BookPrereq

theorem Real.pow_le_rpow_of_exponent_ge {x : } {y z : } (hx0 : 0 x) (hx1 : x 1) (hyz : z y) :
x ^ y x ^ z
theorem Finset.card_le_card_insert {α : Type u_1} [DecidableEq α] (a : α) (s : Finset α) :
theorem erm {R : Type u_1} [CommMonoidWithZero R] [PartialOrder R] [ZeroLEOneClass R] [PosMulMono R] {L : Type u_3} {f : LR} {r : R} {t : List L} (hf0 : xt, 0 f x) (hf : xt, r f x) :
theorem reh {V : Type} [Fintype V] [DecidableEq V] [Nonempty V] (Y : Finset V) :
theorem pk_subset {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {χ : SimpleGraph.TopEdgeLabelling V (Fin r)} {X' : Finset V} (nen : X'.Nonempty) (ki : Saga χ) (sub : X' ki.X) (i : Fin r) :
ki.p i p'p χ X' ki.Y i
structure BookParams (V : Type) (r : ) [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] :
Instances For
    noncomputable def BookParams.p₀ {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] (param : BookParams V r) :
    Equations
    Instances For
      noncomputable def BookParams.δp {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] (param : BookParams V r) :
      Equations
      Instances For
        theorem tpos {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} :
        0 1 - 1 / param.t
        theorem p₀pos {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} :
        0 param.p₀
        theorem p₀le {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {i : Fin r} :
        param.p₀ param.s.p i
        theorem δppos {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} :
        0 param.δp
        structure KeyIn {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] (param : BookParams V r) extends Saga param.χ :
        Instances For
          theorem p'_le_one {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (kin : KeyIn param) (i : Fin r) :
          kin.p i 1
          noncomputable def KeyIn.α {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (kin : KeyIn param) (i : Fin r) :
          Equations
          Instances For
            theorem αpos {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (kin : KeyIn param) (i : Fin r) :
            0 < kin.α i
            noncomputable def β (r : ) :
            Equations
            Instances For
              noncomputable def C (r : ) :
              Equations
              Instances For
                theorem βpos {r : } [Nonempty (Fin r)] :
                0 < β r
                theorem βposr {r : } [Nonempty (Fin r)] :
                0 < β r / r
                structure KeyOut {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (bin : KeyIn param) extends Saga param.χ :
                Instances For
                  noncomputable def keybi {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (bin : KeyIn param) :
                  KeyOut bin
                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    noncomputable def ε {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] (param : BookParams V r) :
                    Equations
                    Instances For
                      noncomputable def Xb {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] (param : BookParams V r) (Λs : Fin rList ) (T : Fin rFinset V) (i : Fin r) :
                      Equations
                      Instances For
                        theorem εpos {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {t : } :
                        0 ε param t
                        theorem εle1 {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {t : } :
                        ε param t 1
                        theorem εleβ {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {t : } :
                        ε param r β r
                        structure BookIn {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] (param : BookParams V r) extends KeyIn param :
                        Instances For
                          noncomputable def BookParams.bin {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] (param : BookParams V r) :
                          BookIn param
                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            def BookIn.maxB {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (bin : BookIn param) :
                            Equations
                            Instances For
                              noncomputable def BookIn.maxT {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (bin : BookIn param) :
                              Equations
                              Instances For
                                def BookIn.B {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (re : BookIn param) :
                                Fin r
                                Equations
                                Instances For
                                  def BookIn.C {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (re : BookIn param) :
                                  Fin r
                                  Equations
                                  Instances For
                                    noncomputable def BookIn.Xbound {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (bin : BookIn param) (T : Fin rFinset V) (i : Fin r) :
                                    Equations
                                    Instances For
                                      theorem Xbound_pos {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {bin : BookIn param} {T : Fin rFinset V} {i : Fin r} :
                                      0 < bin.Xbound T i
                                      structure BookOut {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] (param : BookParams V r) (maxT : ) :
                                      Instances For
                                        def newYb {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {bin : BookIn param} (kout : KeyOut bin.toKeyIn) (i : Fin r) :
                                        Equations
                                        Instances For
                                          def newY {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {bin : BookIn param} (kout : KeyOut bin.toKeyIn) (i j : Fin r) :
                                          Equations
                                          Instances For
                                            def newT {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {bin : BookIn param} (i j : Fin r) (x : V) :
                                            Equations
                                            Instances For
                                              theorem l42p {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (bin : BookIn param) (i : Fin r) :
                                              param.δp bin.p i
                                              theorem pl1 {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (bin : BookIn param) (i : Fin r) :
                                              param.δp 1
                                              theorem l42α {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (bin : BookIn param) (i : Fin r) :
                                              param.δ / (4 * param.t) bin.α i
                                              noncomputable def BookParams.B {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} :
                                              Equations
                                              Instances For
                                                theorem l43 {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} (bin : BookIn param) (i : Fin r) :
                                                theorem l44color {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {bin : BookIn param} {x : V} (kout : KeyOut bin.toKeyIn) (j : Fin r) (ghrm : xbin.T j) :
                                                have newY := fun (i : Fin r) => if i = j then kout.Y i else bin.Y i; have newT := fun (i : Fin r) => if i = j then insert x (bin.T i) else bin.T i; ∀ (i : Fin r), param.δp ^ ((newT i).card + bin.B i) * (param.s.Y i).card (newY i).card
                                                theorem l44boost {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {bin : BookIn param} {kout : KeyOut bin.toKeyIn} :
                                                have newΛs := fun (i : Fin r) => if i = kout.l then kout.Λ :: bin.Λs i else bin.Λs i; ∀ (i : Fin r), param.δp ^ ((bin.T i).card + (newΛs i).length) * (param.s.Y i).card (newYb kout i).card
                                                theorem l45boost {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {bin : BookIn param} {kout : KeyOut bin.toKeyIn} :
                                                have newΛs := fun (i : Fin r) => if i = kout.l then kout.Λ :: bin.Λs i else bin.Λs i; ∀ (i : Fin r), Xb param newΛs bin.T i kout.X.card
                                                theorem l45color {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {bin : BookIn param} (kout : KeyOut bin.toKeyIn) (j : Fin r) (jn : j kout.l) :
                                                have X' := N param.χ j kout.x kout.X; have newT := fun (i : Fin r) => if i = j then insert kout.x (bin.T i) else bin.T i; ∀ (i : Fin r), bin.Xbound newT i X'.card
                                                theorem l41nothing {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {bin : BookIn param} (X' : Finset V) (X'sub : X' bin.X) (i : Fin r) (nen : X'.Nonempty) :
                                                param.δ * ((1 - 1 / param.t) ^ (bin.T i).card * (List.map (fun (Λ : ) => 1 + Λ / param.t) (bin.Λs i)).prod) p'p param.χ X' bin.Y i - param.p₀ + param.δ
                                                theorem l41color {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {bin : BookIn param} {kout : KeyOut bin.toKeyIn} (j : Fin r) (Tne : kout.xbin.T j) (jnn : j kout.l) (nen : (N param.χ j kout.x kout.X).Nonempty) :
                                                have X' := N param.χ j kout.x kout.X; have newY := fun (i : Fin r) => if i = j then kout.Y i else bin.Y i; have newT := fun (i : Fin r) => if i = j then insert kout.x (bin.T i) else bin.T i; ∀ (i : Fin r), param.δ * ((1 - 1 / param.t) ^ (newT i).card * (List.map (fun (Λ : ) => 1 + Λ / param.t) (bin.Λs i)).prod) p'p param.χ X' newY i - param.p₀ + param.δ
                                                theorem l41boost {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {bin : BookIn param} {kout : KeyOut bin.toKeyIn} :
                                                have newΛs := fun (i : Fin r) => if i = kout.l then kout.Λ :: bin.Λs i else bin.Λs i; ∀ (i : Fin r), param.δ * ((1 - 1 / param.t) ^ (bin.T i).card * (List.map (fun (Λ : ) => 1 + Λ / param.t) (newΛs i)).prod) p'p param.χ kout.X (newYb kout) i - param.p₀ + param.δ
                                                theorem l46 {V : Type} {r : } [Fintype V] [DecidableEq V] [Nonempty V] [Nonempty (Fin r)] {param : BookParams V r} {bin : BookIn param} {i : Fin r} :
                                                (List.map (fun (Λ : ) => (1 + Λ)) (bin.Λs i)).sum param.t * 7 * r * Real.log (1 / param.δ) / param.Λ₀