Documentation

LeanPool.InflationTermination.TriangleInflation.Graph.FivePath

The five-observer path (A4) #

Statements split from the original Statements.lean skeleton (one file per proving task). Everything in this file is proved; the order-t witness fivePath_witness and its expressible form live in InflationGraphOpen/FivePath.lean. See AUDIT-NOTES A4 for the mathematics.

FivePathAux collects the auxiliary material: the explicit enumeration of the 32 atoms and of the four sources of P₅, the decomposition of a GModel of P₅ into its four latent coordinates, and the analytic core of the bilocal inequality. Nothing in it changes any of the seven statements below, which appear in their original form.

Auxiliary material #

Identify a five-bit tuple with a Boolean assignment on five vertices.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    @[simp]
    theorem TriangleInflation.Graph.FivePathAux.fiveEquiv_apply (p : Bool × Bool × Bool × Bool × Bool) :
    fiveEquiv p = ![p.1, p.2.1, p.2.2.1, p.2.2.2.1, p.2.2.2.2]
    theorem TriangleInflation.Graph.FivePathAux.sum_five (F : (Fin 5 → Bool) → ℝ) :
    ∑ w : Fin 5 → Bool, F w = ∑ a : Bool, ∑ b : Bool, ∑ c : Bool, ∑ d : Bool, ∑ e : Bool, F ![a, b, c, d, e]
    theorem TriangleInflation.Graph.FivePathAux.five_ind (q0 q1 q2 q3 q4 : ℝ) (x z : Bool) :
    (∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then respMass q0 (w 0) * respMass q1 (w 1) * respMass q2 (w 2) * respMass q3 (w 3) * respMass q4 (w 4) else 0) = respMass q0 x * respMass q4 z
    theorem TriangleInflation.Graph.FivePathAux.five_ind_sgn (q0 q1 q2 q3 q4 : ℝ) (x z : Bool) :
    (∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then sgn (w 1) * sgn (w 2) * sgn (w 3) * (respMass q0 (w 0) * respMass q1 (w 1) * respMass q2 (w 2) * respMass q3 (w 3) * respMass q4 (w 4)) else 0) = respMass q0 x * ((2 * q1 - 1) * (2 * q2 - 1) * (2 * q3 - 1)) * respMass q4 z
    theorem TriangleInflation.Graph.FivePathAux.sqrt_cs {a b c d : ℝ} (ha : 0 ≤ a) (hb : 0 ≤ b) (hc : 0 ≤ c) (hd : 0 ≤ d) :
    √(a * c) + √(b * d) ≤ √((a + b) * (c + d))
    theorem TriangleInflation.Graph.FivePathAux.half_abs_add_le {u v : ℝ} (hu : |u| ≤ 1) (hv : |v| ≤ 1) :
    |(u + v) / 2| + |(u - v) / 2| ≤ 1
    theorem TriangleInflation.Graph.FivePathAux.bilocal_core {Λ Λ' : Type} [Fintype Λ] [Fintype Λ'] (ν : Λ → ℝ) (ν' : Λ' → ℝ) (hν : IsLaw ν) (hν' : IsLaw ν') (b : Bool → Λ → ℝ) (c : Λ → Λ' → ℝ) (d : Bool → Λ' → ℝ) (hb : ∀ (x : Bool) (l : Λ), |b x l| ≤ 1) (hc : ∀ (l : Λ) (r : Λ'), |c l r| ≤ 1) (hd : ∀ (z : Bool) (r : Λ'), |d z r| ≤ 1) (f : Bool → Bool → ℝ) (hf : ∀ (x z : Bool), f x z = ∑ l : Λ, ∑ r : Λ', ν l * ν' r * (b x l * c l r * d z r)) :
    √|1 / 4 * ∑ x : Bool, ∑ z : Bool, f x z| + √|1 / 4 * ∑ x : Bool, ∑ z : Bool, sgn x * sgn z * f x z| ≤ 1

    The analytic core of the bilocal inequality.

    theorem TriangleInflation.Graph.FivePathAux.prod_vert {β : Type u_1} [CommMonoid β] (g : fivePathGraph.V → β) :
    ∏ v : fivePathGraph.V, g v = g 0 * g 1 * g 2 * g 3 * g 4
    @[reducible, inline]

    The latent tuple type of the five-path.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      The latent assignment built from a tuple.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        theorem TriangleInflation.Graph.FivePathAux.tup_congr (M : GModel fivePathGraph) {x y : (e : fivePathGraph.Edge) → M.L e} {f g : fivePathGraph.Edge} (h : f = g) (hxy : x g = y g) :
        x f = y f

        Transport an equality of latent assignments along an equality of edges.

        Identify the four latent coordinates with an assignment to the path edges.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          theorem TriangleInflation.Graph.FivePathAux.sum_lat (M : GModel fivePathGraph) (F : ((e : fivePathGraph.Edge) → M.L e) → ℝ) :
          ∑ x : (e : fivePathGraph.Edge) → M.L e, F x = ∑ a : M.L E01, ∑ b : M.L E12, ∑ c : M.L E23, ∑ d : M.L E34, F (ofTup M (a, b, c, d))

          The response at a vertex, as a function of the whole latent tuple.

          Equations
          Instances For

            Response at the first endpoint, with the remaining coordinates fixed by q.

            Equations
            Instances For

              Response at vertex one, with the remaining coordinates fixed by q.

              Equations
              Instances For

                Response at the middle vertex, with the remaining coordinates fixed by q.

                Equations
                Instances For

                  Response at vertex three, with the remaining coordinates fixed by q.

                  Equations
                  Instances For

                    Response at the last endpoint, with the remaining coordinates fixed by q.

                    Equations
                    Instances For
                      theorem TriangleInflation.Graph.FivePathAux.gResp2 (M : GModel fivePathGraph) (q p : GTup M) :
                      gResp M 2 p = fC M q p.2.1 p.2.2.1
                      theorem TriangleInflation.Graph.FivePathAux.gResp3 (M : GModel fivePathGraph) (q p : GTup M) :
                      gResp M 3 p = fD M q p.2.2.1 p.2.2.2
                      theorem TriangleInflation.Graph.FivePathAux.law_eq (M : GModel fivePathGraph) (q : GTup M) (w : fivePathGraph.V → Bool) :
                      M.law w = ∑ a : M.L E01, ∑ b : M.L E12, ∑ c : M.L E23, ∑ d : M.L E34, M.μ E01 a * M.μ E12 b * M.μ E23 c * M.μ E34 d * (respMass (fA M q a) (w 0) * respMass (fB M q a b) (w 1) * respMass (fC M q b c) (w 2) * respMass (fD M q c d) (w 3) * respMass (fE M q d) (w 4))
                      theorem TriangleInflation.Graph.FivePathAux.cell_step (M : GModel fivePathGraph) (x z : Bool) :
                      (∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then M.law w else 0) = ∑ X : (e : fivePathGraph.Edge) → M.L e, (∏ e : fivePathGraph.Edge, M.μ e (X e)) * (respMass (M.resp 0 fun (e : ↥(fivePathGraph.inc 0)) => X ↑e) x * respMass (M.resp 4 fun (e : ↥(fivePathGraph.inc 4)) => X ↑e) z)
                      theorem TriangleInflation.Graph.FivePathAux.num_step (M : GModel fivePathGraph) (x z : Bool) :
                      (∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then sgn (w 1) * sgn (w 2) * sgn (w 3) * M.law w else 0) = ∑ X : (e : fivePathGraph.Edge) → M.L e, (∏ e : fivePathGraph.Edge, M.μ e (X e)) * (respMass (M.resp 0 fun (e : ↥(fivePathGraph.inc 0)) => X ↑e) x * (((2 * M.resp 1 fun (e : ↥(fivePathGraph.inc 1)) => X ↑e) - 1) * ((2 * M.resp 2 fun (e : ↥(fivePathGraph.inc 2)) => X ↑e) - 1) * ((2 * M.resp 3 fun (e : ↥(fivePathGraph.inc 3)) => X ↑e) - 1)) * respMass (M.resp 4 fun (e : ↥(fivePathGraph.inc 4)) => X ↑e) z)
                      theorem TriangleInflation.Graph.FivePathAux.respMass_nonneg {r : ℝ} (h0 : 0 ≤ r) (h1 : r ≤ 1) (b : Bool) :
                      theorem TriangleInflation.Graph.FivePathAux.sgnResp_abs_le {r : ℝ} (h0 : 0 ≤ r) (h1 : r ≤ 1) :
                      |2 * r - 1| ≤ 1
                      theorem TriangleInflation.Graph.FivePathAux.sum4_factor {A B C D : Type} [Fintype A] [Fintype B] [Fintype C] [Fintype D] (f : A → ℝ) (g : B → ℝ) (h : C → ℝ) (k : D → ℝ) (F : A → ℝ) (K : D → ℝ) (hg : ∑ b : B, g b = 1) (hh : ∑ c : C, h c = 1) :
                      ∑ a : A, ∑ b : B, ∑ c : C, ∑ d : D, f a * g b * h c * k d * (F a * K d) = (∑ a : A, f a * F a) * ∑ d : D, k d * K d

                      Factoring a four-fold latent sum whose summand depends only on the outer coordinates.

                      theorem TriangleInflation.Graph.FivePathAux.sum4_chain {A B C D : Type} [Fintype A] [Fintype B] [Fintype C] [Fintype D] (f : A → ℝ) (g : B → ℝ) (h : C → ℝ) (k : D → ℝ) (F : A → ℝ) (K : D → ℝ) (BB : A → B → ℝ) (CC : B → C → ℝ) (DD : C → D → ℝ) :
                      ∑ a : A, ∑ b : B, ∑ c : C, ∑ d : D, f a * g b * h c * k d * (F a * (BB a b * CC b c * DD c d) * K d) = ∑ b : B, ∑ c : C, g b * h c * ((∑ a : A, f a * F a * BB a b) * CC b c * ∑ d : D, k d * K d * DD c d)

                      Factoring a four-fold latent sum with a chain-shaped summand.

                      theorem TriangleInflation.Graph.FivePathAux.cell_eq (M : GModel fivePathGraph) (q : GTup M) (hM : M.Valid) (x z : Bool) :
                      (∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then M.law w else 0) = (∑ a : M.L E01, M.μ E01 a * respMass (fA M q a) x) * ∑ d : M.L E34, M.μ E34 d * respMass (fE M q d) z
                      theorem TriangleInflation.Graph.FivePathAux.num_eq (M : GModel fivePathGraph) (q : GTup M) (x z : Bool) :
                      (∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then sgn (w 1) * sgn (w 2) * sgn (w 3) * M.law w else 0) = ∑ b : M.L E12, ∑ c : M.L E23, M.μ E12 b * M.μ E23 c * ((∑ a : M.L E01, M.μ E01 a * respMass (fA M q a) x * (2 * fB M q a b - 1)) * (2 * fC M q b c - 1) * ∑ d : M.L E34, M.μ E34 d * respMass (fE M q d) z * (2 * fD M q c d - 1))
                      theorem TriangleInflation.Graph.FivePathAux.wsum_abs_le {A : Type} [Fintype A] (f g : A → ℝ) (hf : ∀ (a : A), 0 ≤ f a) (hg : ∀ (a : A), |g a| ≤ 1) :
                      |∑ a : A, f a * g a| ≤ ∑ a : A, f a

                      The endpoint weight Pr(A = x) of the model.

                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For

                        The endpoint weight Pr(E = z) of the model.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For

                          The unnormalized conditional response of B.

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For

                            The unnormalized conditional response of D.

                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              theorem TriangleInflation.Graph.FivePathAux.cell_eq' (M : GModel fivePathGraph) (q : GTup M) (hM : M.Valid) (x z : Bool) :
                              (∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then M.law w else 0) = alphaW M q x * epsiW M q z
                              theorem TriangleInflation.Graph.FivePathAux.num_eq' (M : GModel fivePathGraph) (q : GTup M) (x z : Bool) :
                              (∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then sgn (w 1) * sgn (w 2) * sgn (w 3) * M.law w else 0) = ∑ b : M.L E12, ∑ c : M.L E23, M.μ E12 b * M.μ E23 c * (betaW M q x b * (2 * fC M q b c - 1) * deltaW M q z c)

                              The explicit target #

                              theorem TriangleInflation.Graph.FivePathAux.target_cell (h : ℝ) (x z : Bool) :
                              (∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then fivePathTarget h w else 0) = 1 / 4
                              theorem TriangleInflation.Graph.FivePathAux.target_num (h : ℝ) (x z : Bool) :
                              (∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then sgn (w 1) * sgn (w 2) * sgn (w 3) * fivePathTarget h w else 0) = 1 / 4 * ((1 + h) / 4 * (1 + sgn x * sgn z))

                              Laws of models, and a compatible law #

                              theorem TriangleInflation.Graph.FivePathAux.five_tot (q0 q1 q2 q3 q4 : ℝ) :
                              ∑ w : Fin 5 → Bool, respMass q0 (w 0) * respMass q1 (w 1) * respMass q2 (w 2) * respMass q3 (w 3) * respMass q4 (w 4) = 1
                              theorem TriangleInflation.Graph.FivePathAux.sum4_one {A B C D : Type} [Fintype A] [Fintype B] [Fintype C] [Fintype D] (f : A → ℝ) (g : B → ℝ) (h : C → ℝ) (k : D → ℝ) (hf : ∑ a : A, f a = 1) (hg : ∑ b : B, g b = 1) (hh : ∑ c : C, h c = 1) (hk : ∑ d : D, k d = 1) :
                              ∑ a : A, ∑ b : B, ∑ c : C, ∑ d : D, f a * g b * h c * k d = 1

                              The five-path model with trivial sources and fair responses.

                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For
                                theorem TriangleInflation.Graph.FivePathAux.tv_bound (P Q G : (Fin 5 → Bool) → ℝ) (hG : ∀ (w : Fin 5 → Bool), |G w| ≤ 1) (x z : Bool) :
                                |(∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then G w * Q w else 0) - ∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then G w * P w else 0| ≤ 2 * dTV P Q

                                A conditional-cell functional moves by at most twice the total variation distance.

                                theorem TriangleInflation.Graph.FivePathAux.dTV_nonneg {α : Type u_1} [Fintype α] (P Q : α → ℝ) :
                                0 ≤ dTV P Q
                                theorem TriangleInflation.Graph.FivePathAux.tv_cell (P Q : (Fin 5 → Bool) → ℝ) (x z : Bool) :
                                |(∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then Q w else 0) - ∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then P w else 0| ≤ 2 * dTV P Q
                                theorem TriangleInflation.Graph.FivePathAux.tv_num (P Q : (Fin 5 → Bool) → ℝ) (x z : Bool) :
                                |(∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then sgn (w 1) * sgn (w 2) * sgn (w 3) * Q w else 0) - ∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then sgn (w 1) * sgn (w 2) * sgn (w 3) * P w else 0| ≤ 2 * dTV P Q
                                theorem TriangleInflation.Graph.FivePathAux.targetCorr_bounds (h : ℝ) (h1 : h < 1) (h0 : 0 ≤ h) (x z : Bool) :
                                0 ≤ (1 + h) / 4 * (1 + sgn x * sgn z) ∧ (1 + h) / 4 * (1 + sgn x * sgn z) ≤ 1

                                A4: the five-observer path #

                                theorem TriangleInflation.Graph.bilocal_of_compatible (P : GTarget fivePathGraph) (hP : IsLaw P) (hc : GCompatible fivePathGraph P) (hcell : ∀ (x z : Bool), 0 < ∑ w : Fin 5 → Bool, if w 0 = x ∧ w 4 = z then P w else 0) :

                                AUDIT-NOTES A4, the bilocal inequality for the five-path. For a compatible law with positive endpoint cells, √|I| + √|J| ≤ 1. Conditioning on A = x and E = z changes only the endpoint source laws and leaves L, R independent; with p_± = E_L|(b_0 ± b_1)/2| and r_± = E_R|(d_0 ± d_1)/2| one has p_+ + p_- ≤ 1, r_+ + r_- ≤ 1, |I| ≤ p_+ r_+, |J| ≤ p_- r_-, and Cauchy–Schwarz finishes.

                                theorem TriangleInflation.Graph.fivePathTarget_isLaw (h : ℝ) (h0 : 0 ≤ h) (h1 : h < 1) :
                                IsLaw (fivePathTarget h) ∧ ∀ (w : Fin 5 → Bool), (1 - h) / 64 ≤ fivePathTarget h w

                                The five-path target is a law, and is bounded below by (1−h)/64 at every atom (AUDIT-NOTES A4, packet equation (8)).

                                AUDIT-NOTES A4, the correlators of the target: f_{xz} = (1+h)/2 when x = z and 0 otherwise, so I = J = (1+h)/4.

                                AUDIT-NOTES A4: the five-path target is incompatible for every 0 < h < 1, since √I + √J = √(1+h) > 1 contradicts the bilocal inequality. (Finite-latent compatible set; see the header.)

                                AUDIT-NOTES A4 with the corrected constant. The packet states d_TV ≥ h/16; the argument as written gives |I_R − I_P|, |J_R − J_P| ≤ 24 d for d < 1/8, so the safe constant is h/96. At h_t = 1/(16t²) this is 1/(1536 t²).