Upload
colleen-blan
View
230
Download
4
Tags:
Embed Size (px)
Citation preview
On the number of matroids
Nikhil Bansal (TU Eindhoven)Rudi Pendavingh (TU Eindhoven)Jorn van der Pol (TU Eindhoven)
MatroidsMatroid (U,C): U = Universe [n], C: collection of independent sets(i) Subset closed: I independent, then also .(ii) Exchange: |I|>|I’| then some s.t also independent. How does a typical matroid look ? Can we generate them randomly?
How many matroids m(n) on n elements? Clearly, m(n) Knuth’74: m(n) (explicit construction of a class called sparse paving matroids)
i.e. log log m(n) [n – 3/2 log n – O(1), n]
Narrowing the gap
Why bother about this tiny 3/2 log n gap?
log log scale a bit deceptive.x vs.
Conjecture: Most matroids are sparse paving (various versions)Knuth’s bound perhaps close to optimal
Often counting -> Sampling and generating matroids. m(n)
22𝑛Better bound
Known resultsKnuth 74
Easy Upper bound:
Pf: Any rank r matroid is specified by its bases (max. indep. sets)Number of rank r matroids m(n,r) .So,
m(n) (n+1) (can just focus on rank r=n/2)Piff 73: ]
Our Result
Thm: log log m(n) Knuth’s lower bound + 1+o(1) .(Piff had ½ log n gap)
Knuth 74: m
We show: m
Need only the most basic matroid facts.Main Tool: Bounding number of stable sets in a graph.
Outline
• Knuth’s lower bound construction• Counting stable sets• The final upper bound
Knuth’s Lower boundMatroid of rank r can be specified by r-sets that are non-bases.
Johnson Graph: J(n,r) V: r-subsets of [n] |V|=.Edge (u,v): if
Fact: If non-bases form a stable set in J(n,r), then get a matroid.
These are called sparse paving matroids.(various nice properties)
Knuth’s boundSparse Paving Matroids : precisely the stable sets of J(n,r).
For graph G: = size of max stable set. i(G) = # stable sets. Note: .
J(n,r) is a regular graph of degree d = for .So,
Knuth: Proof: Color vertex by j if Gives proper n-coloring.
Rest of the talk
Goal: Show log log m(n) Knuth’s lower bound + 1+o(1)
(Necessary) first step: Show this for sparse paving matroids log log s(n) Knuth’s lower bound + 1+o(1)
( same as bounding i(G) for J(n,r))
The ideas developed there will be useful for bounding m(n).
Bounding s(n)Claim: Max stable set in J(n,n/2) (2/n) N N = # of vertices
Fact: If is smallest eigenvalue of adj. matrix of a d-regular graph. Then, (proof later)
Johnson graphs: for J(n/n/2) So,
Naïve bound: i(G) + + … + ≈ Recall, knuth Lower’s bound: Niavely: i(J(n,n/2)) (note: base of exponent)
Better BoundRefined bound: i(J(n,n/2)) Morally: All independent sets are subsets of few large independent sets.
Examples: n-Hypercube verticesNaïve bound on i(G) =
Right answer: [Saphozhenko’83] (1+o(1) Entropy Method [Kahn’01]: Any d-regular bipartite graph Tight: Disjoint copies of (n/2d copies) Holds even for general graphs [Zhao’10]
Our Result
Thm: In any d-regular graph G with min eigenvalue i(G)
Idea: Encode an independent set using few bits of information.
Eg: Bipartite graphs: Our bound:
Our approach closest to Alon, Balogh, Morris, Samotij [arxiv’12] (their bound not useful for our purposes)
This encoding idea is later used to encode matroids.
Rest of the talk
Encoding for independent sets.Encoding for Matroids.
A useful lemma
G: d-regular with min eigenvalue . For any vertex subset A.
2 Proof: Split Corollary:
Corollary: If |A| + N, then G[A] has a vertex of degree (For random set A of size , expected degree
A
Encoding a stable set
Associate to an independent set I of G the pair of vertices (S,A), s.t.
1) 2) |A| 3) A is completely determined by S.
I can be uniquely specified by (S, ).
Key Point: A is completely determined by S.
Number of possibilities for I = (gives the result)
S
G
I
A
Encoding a stable set
Input: Independent set I.
Initialize: A = V and S = While |A| > Let v = largest degree vertex in G[A] (ties in lex order) If v in I, add to S and set Else discard v and set A = A\{v}
.
Encoding a stable set
Input: Independent set I.
Initialize: A = V and S = While |A| > Let v = largest degree vertex in G[A] (ties in lex order) If v in I, add to S and set Else discard v and set A = A\{v}
.
Encoding a stable set
Input: Independent set I.
Initialize: A = V and S = While |A| > Let v = largest degree vertex in G[A] (ties in lex order) If v in I, add to S and set Else discard v and set A = A\{v}
.
Encoding a stable set
Input: Independent set I.
Initialize: A = V and S = While |A| > Let v = largest degree vertex in G[A] (ties in lex order) If v in I, add to S and set Else discard v and set A = A\{v}
Observe: S completely determines A.
Encoding a stable set
Claim: Pf: Alg in phase j if ]
A vertex in phase j has at least j neighbors in G[A].Must pick vertices in S. Sum over j=d,…1.
Phases: d 12d-1 …
Encoding Matroids
Matroid can be specified by listing r-sets that are non-bases.
Want a more compact representation (fewer bits).
Idea: r-set Y is dependent iff some X s.t. || > rk(X)(i.e. X acts as a witness that Y contains a dependency).
E.g. X=Y trivially works. But not very efficient.
Want small witness set { (X,rk(X)) } that works for all Y.
Key Lemma: For a dependent r-set X, we can associate sets that are witnesses for all non-bases Y in .
If rank(X) < r-1. Witness = (X,rk(X))
Key Lemma: For a dependent r-set X, we can associate sets that are witnesses for all non-bases Y in .
If rank(X) = r-1. Then X has a unique circuit C. Witness = (Cl(X), C) Cl(X) : closure all z s.t. rank(X U z) = rank(X)
Proof: (as Y=X-x+y)
Case 1: If rk(X+y) = r-1, then = |Y|> rk(Cl(X))
Case 2: rk(X-x) r-2 < |X-x| So X-x contains a circuit C’. But C’=C by uniqueness. So (as Y=X-x+y). Hence || = |C| > rk(C)
Finish up
Given a matroid, let K = set of non-bases.
Apply stable set procedure to K obtain (S, A) with 1) S and A small as before, S determined by A.
Encoding: {witness of } for each List 1) Witness for all non-bases in 2) List of remaining non-bases.
Questions
Would be nice to reduce the gap to o(1).
The reason for +1+o(1) gapDo not understand the size of max. stable set in J(n,n/2) N/n (explicit construction) vs. 2N/n (eigenvalue methods)
Studied a lot in coding. Simulations suggest closer to N/n
Perhaps a new method for certifying that would also bound m(n).
Thank You
Narrowing the gap
Why bother about this tiny 3/2 log n gap?
log log scale a bit deceptive.x vs.
Conjectures (various quantitative versions): Most matroids are sparse paving. s(n): sparse paving matroids
1) m_n/s_n \rightarrow 12) log log m_n = log log s_n + o(1)3) log log m_n = log log s_n + O(log log n)
Perhaps counting -> Sampling and generating matroids.
Encoding Matroids
If rank(X) = r-1. Then X has a unique circuit C.Witness = (Cl(X), C) Cl(X) : closure all z s.t. rank(X U z) = rank(X)
Proof this witness works: (as Y=X-x+y)
Case 1: rk(X+y) = r-1, but then then
Case 2: rk(X-x) r-2 < |X-x| So X-x contains a circuit C’. But then C=C’ by uniqueness.So Y=X-x+y contains C.
Finish up
Given a matroid, let K = set of non-bases.
Apply stable set procedure to K obtain (S, A) with 1) S and A small as before, S determined by A.
For a non-basis X, we have a witness for non-bases in the neighborhood of X.Encoding: (X, witness of X) for each List
Knuth’s Lower boundMatroid of rank r can be specified by r-sets that are non-bases.
Johnson Graph: J(n,r) V: r-subsets of [n] |V|=.Edge (u,v): if
Claim: If non-bases form a stable set in J(n,r), then get a matroid.These are called sparse paving matroids.
Proof: Base Exchange: M is matroid iff for every two bases B,B’ and e B\B’ there exists f in B’ such that B-e+f is base.
B … … not a baseand not a base
B B’