<<

Counting perfect matchings via random matrices

Mark Rudelson

based on joint works with Alex Samorodnitky and Ofer Zeitouni

Department of Mathematics University of Michigan

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 1 / 1 A perfect is a permutation π ∈ Πn such that (j, π(j) ∈ E for all j ∈ [n].

#(perfect matchings) = per(A), where A is the of the graph.

Perfect matchings

Let Γ = (L, R, V) be an n × n .

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 2 / 1 #(perfect matchings) = per(A), where A is the adjacency matrix of the graph.

π = (1, 3, 2, 4, 6, 5)

Perfect matchings

1 1

2 2 Let Γ = (L, R, V) be an n × n bipartite graph. A perfect matching is a permutation 3 3 π ∈ Πn such that (j, π(j) ∈ E for all j ∈ [n]. 4 4

5 5

6 6 π = (2, 1, 6, 4, 5, 3)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 2 / 1 #(perfect matchings) = per(A), where A is the adjacency matrix of the graph. π = (2, 1, 6, 4, 5, 3)

Perfect matchings

1 1

2 2 Let Γ = (L, R, V) be an n × n bipartite graph. A perfect matching is a permutation 3 3 π ∈ Πn such that (j, π(j) ∈ E for all j ∈ [n]. 4 4

5 5

6 6

π = (1, 3, 2, 4, 6, 5)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 2 / 1 π = (2, 1, 6, 4, 5, 3) π = (1, 3, 2, 4, 6, 5)

Perfect matchings

1 1

2 2 Let Γ = (L, R, V) be an n × n bipartite graph. A perfect matching is a permutation 3 3 π ∈ Πn such that (j, π(j) ∈ E for all j ∈ [n]. 4 4

#(perfect matchings) = per(A), 5 5 where A is the adjacency matrix of the graph. 6 6

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 2 / 1 Evaluation of determinants is fast: use e.g., triangularization by Gaussian elimination.

Coppersmith-Winograd algorithm: Running time: O(n2.376).

Determinant of A:

n X Y det(A) = sign(π) aj,π(j).

π∈Πn j=1

Evaluation of permanents is #P-complete (Valiant 1979)

Permanent of a matrix

Let A be an n × n matrix with ai,j ≥ 0.

Permanent of A:

n X Y per(A) = aj,π(j).

π∈Πn j=1

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 3 / 1 Evaluation of determinants is fast: use e.g., triangularization by Gaussian elimination.

Evaluation of permanents is Coppersmith-Winograd algorithm: #P-complete (Valiant 1979) Running time: O(n2.376).

Permanent of a matrix

Let A be an n × n matrix with ai,j ≥ 0.

Permanent of A: Determinant of A:

n n X Y X Y per(A) = aj,π(j). det(A) = sign(π) aj,π(j).

π∈Πn j=1 π∈Πn j=1

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 3 / 1 Evaluation of permanents is #P-complete (Valiant 1979)

Permanent of a matrix

Let A be an n × n matrix with ai,j ≥ 0.

Permanent of A: Determinant of A:

n n X Y X Y per(A) = aj,π(j). det(A) = sign(π) aj,π(j).

π∈Πn j=1 π∈Πn j=1

Evaluation of determinants is fast: use e.g., triangularization by Gaussian elimination.

Coppersmith-Winograd algorithm: Running time: O(n2.376).

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 3 / 1 Permanent of a matrix

Let A be an n × n matrix with ai,j ≥ 0.

Permanent of A: Determinant of A:

n n X Y X Y per(A) = aj,π(j). det(A) = sign(π) aj,π(j).

π∈Πn j=1 π∈Πn j=1

Evaluation of determinants is fast: use e.g., triangularization by Gaussian elimination.

Evaluation of permanents is Coppersmith-Winograd algorithm: #P-complete (Valiant 1979) Running time: O(n2.376).

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 3 / 1 Qn Qn 0 0 per(A) = i=1 di · j=1 dj · per(A )

Deterministic bounds

Linial–Samorodnitsky–Wigderson algoritm: if per(A) > 0, then one can find in polynomial time diagonal matrices D, D0 such that the renormalized matrix A0 = D0AD is almost doubly stochastic:

n X 0 1 − ε < ai,j < 1 + ε, for all j = 1,..., n i=1 n X 0 1 − ε < ai,j < 1 + ε, for all i = 1,..., n j=1

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 4 / 1 Deterministic bounds

Linial–Samorodnitsky–Wigderson algoritm: if per(A) > 0, then one can find in polynomial time diagonal matrices D, D0 such that the renormalized matrix A0 = D0AD is almost doubly stochastic:

n X 0 1 − ε < ai,j < 1 + ε, for all j = 1,..., n i=1 n X 0 1 − ε < ai,j < 1 + ε, for all i = 1,..., n j=1

Qn Qn 0 0 per(A) = i=1 di · j=1 dj · per(A )

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 4 / 1 Gurvits-Samorodnitsky estimator (2014) + Linial–Samorodnitsky–Wigderson algorithm yields the multiplicative error 2n.

Deterministic bounds

Linial–Samorodnitsky–Wigderson algoritm: reduces permanent estimates to almost doubly stochastic matrices Van der Waerden conjecture, proved by Falikman and Egorychev: if A is doubly stochastic, then n! 1 ≥ per(A) ≥ ≈ e−n nn Linial–Samorodnitsky–Wigderson algorithm estimates the permanent with the multiplicative error at most en

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 5 / 1 Deterministic bounds

Linial–Samorodnitsky–Wigderson algoritm: reduces permanent estimates to almost doubly stochastic matrices Van der Waerden conjecture, proved by Falikman and Egorychev: if A is doubly stochastic, then n! 1 ≥ per(A) ≥ ≈ e−n nn Linial–Samorodnitsky–Wigderson algorithm estimates the permanent with the multiplicative error at most en Gurvits-Samorodnitsky estimator (2014) + Linial–Samorodnitsky–Wigderson algorithm yields the multiplicative error 2n.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 5 / 1 Deficiency: running time is O(n10) (improved later to O(n7 log4 n)). Barvinok’s estimator (improves Godsil–Gutman estimator). Let A be the adjacency matrix. Let Γ be an n × n random matrix having independent N(0, aij) entries. Then 2 per(A) = E det (Γ). Estimator: per(A) ≈ det2(Γ). Advantage: Barvinok’s estimator is faster than any other algorithm. How accurate is it?

Probabilistic estimates

Jerrum–Sinclair–Vigoda algorithm estimates the permanent of any matrix with constant multiplicative error with high probability.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 6 / 1 Barvinok’s estimator (improves Godsil–Gutman estimator). Let A be the adjacency matrix. Let Γ be an n × n random matrix having independent N(0, aij) entries. Then 2 per(A) = E det (Γ). Estimator: per(A) ≈ det2(Γ). Advantage: Barvinok’s estimator is faster than any other algorithm. How accurate is it?

Probabilistic estimates

Jerrum–Sinclair–Vigoda algorithm estimates the permanent of any matrix with constant multiplicative error with high probability. Deficiency: running time is O(n10) (improved later to O(n7 log4 n)).

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 6 / 1 Advantage: Barvinok’s estimator is faster than any other algorithm. How accurate is it?

Probabilistic estimates

Jerrum–Sinclair–Vigoda algorithm estimates the permanent of any matrix with constant multiplicative error with high probability. Deficiency: running time is O(n10) (improved later to O(n7 log4 n)). Barvinok’s estimator (improves Godsil–Gutman estimator). Let A be the adjacency matrix. Let Γ be an n × n random matrix having independent N(0, aij) entries. Then 2 per(A) = E det (Γ). Estimator: per(A) ≈ det2(Γ).

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 6 / 1 How accurate is it?

Probabilistic estimates

Jerrum–Sinclair–Vigoda algorithm estimates the permanent of any matrix with constant multiplicative error with high probability. Deficiency: running time is O(n10) (improved later to O(n7 log4 n)). Barvinok’s estimator (improves Godsil–Gutman estimator). Let A be the adjacency matrix. Let Γ be an n × n random matrix having independent N(0, aij) entries. Then 2 per(A) = E det (Γ). Estimator: per(A) ≈ det2(Γ). Advantage: Barvinok’s estimator is faster than any other algorithm.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 6 / 1 Probabilistic estimates

Jerrum–Sinclair–Vigoda algorithm estimates the permanent of any matrix with constant multiplicative error with high probability. Deficiency: running time is O(n10) (improved later to O(n7 log4 n)). Barvinok’s estimator (improves Godsil–Gutman estimator). Let A be the adjacency matrix. Let Γ be an n × n random matrix having independent N(0, aij) entries. Then 2 per(A) = E det (Γ). Estimator: per(A) ≈ det2(Γ). Advantage: Barvinok’s estimator is faster than any other algorithm. How accurate is it?

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 6 / 1 Identity matrix: multiplicative error at least exp(cn) w.h.p. √ Matrix of all ones: multiplicative error at most exp(C log n) (Goodman, 1963).

Can it be improved?

Precision bounds for Barvinok’s estimator

Theorem (Barvinok) Let A be anyn × n matrix with non-negative entries. Then, with probability 1 − δ,

((1 − ε) · θ)n per(A) ≤ det2(Γ) ≤ C per(A),

where C is an absolute constant and θ = 0.28 for real Gaussian matrices; θ = 0.56 for complex Gaussian matrices;

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 7 / 1 Identity matrix: multiplicative error at least exp(cn) w.h.p. √ Matrix of all ones: multiplicative error at most exp(C log n) (Goodman, 1963).

Precision bounds for Barvinok’s estimator

Theorem (Barvinok) Let A be anyn × n matrix with non-negative entries. Then, with probability 1 − δ,

((1 − ε) · θ)n per(A) ≤ det2(Γ) ≤ C per(A),

where C is an absolute constant and θ = 0.28 for real Gaussian matrices; θ = 0.56 for complex Gaussian matrices;

Can it be improved?

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 7 / 1 √ Matrix of all ones: multiplicative error at most exp(C log n) (Goodman, 1963).

Precision bounds for Barvinok’s estimator

Theorem (Barvinok) Let A be anyn × n matrix with non-negative entries. Then, with probability 1 − δ,

((1 − ε) · θ)n per(A) ≤ det2(Γ) ≤ C per(A),

where C is an absolute constant and θ = 0.28 for real Gaussian matrices; θ = 0.56 for complex Gaussian matrices;

Can it be improved? Identity matrix: multiplicative error at least exp(cn) w.h.p.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 7 / 1 Precision bounds for Barvinok’s estimator

Theorem (Barvinok) Let A be anyn × n matrix with non-negative entries. Then, with probability 1 − δ,

((1 − ε) · θ)n per(A) ≤ det2(Γ) ≤ C per(A),

where C is an absolute constant and θ = 0.28 for real Gaussian matrices; θ = 0.56 for complex Gaussian matrices;

Can it be improved? Identity matrix: multiplicative error at least exp(cn) w.h.p. √ Matrix of all ones: multiplicative error at most exp(C log n) (Goodman, 1963).

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 7 / 1 Question:

for which graphs would Barvinok’s estimator yield a small error?

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 8 / 1     exp −C(τn log n)1/3 exp C(τn log n)1/3

Bad news: It can be concentrated relatively far from the permanent.

Theorem (R’–Zeitouni, 2013) Let A be the adjacency matrix A of an n × n expander-type bipartite graph of the minimal degree at least δn. Let Γ be a random Gaussian matrix with variance matrix A. Then for any τ ≥ 1

 det2(Γ)  ≤ ≤ P M √ ≥ 1 − exp(−τ)+ exp −c n/ log n

and   M exp −C(n log n)1/2 ≤ ≤ 1. per(A)

Concentration for Barvinok’s estimator: how strong? Let G be an expander-type bipartite graph. Good news: the Barvinok estimator is strongly concentrated.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 9 / 1     exp −C(τn log n)1/3 exp C(τn log n)1/3

Theorem (R’–Zeitouni, 2013) Let A be the adjacency matrix A of an n × n expander-type bipartite graph of the minimal degree at least δn. Let Γ be a random Gaussian matrix with variance matrix A. Then for any τ ≥ 1

 det2(Γ)  ≤ ≤ P M √ ≥ 1 − exp(−τ)+ exp −c n/ log n

and   M exp −C(n log n)1/2 ≤ ≤ 1. per(A)

Concentration for Barvinok’s estimator: how strong? Let G be an expander-type bipartite graph. Good news: the Barvinok estimator is strongly concentrated. Bad news: It can be concentrated relatively far from the permanent.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 9 / 1     exp −C(τn log n)1/3 exp C(τn log n)1/3

and   M exp −C(n log n)1/2 ≤ ≤ 1. per(A)

Concentration for Barvinok’s estimator: how strong? Let G be an expander-type bipartite graph. Good news: the Barvinok estimator is strongly concentrated. Bad news: It can be concentrated relatively far from the permanent.

Theorem (R’–Zeitouni, 2013) Let A be the adjacency matrix A of an n × n expander-type bipartite graph of the minimal degree at least δn. Let Γ be a random Gaussian matrix with variance matrix A. Then for any τ ≥ 1

 det2(Γ)  ≤ ≤ P M ≥ 1 − small

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 9 / 1 and   M exp −C(n log n)1/2 ≤ ≤ 1. per(A)

Concentration for Barvinok’s estimator: how strong? Let G be an expander-type bipartite graph. Good news: the Barvinok estimator is strongly concentrated. Bad news: It can be concentrated relatively far from the permanent.

Theorem (R’–Zeitouni, 2013) Let A be the adjacency matrix A of an n × n expander-type bipartite graph of the minimal degree at least δn. Let Γ be a random Gaussian matrix with variance matrix A. Then for any τ ≥ 1

   det2(Γ)    exp −C(τn log n)1/3 ≤ ≤ exp C(τn log n)1/3 P M ≥ 1 − small

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 9 / 1 and   M exp −C(n log n)1/2 ≤ ≤ 1. per(A)

Concentration for Barvinok’s estimator: how strong? Let G be an expander-type bipartite graph. Good news: the Barvinok estimator is strongly concentrated. Bad news: It can be concentrated relatively far from the permanent.

Theorem (R’–Zeitouni, 2013) Let A be the adjacency matrix A of an n × n expander-type bipartite graph of the minimal degree at least δn. Let Γ be a random Gaussian matrix with variance matrix A. Then for any τ ≥ 1

   det2(Γ)    exp −C(τn log n)1/3 ≤ ≤ exp C(τn log n)1/3 P M √ ≥ 1 − exp(−τ)+ exp −c n/ log n

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 9 / 1 Concentration for Barvinok’s estimator: how strong? Let G be an expander-type bipartite graph. Good news: the Barvinok estimator is strongly concentrated. Bad news: It can be concentrated relatively far from the permanent.

Theorem (R’–Zeitouni, 2013) Let A be the adjacency matrix A of an n × n expander-type bipartite graph of the minimal degree at least δn. Let Γ be a random Gaussian matrix with variance matrix A. Then for any τ ≥ 1

   det2(Γ)    exp −C(τn log n)1/3 ≤ ≤ exp C(τn log n)1/3 P M √ ≥ 1 − exp(−τ)+ exp −c n/ log n

and   M exp −C(n log n)1/2 ≤ ≤ 1. per(A)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 9 / 1 2  M = exp E log det (Γ) . det is a highly non-linear function ⇒ det(Γ) has heavy tails.

Concentration for Barvinok’s estimator: where? Theorem (R’–Zeitouni, 2013) Let A be the adjacency matrix A of an n × n expander-type bipartite graph of the minimal degree at least δn. Let Γ be a random Gaussian matrix with variance matrix A. Then for any τ ≥ 1

   det2(Γ)   exp −C(τn log n)1/3 ≤ ≤ exp C(τn log n)1/3 P M √ ≥ 1 − exp(−τ)+ exp −c n/ log n

and   M exp −C(n log n)1/2 ≤ ≤ 1. per(A)

2 per(A) = E det (Γ);

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 10 / 1 det is a highly non-linear function ⇒ det(Γ) has heavy tails.

Concentration for Barvinok’s estimator: where? Theorem (R’–Zeitouni, 2013) Let A be the adjacency matrix A of an n × n expander-type bipartite graph of the minimal degree at least δn. Let Γ be a random Gaussian matrix with variance matrix A. Then for any τ ≥ 1

   det2(Γ)   exp −C(τn log n)1/3 ≤ ≤ exp C(τn log n)1/3 P M √ ≥ 1 − exp(−τ)+ exp −c n/ log n

and   M exp −C(n log n)1/2 ≤ ≤ 1. per(A)

2 per(A) = E det (Γ); 2  M = exp E log det (Γ) .

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 10 / 1 Concentration for Barvinok’s estimator: where? Theorem (R’–Zeitouni, 2013) Let A be the adjacency matrix A of an n × n expander-type bipartite graph of the minimal degree at least δn. Let Γ be a random Gaussian matrix with variance matrix A. Then for any τ ≥ 1

   det2(Γ)   exp −C(τn log n)1/3 ≤ ≤ exp C(τn log n)1/3 P M √ ≥ 1 − exp(−τ)+ exp −c n/ log n

and   M exp −C(n log n)1/2 ≤ ≤ 1. per(A)

2 per(A) = E det (Γ); 2  M = exp E log det (Γ) . det is a highly non-linear function ⇒ det(Γ) has heavy tails.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 10 / 1 Counting perfect matchings in general graphs

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 11 / 1 General graph: Let A be the the adjacency matrix of the graph.

m 1 X Y haf(A) = a . m!2m π(2j−1),π(2j) π∈Πn j=1

Counting perfect matchings: permanent ⇒ hafnian

Let G be a graph with n = 2m vertices.

Bipartite graphs: Let A be the n × n non-trivial block of the adjacency matrix of the graph.

n X Y per(A) = aj,π(j).

π∈Πn j=1

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 12 / 1 Counting perfect matchings: permanent ⇒ hafnian

Let G be a graph with n = 2m vertices.

Bipartite graphs: General graph: Let A be the n × n non-trivial block of Let A be the the adjacency matrix of the adjacency matrix of the graph. the graph.

n m X Y 1 X Y per(A) = a . haf(A) = a . j,π(j) m!2m π(2j−1),π(2j) π∈Πn j=1 π∈Πn j=1

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 12 / 1 No estimates of running time are known whenever the minimal degree is smaller. Linial-Samorodnitsky-Wigderson algorithm transforms the matrix to an almost doubly stochastic (but not necessarily symmetric) one. There is no lower bound for the hafnian of a doubly stochastic matrix. A deterministic algorithm of sub-exponential (but not polynomial) complexity (Bayati, Gamarnik, Katz, Nair, and Tetali, 2007)

Bipartite graph algorithms

Let G(V, E) be a graph with an even number of vertices. MCMC algorithm works in polynomial time whenever the minimal degree is greater than n/2 (Jerrum-Sinclair, 1989).

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 13 / 1 Linial-Samorodnitsky-Wigderson algorithm transforms the matrix to an almost doubly stochastic (but not necessarily symmetric) one. There is no lower bound for the hafnian of a doubly stochastic matrix. A deterministic algorithm of sub-exponential (but not polynomial) complexity (Bayati, Gamarnik, Katz, Nair, and Tetali, 2007)

Bipartite graph algorithms

Let G(V, E) be a graph with an even number of vertices. MCMC algorithm works in polynomial time whenever the minimal degree is greater than n/2 (Jerrum-Sinclair, 1989). No estimates of running time are known whenever the minimal degree is smaller.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 13 / 1 There is no lower bound for the hafnian of a doubly stochastic matrix. A deterministic algorithm of sub-exponential (but not polynomial) complexity (Bayati, Gamarnik, Katz, Nair, and Tetali, 2007)

Bipartite graph algorithms

Let G(V, E) be a graph with an even number of vertices. MCMC algorithm works in polynomial time whenever the minimal degree is greater than n/2 (Jerrum-Sinclair, 1989). No estimates of running time are known whenever the minimal degree is smaller. Linial-Samorodnitsky-Wigderson algorithm transforms the matrix to an almost doubly stochastic (but not necessarily symmetric) one.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 13 / 1 A deterministic algorithm of sub-exponential (but not polynomial) complexity (Bayati, Gamarnik, Katz, Nair, and Tetali, 2007)

Bipartite graph algorithms

Let G(V, E) be a graph with an even number of vertices. MCMC algorithm works in polynomial time whenever the minimal degree is greater than n/2 (Jerrum-Sinclair, 1989). No estimates of running time are known whenever the minimal degree is smaller. Linial-Samorodnitsky-Wigderson algorithm transforms the matrix to an almost doubly stochastic (but not necessarily symmetric) one. There is no lower bound for the hafnian of a doubly stochastic matrix.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 13 / 1 Bipartite graph algorithms

Let G(V, E) be a graph with an even number of vertices. MCMC algorithm works in polynomial time whenever the minimal degree is greater than n/2 (Jerrum-Sinclair, 1989). No estimates of running time are known whenever the minimal degree is smaller. Linial-Samorodnitsky-Wigderson algorithm transforms the matrix to an almost doubly stochastic (but not necessarily symmetric) one. There is no lower bound for the hafnian of a doubly stochastic matrix. A deterministic algorithm of sub-exponential (but not polynomial) complexity (Bayati, Gamarnik, Katz, Nair, and Tetali, 2007)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 13 / 1 Let Γ be an n × n Gaussian matrix Let W be an n × n skew-symmetric with γij ∼ N(0, 1) Gaussian matrix with w˜ij ∼ N(0, 1) whenever i 6= j, Aij = 1 and 0 whenever i < j, Aij = 1 and 0 otherwise. otherwise.

0 2 #perf. match. = per(A ) = E det (Γ) #perf. match. = haf(A) = E det(W)

Barvinok’s estimator

Let G be a graph with n = 2m vertices.

Bipartite graphs: General graph: Let A0 be the n × n non-trivial block of Let A be the the adjacency matrix of the adjacency matrix of the graph. the graph.

n m X Y 1 X Y per(A) = a . haf(A) = a . j,π(j) m!2m π(2j−1),π(2j) π∈Πn j=1 π∈Πn j=1

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 14 / 1 Let W be an n × n skew-symmetric Gaussian matrix with w˜ij ∼ N(0, 1) whenever i < j, Aij = 1 and 0 otherwise.

#perf. match. = haf(A) = E det(W)

Barvinok’s estimator

Let G be a graph with n = 2m vertices.

Bipartite graphs: General graph: Let A0 be the n × n non-trivial block of Let A be the the adjacency matrix of the adjacency matrix of the graph. the graph.

n m X Y 1 X Y per(A) = a . haf(A) = a . j,π(j) m!2m π(2j−1),π(2j) π∈Πn j=1 π∈Πn j=1

Let Γ be an n × n Gaussian matrix with γij ∼ N(0, 1) whenever i 6= j, Aij = 1 and 0 otherwise.

0 2 #perf. match. = per(A ) = E det (Γ)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 14 / 1 Barvinok’s estimator

Let G be a graph with n = 2m vertices.

Bipartite graphs: General graph: Let A0 be the n × n non-trivial block of Let A be the the adjacency matrix of the adjacency matrix of the graph. the graph.

n m X Y 1 X Y per(A) = a . haf(A) = a . j,π(j) m!2m π(2j−1),π(2j) π∈Πn j=1 π∈Πn j=1

Let Γ be an n × n Gaussian matrix Let W be an n × n skew-symmetric with γij ∼ N(0, 1) Gaussian matrix with w˜ij ∼ N(0, 1) whenever i 6= j, Aij = 1 and 0 whenever i < j, Aij = 1 and 0 otherwise. otherwise.

0 2 #perf. match. = per(A ) = E det (Γ) #perf. match. = haf(A) = E det(W)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 14 / 1 Problem For which graphs (matrices) would Barvinok’s estimator yield subexponential precision?

Barvinok’s estimator

Theorem (Barvinok) Let A be a symmetric matrix with non-negative entries. 2 Let W be a skew-symmetric Gaussian matrix with Ewij = aij. If haf(A) > 0, then

 det(W)  exp(−γn) ≤ ≤ C = 1 − o(1), P haf(A)

where γ = 0.577 is the Euler constant.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 15 / 1 Barvinok’s estimator

Theorem (Barvinok) Let A be a symmetric matrix with non-negative entries. 2 Let W be a skew-symmetric Gaussian matrix with Ewij = aij. If haf(A) > 0, then

 det(W)  exp(−γn) ≤ ≤ C = 1 − o(1), P haf(A)

where γ = 0.577 is the Euler constant.

Problem For which graphs (matrices) would Barvinok’s estimator yield subexponential precision?

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 15 / 1 Definition A graph G = (V, E) is called a strong expander if for any set J ⊂ V with |J| ≤ m

|∂(J)| −| Con(J)|≥ κ · |J|

Con(J) – the set of connected components of J. Key parameters: κ > 0, m < n. Main difference Highly disconnected sets should grow faster.

Strong expansion condition

Definition A graph G = (V, E) is called a vertex expander if for any set J ⊂ V with |J| ≤ n/2

|∂(J)| ≥ κ · |J|

Key parameter: κ > 0.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 16 / 1 Strong expansion condition

Definition A graph G = (V, E) is called a vertex expander if for any set J ⊂ V with |J| ≤ n/2

|∂(J)| ≥ κ · |J|

Key parameter: κ > 0. Definition A graph G = (V, E) is called a strong expander if for any set J ⊂ V with |J| ≤ m

|∂(J)| −| Con(J)|≥ κ · |J|

Con(J) – the set of connected components of J. Key parameters: κ > 0, m < n. Main difference Highly disconnected sets should grow faster.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 16 / 1 Definition A symmetric stochastic matrix B is said to possess a spectral gap δ if there there do not exist eigenvalues of A in (−1, −1 + δ) ∪ (1 − δ, 1).

Spectral gap ⇔ edge expansion. Spectral gap ≈ vertex expansion.

Spectral gap

Let A be the adjacency matrix. Let B = D1AD2 be its doubly stochastic scaling. Bregman’s theorem: the scaling exists iff any edge is a part of some perfect matching. (easy to check). A doubly stochastic scaling of a symmetric matrix is symmetric.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 17 / 1 Spectral gap ⇔ edge expansion. Spectral gap ≈ vertex expansion.

Spectral gap

Let A be the adjacency matrix. Let B = D1AD2 be its doubly stochastic scaling. Bregman’s theorem: the scaling exists iff any edge is a part of some perfect matching. (easy to check). A doubly stochastic scaling of a symmetric matrix is symmetric.

Definition A symmetric stochastic matrix B is said to possess a spectral gap δ if there there do not exist eigenvalues of A in (−1, −1 + δ) ∪ (1 − δ, 1).

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 17 / 1 Spectral gap

Let A be the adjacency matrix. Let B = D1AD2 be its doubly stochastic scaling. Bregman’s theorem: the scaling exists iff any edge is a part of some perfect matching. (easy to check). A doubly stochastic scaling of a symmetric matrix is symmetric.

Definition A symmetric stochastic matrix B is said to possess a spectral gap δ if there there do not exist eigenvalues of A in (−1, −1 + δ) ∪ (1 − δ, 1).

Spectral gap ⇔ edge expansion. Spectral gap ≈ vertex expansion.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 17 / 1 1 Then for any  > 0 and D > 0,

 det(W)  exp(−Cn4/5+) ≤ ≤ exp(Cn4/5+) ≥ 1 − n−D. P haf(A)

2 If, in addition to the above assumptions, the matrix A/d possesses a spectral gap δ > 0, then for any D > 0,

 det(W)  exp(−Cn1/2 log1/2 n) ≤ ≤ exp(Cn1/2 log1/2 n) ≥ 1 − n−D. P haf(A)

Regular graphs

Theorem (R’-Samorodnitsky-Zeitouni, 2014) Fix α, κ > 0. Let A be the adjacency matrix of a d-regular graph G withd ≥ αn. Assume that 1 − α G is κ strongly expanding up to level · n. 1 + κ/4

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 18 / 1 2 If, in addition to the above assumptions, the matrix A/d possesses a spectral gap δ > 0, then for any D > 0,

 det(W)  exp(−Cn1/2 log1/2 n) ≤ ≤ exp(Cn1/2 log1/2 n) ≥ 1 − n−D. P haf(A)

Regular graphs

Theorem (R’-Samorodnitsky-Zeitouni, 2014) Fix α, κ > 0. Let A be the adjacency matrix of a d-regular graph G withd ≥ αn. Assume that 1 − α G is κ strongly expanding up to level · n. 1 + κ/4

1 Then for any  > 0 and D > 0,

 det(W)  exp(−Cn4/5+) ≤ ≤ exp(Cn4/5+) ≥ 1 − n−D. P haf(A)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 18 / 1 Regular graphs

Theorem (R’-Samorodnitsky-Zeitouni, 2014) Fix α, κ > 0. Let A be the adjacency matrix of a d-regular graph G withd ≥ αn. Assume that 1 − α G is κ strongly expanding up to level · n. 1 + κ/4

1 Then for any  > 0 and D > 0,

 det(W)  exp(−Cn4/5+) ≤ ≤ exp(Cn4/5+) ≥ 1 − n−D. P haf(A)

2 If, in addition to the above assumptions, the matrix A/d possesses a spectral gap δ > 0, then for any D > 0,

 det(W)  exp(−Cn1/2 log1/2 n) ≤ ≤ exp(Cn1/2 log1/2 n) ≥ 1 − n−D. P haf(A)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 18 / 1 1 Then for any  < 1/5 and D > 0,

 det(W)  exp(−Cn1−ϑ) ≤ ≤ exp(Cn1−ϑ) ≥ 1 − n−D. P haf(A)

2 Fix δ > 0. If, in addition to the above assumptions, B possesses a spectral gap δ, then for any D > 0,

 det(W)  exp(−Cn1−ϑ/2 log1/2 n) ≤ ≤ exp(Cn1/2 log1−ϑ/2 n) ≥ 1 − n−D. P haf(A)

General graphs Theorem (R’-Samorodnitsky-Zeitouni, 2014) Fix α, κ > 0. Let A be the adjacency matrix of a graph G with minimal degree d ≥ αn. Assume that 1 − α G is κ strongly expanding up to level · n. 1 + κ/4

−ϑ and the doubly stochastic scaling B of A satisfies maxi,j Bij ≤ n .

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 19 / 1 2 Fix δ > 0. If, in addition to the above assumptions, B possesses a spectral gap δ, then for any D > 0,

 det(W)  exp(−Cn1−ϑ/2 log1/2 n) ≤ ≤ exp(Cn1/2 log1−ϑ/2 n) ≥ 1 − n−D. P haf(A)

General graphs Theorem (R’-Samorodnitsky-Zeitouni, 2014) Fix α, κ > 0. Let A be the adjacency matrix of a graph G with minimal degree d ≥ αn. Assume that 1 − α G is κ strongly expanding up to level · n. 1 + κ/4

−ϑ and the doubly stochastic scaling B of A satisfies maxi,j Bij ≤ n . 1 Then for any  < 1/5 and D > 0,

 det(W)  exp(−Cn1−ϑ) ≤ ≤ exp(Cn1−ϑ) ≥ 1 − n−D. P haf(A)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 19 / 1 General graphs Theorem (R’-Samorodnitsky-Zeitouni, 2014) Fix α, κ > 0. Let A be the adjacency matrix of a graph G with minimal degree d ≥ αn. Assume that 1 − α G is κ strongly expanding up to level · n. 1 + κ/4

−ϑ and the doubly stochastic scaling B of A satisfies maxi,j Bij ≤ n . 1 Then for any  < 1/5 and D > 0,

 det(W)  exp(−Cn1−ϑ) ≤ ≤ exp(Cn1−ϑ) ≥ 1 − n−D. P haf(A)

2 Fix δ > 0. If, in addition to the above assumptions, B possesses a spectral gap δ, then for any D > 0,

 det(W)  exp(−Cn1−ϑ/2 log1/2 n) ≤ ≤ exp(Cn1/2 log1−ϑ/2 n) ≥ 1 − n−D. P haf(A)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 19 / 1 For any N ∈ N, there exists a graph G with M > N vertices such that

and   det(W) 0 ≤ e−cM ≥ 1 − e−c M. P haf(A)

How strong should be strong?

Theorem Let δ > 0.

∀J ⊂ [M] |J| ≤ M/2 ⇒ |∂(J)| − (1 − δ)|Con(J)| ≥ κ|J|

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 20 / 1 How strong should be strong?

Theorem Let δ > 0. For any N ∈ N, there exists a graph G with M > N vertices such that ∀J ⊂ [M] |J| ≤ M/2 ⇒ |∂(J)| − (1 − δ)|Con(J)| ≥ κ|J|

and   det(W) 0 ≤ e−cM ≥ 1 − e−c M. P haf(A)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 20 / 1 Paired

Satellites: vertices n + 1,..., 2n

satellites: vertices 2n + 1,..., 2(n + m)

How strong should be strong?

Central clique: vertices 1,..., n

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 21 / 1 Paired

How strong should be strong? Satellites: vertices n + 1,..., 2n

Central clique: vertices 1,..., n

satellites: vertices 2n + 1,..., 2(n + m)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 21 / 1 How strong should be strong? Satellites: vertices n + 1,..., 2n

Central clique: vertices 1,..., n

Paired satellites: vertices 2n + 1,..., 2(n + m)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 21 / 1 There exists a subgaussian concentration inequality for Lipschitz functions on Rn×n with respect to the gaussian measure:  t2  (|F(G) − F(G)| ≥ t) ≤ 2 exp − . P E 2L2(F)

log det(A Gs) is not Lipschitz.

Approach to concentration

W = A Gs – the entry-wise product of A and a skew-symmetric Gaussian matrix. Aim: X(G) := det(A Gs) is concentrated. det(A Gs) is highly non-linear ⇒ log(det(A Gs)) is easier to control. Modified aim: Y(G) = log det(A Gs) is concentrated around its expectation. We will have to compare the concentration for X(G) and Y(G) at the end.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 22 / 1 log det(A Gs) is not Lipschitz.

Approach to concentration

W = A Gs – the entry-wise product of A and a skew-symmetric Gaussian matrix. Aim: X(G) := det(A Gs) is concentrated. det(A Gs) is highly non-linear ⇒ log(det(A Gs)) is easier to control. Modified aim: Y(G) = log det(A Gs) is concentrated around its expectation. We will have to compare the concentration for X(G) and Y(G) at the end. There exists a subgaussian concentration inequality for Lipschitz functions on Rn×n with respect to the gaussian measure:  t2  (|F(G) − F(G)| ≥ t) ≤ 2 exp − . P E 2L2(F)

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 22 / 1 Approach to concentration

W = A Gs – the entry-wise product of A and a skew-symmetric Gaussian matrix. Aim: X(G) := det(A Gs) is concentrated. det(A Gs) is highly non-linear ⇒ log(det(A Gs)) is easier to control. Modified aim: Y(G) = log det(A Gs) is concentrated around its expectation. We will have to compare the concentration for X(G) and Y(G) at the end. There exists a subgaussian concentration inequality for Lipschitz functions on Rn×n with respect to the gaussian measure:  t2  (|F(G) − F(G)| ≥ t) ≤ 2 exp − . P E 2L2(F)

log det(A Gs) is not Lipschitz.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 22 / 1 How to use Lipschitz concentration for a non-Lipschitz function?

What is non-Lipschitz in log determinant?

n s Y s det(A G ) = sj(A G ) j=1

s Pn s log det(A G ) = j=1 log sj(A G ). The mapping G → A Gs is Lipschitz.  The mapping M → s1(M),..., sn(M) is Lipschitz. Logarithm is not a Lipschitz function.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 23 / 1 What is non-Lipschitz in log determinant?

n s Y s det(A G ) = sj(A G ) j=1

s Pn s log det(A G ) = j=1 log sj(A G ). The mapping G → A Gs is Lipschitz.  The mapping M → s1(M),..., sn(M) is Lipschitz. Logarithm is not a Lipschitz function.

How to use Lipschitz concentration for a non-Lipschitz function?

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 23 / 1 1 Large singular values are far away from 0 ⇒ we can use Gaussian concentration. 2 The number of small singular values is small ⇒ we can directly bound them below by by some a priori bounds. This establishes concentration of log det(A Gs) around its median.

1 Use random matrix theory to obtain a lower bound for each singular value. 2 Split the singular values into large and small ones.

3 Use measure concentration to show that the median of log det(A Gs) is close to the expectation. 4 Use measure concentration another time to swap the expectation and the logarithm: s s E det(A G ) ≈ exp (E log det(A G )) This is the main source of (unavoidable) errors.

Proof in one slide

n s X s log det(A G ) = log sj(A G ) j=1

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 24 / 1 1 Large singular values are far away from 0 ⇒ we can use Gaussian concentration. 2 The number of small singular values is small ⇒ we can directly bound them below by by some a priori bounds. This establishes concentration of log det(A Gs) around its median.

2 Split the singular values into large and small ones.

3 Use measure concentration to show that the median of log det(A Gs) is close to the expectation. 4 Use measure concentration another time to swap the expectation and the logarithm: s s E det(A G ) ≈ exp (E log det(A G )) This is the main source of (unavoidable) errors.

Proof in one slide

n s X s log det(A G ) = log sj(A G ) j=1

1 Use random matrix theory to obtain a lower bound for each singular value.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 24 / 1 1 Large singular values are far away from 0 ⇒ we can use Gaussian concentration. 2 The number of small singular values is small ⇒ we can directly bound them below by by some a priori bounds. This establishes concentration of log det(A Gs) around its median. 3 Use measure concentration to show that the median of log det(A Gs) is close to the expectation. 4 Use measure concentration another time to swap the expectation and the logarithm: s s E det(A G ) ≈ exp (E log det(A G )) This is the main source of (unavoidable) errors.

Proof in one slide

n s X s log det(A G ) = log sj(A G ) j=1

1 Use random matrix theory to obtain a lower bound for each singular value. 2 Split the singular values into large and small ones.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 24 / 1 2 The number of small singular values is small ⇒ we can directly bound them below by by some a priori bounds. This establishes concentration of log det(A Gs) around its median. 3 Use measure concentration to show that the median of log det(A Gs) is close to the expectation. 4 Use measure concentration another time to swap the expectation and the logarithm: s s E det(A G ) ≈ exp (E log det(A G )) This is the main source of (unavoidable) errors.

Proof in one slide

n s X s log det(A G ) = log sj(A G ) j=1

1 Use random matrix theory to obtain a lower bound for each singular value. 2 Split the singular values into large and small ones.

1 Large singular values are far away from 0 ⇒ we can use Gaussian concentration.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 24 / 1 This establishes concentration of log det(A Gs) around its median. 3 Use measure concentration to show that the median of log det(A Gs) is close to the expectation. 4 Use measure concentration another time to swap the expectation and the logarithm: s s E det(A G ) ≈ exp (E log det(A G )) This is the main source of (unavoidable) errors.

Proof in one slide

n s X s log det(A G ) = log sj(A G ) j=1

1 Use random matrix theory to obtain a lower bound for each singular value. 2 Split the singular values into large and small ones.

1 Large singular values are far away from 0 ⇒ we can use Gaussian concentration. 2 The number of small singular values is small ⇒ we can directly bound them below by by some a priori bounds.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 24 / 1 4 Use measure concentration another time to swap the expectation and the logarithm: s s E det(A G ) ≈ exp (E log det(A G )) This is the main source of (unavoidable) errors.

Proof in one slide

n s X s log det(A G ) = log sj(A G ) j=1

1 Use random matrix theory to obtain a lower bound for each singular value. 2 Split the singular values into large and small ones.

1 Large singular values are far away from 0 ⇒ we can use Gaussian concentration. 2 The number of small singular values is small ⇒ we can directly bound them below by by some a priori bounds. This establishes concentration of log det(A Gs) around its median. 3 Use measure concentration to show that the median of log det(A Gs) is close to the expectation.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 24 / 1 Proof in one slide

n s X s log det(A G ) = log sj(A G ) j=1

1 Use random matrix theory to obtain a lower bound for each singular value. 2 Split the singular values into large and small ones.

1 Large singular values are far away from 0 ⇒ we can use Gaussian concentration. 2 The number of small singular values is small ⇒ we can directly bound them below by by some a priori bounds. This establishes concentration of log det(A Gs) around its median. 3 Use measure concentration to show that the median of log det(A Gs) is close to the expectation. 4 Use measure concentration another time to swap the expectation and the logarithm: s s E det(A G ) ≈ exp (E log det(A G )) This is the main source of (unavoidable) errors.

Mark Rudelson (Michigan) Counting perfect matchings via random matrices 24 / 1