Theorem A: the bramble number bounds the gonality #
This is ยง2 of van Dobben de Bruyn--Gijswijt (arXiv:1407.7055): for every bramble
๐
of a connected graph G,
order ๐
โค divisorialGonality G + 1.
Combined with Seymour--Thomas duality this gives treewidth โค gonality
(TreewidthGonality/Gonality/TreewidthGonality.lean), but the statement here is
stronger and unconditional: the bramble number of G is at least
treewidth G + 1 for any graph, so this bound implies the treewidth one and
holds whether or not the duality theorem has been formalized.
Conventions #
Brambles live on underlyingSimpleGraph G โ treewidth and brambles do not see
edge multiplicities. The chip-firing side does: outdegreeSet and edgeCut count
with multiplicity, which only strengthens the inequalities used here
(more parallel edges make a cut more expensive, never less).
Connectivity of a vertex set is ((underlyingSimpleGraph G).induce (โB : Set G.V)).Connected,
the convention fixed in TreewidthGonality/Treewidth/TreeDecomposition.lean.
Supports and cuts #
The vertices carrying at least one chip.
Equations
- Utilities.Gonality.divisorSupport D = {v : G.V | 0 < D v}
Instances For
An effective divisor has at least one chip on each support vertex, so the support is no bigger than the degree.
The number of edges leaving U, counted with multiplicity.
Equations
- Utilities.Gonality.edgeCut G U = โ(Utilities.edgesBetween G U Uแถ)
Instances For
The cut is the total boundary of the vertices of U.
The three lemmas of ยง2 #
Lemma 2.2 (support containment). If firing U clears the support off a
connected set B that previously met the support, then B was contained in U.
Proved (2026-08-25); the paper's argument in two steps:
- Chips outside the fired set never decrease
(
le_set_firing_apply_of_not_mem), so anyw โ B โ UwithD w > 0would still carry a chip after firing, contradictinghmiss. HenceB โฉ divisorSupport D โ U, and byhmeetthe intersectionB โฉ Uis nonempty. - If
B โ U, connectedness ofBgives an edge ofunderlyingSimpleGraph GinsideBwith one endu โ Uand the other endw โ B โ U(Utilities.Treewidth.exists_adj_across_of_walk). ThensetFiring G D U w = D w + outdegreeSet G Uแถ w โฅ 0 + numEdges G w u > 0, again contradictinghmiss.
Note no legality hypothesis is needed: only effectivity of D and the two
set_firing_apply_* formulas.
Lemma 2.3 (a cut separating two members bounds the order). If a bramble
has a member inside U and a member inside the complement of U, then its order
is at most one more than the number of edges crossing the cut.
Proved (2026-08-25) following the paper's ยง2 verbatim (Lemma 2.3 there, where the
containments are named the other way round: their B' is our B).
The naive hitting set "all endpoints of cut edges" has size
edgeCut + (components of the cut graph), so it overshoots. The paper's
construction, reproduced here, is one endpoint per cut edge plus one extra
vertex, and the choice that makes the case analysis close is:
- let
X,Ybe the two shores of the cut and, among all members contained inU, letBโbe one whose traceBโ โฉ Xis inclusionwise minimal (realized here by minimizing(Bโ โฉ X).card) โ this is the step that is easy to miss and without which the lemma's case 1 is false; - let
sbe any vertex ofBโ โฉ X(nonempty becauseBโtouchesB'); - for each cut edge
xywithx โ X,y โ Y, selectxifx โ Bโandyotherwise;Sis the selection together withs, so|S| โค edgeCut + 1.
S hits every member A:
A โฉ Y = โ: thenA โ U, soAis a competitor for the minimality ofBโ โฉ X. Either somex โ (A โฉ X) โ Bโ, and thenxwas selected for its own cut edge, orA โฉ X โ Bโ โฉ X, whenceA โฉ X = Bโ โฉ Xby minimality ands โ A.A โฉ X = โ: thenA โ Uแถ, and the cut edge joiningAtoBโhas itsU-end inBโ, so itsUแถ-end โ a vertex ofAโ was selected.- both nonempty: connectedness puts a whole cut edge inside
A, and one of its ends was selected.
The multiplicity convention only helps: the cut is modelled by the finite set of
ordered pairs (x, y) โ U ร Uแถ with numEdges > 0, whose cardinality is at
most edgeCut.
Theorem A #
Theorem A (van Dobben de Bruyn--Gijswijt ยง2). Every bramble of a
connected graph has order at most divisorialGonality G + 1.
Proved (2026-08-25); this is the main theorem of ยง2 of the paper. The proof narrative, matching the code line for line:
Let d = divisorialGonality G. Among all effective divisors D of degree d
with rank G D โฅ 1 (a nonempty finite-to-choose-from family: nonempty by
exists_divisor_of_divisorialGonality), choose one maximizing the number of
members of ๐
that divisorSupport D hits. This is a finite extremal choice:
the quantity being maximized is (๐
.members.filter fun B => (B โฉ divisorSupport D).Nonempty).card,
bounded by ๐
.members.card.
Case 1: divisorSupport D hits every member. Then divisorSupport D is a
hitting set, so ๐
.order โค (divisorSupport D).card โค deg D = d by
Bramble.order_le_card_of_isHittingSet and card_divisorSupport_le_deg โ even
better than claimed.
Case 2: some member Bโ is unhit. Pick v โ Bโ (members are nonempty,
Bramble.nonempty_of_mem). Run the nested legal chain of
exists_nested_legal_chain at q = v: sets U 0 โ U 1 โ โฆ โ U (k-1) โ univ.erase v
with divisors Dแตข = fireChain G D U i, every Dแตข effective
(fireChain_effective), every Dแตข linearly equivalent to D
(fireChain_linear_equiv, so deg Dแตข = d and rank G Dแตข โฅ 1), and D_k
v-reduced. By one_le_apply_of_q_reduced_of_rank_geq_one, D_k v โฅ 1, so
D_k does hit Bโ.
Let i be the first index at which the family of members hit by D fails to be
contained in the family hit by D_i. Such an i exists: otherwise the hit
family only grows along the chain, while Bโ is newly hit at the end, so D_k
would hit strictly more members than D, contradicting the extremal choice of
D (D_k is a competitor: effective, degree d, rank โฅ 1). Note i โฅ 1
because D_0 = D.
Write U = U (i-1), B' for the member hit by D (hence, by minimality of i,
also by D_{i-1}) and unhit by D_i. Then:
support_containmentapplied toD_{i-1},U,B'givesB' โ U;Bโ โ Uแถ, by the paper's second index: maximality ofDalso forcesBโ โฉ supp D_{i-1} = โ(otherwiseD_{i-1}hits strictly more members thanD), andBโis hit byD_k, so there is a firstj โฅ i-1withBโ โฉ supp D_j = โandBโ โฉ supp D_{j+1} โ โ. Since firing(U j)แถundoes firingU j(set_firing_compl_set_firing),support_containmentapplied toD_{j+1}and the fired set(U j)แถgivesBโ โ (U j)แถ โ (U (i-1))แถby nestedness.hitting_of_cutfor the pair(B', Bโ)gives๐ .order โค edgeCut G U + 1;charge_of_legal/edgeCut_le_deg_of_legalfor the legal setUatD_{i-1}givesedgeCut G U โค deg D_{i-1} = d.
Hence ๐
.order โค d + 1 in both cases.
The extremal choice is realized as Nat.sSup of the (nonempty, bounded by
๐
.members.card) set of achievable hit counts, which avoids having to know that
the family of competitors is finite.