---
title: Tree Packing in Graph Theory
url: https://www.emergentmind.com/topics/tree-packing
type: topic
---

# Tree Packing in Graph Theory

Tree packing is a family of graph-theoretic problems centered on placing multiple tree structures into a common graph under edge, capacity, planarity, connectivity, or optimization constraints. In one major sense, it asks for collections of spanning trees, often edge-disjoint or fractional, and relates them to global cut structure. In another, it asks whether prescribed trees can be embedded edge-disjointly into a host such as \(K_n\). Further variants include rooted and directed packings, Steiner tree packings, bounded-outdegree rooted packings motivated by peer-to-peer overlays, and low-diameter packings motivated by distributed communication. The term therefore denotes a class of closely related but technically distinct notions rather than a single canonical problem [2405.09141] [1111.0706] [2410.13840].

## 1. Core meanings and formal variants

The most classical formulation treats a tree-packing of an undirected graph \(G=(V,E)\) as a family of spanning trees, where an edge may appear in multiple trees unless explicit edge-disjointness is required. In the load-based formulation, if \(L(e)\) is the number of packed trees containing \(e\), the relative load is
\[
\ell(e)=\frac{L(e)}{|\mathcal T|}.
\]
This viewpoint is central in min-cut and arboricity theory because the edge loads encode cut information [2405.09141].

A different but equally classical formulation asks whether a given family of trees \(G_1,\dots,G_k\) can be realized as pairwise edge-disjoint subgraphs of a host graph \(H\). The Tree Packing Conjecture is the best-known example: trees of orders \(2,3,\dots,n\) are to be packed into \(K_n\) [1104.0642] [2410.13840].

Rooted and constrained variants change the object being packed. In the Maximum Bounded Rooted-Tree Packing problem, the input is an undirected connected graph with a designated root \(r\), an integer \(K\), and per-vertex capacities \(c_v\). One seeks \(K\) rooted trees \(T_1,\dots,T_K\) maximizing
\[
\max \sum_{k\in [K]} |V_k|
\]
subject to the bounded-outdegree condition
\[
\sum_{k=1}^K C_{T_k}(v) \le c_v,\qquad \forall v\in V,
\]
where \(C_{T_k}(v)\) is the number of children of \(v\) in \(T_k\) [1111.0706].

Directed variants replace spanning trees by rooted out-trees through specified terminals. For a digraph \(D\), a set \(S\subseteq V(D)\), and \(r\in S\), an \((S,r)\)-tree is an out-tree rooted at \(r\) containing all vertices of \(S\). The parameters \(\kappa_{S,r}(D)\) and \(\lambda_{S,r}(D)\) denote the maximum numbers of internally disjoint and arc-disjoint \((S,r)\)-trees, respectively [2005.00849].

Steiner Tree Packing replaces spanning or rooted spanning trees by edge-disjoint connected subgraphs containing designated terminal sets. In STP an instance is \((G,T,d)\), and one asks for \(d\) pairwise edge-disjoint trees each containing \(T\). GSTP generalizes this to multiple terminal sets with individual demands [2505.09250].

| Variant | Packed object | Typical constraint or objective |
|---|---|---|
| Spanning-tree packing | Spanning trees of \(G\) | Maximize packing value or require edge-disjointness |
| Host-graph tree packing | Prescribed trees \(T_i\) into host \(H\) | Pairwise edge-disjoint embeddings |
| Bounded rooted packing | Rooted trees through a source \(r\) | Capacity bounds \(\sum_k C_{T_k}(v)\le c_v\) |
| Directed Steiner tree packing | \((S,r)\)-trees in a digraph | Arc-disjointness or internal disjointness |
| Steiner tree packing | Terminal-containing trees/subgraphs | Edge-disjointness with demand \(d\) |

## 2. Min-max theory and fractional tree packings

A fundamental structural principle is the Nash-Williams/Tutte min-max relation between tree packings and vertex partitions. For a partition \(\mathcal P\) of the vertex set, define
\[
\operatorname{part\_val}(\mathcal P)=\frac{|E(G/\mathcal P)|}{|\mathcal P|-1},
\]
and for a tree-packing \(\mathcal T\),
\[
\operatorname{pack\_val}(\mathcal T)=\frac{1}{\max_{e\in E}\ell(e)}.
\]
Then
\[
\Phi_G := \max_{\mathcal T}\operatorname{pack\_val}(\mathcal T)=\min_{\mathcal P}\operatorname{part\_val}(\mathcal P).
\]
This identifies a good tree-packing as a primal certificate for a good partition value, and it underlies the use of tree packings in min-cut, arboricity, and weighted spanning-tree-packing formulations [2405.09141].

