A gentle tutorial and a structured reformulation of Bock's algorithm for minimum directed spanning trees

arXiv cs.CL / 3/31/2026

💬 OpinionIdeas & Deep AnalysisTools & Practical UsageModels & Research

Key Points

  • The paper provides a beginner-friendly tutorial and a structured reformulation of Bock’s 1971 Algol procedure for computing minimum directed spanning trees (minimum arborescences).
  • It restates the arborescence objective in Bock’s notation and includes a complete, step-by-step execution trace of the original ten-node example from initialization to termination.
  • The authors redesign the algorithm to make its phase structure, maintained state, and control flow explicit while preserving the original logic.
  • It connects the method to nonprojective dependency parsing by explaining it as an exact decoder and demonstrates a worked example adapted from a 2026 dependency parsing book.
  • The tutorial shows how a maximum-weight arborescence problem can be reduced to Bock’s minimum-cost formulation via an affine transformation and traced using the same state variables.

Abstract

This paper presents a gentle tutorial and a structured reformulation of Bock's 1971 Algol procedure for constructing minimum directed spanning trees. Our aim is to make the original algorithm readable and reproducible for modern readers, while highlighting its relevance as an exact decoder for nonprojective graph based dependency parsing. We restate the minimum arborescence objective in Bock's notation and provide a complete line by line execution trace of the original ten node example, extending the partial trace given in the source paper from initialization to termination. We then introduce a structured reformulation that makes explicit the procedure's phase structure, maintained state, and control flow, while preserving the logic of the original method. As a further illustration, we include a worked example adapted from {jurafsky-martin-2026-book} for dependency parsing, showing how a maximum weight arborescence problem is reduced to Bock's minimum cost formulation by a standard affine transformation and traced under the same state variables.