Nonnegative rank of the spanning-tree slack matrix
Contributed by Sebastian Pokutta
First published 2026-10-19 · last changed 2026-10-20 (4af5b76)
License: CC BY 4.0
Cite as
@misc{lemmata:2610.00003,
title = {Nonnegative rank of the spanning-tree slack matrix},
author = {Sebastian Pokutta},
howpublished = {Lemmata, lemmata:2610.00003, \url{https://lemmata.iol.berlin/abs/2610.00003}},
year = {2026},
url = {https://lemmata.iol.berlin/abs/2610.00003},
note = {Version 29ff25c1aac1; formal statements checked in Lean 4}
}A minimum-root decomposition of tree slacks can also accommodate every edge nonnegativity row without adding factors. This gives an explicit cubic upper bound on nonnegative rank, saving factors over appending a separate factor for every edge. No symmetry of the factorization is required.
The matrix and the result¶
Nonnegative rank is the smallest inner dimension of a factorization with entrywise nonnegative. The Lean definition uses extended natural numbers, assigning infinity if no such factorization exists; the explicit witness below makes the rank finite here.
Construction and proof¶
For a tree rooted at , let be the neighbor of toward , with . For every ,
Indeed, the parent-edge map bijects the nonroot vertices with the tree edges. The internal edges of correspond precisely to the children in whose parents are also in . Subtracting their number from gives the identity, including when the induced forest on is disconnected.
Index the factors by
The diagonal slots are special: put and for every subtour row. For every other slot , put
For an edge row with , its row factor is one at if ; if , it is one at the two slots and . All its other coefficients are zero.
This remains cubic, with leading term . The saving relative to the older append-every-edge count is
Scope and source¶
The formalization constructs parents from unique paths in actual SimpleGraph
trees, proves the parent-edge bijection and slack identity, and checks both row
families. It does not assume an abstract tree-model correctness interface. The
connection between nonnegative rank and extension complexity, an affine extended
formulation, and completeness of a polyhedral description are outside this entry.
No optimality or literature-priority claim is made.
The construction comes from Sebastian Pokutta’s spanning-tree extension-complexity
project: the unpublished note Candidate upper improvement by reusing full-slack
factors and the earlier min-split factorization. The source snapshot is commit
75f45e8dd38eae648222e11a99559ed8ec991e2e of symmetric-spanning-tree-lb.
The graph lemmas adapt that project’s unique-path and parent-edge proofs. These
source notes are not distributed with this entry; the construction and proofs
needed here are given in full. The entry is self-contained over the archive’s
pinned Mathlib and does not import the source project.
/-- The full standard spanning-tree slack matrix has an explicit nonnegative
factorization with n(n-1)(2n-1)/6 factors, including all nonnegativity rows. -/
theorem fullSlack_factorization (n : ℕ) (hn : 3 ≤ n) :
Nonempty (NonnegativeFactorization (fullSlack n) (n * (n - 1) * (2 * n - 1) / 6)) := by
let : NeZero n := ⟨by omega⟩
simpa only [card_cert] using
(⟨fullFactorization (n := n)⟩ : Nonempty
(NonnegativeFactorization (fullSlack n) (Fintype.card (Cert n))))
/-- The nonnegative-rank bound for the actual full graph slack matrix. -/
theorem fullSlack_rank_bound (n : ℕ) (hn : 3 ≤ n) :
nonnegativeRank (fullSlack n) ≤ ((n * (n - 1) * (2 * n - 1) / 6 : ℕ) : ℕ∞) := by
obtain ⟨F⟩ := fullSlack_factorization n hn
exact nonnegativeRank_le F◇ elaborated definition (Lean v4.35.0) Definition 1 —
Lemmata.SpanningTreeMinSplit.fullSlack(source)✓ kernel-checked (Lean v4.35.0) Theorem 1 —
Lemmata.SpanningTreeMinSplit.fullSlack_rank_bound(source)✓ kernel-checked (Lean v4.35.0) Proposition 1 —
Lemmata.SpanningTreeMinSplit.fullSlack_factorization(source)
Checked at commit 29ff25c1aac1. The formal statement is machine-checked; that it matches the prose is checked by review. What “checked” means.
AI use. Obtained as auxiliary result when using GPT-6 Astra to formalize other research.
Acknowledgements. Research reported in this paper was partially supported by the Berlin Mathematics Research Center MATH (EXC-2046/2, project ID 390685689), funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) under Germany’s Excellence Strategy. This work has been partially supported by OpenAI’s Academic Researchers program.