Cuckoo Hashing

Statistical Set Addition &
The Polynomial Freiman-Rusza Conjecture
Additive Combinatorics and its Applications in Theoretical CS
Sections 2.4, 2.6
Shachar Lovett
Presented by Guy Shalev
A Short Reminder
ο‚—
We discussed sets 𝐴 βŠ† 𝐺 with small doubling.
ο‚—
We bounded the size of subspaces containing such 𝐴
β—¦ Growth-factor was exponential in the doubling constant, 𝐾
β—¦ For example, we saw that βˆƒπ» < 𝐺, 𝐻 ≀
ο‚—
πŸ’
2
𝑲
𝐾 𝒓
𝐴 s.t. 𝐴 βŠ† 𝐻
We bounded the size of sets of the form ℓ𝐴 βˆ’ π‘šπ΄
β—¦ ℓ𝐴 βˆ’ π‘šπ΄ ≀ 𝐾 𝑙+π‘š 𝐴
Today’s sections
ο‚—
(2.4) Statistical Set Addition
β—¦ The BSG theorem + lemma from graph theory.
ο‚—
(2.6) Polynomial Freiman-Rusza conjecture
β—¦ An important conjecture explaining the structure of a set with
small doubling.
β—¦ 5 equivalent conjectures over 𝔽𝑛2
β—¦ Versions for higher torsion groups
3
Statistical set addition – Motivation (1)
ο‚—
ο‚—
𝐴 + 𝐴 is much larger than 𝐴
But many pairs π‘Ž1 + π‘Ž2 lie in a small set (of size 𝐾|𝐴|)
ο‚—
For example: In 𝔽𝑛2 , take 𝐴 = 𝑉 βˆͺ 𝑒1 , 𝑒2 … , 𝑒2𝑑 , where 𝑉 is a
subspace of dimension 𝑑, and 𝑒𝑖 are random vectors.
𝐴 = 2𝑑+1
𝐴 + 𝐴 = 𝑉 βˆͺ 𝑉 + 𝑒1 , 𝑒2 … , 𝑒2𝑑 + 𝑒𝑖 + 𝑒𝑗
ο‚—
ο‚—
ο‚—
ο‚—
𝑑 2
𝐴+𝐴 β‰ˆ 2
β‰ˆ 𝐴2
1
But for at least of the pairs π‘Ž1 , π‘Ž2 , we have π‘Ž1 + π‘Ž2 ∈ 𝑉
4
4
Statistical set addition – Motivation (2)
ο‚—
ο‚—
ο‚—
𝐴 = 𝑉 βˆͺ 𝑒1 , 𝑒2 … , 𝑒2𝑑
In this example, 𝐴 has large-doubling, but there is a large subset
(𝑉 βŠ† 𝐴) with small-doubling.
This is always the case. If a significant part of 𝐴 × π΄ β€œlands” in
a set of size 𝐾|𝐴|, then there is some large 𝐴′ βŠ† 𝐴 with smalldoubling.
β—¦ Another point of view – there is a β€œsimple explanation” for such an 𝐴
β—¦ The BSG theorem is a generalization of this idea
5
BSG Theorem
ο‚— BSG Theorem: by Balog, Szemeredi & Gowers
1. Let 𝐴, 𝐡 βŠ† 𝐺, s.t. 𝐴 = 𝐡 = 𝑁
2. There exists 𝐢 βŠ† 𝐺 s.t. 𝐢 = 𝑐𝑁, and Pr [π‘Ž + 𝑏 ∈ 𝐢] β‰₯ πœ–
π‘Žβˆˆπ΄,π‘βˆˆπ΅
β—¦ Then there are subsets 𝐴 βŠ† 𝐴, 𝐡 βŠ† 𝐡 s.t. 𝐴 , 𝐡 β‰₯
β€²
β—¦ And
ο‚—
𝐴′
+ 𝐡′
≀
β€²
β€²
212 𝑐 3
𝑁
πœ–5
β€²
β€²
πœ–2
𝑁
16
A
β€²
β€²
a
β€²
By theorem 2.11, 𝐴 + 𝐴 , 𝐴 βˆ’ 𝐴 ≀ π‘π‘œπ‘™π‘¦
1
𝑐, βˆ—
πœ–C
a+b
A+B
𝑁
b
B
6
The plan
 We
