Abstract
It is well known that every cycle of a graph must intersect every cut in an even number of edges. For planar graphs, Ford and Fulkerson proved that, for any edge e, there exists a cycle containing e that intersects every minimal cut containing e in exactly two edges. The main result of this paper generalizes this result to any nonplanar graph G provided G does not have a minor containing the given edge e. Ford and Fulkerson used their result to provide an efficient algorithm for solving the maximumflow problem on planar graphs. As a corollary to the main result of this paper, it is shown that the FordFulkerson algorithm naturally extends to this more general class of graphs.
1. Introduction
This paper examines the structure of paths and cuts in a graph relative to a fixed edge. In particular, let be a graph, and let be an edge of . Define an path of to be a path such that is a cycle of . Define an cut of to be a cut of that contains (in this paper, paths and cycles do not have repeated nodes and are equated with their edge sets. Also, cuts are minimal; i.e., no cut properly contains another.) Ford and Fulkerson [1] showed that if is planar, then there exists an path that intersects every cut in exactly one edge. This FordFulkerson property does not hold for graphs in general. Specifically, take . Then, for any edge of and any path , one can always find an cut that intersects in more than one edge. The FordFulkerson property, however, is not confined solely to planar graphs; in particular, if , then it is easy to find an path, for any choice of , that intersects every cut in exactly one edge.
One of the main goals of this paper is to extend the FordFulkerson result to a larger class of graphs. Motivated by the example above, it is shown that if is excluded in the proper way, then this goal can be achieved. Below is the main result of the paper. Throughout the paper, denotes the number of nodes of a graph, and the number of edges.
Theorem 1. Let be a graph, and let be an edge of . If is connected, and does not have a minor containing , then there exists an path of that intersects every cut of in exactly one edge. Moreover, such an path can be found in time.
Theorem 1 is then used to provide a very simple time algorithm for the maximumflow problem for graphs in this class. This is within a logarithmic factor of the fastest maximumflow algorithm, namely, the recent algorithm due to Orlin [2].
The remainder of the paper is outlined as follows. The next section introduces a graph decomposition, which serves as a key ingredient for the proof of Theorem 1. Section 3 contains the proof of Theorem 1, and Section 4 applies Theorem 1 to the maximumflow problem.
2. Graph Decomposition
This section describes a connectivitybased decomposition for graphs that do not have a minor containing a fixed edge. This decomposition was introduced in Wagner [3]. For the sake of completeness, the key results are presented and proved here.
The notion of connectivity used here is that of Tutte [4]. A separation, for a positive integer , of a connected graph is a partition of the edge set of such that and the edgeinduced subgraphs and have at most nodes in common. A connected graph is connected, for , if it does not have a separation for any . A separation of a connected graph is an internal separation if .
The next theorem is a wellknown result of Wagner [5].
Theorem 2. Let be a connected graph. Then, does not have a minor if and only if is planar or isomorphic to .
It is sometimes more convenient to work with subdivisions rather than minors. A graph is a subdivision of a graph if it can be obtained from by a sequence of the following operation: replace an edge by edges and , where is a new node. If a graph has a subgraph that is a subdivision of a graph , then is said to have a K subdivision. It is well known and easy to prove that a 3connected graph has a subdivision if and only if it has a minor.
If a graph is a subdivision of a graph , and and are nonadjacent nodes of , then and are independent in . The next lemma is due to Širáň [6].
Lemma 3. Let be a connected graph, and let be an edge of . If is not contained in any minor of , then for any subdivision of , and are independent degreethree nodes of .
In this paper, 2 and 3separations play a crucial role, as do the related notions of 2 and 3sums. First, consider a 2separation of a 2connected graph . Let , and let be a set disjoint from . For , define to be the graph obtained from by adding as an edge joining and . Then, is a 2sum decomposition of the graph , and is the connecting edge.
Now, let be an internal 3separation of a 3connected graph . Let , and let be the set of edges of that have both end nodes in . Let be a set disjoint from such that . For , construct a graph from by adding the members of in such a way that is a triangle of and such that each edge of has the same ends in as it does in . Then, is a 3sum decomposition of , and is the connecting triangle.
It is well known that if is a sum decomposition of a connected graph , for then both and are connected and are isomorphic to proper minors of .
Two special kinds of internal 3separations are needed. Both are defined for a given 3connected graph relative to a fixed edge .
First, let be a internal 3separation of . If both ends of are in , then the 3separation is said to be straddled by . Observe that in this case, is in the connecting triangle of the corresponding 3sum decomposition. The notion of a straddling edge can be found in the work of Tseng and Truemper [7]. It is also related to the concept of “contractibility,” which traces back to the work of Tutte [8]. Specifically, an edge of a 3connected graph is contractible if its contraction results in a 3connected graph. It is easy to see that an edge is not contractible if and only if it straddles an internal 3separation.
The second special internal 3separation is as follows. Let be an internal 3separation of , and suppose has exactly seven edges, say . Suppose further that , , and are triangles of such that no two of are parallel. Then, is a crown, and is a crown 3separation of with respect to . Observe that the crown has three nodes of degree two, which, by the 3connectivity of , constitute the set . It also has two nodes of degree four, which are the ends of .
Let be a crown 3separation of with respect to , and let be the corresponding 3sum decomposition. If is planar, then is said to be crownplanar with respect to . Crownplanar graphs show up in the decomposition established in Theorem 5. In the context of Theorem 5, crownplanar graphs can alternatively be described as being obtained from a 3connected planar graph by duplicating a degreethree node , where the fixed edge joins to its twin.
Let be a graph, and a subgraph of . Let be a path of , the end nodes of which are nodes of and the internal nodes of which are not nodes of . Then, the subgraph of is said to be obtained from by adjoining , and is an adjoinable path of with respect to .
Let be a graph, and an edge of . Let be a subdivision of , and suppose that joins two independent degreethree nodes of . Since has nine edges, the graph consists of nine paths, each of which is a subdivision of an edge of . The six such paths that share an end with are called the principal paths of with respect to ; the remaining three paths are the support paths of . The subdivision of is good (resp., bad) with respect to if all six (resp., at most five) of the principal paths with respect to consist of a single edge.
Lemma 4. Let be a connected graph, and let be an edge of . Then, either (i) has a minor that contains , (ii) has an internal separation that is straddled by , or (iii) every subdivision of is good with respect to .
Proof. Let . Suppose that neither (i) nor (iii) holds. If is planar or isomorphic to , then (iii) holds vacuously, and so, Theorem 2 implies that has a minor, and thus a subdivision. By Lemma 3, and are independent degreethree nodes in every subdivision of . Since (iii) does not hold, there exists a subdivision of , say , in which some principal path with respect to , say , has at least two edges. Let denote the end node of not in . Let denote the other principal path that has as an end node, and let denote the support path that has as an end node. Denote the other end node of by . Consistent with the above, assume and are chosen so that the number of edges in is as small as possible.
Claim. If an adjoinable path of with respect to has one end that is an internal node of either or , then the other end of the path is a node of .
Proof of Claim. If the other end of the path is not in , then it is easy to check that adjoining the path to results in a graph that has a minor that contains , a contradiction. End of Claim.
Observe that is an internal 3separation of straddled by . Thus, either (ii) holds or there exists an adjoinable path of , one end of which, say , is a internal node of (say) and the other end of which, say , is not in . By the Claim, is a node of ; if it is an internal node of , then a contradiction to the choice of is obtained by adjoining to and deleting the internal nodes of the subpath of subpath of . Thus, .
Observe that is an internal 3separation of straddled by . Thus, either (ii) holds or there exists an adjoinable path of with respect to , one end of which, say , is in , the other end of which, say , is not in , and neither end of which is in . By the Claim, is a node of and is a node of , where is one of the principal or support paths of not in . Moreover, must equal , for otherwise a contradiction to the choice of is obtained by adjoining to and deleting the internal nodes of the subpath of . By the Claim, and are node disjoint. Now, has a minor that contains , a contradiction.
Theorem 5 below is the main result of the section.
Theorem 5. Let be a connected graph, and let be an edge of . Then, either (i) is planar, (ii) is isomorphic to , (iii) has a minor that contains , (iv) has an internal separation that is straddled by , or (v) is crownplanar with respect to .
Proof. Lemma 4 and Theorem 2 together imply that either one of (i)–(iv) holds, or every subdivision of is good with respect to . Assume that none of (i)–(iv) hold and let denote a subdivision of that is good with respect to . Let , and let denote the common end node of the three support paths of . Let , , and denote the remaining degreethree nodes of . Let , , and denote the three support paths of with respect to , and without loss of generality, assume that the ends of are and .
Observe that is an internal 3separation of straddled by . Since (iv) does not hold, there exists an adjoinable path of with respect to , one end of which is in , the other end of which is in (say), and neither end of which is equal to . Similarly, there exists an adjoinable path of with respect to , one end of which is , the other end of which is in (say), and neither end of which is equal to .
Observe that is a crown 3separation with respect to of . Thus, either has a crown 3separation with respect to or there exists an adjoinable path of with respect to , one end of which is in and the other end of which, call it , is in . If , then observe that contains a bad subdivision with respect to , a contradiction (note, if , then by the 3connectivity of , has at least two edges). Thus, . It can now be checked that contains a minor containing , a contradiction.
Finally, it needs to be shown that if has a crown 3separation with respect to , and none of (i)–(iv) hold, then is crownplanar with respect to . To see this, let be the 3sum decomposition of corresponding to the crown 3separation with respect to , where . Then, it suffices to show that is planar. If this is not the case, then by Theorem 2, is either isomorphic to or has a subdivision. In either case, it is straightforward to see that has a subdivision for which does not join two independent nodes, contradicting Lemma 3.
The next result is from Wagner [3]. It shows that if is a simple 2connected graph having an edge that is not contained in a minor, then the number of edges of is bounded . The proof is a straightforward induction using 2 and 3sum decompositions, together with Theorem 5 and the wellknown fact that any planar graph has at most edges.
Lemma 6. Let be a simple connected graph having at least three nodes. If, for some edge , does not have a minor containing , then has at most edges.
3. Admissible Paths
This section presents a proof of Theorem 1. This section begins with two lemmas that relate an cut of a graph to that of a member of a sum decomposition of the graph.
Lemma 7. Let be a connected graph, and let be an edge of . Suppose that is a separation of with . Let be the corresponding sum decomposition, and let denote the connecting edge. Let be an cut of . Then, either or is an cut of . Moreover, in the latter case, is a cut of .
Proof. Let and denote the nodes common to and . Let denote the node partition of corresponding to the cut of .
First, it is shown that if and only if (say) and . To this end, suppose that and . Observe, there exists a path in , and any such path must contain an edge from . Thus, . Now, suppose that , and let . Since , there exists two paths, say and , each of which joins an end node of to an end node of and such that (say) and . Since and , must go through (say) and through . Thus, and .
Now, define and . Then, and are both nonempty since they each contain an end of . Also, they are disjoint and their union equals . By the previous paragraph, it can be seen that the set of edges of that have exactly one end in is (if (say)) or (if (say) and ). Thus, the conclusion that either or is an cut of follows provided the subgraphs and are connected. To this end, let and be nodes of , and let be a path in . If , then is a path of . Suppose that this is not the case. Then, . Moreover, the edges of constitute a subpath of . Thus, replacing, in , the subpath by the edge yields a path in . Thus, is connected. Similarly, is connected.
Now, suppose that is an cut of . Showing that is a cut of is done in a manner similar to the above. Specifically, define and . Then, and are nonempty since and . Also, they are disjoint and their union equals . Moreover, the set of edges of that have exactly one end in is precisely . Thus, the conclusion that is a cut of follows provided the subgraphs and are connected. To this end, let and be nodes of , and let be a path in . Since , . Therefore, . Thus, is connected. Similarly, is connected.
Lemma 8. Let be a connected graph, and let be an edge of . Suppose that is a separation of that is straddled by . Let be the corresponding sum decomposition, and let denote the connecting triangle. Let be an cut of . Then, is an cut of for some .
Proof. Let , , and denote the nodes common to and . Let with and . Let denote the node partition of corresponding to the cut of . Without loss of generality, assume and . Let and . Then, and are both nonempty since they each contain an end of . Also, they are disjoint and their union equals . Moreover, the set of edges of that have exactly one end in is precisely . The result now follows provided the subgraphs and are connected. To this end, let and be nodes of , and let be a path in . If , then is a path of . Suppose that this is not the case. Then, . Moreover, the edges of constitute an subpath of . Thus, replacing, in , the subpath by the edge yields a path in . Thus is connected. Similarly, is connected.
Let be a graph, and let be an edge of . An path of is called admissible if it intersects every cut in exactly one edge. The above two lemmas are now used to show how admissible paths relate to sums.
Lemma 9. Let be a connected graph, and let be an edge of . Suppose that has a separation with . Let be the corresponding sum, and let be the connecting edge. Suppose that is an admissible path of , and is an admissible path of . If , is an admissible path of , and if , then is an admissible path of .
Proof. Let be an cut of . By Lemma 7, either or is an cut of .
First, consider the case that is an cut of . Since is an cut of both and , it must be that . In particular, . Since is an admissible path of , it follows that . Thus, if , then is an admissible path of , and if , then is an admissible path of .
Now, assume that is an cut of . Since is an admissible path of , . If , then , from which it follows , implying that is an admissible path of . Thus, assume . Since is an admissible path of , . Therefore, . Since is an admissible path of , by Lemma 7, . It follows that , implying that is an admissible path of .
Lemma 10. Let be a connected graph, and let be an edge of . Suppose that has an internal separation straddled by . Let be the corresponding sum, and let be the connecting triangle. Let be an admissible path of that is edge disjoint from . Then, is an admissible path of .
Proof. Since is edge disjoint from , is a path of . Let be an cut of . By Lemma 8, is an cut of for some . By assumption, , which implies , as required.
Below is the restatement of Theorem 1 in terms of admissible paths.
Theorem 11. Let be a graph, and let be an edge of . If is connected, and does not have a minor containing , then has an admissible path. Moreover, such an path can be found in time in general and in time if is connected and simple.
Proof. The proof is by a series of reductions.
(I) Reduction to the Simple 2Connected Case. Since is connected, every path of is contained in the same block of as . Therefore, the search for an admissible path of can be restricted to this block. Computing the blocks of and identifying the one containing can be done in time; see Tarjan [9]. Also, since any path uses at most one edge from any parallel class, any parallel edges can be deleted, which requires time. Now, by Lemma 6, is .
(II) Reduction to the 3Connected Case. The next step is to show that the admissiblepath problem on can be reduced in linear time to solve a sequence of admissiblepath problems, where each problem in the sequence is defined on a graph that is 3connected and does not contain a minor using a specified edge, and such that the total size of this sequence is linear in the size of .
(IIa) Admissible Paths and 2Sum Decompositions. The first step in defining this sequence is to examine the relationship between an instance of the admissiblepath problem and a 2sum decomposition in the underlying graph. So, suppose that is not 3connected, and let be a 2separation of with . Let be the corresponding 2sum decomposition, and let be the connecting edge. It is straightforward to verify that (resp., ) is 2connected and does not have a minor containing (resp., ). By Lemma 9, if is an admissible path of , and is an admissible path of , then an admissible path of is equal to either , if , and , otherwise.
(IIb) The Reduction Procedure. To turn the above relationship between admissible paths and 2sum decomposition into a computationally efficient algorithm requires two straightforward ideas. First, one chooses the 2sum decomposition judiciously, and second one applies this judicious choice recursively. Tutte [4] and Hopcroft and Tarjan [10] showed that one can always find a 2separation of such that , and in the resulting 2sum decomposition , is either 3connected, a cycle on three or more edges, or a bond (i.e., the planar dual of a cycle) on three or more edges. Applying this choice of 2sum decomposition recursively reduces the admissiblepath problem on to solve a sequence of admissiblepath problems on a collection of graphs, say , every member of which is either 3connected, a cycle, or a bond. Moreover, Hopcroft and Tarjan [10] showed that the sequence of 2separations necessary to generate can be found in time and that the size of the collection, that is, , is . Observe that an admissible path on a cycle or bond can be trivially found in linear time (in the size of the cycle or bond). Thus, in time, the admissiblepath problem on can be reduced to solve a sequence of admissiblepath problems, each of which is on a graph that is 3connected and does not have a minor using a specified edge. Moreover, the total size of the graphs in the sequence is . Thus, it suffices to prove the theorem assuming is 3connected.
(III) Reduction to the Planar Case. Assume that is 3connected. By Theorem 5, either is planar, isomorphic to , crownplanar with respect to or has an internal 3separation straddled by . These cases are considered one at a time. As a first step, it is shown that one can recognize which case is applicable in time. Clearly, recognizing if is isomorphic to can be done in constant time. Also, it is well known that planarity can be recognized in time; see, for example, Hopcroft and Tarjan [11]. Determining whether has an internal 3separation straddled by can be done by simply first deleting the ends of and then determining if the resulting graph has a cut vertex; the latter can be done in time using algorithm of Tarjan [9]. The only other possibility for is that it is crownplanar with respect to .
(IIIa) The Base Cases. This subcase considers these cases when is either planar, isomorphic to , or crownplanar with respect to . For each of these three cases, it is shown how to find an admissible path of in time.
First, assume that is planar. Then, as observed by Ford and Fulkerson [1], it is straightforward to find an admissible path of . This is done as follows. Embed in the plane, so that is on the infinite face, and then delete . Then, there exist two paths of the union of which defines the outer face of . Ford and Fulkerson [1] showed that each of these paths is an admissible path of (this is also easily seen by planar duality). Observe that if is 2connected, these two admissible paths are internally node disjoint, a fact that will be used later. Finding an embedding of a planar graph can be done in time [11, 12], and so for planar graphs, it follows that the two admissible paths can be found in time.
Second, consider the case that is isomorphic to or is crownplanar with respect to . In each of these cases, there exist two internally nodedisjoint paths in , each of which contains exactly two edges. Since, in general, every cut must intersect every path in an odd number of edges, it must be that each of these paths is admissible. Thus, finding these two admissible paths can be done in time.
(IIIb) 3Sum Decompositions. The final step is to analyze when has an internal 3separation straddled by . Consider the graph , where and are the ends of . Since has an internal 3separation, has a cut node. Conversely, each cut node of corresponds to an internal 3separation of straddled by . Now, choose a block of that has exactly one cut node in common with rest of , and let be the corresponding internal 3separation of . Let be the associated 3sum decomposition of , and let be the connecting triangle. Then, by the choice the cut node, (say) does not have an internal 3separation. Thus, by Theorem 5, is planar, isomorphic to , or crown planar with respect to . Moreover, since is 3connected, is 2connected. Thus, by Case , has two internally nodedisjoint admissible paths. Since these two paths are internally node disjoint, one of them, call it , must be edge disjoint from . Thus, by Lemma 10, is an admissible path of . Finding the appropriate internal 3separation easily reduces to finding the cut nodes of and so requires time using Tarjan [9]. Once the appropriate internal 3separation is identified, finding the admissible path requires time by Case .
Theorem 11 can be strengthened as follows: if is 2connected (resp., 2edgeconnected), then there exist two internally node disjoint (resp., edgedisjoint) admissible paths. The proof of this requires a bit more work but follows the same line of reasoning.
Theorem 11 provides a sufficient condition for the existence of an admissible path. It is, however, not a necessary condition. For example, take the graph , and let be any edge. Now, add a new edge that creates a triangle containing . Then, is an path that intersects every cut in exactly one edge. It would be interesting to determine if one excludes triangles containing , whether the condition is also necessary.
4. The FordFulkerson Algorithm
Let be a graph, and let and be distinguished nodes of . Assume has the edge , and consider an instance of the minimum cut problem (equivalently, the maximumflow problem) defined on . Ford and Fulkerson [1] provided a very simple algorithm for solving this problem provided that is planar. This section shows that the FordFulkerson algorithm extends virtually unchanged provided that does not have a minor containing ; the running time of the algorithm is shown to be . This is within a logarithmic factor of the fastest maximumflow algorithm, namely the recent (and more complicated) algorithm due Orlin [2]. The only faster algorithm for graphs in this class is the time algorithm in Wagner [3].
Consider the following property for the graph .
Property A. For any subset of edges with , if has an path, then it has an admissible path.
Algorithm 1 is the FordFulkerson algorithm, stated in terms of solving the minimum cut problem. An instance of the minimum cut problem is specified by , where is a vector of nonnegative edge capacities.

