Documentation

LeanPool.InflationTermination.TriangleInflation.Graph.Triangle

The triangle specialization #

Statements split from the original Statements.lean skeleton (one file per proving task). See AUDIT-NOTES for the mathematics.

The triangle specialization #

triangleGraph = cycle 3 is the scenario of TriangleInflation, with vertex 0 the party A, vertex 1 the party B and vertex 2 the party C.

The triangle bridge #

The named sources of C₃, the induced bijections of copied observations, assignments, sets and copied latent sources, and the transport lemmas used by the four theorems below. The naming follows the file header of InflationGraph.Defs: the source {0,1} is the paper's X, the source {1,2} is Y and the source {0,2} is Z.

Identify graph observations with the named triangle observations.

Equations
Instances For

    The permutation correspondence #

    Identify an edge-indexed latent assignment with its X, Z, Y coordinates.

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

      Transport of witnesses #

      theorem TriangleInflation.Graph.tri_pushforward_equiv {α : Type u_1} {β : Type u_2} {γ : Type u_3} {δ : Type u_4} [Fintype α] [Fintype β] [DecidableEq γ] [DecidableEq δ] (eab : α ≃ β) (ecd : γ ≃ δ) (w : α → ℝ) (F : α → γ) (F' : β → δ) (h : ∀ (a : α), F' (eab a) = ecd (F a)) :
      pushforward (fun (b : β) => w (eab.symm b)) F' = fun (d : δ) => pushforward w F (ecd.symm d)
      theorem TriangleInflation.Graph.tri_sum_transport {t : ℕ} (Δ : GAssign triangleGraph t → ℝ) :
      ∑ ω : Assign t, Δ ((triAssignEquiv t).symm ω) = ∑ ω : GAssign triangleGraph t, Δ ω

      Sets of copied observations #

      Transport finite observation sets to the named triangle representation.

      Equations
      Instances For

        Identify observations in a finite graph set with their triangle counterparts.

        Equations
        Instances For

          Transport Boolean assignments on a finite observation set.

          Equations
          Instances For

            Copied latent sources #

            Identify copied graph sources with named triangle latent sources.

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

              Transport of the injectable and ancestral prescriptions #

              def TriangleInflation.Graph.triPiEquiv {t n : ℕ} (S : Fin n → Finset (GObs triangleGraph t)) :
              ((m : Fin n) → ↥(S m) → Bool) ≃ ((m : Fin n) → ↥((triFinsetEquiv t) (S m)) → Bool)

              Transport families of Boolean assignments on finite observation sets.

              Equations
              Instances For

                Identify the latent inputs at vertex 0 with its two named sources.

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

                  Identify the latent inputs at vertex 1 with its two named sources.

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

                    Identify the latent inputs at vertex 2 with its two named sources.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      theorem TriangleInflation.Graph.tri_sum_edgePi {M : Type u_1} [AddCommMonoid M] (L : triangleGraph.Edge → Type) [(e : triangleGraph.Edge) → Fintype (L e)] (F : ((e : triangleGraph.Edge) → L e) → M) :
                      ∑ x : (e : triangleGraph.Edge) → L e, F x = ∑ a : L triEdgeX, ∑ b : L triEdgeZ, ∑ c : L triEdgeY, F ((triPiEdgeEquiv L).symm (a, b, c))
                      theorem TriangleInflation.Graph.tri_prod_vertex {M : Type u_1} [CommMonoid M] (F : triangleGraph.V → M) :
                      ∏ v : triangleGraph.V, F v = F 0 * F 1 * F 2
                      theorem TriangleInflation.Graph.tri_gmodel_law_eq (M : GModel triangleGraph) (w : Fin 3 → Bool) :
                      M.law w = ∑ a : M.L triEdgeX, ∑ b : M.L triEdgeZ, ∑ c : M.L triEdgeY, M.μ triEdgeX a * M.μ triEdgeZ b * M.μ triEdgeY c * respMass (M.resp 0 ((triInc0Equiv M.L).symm (a, b))) (w 0) * respMass (M.resp 1 ((triInc1Equiv M.L).symm (a, c))) (w 1) * respMass (M.resp 2 ((triInc2Equiv M.L).symm (b, c))) (w 2)

                      The observed law of a triangle GModel, as a triple sum.

                      The triangle model of a triangle GModel.

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

                        The latent alphabets of the triangle GModel of a triangle model.

                        Equations
                        Instances For

                          The triangle GModel of a triangle model.

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            theorem TriangleInflation.Graph.exists_triObsEquiv (t : ℕ) :
                            ∃ (e : GObs triangleGraph t ≃ Obs t) (σ : (triangleGraph.Edge → Equiv.Perm (Fin t)) ≃ Equiv.Perm (Fin t) × Equiv.Perm (Fin t) × Equiv.Perm (Fin t)), (∀ (o : GObs triangleGraph t) (w : ThreeBit), partyBit (e o).party w = threeBitEquiv.symm w o.fst) ∧ ∀ (π : triangleGraph.Edge → Equiv.Perm (Fin t)) (o : GObs triangleGraph t), e (gPerm π o) = Obs.perm (σ π) (e o)

                            AUDIT-NOTES A1/A2. The copied observations of the order-t inflation of C₃ are in bijection with TriangleInflation.Obs t, by a bijection that intertwines the per-source copy-index actions and matches the vertex of a copied observation with the party of its image.

                            The pair-source Navascués–Wolfe test on C₃ is the triangle test of TriangleInflation, under the re-encoding threeBitEquiv of three-bit outcomes as functions on Fin 3.

                            The pair-source AI test on C₃ is the triangle AI test.

                            The pair-source compatible set of C₃ is TriangleInflation.TriangleCompatible, both with finite latent alphabets (AUDIT-NOTES D1).