The fractional LP viewpoint makes this duality explicit. A fractional spanning-tree packing assigns nonnegative weights \(y_T\) to spanning trees and solves
\[
\max \sum_{T \in T(G)} y_T
\]
subject to
\[
\sum_{T \ni e} y_T \le c(e) \quad \forall e\in E,\qquad y_T \ge 0.
\]
Its optimum equals
\[
\min_P \frac{c(E(P))}{|P|-1},
\]
again ranging over vertex partitions \(P\). This same LP language extends to minimum \(k\)-cut: the dual of the Naor–Rabani LP becomes a tree packing into augmented capacities \(c+z\), with objective
\[
\max (k-1)\sum_{T \in T(G)} y_T - \sum_{e\in E} z_e.
\]
In this sense, tree packing is not merely a decomposition question but a dual object in cut optimization [1808.05765].

Classical edge-connectivity guarantees also fit this framework. Every \(k\)-edge-connected graph contains \(\lfloor k/2\rfloor\) edge-disjoint spanning trees, which is the baseline theorem from which later low-diameter and dynamic refinements proceed [2006.07486].

Weighted versions arise naturally when edges have rates rather than unit capacities. In conference key propagation over a QKD network, the maximum conference key rate is formulated as a weighted spanning-tree-packing problem:
\[
\max_{\{T_\alpha\},\{w_\alpha\}} \sum_\alpha w_\alpha
\quad\text{s.t.}\quad
\sum_{\alpha:T_\alpha\ni e} w_\alpha \le r_e,\qquad \forall e\in\mathcal E,
\]
and, by Nash-Williams–Tutte, equals
\[
r_{\rm conf} = \min_{P} \frac{1}{|P|-1} \sum_{e\in \mathcal E(P)} r_e.
\]
Here tree packing becomes an exact information-theoretic capacity formula rather than only a combinatorial abstraction [2506.04105].

## 3. Packing prescribed trees into host graphs

In the host-graph formulation, tree packing asks for edge-disjoint copies of specified trees inside a common host graph. The central statement is Gyárfás’s Tree Packing Conjecture: any family \(T_1,\dots,T_n\) with \(|T_k|=k\) packs into \(K_n\). A 2024 paper gives a proof by translating the decomposition problem into a complete labeling problem for augmented functional trees and then applying a polynomial certificate argument [2410.13840].

That proof reframes a rooted labeled tree as a functional directed graph \(G_g\) with
\[
V(G_g)=Z_n,\qquad E(G_g)=\{(v,g(v)):v\in Z_n\},
\]
and reduces packing to the existence of permutations making the induced edge set an orientation of \(K_n\). The nonvanishing of a canonical representative of the “Tree Packing Polynomial Certificate” is then equivalent to the existence of a complete labeling, hence to the packing itself [2410.13840].

Before this full resolution, much of the literature developed partial and asymptotic forms. One strong intermediate result proves that a linear number of the largest trees in a TPC sequence can be packed into \(K_n\), thereby implying Bollobás’s conjecture on packing any fixed number of the largest trees for sufficiently large \(n\) [2403.10515]. Earlier results packed \(t=\frac{1}{10}n^{1/4}\) trees of consecutive orders into \(K_{n+1}\), and into \(K_n\) when no packed tree is a star; under large-degree or leaf-structure hypotheses, \(t=\frac14 n^{1/3}\) such trees pack into \(K_n\) [1212.3627]. Another asymptotic confirmation of Bollobás’s conjecture applies when each tree has the required number of leaves or a pending path of the required order, yielding in particular the case \(k\le 5\) [1510.07467].

Approximate host enlargement yields a different asymptotic regime. For fixed \(\epsilon>0\) and \(\Delta\), every family of trees of orders at most \(n\), maximum degrees at most \(\Delta\), and total edge count at most \(\binom{n}{2}\) packs into \(K_{(1+\epsilon)n}\). This gives asymptotic forms of both the Tree Packing Conjecture and Ringel’s conjecture for bounded-degree trees [1404.0697].

