Happy 80th B’day Dick

Embed Size (px)

DESCRIPTION

Perfect matchings and symbolic matrices Avi Wigderson IAS, Princeton

Citation preview

Happy 80th Bday Dick Perfect matchings and symbolic matrices
Avi Wigderson IAS, Princeton Perfect Matchings [Edmonds-Karp 72] Jacoby 1890 [Hopcroft-Karp 72]
[Karp-Sipser 81] [Karp-Upfal-W 85] [Karp-Vazirani-Vazirani 90] sequential, parallel, on-line deterministic, randomized, Average-case, Jacoby 1890 ODEs Optimization Combinatorics Stat Physics Economics Biology CS - Unfamiliar algorithms Favorite open problems Something new Perfect Matchings V U 1 G AG Bipartite graphs G(U,V;E). |U|=|V|=n
G U V AG Bipartite graphs G(U,V;E). |U|=|V|=n Fact:G has a PM iff Per(AG)>0 [Hall 1935]G has a PM iff G has no ixj minor with i+j>n [Jacoby 1890] PM P (Augmenting paths) PMs & symbolic matrices [Edmonds67]
G U V 1 AG X31 X21 X11 X12 X13 AG[X] Of course, this is in PPM [Edmonds 67]G has a PM iff Det(AG[X]) 0( P) Symbolic matrices [Edmonds67]
L[X] X = {X1,X2, } Lij(X) = aX1+bX2+ :affine form SDIT: Is Det(L[X]) = 0 ? [Edmonds 67]SDIT P ?? [Lovasz 79] SDIT RP [Valiant 79]SDIT PIT for arithmetic formulas [Kabanets-Impagliazzo01] SDIT P circuit lower bds [Valiant 82] PM RNC !FindPM NC ?? Of course, this is in PPM FindPM RNC [KUW 85] G(U,V;E), Assume G has a PM. Let S E
rank(S) = max { |S M| : M is PM } redundant(S) = { e : rank(S+e) = rank(S) } Lemma: rank, redundant RNC(symbolic matrices) Repeat c.log n times: Pick S at random (clever) Remove red(S) Clean & Update G Analysis: Pr[ |red(S)| < |E|/10 ]< 1/10 Notes: no regret algorithm! Two sources of randomness! rank(S) = 2 red(S) = rank(S) = 1 red(S) = rank(S) = 2 red(S) = A year later MVV discovered the FindPM NC ? [Sharan-W 96]
Augmenting paths out, Augmenting cycles in G(U,V;E), Assume G has a PM. degree(G) 3(wlog) quasiPM: S E, odd degree in every vertex Find a quasiPM S Repeat c.log2n times: Find augmenting cycles C (many disjoint ones) S S C Analysis:In cubic graphs, Q is a perfect matching In deg3 graphs, Q is an induced forest Linear Algebra C C Lev-Pippenger-Valiant Approximating the Permanent
Non-negative matrix A:efficiently approximate Per(A) [Jerrum-Sinclair-Vigoda04]Probabilistic. (1+ )-approx. [Linial-Samorodnitsky-W01]Deterministic.en- approx. [Gurvits-Samorodnitsky14] Deterministic. 2n- approx. Open:Deterministic.(1+ )-approx. [Sinkhorn 64] Iterations: make A doubly stochastic exp(n.999) Scaling algorithm [LSW 01]
A non-negative matrix. Try making it doubly stochastic. (e.g. the adjacency matrix A=AG of a bipartite graph G) 1 Scaling algorithm [LSW 01]
A non-negative matrix. Try making it doubly stochastic. (e.g. the adjacency matrix A=AG of a bipartite graph G) 1 1/3 Scaling algorithm [LSW 01]
A non-negative matrix. Try making it doubly stochastic. (e.g. the adjacency matrix A=AG of a bipartite graph G) 3/7 1/7 1 Scaling algorithm [LSW 01]
A non-negative matrix. Try making it doubly stochastic. (e.g. the adjacency matrix A=AG of a bipartite graph G) 1 1/15 7/15 Scaling algorithm [LSW 01]
A non-negative matrix. Try making it doubly stochastic. (e.g. the adjacency matrix A=AG of a bipartite graph G) 1/2 1 Scaling algorithm [LSW 01]
A non-negative matrix. Try making it doubly stochastic. (e.g. the adjacency matrix A=AG of a bipartite graph G) R(A) = diag(row sums)-1C(A) = diag(column sums)-1 Repeat n2 times: Normalize rows A R(A)A Normalize cols A A C(A) 1 1/2 Scaling algorithm [LSW 01]
A non-negative matrix. Try making it doubly stochastic. (e.g. the adjacency matrix A=AG of a bipartite graph G) R(A) = diag(row sums)-1C(A) = diag(column sums)-1 Repeat n2 times: Normalize rows A R(A)A Normalize cols A A C(A) 1 Scaling algorithm [LSW 01]
A non-negative matrix. Try making it doubly stochastic. (e.g. the adjacency matrix A=AG of a bipartite graph G) R(A) = diag(row sums)-1C(A) = diag(column sums)-1 Repeat n2 times: Normalize rows A R(A)A Normalize cols A A C(A) 1 1/2 1/3 Scaling algorithm [LSW 01]
A non-negative matrix. Try making it doubly stochastic. (e.g. the adjacency matrix A=AG of a bipartite graph G) R(A) = diag(row sums)-1C(A) = diag(column sums)-1 Repeat n2 times: Normalize rows A R(A)A Normalize cols A A C(A) 6/11 3/11 3/5 2/11 2/5 1 Scaling algorithm [LSW 01]
A non-negative matrix. Try making it doubly stochastic. (e.g. the adjacency matrix A=AG of a bipartite graph G) R(A) = diag(row sums)-1C(A) = diag(column sums)-1 Repeat n2 times: Normalize rows A R(A)A Normalize cols A A C(A) 1 15/48 33/48 10/87 22/87 55/87 Scaling algorithm [LSW 01]
A non-negative matrix. Try making it doubly stochastic. (e.g. the adjacency matrix A=AG of a bipartite graph G) R(A) = diag(row sums)-1C(A) = diag(column sums)-1 Repeat n2 times: Normalize rows A R(A)A Normalize cols A A C(A) (C(A)=I) Test if R(A) I (up to 1/n) Yes: Per(A) > 0. No:Per(A) = 0. Analysis: Progress measure = Permanent 1 Grows by (1+1/n) (AMGM inequality) Initially > e-n (van der Waerden conj) 1 Quantum scaling alg [Gurvits 04]
L=L[X]=iLixi symbolic matrix (Li integer matrices) completely positive quantum operator. Try making it doubly stochastic. R(L) = (iLiLit)-1/2C(L) = (iLitLi)-1/2 Repeat nc times: Normalize rows L R(L)L Normalize cols L L C(L) Test if R(L) I (up to 1/n) Yes: QuantPer(L) > 0. No:QuantPer(L) = 0. Analysis: Progress measure = Qantum Permanent Grows by (1+1/n) (AMGM inequality) Initially ?? (large if Det(L[X]) 0 ) What does this Algorithm do ?? ifDet(L[X]) 0 Det(L[X]) = 0 Matching in the dark [Gurvits 04]
1 AG X31 X21 X11 X12 X13 AG[X] Of course, this is in PPM Can be NPC toinvert B->A (in matroid intersection) Open over finite fields Invertible left, right & variable change Det(A[X]) 0iffDet(B[Y]) 0 [Gurvits]Quantum algorithm determines if G has PM B[Y] What does Gurvits alg do?? [Garg-Gurvits-Olivera-W 15]
Linninteger matrices L=L[X]=i Lixi nnsymbolic matrix SDIT: Is Det(L) 0 ? [GGOW 15] NC-SDIT P(Previously EXP) Non-commutative algebra Is L invertible when in the skew field? (NC PIT for rational functions) Invariant Theory Is (L1,Lm) nullcone of L-R gp action? Quantum Information Theory Is the completely positive quantum operator defined by (L1,Lm)rank decreasing? Optimization Matroid intersection, (in the dark) Linninteger matrices L(k)=L(k)[X]=i LiXiXi kk nknksymbolic matrix NC-SDIT: k Det(L(k)) 0 ? ANALITIC Even EXP bd for NC-SDIT is nontrivial Best upper bound on k is exponential (but this is essential to our analysis giving polytime alg [H,D,IQS] kSymbolic Determinant / PIT in P What does NC-SDIT P imply? Even EXP bd for NC-SDIT is nontrivial Best upper bound on k is exponential (but this is essential to our analysis giving polytime alg Happy 80th Bday Dick