Imagine a tangle of arrows: tasks that wait on each other, web pages that link in circles, processes that hold a resource while waiting for another. Whenever such a network contains a cycle, something can go wrong — a deadlock, an infinite loop, a circular dependency that never resolves.
The cure is to remove a few nodes so that no cycle survives. A graph with no cycles is a forest (a collection of trees), and a forest can always be sorted, scheduled or traversed without ever looping back on itself.
A feedback vertex set is exactly such a rescue squad: a set of vertices whose deletion leaves the graph acyclic. The interesting question is the minimum one — what is the smallest number of vertices we must remove to break every loop? That little number turns out to sit on the boundary between the easy and the genuinely hard.
Comments
Loading comments...