Purpose: Compute a minimum spanning tree in time, where is the inverse Ackermann function — the fastest known deterministic comparison-based MST algorithm (Chazelle, 2000).
The Idea: soft heaps
The bottleneck in Borůvka-style MST algorithms is finding minimum outgoing edges. Chazelle’s algorithm uses a soft heap (also Chazelle’s invention), a priority queue that is allowed to lie:
A soft heap supports insert, meld and extract-min in amortized time, at the price of “corrupting” at most an fraction of the inserted keys — their stored values may be increased.
Trading exact correctness for constant-time operations breaks the comparison barrier that a truthful heap imposes.
Algorithm outline
- Run Borůvka phases to contract the graph, reducing the vertex count geometrically.
- Build a hierarchy of contractible subgraphs guided by a -ary tree whose depth is chosen so the corruption stays controlled.
- Use soft heaps to find approximate minimum edges quickly. Corrupted edges are set aside into a “bad” set.
- Recursively clean up the bad edges, whose number is bounded by the corruption parameter.
The interplay of the hierarchy depth and the corruption rate is what produces the inverse-Ackermann bound.
Complexity
- Time: deterministic
- Space:
The MST complexity landscape
| Algorithm | Time | Notes |
|---|---|---|
| Kruskal | sort + DSU; write this | |
| Prim + binary heap | good for dense graphs with an array | |
| Prim + Fibonacci heap | theoretical improvement | |
| Borůvka | parallelisable, basis of the fast ones | |
| Fredman-Tarjan | packet-based Prim/Borůvka hybrid | |
| Gabow-Galil-Spencer-Tarjan | ||
| Chazelle | best deterministic known | |
| Karger-Klein-Tarjan | expected | randomized, linear |
| Pettie-Ramachandran | optimal | provably optimal, constant unknown |
The open problem
Whether a deterministic linear-time MST algorithm exists is still open. We have a randomized linear algorithm (Karger-Klein-Tarjan), a provably optimal algorithm whose running time nobody can name (Pettie-Ramachandran), and Chazelle’s bound — but not a deterministic one.
Soft heaps elsewhere
The soft heap is independently useful. It gives a clean selection algorithm (an alternative to median-of-medians), and appears in dynamic graph algorithms wherever “approximately correct is good enough”.
Variants / Use Cases
- Minimum Spanning Tree — the topic page and what to write in practice
- Kruskal — the contest answer, always
- MST verification — checking a given tree is minimum is solvable in deterministic (King’s algorithm), which is part of why linear construction feels within reach
- Complexity theory — and where inverse Ackermann shows up