Ringel-type exact decomposition is also known in quasirandom settings. Any \((\xi,s)\)-typical graph \(G\) on \(n\) vertices of density \(p\) can be decomposed into \(n\) copies of any tree \(T\) with \(|E(T)|=p(n-1)/2\); the special case \(p=1\) yields Ringel’s conjecture for all sufficiently large trees [2004.09947].

A planar counterpart asks whether two trees on the same \(n\)-vertex set can be packed into a planar host on the same vertices. Except for the star obstruction, the answer is affirmative: every two nonstar trees of the same size admit a planar packing, and the constructive proof gives an \(O(n^2)\) algorithm [1603.07737].

## 4. Algorithmic and structural roles in cuts, arboricity, and distributed communication

In algorithm design, tree packing often functions as a structural proxy for cuts. Greedy tree packings are built by repeatedly computing minimum spanning trees with respect to current edge loads. Thorup’s ideal load decomposition \(\ell^*(e)\) is approximated by actual greedy loads \(\ell(e)\), with guarantee
\[
|\ell(e)-\ell^*(e)|\le \eta/\lambda
\quad\text{provided}\quad
|\mathcal T|\ge 6\lambda \log m/\eta^2.
\]
A 2024 reanalysis shows that for min-cut purposes one needs only \(\Theta(\lambda^3\log m)\) greedy trees to guarantee either a tree that \(1\)-respects a min-cut or a trivial cut in an appropriate contracted graph, improving substantially over Thorup’s earlier \(\Omega(\lambda^7\log^3 m)\) requirement [2405.09141].

This structural refinement yields faster dynamic algorithms. The same paper gives a deterministic fully dynamic exact min-cut algorithm with worst-case update time
\[
\tilde O(\lambda^{5.5}\sqrt{n})
\]
for min-cut value bounded by \(\lambda\), and a general fully dynamic exact min-cut algorithm with amortized update time
\[
\tilde O(m^{1-1/12}),
\]
improving on \(\tilde O(m^{1-1/31})\). It also derives the first fully dynamic deterministic \((1+\varepsilon)\)-approximation of fractional arboricity with amortized update time
\[
O(\alpha \log^6m/\varepsilon^4),
\]
using the identity
\[
\alpha(G)=\frac{1}{\min_{e\in E}\ell^*(e)}.
\]
Tree packing here serves simultaneously as a min-cut certificate and as a density certificate [2405.09141].

The LP-based theory of minimum \(k\)-cut gives a parallel generalization. The dual tree-packing interpretation, combined with the LP integrality gap
\[
2\left(1-\frac{1}{n}\right),
\]
implies that for an optimal \(k\)-cut there exists a tree in the support of an optimal dual solution crossing the cut at most \(2k-3\) times. The same framework yields the bound
\[
O\!\left(n^{\lfloor 2\alpha (k-1)\rfloor}\right)
\]
on the number of \(\alpha\)-approximate \(k\)-cuts [1808.05765].

Diameter-sensitive packing adds another algorithmic layer. For an \(n\)-vertex \(k\)-edge-connected graph of diameter \(D\), there is an efficient randomized algorithm producing \(\frac{k}{2}\) spanning trees with edge-congestion at most \(2\), each of diameter
\[
O((101k\ln n)^D),
\]
with high probability. Sampling also yields \(\Omega(k/\ln n)\) edge-disjoint spanning trees each of diameter
\[
O(k^{D(D+1)/2}),
\]
and in \((k,D)\)-connected graphs there are \(k\) spanning trees of diameter \(O(D\log n)\) with edge-congestion \(O(\log n)\) [2006.07486]. These results explain why tree packings are useful in distributed MST, information dissemination, connectivity verification, and secure distributed computation.

## 5. Rooted, directed, and Steiner generalizations

The Maximum Bounded Rooted-Tree Packing problem models under-provisioned peer-to-peer streaming overlays. The graph represents the overlay, the root is the source peer, and \(K\) rooted delivery trees correspond to stripes in a multiple-description coding scheme. The goal is to maximize total covered appearances \(\sum_k |V_k|\) while respecting total forwarding capacity at each vertex. The decision problem is NP-complete; the MBRT special case \(K=1\) is NP-complete by reduction from 3-SAT. Nonetheless, optimal solutions are computable in polynomial time on two graph classes: complete graphs in \(\mathcal O(nK)\), via a Hamiltonian-path-based construction followed by greedy expansion, and rooted trees in \(\mathcal O(n^3K^3)\), via bottom-up dynamic programming with a non-standard multiple-choice knapsack subproblem [1111.0706].

