Date post: | 01-Jan-2016 |
Category: |
Documents |
Upload: | laith-atkinson |
View: | 49 times |
Download: | 1 times |
The Complexityof Matrix Completion
Nick HarveyDavid KargerSergey Yekhanin
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
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)
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
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)
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)
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? ? ? ? ? ?
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
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
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
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.
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]
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
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})
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
A Curious Matrix
1 1 1 1 0
x1 1 1 1 1
x2 1 1 1
x3 1 1
xn 1
Rn :=
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(
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+=
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+
ii
n x1)1(
1 1 1 1 1
x1 1 1 1 1
x2 1 1 1
x3 1 1
xn 1
det
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(
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(
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(
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
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 :=
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
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.
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
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
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
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
Open Questions Improved hardess results / algorithms
for matrix completion? Lower bounds / hardness for field size in
network coding? More combinatorial uses of matrix
completion