This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: Introduction to Algorithms Solution Set 5 CS 482, Spring 2008 (1) (a) If e is contained in a mincut ( A,B ), let C be the capacity of this cut. Every maxflow f has value v ( f ) = C , and such a flow must saturate every edge of the mincut, including edge e . In more detail, the argument goes as follows. Let E ( A,B ) denote the set of edges e = ( u,v ) with u ∈ A, v ∈ B and let E ( B,A ) denote the set of edges e = ( u,v ) with u ∈ B, v ∈ A . Then C = v ( f ) = X e ∈ E ( A,B ) f ( e ) X e ∈ E ( B,A ) f ( e ) ≤ X e ∈ E ( A,B ) c e X e ∈ E ( B,A ) 0 = C . The left side is equal to the right side, and the only way this can happen is if f ( e ) = 0 for every e ∈ E ( B,A ) and f ( e ) = c e for every e ∈ E ( A,B ). Since e ∈ E ( A,B ), this implies f ( e ) = c e , i.e. edge e is saturated by f . If e is not contained in a mincut, then decreasing the capacity of edge e by 1 doesn’t change the mincut capacity of the flow network, hence it also doesn’t change the maxflow value. Let G denote the flow network obtained from G by decreasing the capacity of edge e by 1, and let f be a maxflow in G . Then f is also a maxflow in G (since its value equals the mincut capacity in G , which equals the mincut capacity in G , which equals the maxflow value in G ) and f doesn’t saturate edge e in the original network G . (b) We will prove that any flow which contains a directed cycle of flowcarrying edges can be transformed into another flow with no such cycles, without changing the flow value. The idea is to use “augmenting cycles” in the same sort of way that the FordFulkerson algorithm uses augmenting paths....
View
Full Document
 Spring '08
 KLEINBERG
 Algorithms, Flow network, Maximum flow problem, Maxflow mincut theorem, uij

Click to edit the document details