Presentation is loading. Please wait.

Presentation is loading. Please wait.

Deterministic Network Coding by Matrix Completion Nick Harvey David Karger Kazuo Murota.

Similar presentations


Presentation on theme: "Deterministic Network Coding by Matrix Completion Nick Harvey David Karger Kazuo Murota."— Presentation transcript:

1 Deterministic Network Coding by Matrix Completion Nick Harvey David Karger Kazuo Murota

2 st b1b1 b2b2 Nodes s and t want to swap bits b 1 and b 2 No disjoint paths from s  t and t  s bottleneck edge Network Coding Example

3 b1⊕b2b1⊕b2 b1⊕b2b1⊕b2 b1⊕b2b1⊕b2 st b1b1 b2b2 Key idea: allow nodes to encode data Send xor b 1 ⊕ b 2 on bottleneck edge Nodes s and t can decode desired bit

4 Multicast in DAGs 1 source, k sinks Source has r messages in alphabet  Each sink wants all msgs Network code: function node inputs  outputs Thm [ACLY’00]: Network coding solution exists iff connectivity r to each sink m1m1 m2m2 mrmr … Source: Sinks:

5 Linear Network Codes Treat alphabet  as finite field Node outputs linear combinations of inputs Thm [LYC’03]: Linear codes sufficient for multicast in DAGs Thm [HKMK’03]: Random linear codes work AB A+BA+B A+BA+B