The next theorem shows that the algorithm is correct provided Property holds. In particular, Theorem 11, then implies that the algorithm works for any instance provided does not have a minor containing .
Theorem 12. Assume that satisfies Property A. Then, Algorithm 1 correctly computes a minimum cut of . In particular, at termination, the set contains a unique cut of , and it is a minimum cut of .
Proof. Each execution of the while loop chooses an admissible path. Since, by assumption, satisfies Property , this step is well defined. Each execution of the while loop adds exactly one edge to , and therefore eventually, will contain an cut of , and so the algorithm will terminate.
Assume that the while loop executes times, and index the instantiations of , , , , , and by . So, denotes the instantiation of at termination of the algorithm.
It is first shown that contains a unique cut of . This is equivalent to showing that has exactly two components. Suppose this is not the case; that is, suppose has at least three components. Since was obtained from by deleting exactly one edge, must have at least two components. Let denote the least index such that has at least two components. Observe that, in , the ends of are in the same component, for otherwise the algorithm would have terminated at , contradicting the definition of . By definition, is connected. Since is obtained from by deleting the edge , this edge must be a cut edge of . From the algorithm, is contained in the path . But this is impossible since no path, starting and ending in the same component of a graph, can contain a cut edge of the graph. This contains a unique cut of ; denote this cut by .
Now, consider , that is, the minimum cut problem that results after one execution of the while loop. The graph has one less edge than . Applying Algorithm 1 to will produce the set , which, by induction, will contain a unique cut of that is also a minimum cut of ; denote this cut by . Observe that is obtained from first adding the edge with a capacity of zero and then adding to the capacity of every edge of . Consider these steps individually. Adding an edge of capacity zero effectively leaves the minimum cut problem unchanged. In particular, either or is minimum cut for the resulting minimum cut problem, depending on whether the ends of are in different components of or not. In either case, the capacity of the resultant minimum cut is unchanged. The second step also effectively does not change the minimum cut problem. In particular, by the algorithm, is an admissible path. Therefore, adding to each edge of adds to the capacity of each cut. Consequently, either or (again, depending on whether the ends of are in different components of or not) is a minimum cut of . In either case, this minimum cut of is contained in and, thus, by the uniqueness demonstrated in the previous paragraph, is equal to , as required.
Corollary 4. If does not have a minor containing , then the complexity of Algorithm 1 is .
Proof. By Theorem 11, finding the first admissible path requires time. Also, note that the initial step in this first admissiblepath computation reduces the graph to a simple 2connected graph, and so by Lemma 6, the resulting number of edges is . Thus, each subsequent admissiblepath computation requires time. Since the algorithm deletes one edge every iteration, it requires at most iterations. Thus, the algorithm requires time.
As a final note, Algorithm 1 can be dualized, using planar pathcut duality, to an algorithm for finding a shortest path in a graph. This dual version of Algorithm 1 can, in fact, be shown to be equivalent to Dijkstra’s shortestpath algorithm.