will state a lemma in graph theory
 Easily prove BSG using the lemma
 Work hard to prove the lemma
 Take a break before the second part
7
Lemma (by Sudakov)
ο‚—
The Lemma:
1. Let 𝐻 = (𝐴, 𝐡, 𝐸) be a bipartite graph
2. 𝐴 = 𝐡 = 𝑁 , 𝐸 = πœ–π‘ 2
β—¦ Then there are subsets
𝐴′
βŠ†
𝐴, 𝐡′
β€œAs many as we could expect”
βŠ† 𝐡 s.t.
𝐴′
,
𝐡′
πœ–2
β‰₯ 𝑁
16
βˆ’12 5 2
β—¦ Such that for any π‘Ž ∈ 𝐴′ , 𝑏 ∈ 𝐡′ there are at least 2
length 3 from π‘Ž to 𝑏.
a
πœ– 𝑁 paths of
𝑏
b
π‘Ž
8
Proof of BSG using the lemma (1/3)
We have sets 𝐴, 𝐡, 𝐢 βŠ† 𝐺 as given in the theorem.
ο‚— Build the β€œnatural” bipartite graph 𝐻:
ο‚—
β—¦ The vertex sets are 𝐴, 𝐡
β—¦ 𝐸 = π‘Ž, 𝑏 π‘Ž + 𝑏 ∈ 𝐢 β‡’ 𝐸 = πœ–π‘ 2
ο‚—
Obviously, the conditions of the lemma hold, so we get
vertex sets 𝐴′, 𝐡′ as stated, and we have β€œmany paths” from
any π‘Ž ∈ 𝐴′ to 𝑏 ∈ 𝐡′
9
Proof of BSG using the lemma (2/3)
For any π‘Ž ∈ 𝐴′ , 𝑏 ∈ 𝐡′ , and a specific path (π‘Ž, 𝑏, π‘Ž, 𝑏) we get
𝑦 =π‘Ž+𝑏 = π‘Ž+𝑏 βˆ’ π‘Ž+𝑏 + π‘Ž+𝑏
ο‚— Denote
ο‚—
β—¦ π‘₯1 = π‘Ž + 𝑏 , π‘₯2 = π‘Ž + 𝑏 , π‘₯3 = π‘Ž + 𝑏
From the definition of 𝐸, we know π‘₯1 , π‘₯2 , π‘₯3 ∈ 𝐢
ο‚— Any element 𝑦 ∈ 𝐴′ + 𝐡′ can be represented as
𝑦 = π‘₯1 βˆ’ π‘₯2 + π‘₯3 in at least 2βˆ’12 πœ– 5 𝑁 2 ways.
ο‚— 𝐢 = 𝑐𝑁 , so there are 𝑐𝑁 3 triples π‘₯1 , π‘₯2 , π‘₯3 ∈ 𝐢
ο‚—
10
Proof of BSG using the lemma (3/3)
Any element 𝑦 ∈ 𝐴′ + 𝐡′ can be represented as
𝑦 = π‘₯1 βˆ’ π‘₯2 + π‘₯3 in at least 2βˆ’12 πœ– 5 𝑁 2 ways.
ο‚— There are 𝑐𝑁 3 triples π‘₯1 , π‘₯2 , π‘₯3 ∈ 𝐢
ο‚—
Splitting the triples between elements in 𝐴′ + 𝐡′ we get:
3𝑁3
12 3
𝑐
2
𝑐
β€²
β€²
𝐴 + 𝐡 ≀ βˆ’12 5 2 = 5 𝑁
2 πœ– 𝑁
πœ–
11
Half way there!
 We
will state a lemma in graph theory
 Easily prove BSG using the lemma
 Work hard to prove the lemma
 Take a break before the second part
