the complexity of matrix completion

32
The Complexity of Matrix Completion Nick Harvey David Karger Sergey Yekhanin

Upload: laith-atkinson

Post on 01-Jan-2016

56 views

Category:

Documents


1 download

DESCRIPTION

The Complexity of Matrix Completion. Nick Harvey David Karger Sergey Yekhanin. Good!. x = 1 , y = 0. 1 1. 1 0. x = 1 , y = 1. 1 1. Bad. 1 x. 1 x. 1 1. 1 y. 1 y. What is matrix completion?. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: The Complexity of Matrix Completion

The Complexityof Matrix Completion

Nick HarveyDavid KargerSergey Yekhanin

Page 2: The Complexity of Matrix Completion

What is matrix completion?

Given matrix containing variables, substitute values for the variables to get full rank

1 x

1 y

1 1

1 0

x=1, y=0

1 x

1 y

1 1

1 1

x=1, y=1Bad

Page 3: The Complexity of Matrix Completion

Why should I care? Combinatorics

Many combinatorial problems relate to matrices of variables

Tutte ’47, Edmonds ’67, Lovasz ’79

Relation to Algebra

Tomizawa-Iri ’74, Murota ’00

Gessel-Viennot ’85

Graph Matching

Matroid Intersection

Counting paths in DAG

Problem

God(i.e., the BOOK)

Page 4: The Complexity of Matrix Completion

Why should I care? Algorithms

Often yields highly efficient algorithms

RNC: KUW’86, MVV’87Sequential O(n2.38) time: MS’04, H’06

O(nr1.38) time: H’06

Random Network Codes:Koetter-Medard ’03,

Ho et al. ’03

Graph Matching

Matroid Intersection

Counting paths in DAG

AlgorithmsProblem

Page 5: The Complexity of Matrix Completion

Why should I care? Complexity

Depending on parameters, can beNP-complete, in RP, or in PKey parameters:

Field size, # variables,# occurrences of each variable

Contains polynomial identity testing as special case (Valiant ’79)Derandomizing PIT implies strong circuit lower

bounds (Kabanets-Impagliazzo ’03)

Page 6: The Complexity of Matrix Completion

Field Size

Why care about field size?Relevant to complexity:

random works over large fieldsUnderstanding smaller fields may provide

insight to derandomization Important for network coding efficiency

(i.e., complexity of routers)

Page 7: The Complexity of Matrix Completion

Complexity Regions

Field Size

# Occurencesof an variable

2 3 5 7 n+1

1

2

3

4

5

6

7

8

9

22

NPHard

RP

P

Buss et al. ‘99Lovasz ‘79

H., Karger,Murota ‘05

P

Geelen ‘99? ? ? ? ? ?

Page 8: The Complexity of Matrix Completion

Complexity Regions

# Occurencesof an variable

2 3 5 7 n+1

1

2

3

4

5

6

7

8

9

22

NPHard

RP

NPHard

Field Size

P P

Page 9: The Complexity of Matrix Completion

Variant:Simultaneous Completion We have set of matrices A := {A1, …, Ad}

Each variable appears at most once per matrixAn variable can appear in several matrices

Def: A simultaneous completion for A assigns values to variables whilepreserving the rank of all matrices

RP algorithm still works over large field Application to Network Coding uses

Simultaneous Completion

Page 10: The Complexity of Matrix Completion

Relationship to Single Matrix Completion Hardness for Simultaneous Completion

Hardness for Single Matrix Completion w/many occurrences of variables

1 AB C

Simultaneous Completion

1 AD E

1 BC D

Single Matrix Completion

Page 11: The Complexity of Matrix Completion

Simultaneous Completion Algorithm

Input: d matrices

Compute rank of all matricesPick an variable x

