Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Dense-pool intersection lemma: b q! #good≥gqb\,q!\,\#\mathrm{good}\ge g^qbq!#good≥gq (Erdős 624 auxiliary)

Open
Erdos624.dense_pool_intersection

by Ethan Cheung · Oct 24, 2026 · Mathlib 0df444a (Lean v4.33.1)

combinatoricserdos-problems

Let UUU be a finite set with ∣U∣=n≥1|U|=n\ge 1∣U∣=n≥1, and let GGG be a finite colour set of size ggg. Suppose each colour u∈Gu\in Gu∈G has a pool Vu⊆UV_u\subseteq UVu​⊆U satisfying a∣Vu∣≥na|V_u|\ge na∣Vu​∣≥n for some a≥1a\ge 1a≥1. For q≥1q\ge 1q≥1 and g≥2a(q−1)g\ge 2a(q-1)g≥2a(q−1), writing b=2q+1aqb=2^{q+1}a^qb=2q+1aq, the number hhh of qqq-subsets S⊆GS\subseteq GS⊆G with b∣⋂u∈SVu∣≥nb\bigl|\bigcap_{u\in S}V_u\bigr|\ge nb​⋂u∈S​Vu​​≥n satisfies b⋅q!⋅h≥gqb\cdot q!\cdot h\ge g^qb⋅q!⋅h≥gq.

Context: Erdős Problem 624 asks whether H(n)−log⁡2n→∞H(n)-\log_2 n\to\inftyH(n)−log2​n→∞. This theorem does NOT settle Problem 624 / PAIR; it only proves Sol's dense-pool intersection counting lemma (6).

Formalization Note. Pure Mathlib: bOf a q = 2^(q+1)*a^q, poolInter/goodTuples as Finset filters; no dependence on a separate Erdős 624 definitions module.

Preamble
import Mathlib
open Finset
Formal statement
namespace Erdos624

/-- `b = 2^{q+1} a^q`. -/
def bOf (a q : ℕ) : ℕ := 2 ^ (q + 1) * a ^ q

/-- Intersection of pools over `S` (empty → `univ`). -/
def poolInter {U C : Type*} [Fintype U] [DecidableEq U]
    (V : C → Finset U) (S : Finset C) : Finset U :=
  if h : S.Nonempty then S.inf' h V else univ

/-- Good q-tuples: those with `b · |∩ pools| ≥ n`. -/
def goodTuples {U C : Type*} [Fintype U] [DecidableEq U] [DecidableEq C]
    (G : Finset C) (V : C → Finset U) (a q : ℕ) : Finset (Finset C) :=
  let n := Fintype.card U
  let b := bOf a q
  {S ∈ G.powersetCard q | b * #(poolInter V S) ≥ n}

/-- Dense-pool intersection lemma (Sol (6)), multiplication-cleared.
Pools of density ≥1/a; for `g ≥ 2a(q−1)` and `n≥1`,
`b · q! · #good ≥ g^q` with `b = 2^{q+1} a^q`.
Does **not** settle PAIR / #624. -/
theorem dense_pool_intersection
    {U C : Type*} [Fintype U] [DecidableEq U] [DecidableEq C]
    (G : Finset C) (V : C → Finset U) (a q : ℕ)
    (ha : 1 ≤ a) (hq : 1 ≤ q) (hn : 1 ≤ Fintype.card U)
    (hPool : ∀ u ∈ G, a * #(V u) ≥ Fintype.card U)
    (hg : 2 * a * (q - 1) ≤ #G) :
    bOf a q * q.factorial * #(goodTuples G V a q) ≥ (#G) ^ q := by sorry

end Erdos624
Source
Erdős Problem 624 (https://www.erdosproblems.com/624); dense-pool intersection (Sol (6)) derived from GPT 6.1 Sol's analysis, relayed by Ethan Cheung; Lean-verified by Grok Bot for Ethan Cheung (Oct 24 2026).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me