Lower Bounds on the Communication of Distributed Graph Algorithms: Progress and Obstacles Rotem Oshman ADGA 2013 Overview: Network Models LOCAL CONGESTED CLIQUE CONGEST / general network ASYNC MESSAGE-PASSING X Talk Overview I. Lower bound techniques a. CONGEST general networks: reductions from 2party communication complexity b. Asynchronous message passing: reductions from multi-party communication complexity II. Obstacles on proving lower bounds for the congested clique Communication Complexity π π, π = ? π π Example: DISJOINTNESS DISJπ : π ⊆ {1, … , π} π ∩ π = ∅? Ω(π) bits needed π ⊆ {1, … , π} [Kalyanasundaram and Schnitger, Razborov ’92] Applying 2-Party Communication Complexity Lower Bounds Textbook reduction: Given algorithm π΄ for solving task π… π π Simulate π΄ Based on π π bits Based on π Solution for π β¨ answer for DISJOINTNESS Example: Spanning Trees • Setting: directed, strongly-connected network • Communication by local broadcast with bandwidth π΅ • UIDs 1, … , π • Diameter 2 • Question: how many rounds to find a rooted spanning tree? New Problem: PARTITION • Inputs: π, π ⊆ 1, … , π , with the promise that π ∪ π = 1, … , π π • Goal: π Alice outputs π΄ ⊆ π, Bob outputs π΅ ⊆ π such that π΄, π΅ partition {1, … , π}. The PARTITION Problem • Trivial algorithm: – Alice sends her input to Bob – Alice outputs all tasks in her input – Bob outputs all remaining tasks • Communication complexity: π bits • Lower bound? Reduction from DISJ to PARTITION • Given input π, π for DISJ : – Notice: π ∩ π = ∅ iff π ∪ π = π – To test whether π ∪ π = π : • Try to solve PARTITION on π, π ⇒ π΄, π΅ • Ensure π΄ ⊆ π, π΅ ⊆ π • Check if π΄, π΅ is a partition of π : Alice sends Bob hash(π΄), Bob compares it to hash(π΅) From PARTITION to Spanning Tree Given a spanning tree algorithm π΄… 1 2 a π = {1,2,3} 3 4 5 6 b π = {2,4,5,6} From PARTITION to Spanning Tree Simulating one round of π΄ : 1 2 a Node b’s message π = {1,2,3} 3 4 6 5 b Node a’s message π = {2,4,5,6} From PARTITION to Spanning Tree When π΄ outputs a spanning tree: 1 2 a π = {1,2,3} 3 4 5 6 b π = {2,4,5,6} From PARTITION to Spanning Tree • If π΄ runs for π‘ rounds, we use 2π΅π‘ bits ⇒ π‘ = Ω π/π΅ • One detail: randomness – Solution: Alice and Bob use public randomness When Two Players Just Aren’t Enough • No bottlenecks in the network When Two Players Just Aren’t Enough • Too much information revealed Multi-Player Communication Complexity • Communication by shared blackboard ?? • Number-on-forehead • Number-in-hand The Message-Passing Model • • • • π players Private channels Private π-bit inputs π1 , … , ππ Private randomness • Goal: compute π π1 , … , ππ • Cost: total communication The Coordinator Model • π players, one coordinator • The coordinator has no input Message-Passing vs. Coordinator ≈ Prior Work on Message-Passing • For π players with π-bit inputs… • Phillips, Verbin, Zhang ’12: – Ω ππ for bitwise problems (AND/OR, MAJ, …) • Woodruff, Zhang ‘12, ‘13: – Ω ππ for threshold and graph problems • Braverman, Ellen, O., Pitassi, Vaikuntanathan ‘13: Ω ππ for DIS J π,π Set Disjointness π2 π1 π3 ? π5 π4 π π π ππ DIS J π,π = π=1 π=1 Notation • Π : randomized protocol – Also, the protocol’s transcript – Ππ : player π’s view of the transcript • πΆπΆ Π = worst-case communication of Π • πΆπΆπ π = min Π with error π πΆπΆ(Π) in the worst case Entropy and Mutual Information • Entropy: π» π =− Pr π = π₯ ⋅ log Pr π = π₯ π₯ • A lossless encoding of π requires π» π bits • Conditional entropy: π» π π = πΌπ¦ π» π π = π¦ ≤ π»(π) Entropy and Mutual Information • Mutual information: πΌ π; π = π» π − π»(π|π) • Conditional mutual information: πΌ π; π π = πΌπ§ πΌ π; π π = π§ = π» π π − π»(π|π, π) Information Cost for Two Players [Chakrabarti, Shi, Wirth, Yao ’01], [Bar-Yossef, Jayram, Kumar, Sivakumar ‘04], [Braverman, Rao ‘10], … Fix a distribution π, • External information cost: πΌ π,π ∼π ππ; Π = π» Π − π» Π ππ ≤ |Π| • Internal information cost: πΌ π,π ∼π π; Π π + πΌ π,π ∼π (π; Π|X Extension to the coordinator model: π [πΌ ππ ; Ππ π, π + πΌ(π; Ππ |ππ , π)] π=1 Why is Info Complexity Nice? • Formalizes a natural notion – Analogous to causality/knowledge • Admits direct sum theorem: “The cost of solving π independent copies of problem π is π times the cost of solving π” Example π π π ππ DIS J π,π = π=1 π=1 Example (Work in Progress) • Triangle detection in general congested graphs • “Is there a triangle” = π£1 ,π£2 ,π£3 ”is {π£1 , π£2 , π£3 } a triangle” Application of DISJ Lower Bound • Open problem from Woodruff & Zhang ‘13: – Hardness of computing the diameter of a graph • We can show: Ω ππ bits to distinguish diameter ≤3 from diameter ∞ • Reduction from DISJ : given π1 , … , ππ , – Notice: π1 , … , ππ disjoint iff π1 ∪ β― ∪ ππ = π Application of DISJ Lower Bound 3 2 4 π2 1 π1 π3 π3 π4 • π1 ∪ β― ∪ ππ = π ⇒ Diameter ≤ 3 • π1 ∪ β― ∪ ππ ≠ π ⇒ Diameter = ∞ 5 6 Part II: The Power of the Congested Clique CONGESTED CLIQUE Conversion from Boolean Circuit • Suppose we have a Boolean circuit πΆ – Any type of gate, π2 inputs – Fan-in ≤ 2 – Depth = polylog(π), #gates and wires = π2 polylog π • Step 1: reduce the fan-out to ≤ 2 – Convert large fan-out gates to “copying tree” – Blowup: π log π depth, π 1 size • Step 2: convert to a layered circuit Conversion from Boolean Circuit • Now we have a layered circuit πΆ′ of depth polylog π and size = π2 polylog π – With fan-in and fan-out ≤ 2 • Design a CONGEST protocol: – Fix partition of inputs π1 , … , ππ of size π each – Assign each gate to a random CONGEST node – Simulate the circuit layer-by-layer Simulating a Layer • If node π’ “owns” gate πΊ on layer π, it sends πΊ’s output to the nodes that need it on layer π+1 • Size of layer π + 1 ≤ 2 ⋅ size of layer π • What is the load on edge π, π ? – For each wire from layer π to layer π + 1, Pr π€πππ ππ π πππππ π‘π π, π = 1/π2 – At most π2 polylog π wires in total – By Chernoff, w.h.p. the load is polylog π Conversion from Boolean Circuit • A union-bound finishes the proof • Corollary: explicit lower bounds in the congested clique imply explicit lower bounds on Boolean circuits with polylogarithmic depth and nearly-linear size. • Even worse: – Reasons to believe even Ω(log log π) bound hard Conclusion LOCAL CONGESTED CLIQUE CONGEST / general network ASYNC MESSAGE-PASSING X