12
High-level proof of lemma (1)
a1
a
a2
b1
a
b2
a1
a
a2
b1
a
b2
a1
a
a2
b1
a
b2
a3
a4
a’
a5
a6
b3
b4
a’
b5
b6
a3
a4
a’
a5
a6
b3
b4
a’
a3
a4
a’
a5
a6
b3
b4
a’
Define good pairs such as (𝑏1 , 𝑏2 ) and bad pairs such as (𝑏3 , 𝑏4 )
Define a good neighbor for vertex π‘Ž ∈ 𝐴:
𝑏 ∈ Ξ“ π‘Ž forms few bad pairs inside Ξ“ π‘Ž
For a random π‘Ž, we prove it has many good neighbors
Take specific π‘Ž with many good neighbors, and fix its good neighbors as 𝐡′
Define 𝐴′ as all π‘Žβ€™s with many neighbors in 𝐡′
Show there are many paths of length 3 from π‘Ž ∈ 𝐴′to 𝑏 ∈ 𝐡′
13
High-level proof of lemma
a1
a
a2
b1
a
b2
a1
a
a2
b1
a
b2
a3
a4
a’
a5
a6
b3
b4
a’
a3
a4
a’
a5
a6
b3
b4
a’
Define good pairs such as (𝑏1 , 𝑏2 ) and bad pairs such as (𝑏3 , 𝑏4 )
Define a good neighbor for vertex π‘Ž ∈ 𝐴:
𝑏 ∈ Ξ“ π‘Ž forms few bad pairs inside Ξ“ π‘Ž
For a random π‘Ž, we prove it has many good neighbors
Take specific π‘Ž with many good neighbors, and fix its good neighbors as 𝐡′
Define 𝐴′ as all π‘Žβ€™s with many neighbors in 𝐡′
Show there are many paths of length 3 from π‘Ž ∈ 𝐴′to 𝑏 ∈ 𝐡′
14
Proof of the lemma (1/6)
𝑏
a
ο‚—
The Lemma:
b
1. Let 𝐻 = (𝐴, 𝐡, 𝐸) be a bipartite graph
π‘Ž
2. 𝐴 = 𝐡 = 𝑁 , 𝐸 = πœ–π‘ 2
β—¦ We want large subsets 𝐴′ , 𝐡′ s.t. for any π‘Ž ∈ 𝐴′ , 𝑏 ∈ 𝐡′ there are many
paths of length 3 from π‘Ž to 𝑏.
ο‚—
ο‚—
The average degree of a vertex is πœ–π‘. We start by removing
πœ–
vertices from 𝐡 with degree smaller than 2 𝑁
We deleted less than
πœ– 2
𝑁
2
edges, left with at least
πœ– 2
𝑁
2
edges
15
Proof of the lemma (2/6)
ο‚—
Define a bad pair 𝑏1 , 𝑏2 ∈ 𝐡 if they have less than
πœ–3
𝑁
128
common
neighbors in 𝐴
ο‚— For 𝑣 ∈ 𝐴, let 𝐡𝑃(𝑣) denote the number of bad pairs which belong
to Ξ“ 𝑣
ο‚— For any bad pair 𝑏1 , 𝑏2 ∈ 𝐡, by definition:
πœ–3
𝑣 ∈ 𝐴 𝑏1 , 𝑏2 ∈ Ξ“ 𝑣 ≀
𝑁
128
ο‚— So after β€œbucketing”, averaging over the vertices yields:
πœ–3
𝑁
3
β‹…
𝑁
πœ–
128
𝐸𝑣 𝐡𝑃(𝑣) ≀ 2
≀
𝑁2
𝑁
256
16
Proof of the lemma (3/6)
For 𝑣 ∈ 𝐴, let 𝐡 βŠ† Ξ“2 𝑣 be the neighbors 𝑏 ∈ Ξ“ 𝑣 which form a bad
πœ–
pair with at least 𝑁 other neighbors 𝑏′ ∈ Ξ“ 𝑣
(𝐡 = β€œbad
32
neighbors”)
ο‚— Let 𝐡𝑁(𝑣) = |𝐡|. For any 𝑣 ∈ 𝐴 :
ο‚—
πœ–2
𝐡𝑁(𝑣) β‹…
𝑁 ≀ 2 β‹… 𝐡𝑃(𝑣)
32
(Counting the bad pairs using the bad neighbors. Each pair is counted at most twice)
Taking expectation on both sides,
𝑬𝒗
𝑩𝑡(𝒗)
≀ 𝐸𝑣 𝐡𝑃(𝑣) β‹…
64
πœ–2𝑁
≀
πœ–
3
𝑁
256
2
64
β‹…
πœ–2𝑁
𝝐
=
𝑡
πŸ’
To conclude: we bounded the number of bad neighbors for an average 𝑣 ∈ 𝐴
17
Proof of the lemma (4/6)
ο‚—
So, for an β€œaverage” 𝑣 ∈ 𝐴,
β—¦ There are many neighbors (𝑬𝒗 π’…π’†π’ˆ(𝒗) β‰₯
𝝐
𝑡)
𝟐
β—¦ There are few bad neighbors (𝑬𝒗 𝑩𝑡(𝒗) ≀
𝝐
𝑡)
πŸ’
β—¦ So there are many good neighbors! Denote 𝐡′ = Ξ“(𝑣)\𝐡
◦𝑬
𝑩′
= 𝑬 π’…π’†π’ˆ βˆ’ 𝑬 𝑩𝑡 β‰₯
β—¦ Take 𝑣 ∈ 𝐴 where
𝐡′
β‰₯
𝝐
𝑡
πŸ’
πœ–
𝑁. Fix
4
this to be 𝑩′ .
18
Proof of the lemma (5/6)
ο‚—
So we have our 𝐡′, and 𝐡 β‰₯
β€²
πœ–
𝑁
4
πœ–2
Define 𝐴′ = a ∈ 𝐴 | |Ξ“ 𝑣 ∩ 𝐡′ | β‰₯ 𝑁
16
ο‚— Lets lower-bound |𝐴′ |:
ο‚—
β—¦ Intuition: If |𝐴′ | was small, 𝐸 𝐴, 𝐡′
𝐸 𝐴, 𝐡′
would have few edges (and it doesn’t)
2
𝟐
πœ–
𝝐
≀ 𝐴′ 𝐡′ + 𝐴 \ 𝐴′
𝑁 ≀ 𝑨′ 𝑡 +
π‘΅πŸ
16
πŸπŸ”
𝟐
πœ–
𝝐
𝐸 𝐴, 𝐡′ β‰₯ 𝑁 βˆ— 𝐡′ β‰₯ π‘΅πŸ
2
πŸ–
Minimal degree in 𝐡′
πœ–2
Combining these we get 𝐴′ β‰₯ 16 𝑁
19
Proof of the lemma (6/6)
β€²
πœ–2
πœ–2
πœ–3
𝑁 βˆ’
𝑁 βˆ—
𝑁 = 2βˆ’12 πœ– 5 𝑁 2
16
32
128
πœ–2
𝑁
16
ο‚—
We have 𝐴 , 𝐡′, with 𝐴 , 𝐡 β‰₯
ο‚—
Last step: show that for any π‘Ž ∈ 𝐴′ , 𝑏 ∈ 𝐡′ there are many
paths of length 3 from π‘Ž to 𝑏.
β€²
β€²
Fix π‘Ž, 𝑏. From 𝐴′ 𝑠 construction, π‘Ž has many neighbors 𝑏′ ∈ 𝐡′ .
2. Out of these neighbors, only few form a bad pair with 𝑏
3. For 𝑏′ ∈ 𝐡 β€² that don’t form a bad pair with 𝑏, there are many
common neighbors π‘Žβ€² ∈ 𝐴
4. So we have (many – few) * many paths π‘Ž, 𝑏 β€² , π‘Ž β€² , 𝑏 of length 3
1.
20
To conclude the section
 We
will state a lemma in graph theory
 Easily prove BSG using the lemma
 Work hard to prove the lemma
 Take a break before the second part
Questions?
21