Documentation

LeanPool.AsymptoticTrianglePacking.Internal.AX1.YusterEdge

Edge-based triangle hypergraph #

The edge-based triangle hypergraph: ground set = edges of G (as 2-subsets), hyperedges = the three edges of each triangle. Its matchings are the edge-disjoint triangle packings (ν₃).

Equations
Instances For

    The edge-based triangle hypergraph is 3-uniform (every triangle has exactly three edges).

    Y2 (edge-based) — codegree ≤ 1. Two distinct edges lie in at most one common triangle (they determine its three vertices), so the edge-based triangle hypergraph has codegree ≤ 1. This is the CodegreeBounded H (μd) input the nibble wants — here in its sharpest form.

    theorem Nibble.YusterE.mem_iff_mem_powersetCard_two {V : Type u_1} {u : Finset V} (hu : 2 ≤ u.card) (x : V) :
    x ∈ u ↔ ∃ e ∈ Finset.powersetCard 2 u, x ∈ e

    Membership in a set of card ≥ 2 is witnessed by a 2-subset.

    theorem Nibble.YusterE.powersetCard_two_inj {V : Type u_1} {s t : Finset V} (hs : 2 ≤ s.card) (ht : 2 ≤ t.card) (h : Finset.powersetCard 2 s = Finset.powersetCard 2 t) :
    s = t

    Faithful representation. The triangle→edges map t ↦ t.powersetCard 2 is injective on sets of card ≥ 2; hence distinct triangles give distinct hyperedges, and matchings of triangleHypergraphE correspond to edge-disjoint triangle packings.

    Y3-edge — degree = number of triangles through the edge. The degree of a vertex e (an edge) in the edge-based triangle hypergraph equals the number of triangles of G having e among their three edges. Szemerédi regularity makes these counts (nearly) uniform — the near-regularity input to the nibble.

    noncomputable def Nibble.YusterE.nu3 {V : Type u_1} [Fintype V] [DecidableEq V] (G : SimpleGraph V) [DecidableRel G.Adj] :

    Y4 — the integral triangle-packing number ν₃(G): the maximum size of a matching of the edge-based triangle hypergraph, i.e. the maximum number of edge-disjoint triangles.

    Equations
    Instances For

      Y4 — the nibble output lower-bounds ν₃. Any matching of the triangle hypergraph witnesses a lower bound on ν₃. NibbleTheorem produces a large matching, hence a large ν₃.

      A fractional triangle packing: nonnegative weights on the triangle hyperedges with total weight through every edge ≤ 1 (Paper III §2.2).

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        noncomputable def Nibble.YusterE.nu3star {V : Type u_1} [Fintype V] [DecidableEq V] (G : SimpleGraph V) [DecidableRel G.Adj] :

        Y4 — the fractional triangle-packing number ν₃*(G).

        Equations
        Instances For
          theorem Nibble.YusterE.nu3star_bddAbove {V : Type u_1} [Fintype V] [DecidableEq V] (G : SimpleGraph V) [DecidableRel G.Adj] :
          BddAbove {x : ℝ | ∃ (w : Finset (Finset V) → ℝ), IsFracPacking G w ∧ x = ∑ T ∈ triangleHypergraphE G, w T}

          The fractional-packing value set is bounded above by |H| (each weight is ≤ 1).

          Y4 — weak duality ν₃ ≤ ν₃*. The indicator of a maximum matching is a fractional packing of value ν₃, so ν₃ ≤ ν₃*.