6 Our Contribution (Network Coding) Deterministic algorithm for multicast problems Derandomization of [HKMK] algorithm Runtime: Õ( |#sinks| * |#edges| 3 ) Related Work:  Jaggi et al: deterministic alg  Our algebraic technique more general

7 Characterizing Multicast Solutions Sink receives linear comb of source msgs Linear combs have full rank  can decode! Def [KM]: Transfer matrix M t for sink t Thm [KM]: Network coding solution exists iff det M t  0, for all sinks t.

8 Expanded Transfer Matrices Def: Expanded transfer matrix (for sink t) A 0 I-F B t N t := Each entry is a number or a variable. Lemma: det M t =  det N t Goal: substitute values into expanded transfer matrices s.t. they have full rank A matrix completion problem

9 Matrix Completion Def: A completion is an assignment of values to the variables that maximizes the rank. Thm [L79]: Choosing random values in F n gives a completion with prob > 1/2. Used in RNC bipartite matching Thm [G99]: Completion in F n can be found deterministically in O(n 9 ) time.

10 Simultaneous Completion Does Geelen solve our problem? No. We have set of mixed matrices N := {N 1, …, N k }  Each variable appears at most once per matrix  A variable can appear in several matrices Def: A simultaneous completion for N is an assignment of values to the variables that preserves the rank of all matrices Hard part: matrices overlap, not identical Randomized algorithm still works

11 Our Contribution (Matrix Completion) Let N := {N 1, …, N k } be a set of mixed matrices of size n x n Let X be the variables in N Thm: A simultaneous completion for N can be found deterministically over F k+1 in time O( | N | (n 3 log n + |X| n 2 ) ) For a single matrix, the time is O( n 3 log n )

12 Let A = Q + T be a mixed matrix where  Q contains only numbers  T contains only variables (or zeros) A is equivalent to Numbers and variables in disjoint rows  a layered mixed matrix (LM-matrix) Mixed Matrices I Q à := (i.e. rank A = rank à - n) I T diag(z 1,…,z n )

13 Computing rank of LM-matrices Thm [M93]: rank à = max cols J T,J B |J T  J B | s.t. in top rows, columns J T are indep in bottom rows, columns J B are indep Find J T and J B by matroid union algorithm  efficient alg to compute rank Ã

14 Matrix Completion Use black-box rank alg to find completion Lemma: Let P(x 1,…,x t ) be a multivariate polynomial with all exponents  d. If q  d then P(x 1,…,x t )  0 has a solution in F q. Proof: Similar to Schwartz-Zippel.

15 Simple Completion Algorithm Let A be a mixed matrix Let X be the variables in A det(A) linear in each variable  non-root exists over F 2 SimpleCompletion foreach x  X set x := 0 compute rank of A if rank has decreased, set x := 1

16 Sharing work in computing rank When fill in one value, matrix doesn’t change much So, reuse info from previous round to quickly update rank computation for next matrix entry

17 Computing rank by matroid union 1 1 1 z1z1 z2z2 z3z3 11 1 1 x1x1 x2x2 x3x3 Ã =

18 Computing rank by matroid union 1 1 1 z1z1 z2z2 z3z3 11 1 1 x1x1 x2x2 x3x3 MTMT MBMB

19 1 1 1 z1z1 z2z2 z3z3 11 1 1 x1x1 x2x2 x3x3 MTMT MBMB JTJT JBJB

20 Independent Matching Approach z1z1 z2z2 z3z3 x1x1 x2x2 x3x3 MTMT MBMB CTCT CBCB RTRT 1 1 1 11 1 1

21 z1z1 z2z2 z3z3 x1x1 x2x2 x3x3 MTMT MBMB RTRT 1 1 1 11 1 1 CTCT CBCB

22 z1z1 z2z2 z3z3 x1x1 x2x2 x3x3 MTMT MBMB CTCT CBCB RTRT 1 1 1 11 1 1 JTJT JBJB Cols must be indep. Non-zeros where edges bend

23 Computing Rank of à Compute max indep matching, J T and J B rank à = |J T | + |J B | Time to find max indep matching  O(n 3 log n): Cunningham 1986  O(n 2.62 ): Gabow-Xu 1996

24 Better Completion Algorithm Idea: Use structure of matching to help find completion Let X M  X be variables used by J B BetterCompletion Given A, compute LM-matrix à Compute max indep matching M for à …

25 Idea: Use structure of matching to help find completion Let X M  X be variables used by J B Lemma: Setting x  X \ X M to 0 does not affect rank Better Completion Algorithm z1z1 z2z2 z3z3 x2x2 x1x1 x3x3 x1x1 x3x3 x1x1 x3x3 XMXM

26 BetterCompletion Given A, compute LM-matrix à Compute max indep matching M for à Foreach x  X \ X M, set x := 0 … Variables in X M are more tricky

27 Handling X M z1z1 z2z2 z3z3 x1x1 x3x3 1 1 1 11 1 1 Example Assign x 1 the value v x1x1 x3x3 x1x1 x3x3 XMXM CBCB

28 Handling X M z1z1 z2z2 z3z3 x3x3 1 1 1 11 1 1 x3x3 x3x3 XMXM v Example Assign x 1 the value v x 1 and its edge disappear v appears in top matrix Because A = Q + T and CBCB I Q diag(z 1,…,z n ) T Ã =

29 Handling X M z1z1 z2z2 z3z3 x3x3 1 1 1 11 1 1 x3x3 x3x3 XMXM v Example Must update M All vertices in C B must have a matching edge Must add this col to J T Must swap a col from J T and add it to J B CBCB JTJT

30 Handling X M Swapping Lemma  v s.t. J T + c 2 – c 4 and J B – c 1 + c 3 are indep z2z2 1 1 1 11 1 1 x1x1 c1c1 c2c2 c3c3 c4c4

31 Handling X M Swapping Lemma  v s.t. J T + c 2 – c 4 and J B – c 1 + c 3 are indep z2z2 1 1 1 11 1 1 v c1c1 c2c2 c3c3 c4c4

32 Handling X M Thm: The value v can be found in O(n 2 ) time Proof: Maintain Gauss- Jordan pivoted copies of Q. Finding v now trivial. z2z2 1 1 1 11 1 1 v c1c1 c2c2 c3c3 c4c4

33 Better Completion Algorithm BetterCompletion 1) Given A, compute LM-matrix à 2) Compute max indep matching M for à 3) Foreach x  X \ X M, set x := 0 4) Foreach x  X M, 5) Use swapping lemma and pivoted forms to find a good value v 6) Set x := v Time required: O(n 3 log n)

34 Simultaneous Matrix Completion Let N := {N 1, …, N k } be a set of mixed matrices A simultaneous completion for N is an assignment of values to the variables that preserves the rank of all matrices Thm: BetterCompletion alg can be extended to find simultaneous completion for N over F k+1 Pf Sketch: Run simultaneously on all N i. Choose values v that are good for all N i.

35 Summary Network coding model for sending data Deterministic alg for multicast New deterministic alg for matrix completion


Download ppt "Deterministic Network Coding by Matrix Completion Nick Harvey David Karger Kazuo Murota."

Similar presentations


Ads by Google