deterministic edge connectivity in near linear time
play

Deterministic Edge Connectivity in Near-Linear Time Ken-ichi - PowerPoint PPT Presentation

Deterministic Edge Connectivity in Near-Linear Time Ken-ichi Kawarabayashi National Institute of Informatics, Japan Mikkel Thorup University of Copenhagen Edge connectivity and global min-cut Simple graph G = ( V , E ) (no parallel edges).


  1. History cont’d n = | V | , m = | E | , edge conectivity λ = Θ( m / n ) . ◮ [Gabow 1993] Global min-cut in O ( λ m log ( n /λ )) time for simple graphs. Implicit O ( λ m log n ) for multigraphs. ◮ 1993 Karger starts applying randomized Monte Carlo to global min-cut (never sure that there is no smaller cut) ◮ [Karger and Stein 1993] Global min-cut in O ( n 2 log 3 n ) time but randomized Monte Carlo. √ ◮ [Karger 1994] Global min-cut in O ( λ m ) time but randomized Monte Carlo. ◮ [Karger 1996] Global min-cut in O ( m log 3 n ) time even for weighted graphs but randomized Monte Carlo. ◮ [Karger 1996] Most efficient way to verify min-cut (for Las Vegas) is using Gabow’s deterministic algorithm. ◮ [This paper] Global min-cut deterministically for simple graphs in O ( m log 12 n ) = � O ( m ) time.

  2. History cont’d n = | V | , m = | E | , edge conectivity λ = Θ( m / n ) . ◮ [Gabow 1993] Global min-cut in O ( λ m log ( n /λ )) time for simple graphs. Implicit O ( λ m log n ) for multigraphs. ◮ 1993 Karger starts applying randomized Monte Carlo to global min-cut (never sure that there is no smaller cut) ◮ [Karger and Stein 1993] Global min-cut in O ( n 2 log 3 n ) time but randomized Monte Carlo. √ ◮ [Karger 1994] Global min-cut in O ( λ m ) time but randomized Monte Carlo. ◮ [Karger 1996] Global min-cut in O ( m log 3 n ) time even for weighted graphs but randomized Monte Carlo. ◮ [Karger 1996] Most efficient way to verify min-cut (for Las Vegas) is using Gabow’s deterministic algorithm. ◮ [This paper] Global min-cut deterministically for simple graphs in O ( m log 12 n ) = � O ( m ) time.

  3. History cont’d n = | V | , m = | E | , edge conectivity λ = Θ( m / n ) . ◮ [Gabow 1993] Global min-cut in O ( λ m log ( n /λ )) time for simple graphs. Implicit O ( λ m log n ) for multigraphs. ◮ 1993 Karger starts applying randomized Monte Carlo to global min-cut (never sure that there is no smaller cut) ◮ [Karger and Stein 1993] Global min-cut in O ( n 2 log 3 n ) time but randomized Monte Carlo. √ ◮ [Karger 1994] Global min-cut in O ( λ m ) time but randomized Monte Carlo. ◮ [Karger 1996] Global min-cut in O ( m log 3 n ) time even for weighted graphs but randomized Monte Carlo. ◮ [Karger 1996] Most efficient way to verify min-cut (for Las Vegas) is using Gabow’s deterministic algorithm. ◮ [This paper] Global min-cut deterministically for simple graphs in O ( m log 12 n ) = � O ( m ) time.

  4. History cont’d n = | V | , m = | E | , edge conectivity λ = Θ( m / n ) . ◮ [Gabow 1993] Global min-cut in O ( λ m log ( n /λ )) time for simple graphs. Implicit O ( λ m log n ) for multigraphs. ◮ 1993 Karger starts applying randomized Monte Carlo to global min-cut (never sure that there is no smaller cut) ◮ [Karger and Stein 1993] Global min-cut in O ( n 2 log 3 n ) time but randomized Monte Carlo. √ ◮ [Karger 1994] Global min-cut in O ( λ m ) time but randomized Monte Carlo. ◮ [Karger 1996] Global min-cut in O ( m log 3 n ) time even for weighted graphs but randomized Monte Carlo. ◮ [Karger 1996] Most efficient way to verify min-cut (for Las Vegas) is using Gabow’s deterministic algorithm. ◮ [This paper] Global min-cut deterministically for simple graphs in O ( m log 12 n ) = � O ( m ) time.

  5. History cont’d n = | V | , m = | E | , edge conectivity λ = Θ( m / n ) . ◮ [Gabow 1993] Global min-cut in O ( λ m log ( n /λ )) time for simple graphs. Implicit O ( λ m log n ) for multigraphs. ◮ 1993 Karger starts applying randomized Monte Carlo to global min-cut (never sure that there is no smaller cut) ◮ [Karger and Stein 1993] Global min-cut in O ( n 2 log 3 n ) time but randomized Monte Carlo. √ ◮ [Karger 1994] Global min-cut in O ( λ m ) time but randomized Monte Carlo. ◮ [Karger 1996] Global min-cut in O ( m log 3 n ) time even for weighted graphs but randomized Monte Carlo. ◮ [Karger 1996] Most efficient way to verify min-cut (for Las Vegas) is using Gabow’s deterministic algorithm. ◮ [This paper] Global min-cut deterministically for simple graphs in O ( m log 12 n ) = � O ( m ) time.

  6. History cont’d n = | V | , m = | E | , edge conectivity λ = Θ( m / n ) . ◮ [Gabow 1993] Global min-cut in O ( λ m log ( n /λ )) time for simple graphs. Implicit O ( λ m log n ) for multigraphs. ◮ 1993 Karger starts applying randomized Monte Carlo to global min-cut (never sure that there is no smaller cut) ◮ [Karger and Stein 1993] Global min-cut in O ( n 2 log 3 n ) time but randomized Monte Carlo. √ ◮ [Karger 1994] Global min-cut in O ( λ m ) time but randomized Monte Carlo. ◮ [Karger 1996] Global min-cut in O ( m log 3 n ) time even for weighted graphs but randomized Monte Carlo. ◮ [Karger 1996] Most efficient way to verify min-cut (for Las Vegas) is using Gabow’s deterministic algorithm. ◮ [This paper] Global min-cut deterministically for simple graphs in O ( m log 12 n ) = � O ( m ) time.

  7. History cont’d n = | V | , m = | E | , edge conectivity λ = Θ( m / n ) . ◮ [Gabow 1993] Global min-cut in O ( λ m log ( n /λ )) time for simple graphs. Implicit O ( λ m log n ) for multigraphs. ◮ 1993 Karger starts applying randomized Monte Carlo to global min-cut (never sure that there is no smaller cut) ◮ [Karger and Stein 1993] Global min-cut in O ( n 2 log 3 n ) time but randomized Monte Carlo. √ ◮ [Karger 1994] Global min-cut in O ( λ m ) time but randomized Monte Carlo. ◮ [Karger 1996] Global min-cut in O ( m log 3 n ) time even for weighted graphs but randomized Monte Carlo. ◮ [Karger 1996] Most efficient way to verify min-cut (for Las Vegas) is using Gabow’s deterministic algorithm. ◮ [This paper] Global min-cut deterministically for simple graphs in O ( m log 12 n ) = � O ( m ) time.

  8. Underlying result ◮ For simple graph with min-degree δ , in near-linear time, contract edges producing graph G with m = � O ( m /δ ) edges, preserving all non-trivial min-cuts of G . ◮ A cut is trivial if one side is a single vertex. ◮ Multigraph?

  9. Underlying result ◮ For simple graph with min-degree δ , in near-linear time, contract edges producing graph G with m = � O ( m /δ ) edges, preserving all non-trivial min-cuts of G . ◮ A cut is trivial if one side is a single vertex. trivial non−trivial ◮ Multigraph?

  10. Underlying result ◮ For simple graph with min-degree δ , in near-linear time, contract edges producing graph G with m = � O ( m /δ ) edges, preserving all non-trivial min-cuts of G . ◮ A cut is trivial if one side is a single vertex. trivial non−trivial ◮ Multigraph?

  11. Underlying result ◮ For simple graph with min-degree δ , in near-linear time, contract edges producing graph G with m = � O ( m /δ ) edges, preserving all non-trivial min-cuts of G . ◮ A cut is trivial if one side is a single vertex. trivial non−trivial ◮ Multigraph?

  12. Underlying result ◮ For simple graph with min-degree δ , in near-linear time, contract edges producing graph G with m = � O ( m /δ ) edges, preserving all non-trivial min-cuts of G . ◮ A cut is trivial if one side is a single vertex. trivial non−trivial ◮ Multigraph? all edges in non-trivial min-cuts.

  13. Underlying result ◮ For simple graph with min-degree δ , in near-linear time, contract edges producing graph G with m = � O ( m /δ ) edges, preserving all non-trivial min-cuts of G . ◮ A cut is trivial if one side is a single vertex. trivial non−trivial ◮ Run Gabow’s min-cut (or cactus) algorithm on G in O ( λ m ) = � � O ( m ) time. ◮ Check against δ to see if trivial min-cuts from G should be included. ◮ Gives min-cut (or cactus) for original G in � O ( m ) total time.

  14. Underlying result ◮ For simple graph with min-degree δ , in near-linear time, contract edges producing graph G with m = � O ( m /δ ) edges, preserving all non-trivial min-cuts of G . ◮ A cut is trivial if one side is a single vertex. trivial non−trivial ◮ Run Gabow’s min-cut (or cactus) algorithm on G in O ( λ m ) = � � O ( m ) time. ◮ Check against δ to see if trivial min-cuts from G should be included. ◮ Gives min-cut (or cactus) for original G in � O ( m ) total time.

  15. Underlying result ◮ For simple graph with min-degree δ , in near-linear time, contract edges producing graph G with m = � O ( m /δ ) edges, preserving all non-trivial min-cuts of G . ◮ A cut is trivial if one side is a single vertex. trivial non−trivial ◮ Run Gabow’s min-cut (or cactus) algorithm on G in O ( λ m ) = � � O ( m ) time. ◮ Check against δ to see if trivial min-cuts from G should be included. ◮ Gives min-cut (or cactus) for original G in � O ( m ) total time.

  16. Underlying result ◮ For simple graph with min-degree δ , in near-linear time, contract edges producing graph G with m = � O ( m /δ ) edges, preserving all non-trivial min-cuts of G . ◮ A cut is trivial if one side is a single vertex. trivial non−trivial ◮ Run Gabow’s min-cut (or cactus) algorithm on G in O ( λ m ) = � � O ( m ) time. ◮ Check against δ to see if trivial min-cuts from G should be included. ◮ Gives min-cut (or cactus) for original G in � O ( m ) total time.

  17. Involving cut conductance ◮ The volume of vertex set U ⊆ V is # edge end-points in U : � vol ( U ) = d ( v ) . v ∈ U ◮ Recall ∂ U = E ( U , V \ U ) . ◮ Conductance of cut around U is | ∂ U | min { vol ( U ) , 2 m − vol ( U ) } = Φ( V \ U ) Φ( U ) =

  18. Involving cut conductance ◮ The volume of vertex set U ⊆ V is # edge end-points in U : � vol ( U ) = d ( v ) . v ∈ U ◮ Recall ∂ U = E ( U , V \ U ) . ◮ Conductance of cut around U is | ∂ U | min { vol ( U ) , 2 m − vol ( U ) } = Φ( V \ U ) Φ( U ) = Φ = 1/4 Φ = 1 trivial non−trivial

  19. Non-trivial min-cuts have low-conductance Obs Any non-trivial min-cut S has conductance ≤ 1 /δ . ◮ | ∂ S | ≥ | S | ( δ − ( | S | − 1 )) . ◮ so | ∂ S | ≤ δ and | S | > 1 = ⇒ | S | ≥ δ . ◮ so vol ( S ) ≥ δ 2 and Φ( S ) = | ∂ S | / vol ( S ) ≤ 1 /δ . � We assume min-degree δ ≥ lg 6 n ; otherwise apply Gabow.

  20. Non-trivial min-cuts have low-conductance Obs Any non-trivial min-cut S has conductance ≤ 1 /δ . ◮ | ∂ S | ≥ | S | ( δ − ( | S | − 1 )) . ◮ so | ∂ S | ≤ δ and | S | > 1 = ⇒ | S | ≥ δ . ◮ so vol ( S ) ≥ δ 2 and Φ( S ) = | ∂ S | / vol ( S ) ≤ 1 /δ . � We assume min-degree δ ≥ lg 6 n ; otherwise apply Gabow.

  21. Non-trivial min-cuts have low-conductance Obs Any non-trivial min-cut S has conductance ≤ 1 /δ . ◮ | ∂ S | ≥ | S | ( δ − ( | S | − 1 )) . ◮ so | ∂ S | ≤ δ and | S | > 1 = ⇒ | S | ≥ δ . ◮ so vol ( S ) ≥ δ 2 and Φ( S ) = | ∂ S | / vol ( S ) ≤ 1 /δ . � We assume min-degree δ ≥ lg 6 n ; otherwise apply Gabow.

  22. Non-trivial min-cuts have low-conductance Obs Any non-trivial min-cut S has conductance ≤ 1 /δ . ◮ | ∂ S | ≥ | S | ( δ − ( | S | − 1 )) . ◮ so | ∂ S | ≤ δ and | S | > 1 = ⇒ | S | ≥ δ . ◮ so vol ( S ) ≥ δ 2 and Φ( S ) = | ∂ S | / vol ( S ) ≤ 1 /δ . � We assume min-degree δ ≥ lg 6 n ; otherwise apply Gabow.

  23. Non-trivial min-cuts have low-conductance Obs Any non-trivial min-cut S has conductance ≤ 1 /δ . ◮ | ∂ S | ≥ | S | ( δ − ( | S | − 1 )) . ◮ so | ∂ S | ≤ δ and | S | > 1 = ⇒ | S | ≥ δ . ◮ so vol ( S ) ≥ δ 2 and Φ( S ) = | ∂ S | / vol ( S ) ≤ 1 /δ . � We assume min-degree δ ≥ lg 6 n ; otherwise apply Gabow.

  24. Certify-or-cut Obs Any non-trivial min-cut S has conductance ≤ 1 /δ . We assume min-degree δ ≥ lg 6 n ; otherwise apply Gabow. Certify-or-cut ( G ) In near-linear time, we will either (i) certify all min-cuts of G are trivial, or (ii) find cut T with conductance o ( 1 / log m ) . Both (i) and (ii) alone are difficult deterministically. (i) As hard as certifying edge connectivity k (ii) Using PageRank, need to guess good vertex in S .

  25. Certify-or-cut Obs Any non-trivial min-cut S has conductance ≤ 1 /δ . We assume min-degree δ ≥ lg 6 n ; otherwise apply Gabow. Certify-or-cut ( G ) In near-linear time, we will either (i) certify all min-cuts of G are trivial, or (ii) find cut T with conductance o ( 1 / log m ) . Both (i) and (ii) alone are difficult deterministically. (i) As hard as certifying edge connectivity k (ii) Using PageRank, need to guess good vertex in S .

  26. Certify-or-cut Obs Any non-trivial min-cut S has conductance ≤ 1 /δ . We assume min-degree δ ≥ lg 6 n ; otherwise apply Gabow. Certify-or-cut ( G ) In near-linear time, we will either (i) certify all min-cuts of G are trivial, or (ii) find cut T with conductance o ( 1 / log m ) . Both (i) and (ii) alone are difficult deterministically. (i) As hard as certifying edge connectivity k (ii) Using PageRank, need to guess good vertex in S .

  27. Certify-or-cut Obs Any non-trivial min-cut S has conductance ≤ 1 /δ . We assume min-degree δ ≥ lg 6 n ; otherwise apply Gabow. Certify-or-cut ( G ) In near-linear time, we will either (i) certify all min-cuts of G are trivial, or (ii) find cut T with conductance o ( 1 / log m ) . Both (i) and (ii) alone are difficult deterministically. (i) As hard as certifying edge connectivity k K 3 4−connected? (ii) Using PageRank, need to guess good vertex in S .

  28. Certify-or-cut Obs Any non-trivial min-cut S has conductance ≤ 1 /δ . We assume min-degree δ ≥ lg 6 n ; otherwise apply Gabow. Certify-or-cut ( G ) In near-linear time, we will either (i) certify all min-cuts of G are trivial, or (ii) find cut T with conductance o ( 1 / log m ) . Both (i) and (ii) alone are difficult deterministically. (i) As hard as certifying edge connectivity k K 3 4−connected? (ii) Using PageRank, need to guess good vertex in S .

  29. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / log m ) of C Claim If C has been certified, we can contract a large “core” of C in G preserving all non-trivial cuts of G . No proof in this talk ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Lemma Most edges remain in components C of H : ◮ charge cut edges as o ( 1 / log m ) per small-side edge. ◮ each edge land in small side lg m times. �

  30. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / log m ) of C Claim If C has been certified, we can contract a large “core” of C in G preserving all non-trivial cuts of G . No proof in this talk ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Lemma Most edges remain in components C of H : ◮ charge cut edges as o ( 1 / log m ) per small-side edge. ◮ each edge land in small side lg m times. �

  31. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / log m ) of C Claim If C has been certified, we can contract a large “core” of C in G preserving all non-trivial cuts of G . No proof in this talk ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Lemma Most edges remain in components C of H : ◮ charge cut edges as o ( 1 / log m ) per small-side edge. ◮ each edge land in small side lg m times. �

  32. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / log m ) of C Claim If C has been certified, we can contract a large “core” of C in G preserving all non-trivial cuts of G . No proof in this talk ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Lemma Most edges remain in components C of H : ◮ charge cut edges as o ( 1 / log m ) per small-side edge. ◮ each edge land in small side lg m times. �

  33. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / log m ) of C Claim If C has been certified, we can contract a large “core” of C in G preserving all non-trivial cuts of G . No proof in this talk ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Lemma Most edges remain in components C of H : ◮ charge cut edges as o ( 1 / log m ) per small-side edge. ◮ each edge land in small side lg m times. �

  34. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / log m ) of C Claim If C has been certified, we can contract a large “core” of C in G preserving all non-trivial cuts of G . No proof in this talk ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Lemma Most edges remain in components C of H : ◮ charge cut edges as o ( 1 / log m ) per small-side edge. ◮ each edge land in small side lg m times. �

  35. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / log m ) of C Claim If C has been certified, we can contract a large “core” of C in G preserving all non-trivial cuts of G . No proof in this talk ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Lemma Most edges remain in components C of H : ◮ charge cut edges as o ( 1 / log m ) per small-side edge. ◮ each edge land in small side lg m times. �

  36. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / log m ) of C Claim If C has been certified, we can contract a large “core” of C in G preserving all non-trivial cuts of G . No proof in this talk ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Lemma Most edges remain in components C of H : ◮ charge cut edges as o ( 1 / log m ) per small-side edge. ◮ each edge land in small side lg m times. �

  37. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / log m ) of C Claim If C has been certified, we can contract a large “core” of C in G preserving all non-trivial cuts of G . No proof in this talk ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Lemma Most edges remain in components C of H : ◮ charge cut edges as o ( 1 / log m ) per small-side edge. ◮ each edge land in small side lg m times. �

  38. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / log m ) of C Claim If C has been certified, we can contract a large “core” of C in G preserving all non-trivial cuts of G . No proof in this talk ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Lemma Most edges remain in components C of H : ◮ charge cut edges as o ( 1 / log m ) per small-side edge. ◮ each edge land in small side lg m times. �

  39. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / log m ) of C Claim If C has been certified, we can contract a large “core” of C in G preserving all non-trivial cuts of G . No proof in this talk ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Lemma Most edges remain in components C of H : ◮ charge cut edges as o ( 1 / log m ) per small-side edge. ◮ each edge land in small side lg m times. �

  40. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / log m ) of C Claim If C has been certified, we can contract a large “core” of C in G preserving all non-trivial cuts of G . No proof in this talk ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Lemma Most edges remain in components C of H : ◮ charge cut edges as o ( 1 / log m ) per small-side edge. ◮ each edge land in small side lg m times. �

  41. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / lg m ) of C Claim If C has been certified, we can contrat a large “core” of C in G preserving all non-trivial cuts of G . ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Need to recurse, but contractions create parallel edges. Thm After enough recursions G has � O ( m /δ ) edges and preserves all original non-trivial min-cuts. Many details in paper.

  42. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / lg m ) of C Claim If C has been certified, we can contrat a large “core” of C in G preserving all non-trivial cuts of G . ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Need to recurse, but contractions create parallel edges. Thm After enough recursions G has � O ( m /δ ) edges and preserves all original non-trivial min-cuts. Many details in paper.

  43. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / lg m ) of C Claim If C has been certified, we can contrat a large “core” of C in G preserving all non-trivial cuts of G . ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Need to recurse, but contractions create parallel edges. Thm After enough recursions G has � O ( m /δ ) edges and preserves all original non-trivial min-cuts. Many details in paper.

  44. Overall algorithm Really, we need something more elaborate Certify-or-cut ( C , G ) C subgraph of G with min-degree 2 5 δ . (i) certify no min-cut of G splits more than 2 vertices from C . (ii) find a cut ( A , B ) of conductance o ( 1 / lg m ) of C Claim If C has been certified, we can contrat a large “core” of C in G preserving all non-trivial cuts of G . ◮ Set H = G . ◮ While some component C of H has not been certified. ◮ Certify-or-cut ( C , G ) ◮ if we get low-conductance cut ( A , B ) of C ◮ remove cut edges E ( A , B ) from H . ◮ repeatedly remove v with d H ( v ) ≤ 2 5 d G ( v ) . ◮ Contract cores of components C of H in G . Need to recurse, but contractions create parallel edges. Thm After enough recursions G has � O ( m /δ ) edges and preserves all original non-trivial min-cuts. Many details in paper.

  45. Certify-or-cut Rest of talk focussed on our simplified toy problem: Certify-or-cut ( G ) For simple graph G , in near-linear time, either (i) certify all min-cuts of G are trivial, or (ii) find a cut U of conductance o ( 1 / lg m ) . Recall both (i) and (ii) alone are difficult. (i) As hard as certifying edge connectivity k (ii) Using PageRank, need to guess good vertex in S .

  46. Certify-or-cut Rest of talk focussed on our simplified toy problem: Certify-or-cut ( G ) For simple graph G , in near-linear time, either (i) certify all min-cuts of G are trivial, or (ii) find a cut U of conductance o ( 1 / lg m ) . Recall both (i) and (ii) alone are difficult. (i) As hard as certifying edge connectivity k K 3 4−connected? (ii) Using PageRank, need to guess good vertex in S .

  47. Certify-or-cut Rest of talk focussed on our simplified toy problem: Certify-or-cut ( G ) For simple graph G , in near-linear time, either (i) certify all min-cuts of G are trivial, or (ii) find a cut U of conductance o ( 1 / lg m ) . ◮ We use PageRank emulating random walk. ◮ Normally PageRank is Monte Carlo randomized that needs to guess good start vertex to find low-conductance cut. ◮ We need success (ii) only if non-trivial min-cut exists ¬ (i). ◮ This gives us enough structure for deterministic algorithm, bypassing the need for guessing.

  48. Certify-or-cut Rest of talk focussed on our simplified toy problem: Certify-or-cut ( G ) For simple graph G , in near-linear time, either (i) certify all min-cuts of G are trivial, or (ii) find a cut U of conductance o ( 1 / lg m ) . ◮ We use PageRank emulating random walk. ◮ Normally PageRank is Monte Carlo randomized that needs to guess good start vertex to find low-conductance cut. ◮ We need success (ii) only if non-trivial min-cut exists ¬ (i). ◮ This gives us enough structure for deterministic algorithm, bypassing the need for guessing.

  49. Certify-or-cut Rest of talk focussed on our simplified toy problem: Certify-or-cut ( G ) For simple graph G , in near-linear time, either (i) certify all min-cuts of G are trivial, or (ii) find a cut U of conductance o ( 1 / lg m ) . ◮ We use PageRank emulating random walk. ◮ Normally PageRank is Monte Carlo randomized that needs to guess good start vertex to find low-conductance cut. ◮ We need success (ii) only if non-trivial min-cut exists ¬ (i). ◮ This gives us enough structure for deterministic algorithm, bypassing the need for guessing.

  50. Certify-or-cut Rest of talk focussed on our simplified toy problem: Certify-or-cut ( G ) For simple graph G , in near-linear time, either (i) certify all min-cuts of G are trivial, or (ii) find a cut U of conductance o ( 1 / lg m ) . ◮ We use PageRank emulating random walk. ◮ Normally PageRank is Monte Carlo randomized that needs to guess good start vertex to find low-conductance cut. ◮ We need success (ii) only if non-trivial min-cut exists ¬ (i). ◮ This gives us enough structure for deterministic algorithm, bypassing the need for guessing.

  51. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = � v ∈ V p ◦ ( v ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with residual density r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( v ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0.

  52. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = � v ∈ V p ◦ ( v ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with residual density r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( v ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0.

  53. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = � v ∈ V p ◦ ( v ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with residual density r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( v ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0.

  54. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = � v ∈ V p ◦ ( v ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with residual density r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( v ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0.

  55. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = � v ∈ V p ◦ ( v ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with residual density r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( v ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0.

  56. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = � v ∈ V p ◦ ( v ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with residual density r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( v ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0.

  57. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( v ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0. ◮ order vertices v by decreasing density p ( v ) / d ( v ) . ◮ find best cuts defined by any prefix. Pushing over O ( 1 / ( αε )) edges in total, so O ( 1 / ( αε )) total time. But when can we promise finding low-conductance cut?

  58. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( v ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0. ◮ order vertices v by decreasing density p ( v ) / d ( v ) . ◮ find best cuts defined by any prefix. Pushing over O ( 1 / ( αε )) edges in total, so O ( 1 / ( αε )) total time. But when can we promise finding low-conductance cut?

  59. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( v ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0. ◮ order vertices v by decreasing density p ( v ) / d ( v ) . ◮ find best cuts defined by any prefix. Pushing over O ( 1 / ( αε )) edges in total, so O ( 1 / ( αε )) total time. But when can we promise finding low-conductance cut?

  60. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( v ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0. ◮ order vertices v by decreasing density p ( v ) / d ( v ) . ◮ find best cuts defined by any prefix. Pushing over O ( 1 / ( αε )) edges in total, so O ( 1 / ( αε )) total time. But when can we promise finding low-conductance cut?

  61. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( r ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0 Unique (abstract) limit mass distribution p ∗ ← p for ε → 0. PR α ( p ◦ ) = p ∗ linear transformation such that PR α ( p ◦ ) = p + PR α ( r ) Stationary mass distribution q = PR α ( q ) iff all v ∈ V have same density q ( v ) / d ( v ) = σ .

  62. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( r ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0 Unique (abstract) limit mass distribution p ∗ ← p for ε → 0. PR α ( p ◦ ) = p ∗ linear transformation such that PR α ( p ◦ ) = p + PR α ( r ) Stationary mass distribution q = PR α ( q ) iff all v ∈ V have same density q ( v ) / d ( v ) = σ .

  63. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( r ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0 Unique (abstract) limit mass distribution p ∗ ← p for ε → 0. PR α ( p ◦ ) = p ∗ linear transformation such that PR α ( p ◦ ) = p + PR α ( r ) Stationary mass distribution q = PR α ( q ) iff all v ∈ V have same density q ( v ) / d ( v ) = σ .

  64. PageRank [Andersen, Chung, Lang FOCS’06] PageRank ( p ◦ , α, ε ) initial mass distribution p ◦ : V → R ≥ 0 , p ◦ ( V ) = 1 teleportation constant α = 1 / lg 5 n slack ε ∈ ( 0 , 1 ) . ◮ residual mass distribution r = p ◦ ◮ settled mass distribution p = 0 V ◮ while v ∈ V with r ( v ) / d ( v ) ≥ ε ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( r ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0 Unique (abstract) limit mass distribution p ∗ ← p for ε → 0. PR α ( p ◦ ) = p ∗ linear transformation such that PR α ( p ◦ ) = p + PR α ( r ) Stationary mass distribution q = PR α ( q ) iff all v ∈ V have same density q ( v ) / d ( v ) = σ .

  65. Limit concentration and cuts ’06] If S ⊆ V has p ∗ ( S ) − vol ( S ) / ( 2 m ) = Ω( 1 ) then Thm [ACL PageRank finds T with conductance Φ( T ) = o ( 1 / log m ) with vol ( T ) = � O ( vol ( S )) in � O ( vol ( T )) time. In [ACL06], if Φ( S ) ≤ 1 / lg 10 m and we start with p ◦ ( v ) = 1 from random v ∈ S , we get p ∗ ( S ) − vol ( S ) / ( 2 m ) = Ω( 1 ) with good probability, but here we do not want to guess.. We will prove that if S non-trivial min-cut and we start with p ◦ ( v ) = 1 for any v ∈ S , we get p ∗ ( S ) − vol ( S ) / ( 2 m ) = Ω( 1 ) . and if that fails we have New analysis of end-game Thm If v ∈ V has p ∗ ( v ) / d ( v ) = ( 1 − Ω( 1 )) / ( 2 m ) then PageRank finds T , vol ( T ) ≤ m , with Φ( T ) = o ( 1 / log m ) either in � O ( vol ( T )) time or T contains all v with p ∗ ( v ) / d ( v ) = ( 1 − Ω( 1 )) / ( 2 m ) .

  66. Limit concentration and cuts ’06] If S ⊆ V has p ∗ ( S ) − vol ( S ) / ( 2 m ) = Ω( 1 ) then Thm [ACL PageRank finds T with conductance Φ( T ) = o ( 1 / log m ) with vol ( T ) = � O ( vol ( S )) in � O ( vol ( T )) time. In [ACL06], if Φ( S ) ≤ 1 / lg 10 m and we start with p ◦ ( v ) = 1 from random v ∈ S , we get p ∗ ( S ) − vol ( S ) / ( 2 m ) = Ω( 1 ) with good probability, but here we do not want to guess.. We will prove that if S non-trivial min-cut and we start with p ◦ ( v ) = 1 for any v ∈ S , we get p ∗ ( S ) − vol ( S ) / ( 2 m ) = Ω( 1 ) . and if that fails we have New analysis of end-game Thm If v ∈ V has p ∗ ( v ) / d ( v ) = ( 1 − Ω( 1 )) / ( 2 m ) then PageRank finds T , vol ( T ) ≤ m , with Φ( T ) = o ( 1 / log m ) either in � O ( vol ( T )) time or T contains all v with p ∗ ( v ) / d ( v ) = ( 1 − Ω( 1 )) / ( 2 m ) .

  67. Limit concentration and cuts ’06] If S ⊆ V has p ∗ ( S ) − vol ( S ) / ( 2 m ) = Ω( 1 ) then Thm [ACL PageRank finds T with conductance Φ( T ) = o ( 1 / log m ) with vol ( T ) = � O ( vol ( S )) in � O ( vol ( T )) time. In [ACL06], if Φ( S ) ≤ 1 / lg 10 m and we start with p ◦ ( v ) = 1 from random v ∈ S , we get p ∗ ( S ) − vol ( S ) / ( 2 m ) = Ω( 1 ) with good probability, but here we do not want to guess.. We will prove that if S non-trivial min-cut and we start with p ◦ ( v ) = 1 for any v ∈ S , we get p ∗ ( S ) − vol ( S ) / ( 2 m ) = Ω( 1 ) . and if that fails we have New analysis of end-game Thm If v ∈ V has p ∗ ( v ) / d ( v ) = ( 1 − Ω( 1 )) / ( 2 m ) then PageRank finds T , vol ( T ) ≤ m , with Φ( T ) = o ( 1 / log m ) either in � O ( vol ( T )) time or T contains all v with p ∗ ( v ) / d ( v ) = ( 1 − Ω( 1 )) / ( 2 m ) .

  68. Limit concentration and cuts ’06] If S ⊆ V has p ∗ ( S ) − vol ( S ) / ( 2 m ) = Ω( 1 ) then Thm [ACL PageRank finds T with conductance Φ( T ) = o ( 1 / log m ) with vol ( T ) = � O ( vol ( S )) in � O ( vol ( T )) time. In [ACL06], if Φ( S ) ≤ 1 / lg 10 m and we start with p ◦ ( v ) = 1 from random v ∈ S , we get p ∗ ( S ) − vol ( S ) / ( 2 m ) = Ω( 1 ) with good probability, but here we do not want to guess.. We will prove that if S non-trivial min-cut and we start with p ◦ ( v ) = 1 for any v ∈ S , we get p ∗ ( S ) − vol ( S ) / ( 2 m ) = Ω( 1 ) . and if that fails we have New analysis of end-game Thm If v ∈ V has p ∗ ( v ) / d ( v ) = ( 1 − Ω( 1 )) / ( 2 m ) then PageRank finds T , vol ( T ) ≤ m , with Φ( T ) = o ( 1 / log m ) either in � O ( vol ( T )) time or T contains all v with p ∗ ( v ) / d ( v ) = ( 1 − Ω( 1 )) / ( 2 m ) .

  69. Mass flows from ACL ’06 Recall ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( r ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0 Lemma Starting from p ◦ , with settled mass p , netflow over ( u , v ) was ( 1 − α )( p ( u ) / d ( u ) − p ( v ) / d ( v )) /α . Lemma If r ( v ) / d ( v ) ≤ σ for all v ∈ V , henceforth, netflow over any edge ≤ σ ( 1 − α ) /α < σ/α .

  70. Mass flows from ACL ’06 Recall ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( r ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0 Lemma Starting from p ◦ , with settled mass p , netflow over ( u , v ) was ( 1 − α )( p ( u ) / d ( u ) − p ( v ) / d ( v )) /α . Lemma If r ( v ) / d ( v ) ≤ σ for all v ∈ V , henceforth, netflow over any edge ≤ σ ( 1 − α ) /α < σ/α .

  71. Mass flows from ACL ’06 Recall ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( r ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0 Lemma Starting from p ◦ , with settled mass p , netflow over ( u , v ) was ( 1 − α )( p ( u ) / d ( u ) − p ( v ) / d ( v )) /α . Lemma If r ( v ) / d ( v ) ≤ σ for all v ∈ V , henceforth, netflow over any edge ≤ σ ( 1 − α ) /α < σ/α .

  72. Mass flows from ACL ’06 Recall ◮ Push ( α, v ) : ◮ p ( v ) = p ( v ) + α r ( r ) ◮ for ( v , w ) ∈ E do r ( w ) = r ( w ) + ( 1 − α ) r ( v ) / d ( v ) ◮ r ( v ) = 0 Lemma Starting from p ◦ , with settled mass p , netflow over ( u , v ) was ( 1 − α )( p ( u ) / d ( u ) − p ( v ) / d ( v )) /α . Lemma If r ( v ) / d ( v ) ≤ σ for all v ∈ V , henceforth, netflow over any edge ≤ σ ( 1 − α ) /α < σ/α .

  73. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  74. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  75. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  76. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  77. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  78. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  79. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  80. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  81. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  82. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  83. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  84. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  85. Starting from any vertex on small side of min-cut ◮ We have min-degree δ ≥ lg 6 n and α = 1 / lg 5 n . ◮ Let S with vol ( S ) ≤ m / 2 be small side of min-cut. ◮ For arbitrary v ∈ S , start with p ◦ ( v ) = 1 and push from v ◮ At least half mass stays in S . ◮ On every vertex u , residual mass r ( u ) ≤ 1 / d ( v ) ≤ 1 /δ ◮ On every vertex u , residual density r ( u ) / d ( u ) ≤ 1 /δ 2 . ◮ Henceforth pushing, netflow over any edges < 1 / ( αδ 2 ) , ◮ so λ/ ( αδ 2 ) ≤ 1 / lg m = o ( 1 ) flow over edges leaving S . ◮ Thus 1 / 2 − o ( 1 ) mass remains in S , so p ∗ ( v ) − vol ( S ) / ( 2 m ) ≥ 1 / 2 − o ( 1 ) − ( m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  86. Balanced min-cut ◮ Suppose min-cut side S with m / 2 ≤ vol ( S ) ≤ 3 m / 2. ◮ < 16 vertices incident to ≥ δ/ 8 cut edges. ◮ Trying 16 vertices separately. ◮ One v has 7 / 8 neighbors on same side. ◮ Pushing to limit from v , we get p ∗ ( S ) − vol ( S ) / ( 2 m ) ≥ 7 / 8 − o ( 1 ) − ( 3 m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

  87. Balanced min-cut ◮ Suppose min-cut side S with m / 2 ≤ vol ( S ) ≤ 3 m / 2. ◮ < 16 vertices incident to ≥ δ/ 8 cut edges. ◮ Trying 16 vertices separately. ◮ One v has 7 / 8 neighbors on same side. ◮ Pushing to limit from v , we get p ∗ ( S ) − vol ( S ) / ( 2 m ) ≥ 7 / 8 − o ( 1 ) − ( 3 m / 2 ) / ( 2 m ) = Ω( 1 ) . ◮ By ACL, PageRank finds T with Φ( T ) = o ( 1 / log m )

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend