Documentation

LeanPool.Monsky.RainbowTriangles

LeanPool.Monsky.RainbowTriangles #

Imported Lean Pool material for LeanPool.Monsky.RainbowTriangles.

One square and an odd number of triangles #

The three colors used in Monsky's coloring of the plane: red, green and blue.

Instances For
    @[implicit_reducible]
    Equations

    Monsky's three-coloring of a point of the plane induced by a valuation v.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      theorem LeanPool.Monsky.green_region {Γ₀ : Type} [LinearOrderedCommGroupWithZero Γ₀] (v : Valuation Γ₀) (X : EuclideanSpace (Fin 2)) :
      coloring v X = Color.Greenv (X.ofLp 0) < v (X.ofLp 1) v (X.ofLp 1) v 1
      theorem LeanPool.Monsky.red_region {Γ₀ : Type} [LinearOrderedCommGroupWithZero Γ₀] (v : Valuation Γ₀) (X : EuclideanSpace (Fin 2)) :
      coloring v X = Color.Redv (X.ofLp 0) < v 1 v (X.ofLp 1) < v 1
      theorem LeanPool.Monsky.blue_region {Γ₀ : Type} [LinearOrderedCommGroupWithZero Γ₀] (v : Valuation Γ₀) (X : EuclideanSpace (Fin 2)) :
      coloring v X = Color.Bluev (X.ofLp 0) v 1 v (X.ofLp 0) v (X.ofLp 1)

      A triangle is rainbow if its three vertices receive all three colors.

      Equations
      Instances For
        theorem LeanPool.Monsky.valuation_bounds {Γ₀ : Type} [LinearOrderedCommGroupWithZero Γ₀] (v : Valuation Γ₀) (X Y Z : EuclideanSpace (Fin 2)) (hb : coloring v X = Color.Blue) (hg : coloring v Y = Color.Green) (hr : coloring v Z = Color.Red) :
        v (X.ofLp 0 * Y.ofLp 1) 1 v (X.ofLp 1 * Z.ofLp 0) < v (X.ofLp 0 * Y.ofLp 1) v (Y.ofLp 0 * Z.ofLp 1) < v (X.ofLp 0 * Y.ofLp 1) v (X.ofLp 0 * Y.ofLp 1) > v (-(Y.ofLp 1 * Z.ofLp 0)) v (X.ofLp 0 * Y.ofLp 1) > v (-(X.ofLp 1 * Y.ofLp 0)) v (X.ofLp 0 * Y.ofLp 1) > v (-(X.ofLp 0 * Z.ofLp 1))
        theorem LeanPool.Monsky.valuation_max {Γ₀ : Type} [LinearOrderedCommGroupWithZero Γ₀] (v : Valuation Γ₀) {A a₁ a₂ a₃ a₄ a₅ : } (h1 : v A > v a₁) (h2 : v A > v a₂) (h3 : v A > v a₃) (h4 : v A > v a₄) (h5 : v A > v a₅) :
        v (A + a₁ + a₂ + a₃ + a₄ + a₅) = v A
        theorem LeanPool.Monsky.bounded_det {Γ₀ : Type} [LinearOrderedCommGroupWithZero Γ₀] (v : Valuation Γ₀) (X Y Z : EuclideanSpace (Fin 2)) (hb : coloring v X = Color.Blue) (hg : coloring v Y = Color.Green) (hr : coloring v Z = Color.Red) :
        v (X.ofLp 0 * Y.ofLp 1 + X.ofLp 1 * Z.ofLp 0 + Y.ofLp 0 * Z.ofLp 1 - Y.ofLp 1 * Z.ofLp 0 - X.ofLp 1 * Y.ofLp 0 - X.ofLp 0 * Z.ofLp 1) 1
        theorem LeanPool.Monsky.det_triv_triangle (X Y : EuclideanSpace (Fin 2)) :
        (det fun (x : Fin 3) => match x with | 0 => X | 1 => X | 2 => Y) = 0
        theorem LeanPool.Monsky.Lhull_equals_Thull (L : Fin 2EuclideanSpace (Fin 2)) :
        closedHull L = closedHull fun (x : Fin 3) => match x with | 0 => L 0 | 1 => L 0 | 2 => L 1
        def LeanPool.Monsky.σ :
        Fin 6Fin 3Fin 3

        The six permutations of Fin 3, indexed by Fin 6.

        Equations
        Instances For

          The sign of the permutation σ b, as a value in .

          Equations
          Instances For
            theorem LeanPool.Monsky.fun_in_bijections {i j k : Fin 3} :
            i ji kj k∃ (b : Fin 6), σ b = fun (x : Fin 3) => match x with | 0 => i | 1 => j | 2 => k
            theorem LeanPool.Monsky.det_perm {T : Fin 3EuclideanSpace (Fin 2)} (b : Fin 6) :
            det T = bSign b * det (T σ b)
            theorem LeanPool.Monsky.det_zero_perm {T : Fin 3EuclideanSpace (Fin 2)} (hT : det T = 0) (i j k : Fin 3) :
            (det fun (x : Fin 3) => match x with | 0 => T i | 1 => T j | 2 => T k) = 0
            theorem LeanPool.Monsky.linearCombinationDetMiddle {n : } {x z : EuclideanSpace (Fin 2)} {P : Fin nEuclideanSpace (Fin 2)} {α : Fin n} ( : i : Fin n, α i = 1) :
            (det fun (x_1 : Fin 3) => match x_1 with | 0 => x | 1 => i : Fin n, α i P i | 2 => z) = i : Fin n, α i * det fun (x_1 : Fin 3) => match x_1 with | 0 => x | 1 => P i | 2 => z
            theorem LeanPool.Monsky.linearCombinationDetFirst {n : } {y z : EuclideanSpace (Fin 2)} {P : Fin nEuclideanSpace (Fin 2)} {α : Fin n} ( : i : Fin n, α i = 1) :
            (det fun (x : Fin 3) => match x with | 0 => i : Fin n, α i P i | 1 => y | 2 => z) = i : Fin n, α i * det fun (x : Fin 3) => match x with | 0 => P i | 1 => y | 2 => z
            theorem LeanPool.Monsky.linearCombinationDetLast' {n : } {x y : EuclideanSpace (Fin 2)} {P : Fin nEuclideanSpace (Fin 2)} {α : Fin n} ( : i : Fin n, α i = 1) :
            (det fun (x_1 : Fin 3) => match x_1 with | 0 => x | 1 => y | 2 => i : Fin n, α i P i) = i : Fin n, α i * det fun (x_1 : Fin 3) => match x_1 with | 0 => x | 1 => y | 2 => P i
            theorem LeanPool.Monsky.det_0_triangle_imp_triv {T : Fin 3EuclideanSpace (Fin 2)} (hT : det T = 0) (x y z : EuclideanSpace (Fin 2)) :
            x closedHull Ty closedHull Tz closedHull T(det fun (x_1 : Fin 3) => match x_1 with | 0 => x | 1 => y | 2 => z) = 0
            theorem LeanPool.Monsky.no_Color_lines (L : Fin 2EuclideanSpace (Fin 2)) {Γ₀ : Type} [locg : LinearOrderedCommGroupWithZero Γ₀] (v : Valuation Γ₀) :
            ∃ (c : Color), PclosedHull L, coloring v P c
            theorem LeanPool.Monsky.get_color_of_rainbowTriangle {Γ₀ : Type} [LinearOrderedCommGroupWithZero Γ₀] (v : Valuation Γ₀) (T : Fin 3EuclideanSpace (Fin 2)) (rt : rainbowTriangle v T) (c : Color) :
            ∃ (i : Fin 3), coloring v (T i) = c
            theorem LeanPool.Monsky.no_odd_rainbowTriangle {Γ₀ : Type} [LinearOrderedCommGroupWithZero Γ₀] (v : Valuation Γ₀) (T : Fin 3EuclideanSpace (Fin 2)) (rt : rainbowTriangle v T) (vhalf : v (1 / 2) > 1) :
            ¬∃ (n : ) (_ : Odd n), |det T| / 2 = 1 / n