Approximate Max-integral-flow/min-cut Theorems Kenji Obata UC Berkeley June 15, 2004
Multicommodity Flow Graph G, edge capacities c, demands K
Multicommodity Flow K-partition
Multicommodity Flow K-cut
Multicommodity Flow
… for one commodity [Ford-Fulkerson] Multicommodity Flow
… in general [Leighton-Rao, GVY] Multicommodity Flow
Integral Multicommodity Flow Suppose c is integral. Can we find integral f ? … for one commodity, yes [Ford-Fulkerson] … in general, no [Garg] Both flow [GVY] and cut [DJPSY] problems are NP- hard
Integral Multicommodity Flow Suppose every K-cut has weight >= C. (this work)
Integral Multicommodity Flow Suppose every K-cut has weight >= C. Theorem: For any G, R = O( -1 log k) If G is planar, R = O( -1 ) If G is -dense, R = O( -1/2 -1/2 ) (this work)
Integral Multicommodity Flow Algorithmic: Construct an integral flow or a proof that the K-cut condition is violated => edge-disjoint path problems => odd circuit cover problems => property testing (this work)
Algorithm (general graphs) Greed g(t) Time t (not to scale)
Algorithm (general graphs) Greed g(t) Time t (not to scale)
Algorithm (special cases) Greed g(t) Time t (not to scale) planar dense
Constructing g(t)
Bounding f( ) General graphs Reinterpret [GVY] applied to original graph metric (Note: Makes no sense) Planar graphs … [Klein-Plotkin-Rao] Dense graphs
Bounding f( ) (dense case) |E(G)| >= n 2, > 0, c {0,1} E B(v, ) = ball of radius around v, boundary B o (v, ) B(v, ) B o (v, )
Choose arbitrary vertex v, set = 0 While |B o (v, )| |B o (v, )| > |B(v, )| |B(v, )|, grow Bounding f( ) (dense case) B(v, ) B o (x, +1)
Bounding f( ) (dense case) Each ball has low radius Proof:
Bounding f( ) (dense case) Induced multicut has low density Proof: Together (set ) =>
Proof of Theorem Suppose every K-cut has weight >= C Claim: K-path of length <= g( ):
Proof of Theorem
Proof of Theorem (contd) Delete path p (|p| <= g( )) and iterate c = c – p ; = – p/C Witness for flow f, residual multicut m
Edge-disjoint paths Corollary: If G has degree bound, min-multicut m then
Motivation (Property Testing) Given bounded degree graph G Want to distinguish whether G has a certain property or is far ( n entries) from having the property In sub-linear (constant?) time Example: Coloring problems No sub-linear algorithms for 3-coloring [BOT] 2-coloring has complexity ~O(n 1/2 )
Testing 2-Colorability Fix max-cut Set G = {crossing edges}, K = {internal edges} => min-multicut has weight >= m
By corollary, -2 m edge-disjoint odd cycles of length O( -2 ) Algorithm: Repeat O (log (1/ )) times: Sample random vertex v Do BFS about v to depth 1/ With probability 1-, find odd cycle using exp( O( -2 )) log( -1 ) queries Testing 2-Colorability (planar case)
Thank you