Additive Combinatorics
and its Applications in
Theoretical CS
By Shachar Lovett
Chapter 2: Set addition, Sections 2.1-2.3, pp. 3-8.
Presented by Tomer Bincovich
Set addition
β’ πΊ an abelian group (think about πΊ = π½π ).
β’ π΄ β πΊ.
β’ The sumset of π΄ is
2π΄ = π΄ + π΄ = π + πβ² π, πβ² β π΄
β’ Always 2π΄ β₯ π΄ .
β’ When does equality hold?
When does 2π΄ = |π΄|?
β’ Equality holds if π΄ is empty, a subgroup of πΊ or a coset of a subgroup.
β’ For the other direction:
β’ If π΄ β β
, we can assume w.l.o.g. 0 β π΄ by shifting.
β’ Then π΄ β 2π΄, and since 2π΄ = π΄ we have that 2π΄ = π΄.
β’ π΄ is a nonempty finite subset that is closed under addition, hence is a
subgroup.
Planned topics
β’ Ruzsa calculus
β’ The span of sets of small doubling
β’ The growth of sets of small doubling
Ruzsa calculus
β’ A set of basic inequalities between sizes of sets and their sumsets.
β’ For π΄, π΅ β πΊ, define:
β’ Sumset: π΄ + π΅ = π + π π β π΄, π β π΅
β’ Difference set: π΄ β π΅ = π β π π β π΄, π β π΅
Claim 2.1 (Ruzsa triangle inequality):
π΄ π΅βπΆ β€ π΄βπ΅ π΄βπΆ
Proof of Claim 2.1
β’ Claim 2.1 (Ruzsa triangle inequality):
π΄ π΅βπΆ β€ π΄βπ΅ π΄βπΆ
β’ Define a map π: π΄ × π΅ β πΆ β π΄ β π΅ × π΄ β πΆ :
for any π₯ β π΅ β πΆ fix π β π΅, π β πΆ s.t. π₯ = π β π, and define
π π, π₯ = π β π, π β π .
β’ π is injective, hence π΄ π΅ β πΆ β€ π΄ β π΅ π΄ β πΆ .
The Ruzsa distance
π΄βπ΅
π π΄, π΅ = log 1 2 1
π΄
π΅
β’ Not formally a distance function. Why?
2
β’ Claim 2.3: The Ruzsa distance is symmetric and obeys the triangle
inequality.
Proof of Claim 2.3
π΄βπ΅
π π΄, π΅ = log 1 2 1
π΄
π΅
β’ Symmetry: since π΅ β π΄ = π΄ β π΅ .
β’ Moreover, π π΄, πΆ β€ π π΄, π΅ + π π΅, πΆ is equivalent to
π΄βπΆ
π΄βπ΅
π΅βπΆ
log 1 2 1 2 β€ log 1 2 1 2 + log 1 2 1
π΄
πΆ
π΄
π΅
π΅
πΆ
π΄βπΆ
π΄1 2πΆ1
2
π΄βπ΅
β€
π΄1 2π΅1
2
π΅βπΆ
π΅1 2πΆ1
π΅ π΄βπΆ β€ π΅βπ΄ π΅βπΆ
Which follows from Claim 2.1.
2
2
2
Corollary 2.4
If π΄ β π΅ β€ πΎ π΄
1 2
π΅
1 2
then π΄ β π΄ β€ πΎ 2 π΄ .
β’ For π΅ = βπ΄ we get that if π΄ + π΄ β€ πΎ π΄ then π΄ β π΄ β€ πΎ 2 π΄ .
Proof of Corollary 2.4
If π΄ β π΅ β€ πΎ π΄
1 2
π΄βπ΄
= ππ
π΄
π΅
π΄,π΄
1 2
β€π
then π΄ β π΄ β€ πΎ 2 π΄ .
π π΄,π΅ +π π΅,π΄
=
π΄βπ΅
π΄1 2π΅1
π΄βπ΅
π π΄, π΅ = log 1 2 1
π΄
π΅
2
2
2
β€ πΎ2
The doubling constant
β’ The doubling constant of π΄ is πΎ =
π΄+π΄
π΄
.
β’ We saw that πΎ = 1 corresponds to subgroups.
β’ Can we use πΎ to say something about the size of the smallest
subgroup containing π΄? (or, in the case of πΊ = π½π , the size of the
span of π΄)
Lemma 2.5 (Laba)
If π΄ β π΄ <
3
2
π΄ then π΄ β π΄ is a subgroup.
β’ The constant 3/2 is tight: take π΄ = 0,1 β β€.
π΄ β π΄ = β1,0,1 is not a subgroup.
Proof of Lemma 2.5
β’ We will show that for any π₯ β π΄ β π΄, π΄ β© π΄ + π₯ > π΄ /2.
β’ This implies that for any π₯, π¦ β π΄ β π΄, π΄ + π₯ β© π΄ + π¦ β β
:
β’ Denoting π΄π₯ = π΄ β© π΄ + π₯ , by the inclusion exclusion principle
π΄+π₯ β© π΄+π¦
β₯ π΄π₯ β© π΄π¦ = π΄π₯ + π΄ π¦ β π΄π₯ βͺ A π¦
> π΄ /2 + π΄ /2 β π΄ = 0
β’ There are π1 , π2 β π΄ s.t. π1 + π₯ = π2 + π¦, thus π₯ β π¦ = π2 β π1
β π΄ β π΄.
β’ π΄ β π΄ is closed under taking difference, hence must be a subgroup.
Proof of Lemma 2.5 cont.
β’ We will show that for any π₯ β π΄ β π΄, π΄ β© π΄ + π₯ > π΄ /2.
β’ Let π₯ = π β πβ² β π΄ β π΄. Then π΄ β© π΄ + π₯ = π΄ β π β© π΄ β πβ² .
β’ Similarly to before:
π΄ β π β© π΄ β πβ²
= π΄ β π + π΄ β πβ² β π΄ β π βͺ π΄ β πβ²
β₯ π΄ + π΄ β π΄ β π΄ > |π΄|/2
As needed.
Lemma 2.6 (Freiman)
Let π΄ β βπ with π΄ + π΄ β€ πΎ π΄ . Then π΄ lies in an affine subspace of
dimension at most 2πΎ β 1.
Proof of Lemma 2.6
β’ We will prove that if π΄ has affine dimension π then
π+1
π΄+π΄ β₯ π+1 π΄ β
2
β’ Thus π + 1 π΄ β
π+1
2
β€ π΄ + π΄ β€ πΎ π΄ , and since π΄ β₯ π,
π+1
π+1
π+1βπΎ π β€ π+1βπΎ π΄ β€
=
π
2
2
β’ Hence πΎ β₯
π+1
,
2
or π β€ 2πΎ β 1.
Proof of Lemma 2.6 cont.
β’ We prove by induction on π΄ that if π΄ has affine dimension π then
π+1
π΄+π΄ β₯ π+1 π΄ β
2
β’ If π΄ = 1 then π΄ + π΄ = 1, π = 0 and the claim follows.
π+πβ²
2
β’ Assume π΄ > 1. Let π π΄ =
π, πβ² β π΄ .
Clearly π π΄ = π΄ + π΄ .
β’ Let πΆ(π΄) be the convex hull of π΄, which is a π-dimensional polytope
by assumption. Its vertices are the points in π΄ that cannot be
obtained as a convex combination of the other points.
Inductive proof, case (1)
β’ Fix a vertex πβ β π΄ of πΆ π΄ , and let π΄β² = π΄ β πβ . We have two cases:
π+πβ
2
β²
1) The affine dimension of π΄ is π β 1. Then the mid-points
for all
π β π΄ are outside πΆ(π΄β² ).
π
π
β²
β²
π π΄ β₯ π΄ + π π΄ β₯ π΄ +π π΄ β
= π+1 π΄ βπβ
2
2
π+1
= π+1 π΄ β
2
?
π+1
π΄+π΄ β₯ π+1 π΄ β
2
Inductive proof, case (2)
β’ Fix a vertex πβ β π΄ of πΆ π΄ , and let π΄β² = π΄ β πβ . We have two cases:
2) The affine dimension of π΄β² is π. Let π1 , β¦ , ππ‘ be the neighboring vertices
to πβ in πΆ π΄ (two vertices are neighbors if the segment connecting
them is a one-dim. face of πΆ π΄ ). Note that π‘ β₯ π since πΆ π΄ is π-dim.
πβ +ππ
β
The points π and
for 1 β€ π β€ π‘ are mid-points outside πΆ π΄β² .
2
π+1
β²
β²
π π΄ β₯ π‘+1 + π π΄ β₯π+1+ π+1 π΄ β
2
π+1
= π+1 π΄ β
?
π+1
2
π΄+π΄ β₯ π+1 π΄ β
2
Lemma 2.6 β tightness
Let π΄ β βπ with π΄ + π΄ β€ πΎ π΄ . Then π΄ lies in an affine subspace of
dimension at most 2πΎ β 1.
β’ The dimension is tight up to lower order terms. Take π΄ = π£1 , β¦ , π£2πΎ
a set of linearly independent vectors, then π΄ + π΄ = 2πΎ
+ 2πΎ
2
π΄+π΄
1
= πΎ(2πΎ + 1) and
=πΎ+ .
π΄
2
Theorem 2.7 (Ruzsa)
Let πΊ be an Abelian group of torsion π, π΄ β πΊ with π΄ + π΄ β€ πΎ π΄ .
Then there exists a subgroup π» < πΊ, π» β€
4
2
πΎ
πΎ π
π΄ s.t. π΄ β π».
β’ A group has torsion π β₯ 1 if π β π = 0 for all π β πΊ.
Example
β’ πΊ = π½ππ has torsion π = π. Let π, π β π½ππ two subspaces with
π β© π = 0 , and set π΄ = π + {π£1 , β¦ , π£2πΎ } where π£1 , β¦ , π£2πΎ β π are
linearly independent.
β’ π΄ = π β 2πΎ. Since π΄ + π΄ = π + π£π + π£π 1 β€ π β€ π β€ 2πΎ ,
π΄+π΄
1
π΄ + π΄ = π β πΎ 2πΎ + 1 and
= πΎ + β πΎ.
π΄
2
β’ However, the size of the minimal subspace containing π΄ is
2πΎ
π
π2πΎ π =
π΄
2πΎ
β’ Thus an exponential dependency on πΎ is unavoidable.
Conjecture 2.8 (Ruzsa)
There exists an absolute constant πΆ β₯ 2 s.t. for any Abelian group πΊ of
torsion π, and any π΄ β πΊ with π΄ + π΄ β€ πΎ|π΄|, the subgroup generated
by π΄ has order β€ π πΆπΎ π΄ .
β’ Was established with πΆ = 2 for π = 2 and then extended for prime π:
β’ Theorem 2.9:
Let π be a prime, π΄ β π½ππ with π΄ + π΄ β€ πΎ π΄ . Then there exists a
subspace π» β π½ππ s.t. π΄ β π» and π» β€
π2πΎ
2πΎβ1
π΄.
Theorem 2.10
If 2π΄ β€ πΎ π΄ then 2π΄ β 2π΄ β€ πΎ 4 π΄ .
β’ Used to prove Theorem 2.7.
β’ We will prove a more general result later today.
Proof of Theorem 2.7 - Sketch
β’ Let π΄ β πΊ with 2π΄ β€ πΎ π΄ . We can assume 0 β π΄ by possibly
replacing π΄ with π΄ β π for some π β π΄.
β’ Let π΅ = π1 , β¦ , ππ β 2π΄ β π΄ be a maximal collection of elements
s.t. ππ β π΄ are all disjoint (βRuzsa coveringβ).
β’ π΄ has small doubling, thus Theorem 2.10 implies that π΅ is bounded.
β’ We will show that βπ΄ β π΄ β β β 1 π΅ + π΄ β π΄ for all β β₯ 1.
β’ Together the theorem follows.
Proof of Theorem 2.7 cont.
β’ Since ππ β π΄ β 2π΄ β 2π΄,
2π΄ β 2π΄
πβ€
β€ πΎ4
π΄
β’ Therefore π΅ β€ πΎ 4 .
2π΄ β€ πΎ π΄ β 2π΄ β 2π΄ β€ πΎ 4 π΄
βπ΄ β π΄ β β β 1 π΅ + π΄ β π΄
β’ β = 1 is trivial.
β’ For β = 2, we need to show 2π΄ β π΄ β π΅ + π΄ β π΄.
β’ Take π₯ β 2π΄ β π΄, by construction there exists π β π΅ s.t.
π₯ β π΄ β© π β π΄ β β
, i.e. π₯ β π = π β πβ² for some π, πβ² β π΄.
β’ Hence π₯ = π + π β πβ² β π΅ + π΄ β π΄.
β’ By induction on β,
βπ΄ β π΄ = π΄ + β β 1 π΄ β π΄ β π΄ + β β 2 π΅ + π΄ β π΄
β ββ2 π΅+π΅+π΄βπ΄ = ββ1 π΅+π΄βπ΄
Concluding the proof
βπ΄ β π΄ β β β 1 π΅ + π΄ β π΄
β’ Let π΄ be the subgroup spanned by π΄, and similarly for π΅.
π΄ =
βπ΄ β
ββ₯1
βπ΄ β π΄ β
ββ₯1
ββ1 π΅+π΄βπ΄ = π΅ +π΄βπ΄
ββ₯1
β’ Hence, using Corollary 2.4 (which implies π΄ β π΄ β€ πΎ 2 π΄ ),
π΄ β€ π΅ β π΄ β π΄ β€ π΅ β πΎ2 π΄
β’ We conclude by bounding π΅ . As πΊ has torsion π and we saw that
4
4
πΎ
π΅ β€ πΎ we have π΅ β€ π .
β’ Finally, π΄ β€
4
2
πΎ
πΎ π
π΄.
Iterated sumsets
βπ΄ = π1 + β― + πβ π1 , β¦ , πβ β π΄
βπ΄ β ππ΄ = π1 + β― + πβ β πβ+1 β β― β πβ+π π1 , β¦ , πβ+π β π΄
β’ Theorem 2.11 (Plünneke-Ruzsa): If π΄ = π΅ and π΄ + π΅ β€ πΎ π΄
then βπ΄ β ππ΄ β€ πΎ β+π π΄ .
β’ For π΅ = π΄ or π΅ = βπ΄ we obtain the following:
β’ Corollary 2.12: If π΄ + π΄ β€ πΎ π΄ or π΄ β π΄ β€ πΎ π΄
then βπ΄ β ππ΄ β€ πΎ β+π π΄ .
Lemma 2.13
Let π΄, π΅ β πΊ with π΄ = π΅ and π΄ + π΅ β€ πΎ π΄ . Let π΅0 β π΅ a
π΄+π΅0
nonempty set minimizing the ratio πΎ0 =
. Then for any πΆ β πΊ,
π΅0
π΄ + π΅0 + πΆ β€ πΎ0 π΅0 + πΆ
β’ Notice that πΎ0 β€ πΎ.
Proof of Theorem 2.11
β’
β’
β’
β’
Let π΅0 β π΅ as in Lemma 2.13. βπΆ π΄ + π΅0 + πΆ β€ πΎ0 π΅0 + πΆ
We will prove by induction on β that π΅0 + βπ΄ β€ πΎ0β π΅0 β€ πΎ β π΅0 .
β = 0 is easy: π΅0 + 0π΄ = 1 β π΅0 .
For β > 0:
π΅0 + βπ΄ = π΄ + π΅0 + (β β 1)π΄ β€ πΎ0 π΅0 + β β 1 π΄
β€ πΎ0 β πΎ0ββ1 π΅0 = πΎ0β π΅0
β’ By the Ruzsa triangle inequality (Claim 2.1), applied to βπ΅0 , βπ΄, ππ΄:
βπ΅0 βπ΄ β ππ΄ β€ π΅0 + βπ΄ π΅0 + ππ΄ β€ πΎ β+π π΅0 2
π΄ π΅βπΆ β€ π΄βπ΅ π΄βπΆ
β’ Hence
βπ΄ β ππ΄ β€ πΎ β+π π΅0 β€ πΎ β+π π΄
Lemma 2.13 (Reminder)
Let π΄, π΅ β πΊ with π΄ = π΅ and π΄ + π΅ β€ πΎ π΄ . Let π΅0 β π΅ a
π΄+π΅0
nonempty set minimizing the ratio πΎ0 =
. Then for any πΆ β πΊ,
π΅0
π΄ + π΅0 + πΆ β€ πΎ0 π΅0 + πΆ
Proof of Lemma 2.13
β’ Observe that by minimality of πΎ0 , for any π΅β² β π΅ we have that
π΄ + π΅β² β₯ πΎ0 π΅β² .
β’ The proof is by induction on πΆ .
β’ If πΆ = π₯ ,
π΄ + π΅0 + π₯ = π΄ + π΅0 = πΎ0 π΅0 = πΎ0 π΅0 + π₯
β’ If πΆ > 1, write πΆ = πΆ β² βͺ π₯ .
β’ Define π΅β² β π΅0 as π΅β² = π β π΅0 π΄ + π + π₯ β π΄ + π΅0 + πΆ β² .
β’ We can write
π΄ + π΅0 + πΆ = π΄ + π΅0 + πΆ β² βͺ π΄ + π΅0 + π₯ β π΄ + π΅β² + π₯
Proof of Lemma 2.13 cont.
π΄ + π΅0 + πΆ = π΄ + π΅0 + πΆ β² βͺ
π΄ + π΅0 + π₯ β π΄ + π΅β² + π₯
π΄ + π΅0 + πΆ β€ π΄ + π΅0 + πΆ β² + π΄ + π΅0 + π₯ β π΄ + π΅β² + π₯
= π΄ + π΅0 + πΆ β² + π΄ + π΅0 + π₯ β π΄ + π΅β² + π₯
β€ πΎ0 π΅0 + πΆ β² + π΄ + π΅0 β π΄ + π΅β² βπ΅β² β π΅
β² β₯ πΎ π΅β²
β²
β²
π΄
+
π΅
0
β€ πΎ0 π΅0 + πΆ + πΎ0 π΅0 β πΎ0 π΅
= πΎ0 π΅0 + πΆ β² + π΅0 β π΅β²
β’ It remains to show that:
π΅0 + πΆ β² + π΅0 β π΅β² β€ π΅0 + πΆ
Concluding the proof
π΅β² = π β π΅0 π΄ + π + π₯ β π΄ + π΅0 + πΆ β²
β’ It remains to show that:
π΅0 + πΆ β² + π΅0 β π΅β² β€ π΅0 + πΆ
β’ Define π΅β²β² = π β π΅0 π + π₯ β π΅0 + πΆ β² . Note that π΅β²β² β π΅β² .
β’ We decompose π΅0 + πΆ as a disjoint union:
π΅0 + πΆ = π΅0 + πΆ β² βͺ π΅0 + π₯ β π΅β²β² + π₯
β’ Thus
π΅0 + πΆ = π΅0 + πΆ β² + π΅0 β π΅β²β² β₯ π΅0 + πΆ β² + π΅0 β π΅β²
Which is what we needed to show.
© Copyright 2026 Paperzz