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

  1. Run Borůvka phases to contract the graph, reducing the vertex count geometrically.
  2. Build a hierarchy of contractible subgraphs guided by a -ary tree whose depth is chosen so the corruption stays controlled.
  3. Use soft heaps to find approximate minimum edges quickly. Corrupted edges are set aside into a “bad” set.
  4. 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

AlgorithmTimeNotes
Kruskalsort + DSU; write this
Prim + binary heapgood for dense graphs with an array
Prim + Fibonacci heaptheoretical improvement
Borůvkaparallelisable, basis of the fast ones
Fredman-Tarjanpacket-based Prim/Borůvka hybrid
Gabow-Galil-Spencer-Tarjan
Chazellebest deterministic known
Karger-Klein-Tarjan expectedrandomized, linear
Pettie-Ramachandranoptimalprovably 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