Directed tree packing extends undirected tree connectivity to digraphs. For fixed integers \(k\ge 3\) and \(\ell\ge 2\), deciding whether \(\kappa_{S,r}(D)\ge \ell\) or \(\lambda_{S,r}(D)\ge \ell\) is NP-complete on general digraphs. On symmetric digraphs, deciding \(\lambda_{S,r}(D)\ge \ell\) is polynomial-time solvable for fixed \(k,\ell\), while the complexity of \(\kappa_{S,r}(D)\) splits: polynomial for fixed \(k,\ell\), but NP-complete when \(k\) is part of the input. On Eulerian digraphs, arc-disjoint packing admits an exact criterion,
\[
\lambda_{S,r}(D)\ge \ell \iff \lambda_D(r,s)\ge \ell \text{ for all } s\in S\setminus\{r\},
\]
whereas the internally disjoint version remains NP-complete [2005.00849]. A common misconception is that arc-disjoint and internally disjoint directed tree packings behave similarly; these results show that their complexity and structure can diverge sharply.

Steiner Tree Packing generalizes both spanning-tree packing and edge-disjoint paths. An STP instance \((G,T,d)\) asks for \(d\) pairwise edge-disjoint trees each containing \(T\). The GSTP formulation permits multiple terminal sets with individual demands and uses an augmented graph \(G^{\mathcal T}\) obtained by adding a vertex \(\aug T\) adjacent to every vertex in each terminal set \(T\). The 2025 structural-parameterized results show that GSTP is fixed-parameter tractable by the tree-cut width and by the fracture number of the augmented graph, and by the slim tree-cut width of the input graph. As corollaries, STP is fixed-parameter tractable by the tree-cut width of the host graph, and GSTP is FPT by \(\operatorname{tw}(G)+\Sigma_d\) with runtime
\[
|G|\cdot 2^{\Sigma_d\, w\log w},
\]
where \(\Sigma_d=\sum_{T\in \mathcal T} d(T)\) [2505.09250].

## 6. Probabilistic, random, and applied network forms

Tree packing also appears in probabilistic decomposition results. For a fixed tree \(T\) on \(t\) vertices, the random graph \(G_{n,p}\) and suitable pseudo-random graphs contain many edge-disjoint \(T\)-factors covering almost all edges. In an \((\varepsilon,p)\)-regular graph, if
\[
\varepsilon^6 n p^4 \gg \log^3 n,
\]
there is a collection of edge-disjoint \(T\)-factors covering all but a \(2\varepsilon^{1/3}\)-fraction of the edges asymptotically. In \(G_{n,p}\), if
\[
\varepsilon n p \gg \log^2 n,
\]
then all but an \(O(\varepsilon)\)-fraction of edges can be covered by edge-disjoint \(T\)-factors with high probability; under stronger divisibility assumptions this is pushed down to
\[
p > \frac{C\log n}{n}.
\]
This work places tree-factor packing near the connectivity threshold scale in random graphs [1304.2429].

In peer-to-peer streaming, rooted tree packing models the distribution of \(K\) stripes in an under-provisioned overlay, where average upload capacity is below the video bitrate. Since a peer’s video quality depends on how many rooted delivery trees contain it, the objective \(\max \sum_k |V_k|\) measures achievable aggregate service under bounded upload capacities [1111.0706].

In quantum networks, spanning-tree packing becomes an exact protocol for conference key propagation. A single spanning tree of bipartite secret bits yields one conference secret bit by chained one-time-pad propagation, and the asymptotic achievable conference key rate equals the weighted spanning-tree-packing number
\[
r_{\rm conf} = \min_{P} \frac{1}{|P|-1} \sum_{e\in\mathcal E(P)} r_e.
\]
The same criterion identifies bottleneck partitions and guides optimal placement of new QKD links: links that bridge the minimizing partition increase the rate most directly, whereas links that merely strengthen already dense regions can fail to improve the bottleneck [2506.04105].

Across these settings, the unifying pattern is that tree packing converts global network function into combinatorial structure. In decomposition problems it organizes edge-disjoint embeddings; in cut problems it exposes bottlenecks through loads and respecting cuts; in rooted and Steiner settings it captures constrained multicommodity connectivity; and in communication systems it serves as an exact throughput or capacity certificate rather than only a heuristic design principle [2405.09141] [2506.04105].

Source: https://www.emergentmind.com/topics/tree-packing