for i {0,…,d}Set x := iIf all matrices have unchanged rank Recurse (# variables has decreased)

Simple self-reducibility algorithm Operates over field Fq, where d := # matrices < q

Non-trivial!Murota ’93.

Page 12: The Complexity of Matrix Completion

A Sharp Threshold Simple self-reducibility algorithm Operates over field Fq, where d := # matrices < q

Thm: Simultaneous completion for dmatrices over Fq is:

in P if q > d [HKM ’05] NP-hard if q ≤ d [This paper]

Page 13: The Complexity of Matrix Completion

A Sharp ThresholdThm: Simultaneous completion for d

matrices over Fq is:

in P if q > d [HKM ’05] NP-hard if q ≤ d [This paper]

Cor: Single matrix completion with d occurrences of variables over Fq

is NP-hard if q ≤ d

Page 14: The Complexity of Matrix Completion

Approach Reduction from Circuit-SAT

ANAND

BC

C = ( A B )

C = 1 - A ∙ B (if A, B, C {0, 1})

det 01 A

B C

(if A, B, C {0, 1})

Page 15: The Complexity of Matrix Completion

What have we shown so far? Simultaneous completion of an unbounded

number of matrices over F2 is NP-hard

Can we use fewer?Combine small matrices into huge matrix?Problem: Variables appear too many timesNeed to somehow make “copies” of a variable

Coming up next: completing two matrices over F2 is NP-hard

Page 16: The Complexity of Matrix Completion

A Curious Matrix

1 1 1 1 0

x1 1 1 1 1

x2 1 1 1

x3 1 1

xn 1

Rn :=

Page 17: The Complexity of Matrix Completion

A Curious Matrix

1 1 1 1 0

x1 1 1 1 1

x2 1 1 1

x3 1 1

xn 1

Rn :=

Thm: det Rn = i

ii

i xx )()1(

Page 18: The Complexity of Matrix Completion

Linearity of Determinant1 1 1 1 0

x1 1 1 1 1

x2 1 1 1

x3 1 1

xn 1

det

1 1 1 1 1

x1 1 1 1 1

x2 1 1 1

x3 1 1

xn 1

det

1 1 1 1 -1

x1 1 1 1 0

x2 1 1 0

x3 1 0

xn 0

det+=

Page 19: The Complexity of Matrix Completion

Column Expansion

ii

n x1)1(

x1 1 1 1

x2 1 1

x3 1

xn

(-1)n+1 det= =

1 1 1 1 1

x1 1 1 1 1

x2 1 1 1

x3 1 1

xn 1

det

1 1 1 1 -1

x1 1 1 1 0

x2 1 1 0

x3 1 0

xn 0

det+

Page 20: The Complexity of Matrix Completion

ii

n x1)1(

1 1 1 1 1

x1 1 1 1 1

x2 1 1 1

x3 1 1

xn 1

det

Page 21: The Complexity of Matrix Completion

Schur Complement Identity1 1 1 1 1

x1 1 1 1 1

x2 1 1 1

x3 1 1

xn 1

det

= det

x1 1 1 1

x2 1 1

x3 1

xn

1 1 1 11

1

1

1

1

∙ ∙ -

ii

n x1)1(

ii

n x1)1(

Page 22: The Complexity of Matrix Completion

Applying Outer Product

= det

1-x1

1 1-x2

1 1 1-x3

1 1 1 1-xn

= det

x1 1 1 1

x2 1 1

x3 1

xn

1 1 1 11

1

1

1

1

∙ ∙ -

ii

n x1)1(

ii

n x1)1(

Page 23: The Complexity of Matrix Completion

Finishing up

= det

1-x1

1 1-x2

1 1 1-x3

1 1 1 1-xn

i

ii

i xx )()1(=

QED

ii

n x1)1(

Page 24: The Complexity of Matrix Completion

Proof:

det Rn = ,

which is arithmetization of

So either all variables true, or all false.

Replicating VariablesCorollary:

If {x1, x2, …, xn} in {0,1}

then det Rn 0 xi = xj i,j

i

ii

i xx )()1(

xi xi. i i

Page 25: The Complexity of Matrix Completion

Replicating VariablesCorollary:

If {x1, x2, …, xn} in {0,1}

then det Rn 0 xi = xj i,j

Consequence: over F2, need only 2 matrices

NAND

NAND

NAND

A :=

Rn

Rn

Rn

B :=

Page 26: The Complexity of Matrix Completion

What have we shown so far?

Simultaneous completion of: an unbounded number of matrices

over F2 is NP-hard

two matrices over F2 is NP-hard

Next: q matrices over Fq is NP-hard

Page 27: The Complexity of Matrix Completion

Handling Fields Fq

Previous gadgets only work if each x {0,1}.How can we ensure this over Fq?

Introduce q-2 auxiliary variables: x=x(1), x(2), …, x(q-1)

Sufficient to enforce that:x(i) x(j) i,j and x(i) {0,1} i 2

det 01 1

x(i) x(j) etc.

Page 28: The Complexity of Matrix Completion

Handling Fields Fq

x(i) x(j) i,j and x(i) {0,1} i 2

x(2)

0 1

x(1)

x(3)x(4)

x(q-1)

Edge indicates endpoints non-equal

Page 29: The Complexity of Matrix Completion

Handling Fields Fq

x(i) x(j) i,j and x(i) {0,1} i 2

x(2)

0 1

x(1)

x(3)x(4)

x(q-1)

Pack these constraints into few matrices

Each variable used once per matrix

Amounts to edge-coloring From (Kn), conclude that

q matrices suffice

Page 30: The Complexity of Matrix Completion

What have we shown so far? Simultaneous completion of:

an unbounded number of matricesover F2 is NP-hard

two matrices over F2 is NP-hard

q matrices over Fq is NP-hard

Page 31: The Complexity of Matrix Completion

Main ResultsThm: A simultaneous completion for d

matrices over Fq is NP-hard if q ≤ d

Cor: Completion of single matrix, variables appearing d timesis NP-hard if q ≤ d

Cor: Completion of skew-symmetric matrix, variables appearing d timesis NP-hard if q ≤ d

Page 32: The Complexity of Matrix Completion

Open Questions Improved hardess results / algorithms

for matrix completion? Lower bounds / hardness for field size in

network coding? More combinatorial uses of matrix

completion