CoreGapBlowUp #
Triangle hyperedges and their vertex sets #
A hyperedge of Nibble.YusterE.triangleHypergraphE is the set of the three edges of a triangle.
Nibble.AX1.vtxSet recovers the three vertices, so that sums over the triangle hypergraph can be
rewritten as sums over cliqueFinset 3.
The set of vertices covered by a set of edges.
Equations
- Nibble.AX1.vtxSet T = T.biUnion id
Instances For
The vertex set of the edge set of a set with at least two elements is the set itself.
A sum over the triangle hypergraph is a sum over the triangles.
A sum over the triangle hyperedges through a fixed edge is a sum over the triangles containing that edge.
The blow-up #
The q-blow-up of H: every vertex is replaced by q copies, and two copies are adjacent
exactly when the vertices they lie above are.
Equations
Instances For
Equations
The projection of a triangle of the blow-up is a triangle of H.
The fibre of the projection has q³ elements: a triangle of H is the projection of
exactly q³ triangles of the blow-up.
The fibre of the projection through a fixed blow-up edge has q elements.
Lifting a fractional packing to the blow-up #
The lift of a weight function on the triangles of H to the triangles of the blow-up: the
weight of a triangle is 1/q of the weight of the triangle below it.
Equations
- Nibble.AX1.liftWeight H q w T' = if T' ∈ Nibble.YusterE.triangleHypergraphE (Nibble.AX1.blowUp H q) then w (Finset.powersetCard 2 (Finset.image Prod.fst (Nibble.AX1.vtxSet T'))) / ↑q else 0
Instances For
The lift of a fractional packing is a fractional packing.
The value of the lift is q² times the value.
The blow-up bound q²·ν₃*(H) ≤ ν₃*(H[q]).
A triangle of the blow-up whose projection contains the edge {a, b} contains exactly one
vertex over a and one over b.
Projecting a fractional packing of the blow-up #
The projection of a weight function on the triangles of the blow-up: a triangle of H receives
1/q² of the total weight of the triangles above it.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The projection of a fractional packing is a fractional packing.
The value of the projection is 1/q² of the value.
The blow-up bound ν₃*(H[q]) ≤ q²·ν₃*(H).
The blow-up scaling of the fractional triangle packing number.
Axiom check #
YusterBridgeFrac #
PaperIII-style fractional triangle packing, with weights on vertex-sets.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Taking all two-element subsets is injective on triangles.
The union of the two-element subsets of a triangle recovers its vertices.
For a two-element set e, membership among a triangle's edges is inclusion
in the triangle.
Filtering the edge-set triangle hypergraph at an edge is the image of the vertex-set triangles containing that edge.
Reindex the fractional objective from triangle vertex-sets to triangle edge-sets.
Reindex the fractional objective from triangle edge-sets to triangle vertex-sets.
A fractional packing on triangle edge-sets transports to one on triangle vertex-sets, preserving its objective.
A fractional packing on triangle vertex-sets transports to one on triangle edge-sets, preserving its objective.
The Nibble edge-set fractional triangle-packing optimum is exactly the PaperIII-style optimum over weights on triangle vertex-sets.
CoreGapPackingSplit #
The set of parts of P met by t. For a triangle of a regularity-reduced graph this is a
triple of distinct parts.
Equations
- Nibble.AX1.partClass P t = Finset.image P.part t
Instances For
In a regularity-reduced graph every triangle meets exactly three parts: this is the hypothesis
of Nibble.AX1.sum_split_partClass, discharged.
The objective splits along the triples of parts. If every triangle of G meets three
distinct parts of P — which is the case for a regularity-reduced graph, by
Nibble.AX1.regularityReduced_triangle_parts — then the sum of any weight function over the
triangles is the sum, over triples of parts, of its weight on that triple.
The per-pair LP constraint. For two distinct parts U ≠ W, a fractional triangle packing
puts total weight at most e(U, W) on the triangles whose triple of parts contains both U
and W.
CoreGapClusterHost #
The cluster graph #
The cluster graph of G along P at scales ep, de: the vertices are the parts of P
and two distinct parts are joined when the pair is ep-uniform of density at least de.
Equations
Instances For
Equations
- Nibble.AX1.hostGraph.instDecidableRelAdj G P ep de = Classical.decRel (Nibble.AX1.hostGraph G P ep de).Adj
The number of vertices of the cluster graph is the number of clusters.
The cluster of a vertex, as a vertex of the cluster graph.
Equations
- Nibble.AX1.clusterOf P v = ⟨P.part v, ⋯⟩
Instances For
The cluster triple of a triangle.
Equations
- Nibble.AX1.hostTri P t = Finset.image (Nibble.AX1.clusterOf P) t
Instances For
A triangle of a regularity-reduced graph has a cluster triple that is a triangle of the cluster graph at the same scales.
Two clusters of the cluster triple of a triangle are joined by an edge of the triangle.
The aggregation #
Aggregating the LP along the cluster triples. If every cluster pair of P carries at most
c edges of G, then the fractional triangle packing number of the regularity-reduced graph is at
most c times that of the cluster graph.
The aggregated weighting gives a cluster triple the total weight of the triangles lying on it,
scaled by 1/c; the capacity constraint of a cluster pair
(Nibble.AX1.sum_fracPacking_cluster_pair_le) is exactly the edge constraint of the aggregate.