In Fig. 1(a), an input DAG G. In Fig. 1(b), the reduction to the maximum matching problem: a bipartite graph B(G) having as vertices two copies of V(G) and an edge between the first copy of v1 ∈ V(G) and the second copy of v2 ∈ V(G) iff there is a directed path in G from v1 to v2. The edges of a maximum matching of B(G) are highlighted, and a MPC for G is obtained by putting v1 and v2 in the same path there is an edge between v1 and v2 and is selected by the maximum matching. In Fig. 1(c), a network flow N(G) corresponding to G; the labels '1' on some edges are the lower bounds on that edges; all other edges have lower bound 0. The min-flow on N(G) has value 2; the edges with flow value 1 are highlighted; any decomposition of this flow into paths gives a MPC.