FormalConjectures/ErdosProblems/131.lean
Explanation legend Lean4 Domain Explanation Language (L4DEL)
L4DEL explanations are a separate layer. They do not change the Lean source. Intuition is explanatory prose; numbered items are a reading path; sources link the wording back to evidence.
- L4DEL
- Lean4 Domain Explanation Language
Credit: The upstream authors and contributors retain credit for the project and mathematics. lean4-explainer only renders their pinned source and adds the separately disclosed explanation layer.
Project sources: Pinned project documentation, Formal Conjectures paper, arXiv v1
11 declarations, 2 contain sorry, 0 declared as axioms
Erdős Problem 131
References:
- erdosproblems.com/131
- [ELRSS99] Erdős, P. and Lev, V. and Rauzy, G. and Sándor, C. and Sárközy, A., Greedy algorithm, arithmetic progressions, subset sums and divisibility. Discrete Math. (1999), 119-135.
- [PhZa24] Pham, H. T. and Zakharov, D., Sharp bound for the Erdős–Straus non-averaging set problem. arXiv:2410.14624 (2024).
Imports (1)
- def
Erdos131.NonDividingA finite set $A$ of naturals is non-dividing if no $a \in A$ divides the sum of the elements of any nonempty subset $S \subseteq A \setminus \{a\}$ line 40 sourceSource documentation
A finite set $A$ of naturals is non-dividing if no $a \in A$ divides the sum of the elements of any nonempty subset $S \subseteq A \setminus \{a\}$.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Finset,NatProof uses:
Membership.mem,LE.le,Finset.erase,Finset.Nonempty,Not,Dvd.dvd,Finset.sum8 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
def NonDividing (A : Finset ℕ) : Prop := …
- instance
Erdos131.(instance at line 43)line 43 source - def
Erdos131.F$F(N)$ is the maximal size of a non-dividing subset of $\{1, \dots, N\}$ line 47 sourceSource documentation
$F(N)$ is the maximal size of a non-dividing subset of $\{1, \dots, N\}$.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NatProof uses:
Finset.sup,Finset,Finset.filter, Erdos131.NonDividing,Finset.powerset,Finset.Icc,OfNat.ofNat,Finset.card7 instances, coercions and auxiliary constants left out.
def F (N : ℕ) : ℕ := …
- theorem
Erdos131.exists_card_eq_F$F(N)$ is attained: some non-dividing $A \subseteq \{1, \dots, N\}$ has exactly $F(N)$ elements line 53 sourceSource documentation
$F(N)$ is attained: some non-dividing $A \subseteq \{1, \dots, N\}$ has exactly $F(N)$ elements.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Exists,Finset,And,LE.le,Finset.Icc,OfNat.ofNat, Erdos131.NonDividing,Eq,Finset.card, Erdos131.FProof uses:
Membership.mem,Finset.filter,Finset.powerset,Finset.sup,Finset.exists_mem_eq_sup,Exists.intro,EmptyCollection.emptyCollection,of_eq_true,Eq.trans,True,congr,congrArg,Finset.erase,Finset.Nonempty,Not,Dvd.dvd,Finset.sum,forall_congr,False,implies_congrand 12 more38 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
theorem exists_card_eq_F (N : ℕ) : ∃ A ⊆ Finset.Icc 1 N, NonDividing A ∧ A.card = F N := by …Mentions: Erdos131.NonDividing, Erdos131.F
- theorem
Erdos131.card_le_FEvery non-dividing $A \subseteq \{1, \dots, N\}$ has at most $F(N)$ elements line 63 sourceSource documentation
Every non-dividing $A \subseteq \{1, \dots, N\}$ has at most $F(N)$ elements.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset,LE.le,Finset.Icc,OfNat.ofNat, Erdos131.NonDividing,Finset.card, Erdos131.FProof uses:
Finset.le_sup,Finset.filter,Finset.powerset,of_eq_true,Membership.mem,Eq.trans,And,True,congr,congrArg,eq_true,and_self21 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem card_le_F {N : ℕ} {A : Finset ℕ} (hA : A ⊆ Finset.Icc 1 N) (hnd : NonDividing A) : A.card ≤ F N := …Mentions: Erdos131.NonDividing, Erdos131.F
- theorem
Erdos131.F_leTrivial upper bound: $F(N) \le N$ line 69 sourceSource documentation
Trivial upper bound: $F(N) \le N$.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le, Erdos131.FProof uses:
Finset,And,Finset.Icc,OfNat.ofNat, Erdos131.NonDividing,Eq,Finset.card,Exists, Erdos131.exists_card_eq_F,Eq.mpr,id,congrFun',congrArg,Eq.symm,Eq.mp,Eq.trans,HSub.hSub,HAdd.hAdd,Nat.card_Icc,add_tsub_cancel_rightand 1 more29 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
theorem F_le (N : ℕ) : F N ≤ N := by …
Mentions: Erdos131.F
- theorem
Erdos131.F_mono$F$ is monotone line 75 sourceSource documentation
$F$ is monotone.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Monotone,Nat, Erdos131.FProof uses:
LE.le,Exists,Finset,And,Finset.Icc,OfNat.ofNat, Erdos131.NonDividing,Eq,Finset.card, Erdos131.exists_card_eq_F,Eq.rec, Erdos131.card_le_F,LE.le.trans,Finset.Icc_subset_Icc_right8 instances, coercions and auxiliary constants left out.
theorem F_mono : Monotone F := fun _ _ hMN => …
Mentions: Erdos131.F
- theorem
Erdos131.one_le_FTrivial lower bound: for $N \ge 1$, the singleton $\{N\}$ is non-dividing, so $1 \le F(N)$ line 82 sourceSource documentation
Trivial lower bound: for $N \ge 1$, the singleton $\{N\}$ is non-dividing, so $1 \le F(N)$.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat, Erdos131.FProof uses:
Finset.card,Singleton.singleton,Finset, Erdos131.card_le_F,of_eq_true,Finset.Icc,Eq.trans,Membership.mem,True,And,congr,congrArg,eq_true,and_self,Finset.erase,Finset.Nonempty,Eq,EmptyCollection.emptyCollection,Eq.mp,Iff.mpand 11 more23 instances, coercions and auxiliary constants left out.
Tactic trace: 7 steps
Open to load the checked before-and-after goal states.
theorem one_le_F {N : ℕ} (hN : 1 ≤ N) : 1 ≤ F N := by …Mentions: Erdos131.F
- theorem
Erdos131.erdos_131.variants.pham_zakharovEvery non-dividing set is non-averaging sorry line 93 sourceSource documentation
Every non-dividing set is non-averaging. Pham and Zakharov [PhZa24] proved that a non-averaging subset of $\{1, \dots, N\}$ has size at most $N^{1/4 + o(1)}$, so $F(N) \le N^{1/4 + o(1)}$.
depends on sorry what this means
Statement uses:
Exists,Nat,Real,And,Filter.Tendsto,Filter.atTop,nhds,OfNat.ofNat,Filter.Eventually,LE.le, Erdos131.F,HPow.hPow,HAdd.hAdd,HDiv.hDivProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous44 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_131.variants.pham_zakharov : ∃ f : ℕ → ℝ, Tendsto f atTop (𝓝 0) ∧ ∀ᶠ N : ℕ in atTop, (F N : ℝ) ≤ (N : ℝ) ^ ((1 : ℝ) / 4 + f N) := by …Mentions: Erdos131.F
- theorem
Erdos131.erdos_131.variants.elrssErdős, Lev, Rauzy, Sándor and Sárközy [ELRSS99] proved $F(N) < 3 N^{1/2} + 1$ sorry line 100 sourceSource documentation
Erdős, Lev, Rauzy, Sándor and Sárközy [ELRSS99] proved $F(N) < 3 N^{1/2} + 1$.
depends on sorry what this means
Statement uses:
Nat,LT.lt,Real, Erdos131.F,HAdd.hAdd,HMul.hMul,OfNat.ofNat,Real.sqrtProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous26 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_131.variants.elrss (N : ℕ) : (F N : ℝ) < 3 * Real.sqrt N + 1 := by …
Mentions: Erdos131.F
- theorem
Erdos131.erdos_131Let $F(N)$ be the maximal size of $A \subseteq \{1, \dots, N\}$ such that no $a \in A$ divides the sum of any distinct elements of $A \setminus \{a\}$ line 112 sourceSource documentation
Let $F(N)$ be the maximal size of $A \subseteq \{1, \dots, N\}$ such that no $a \in A$ divides the sum of any distinct elements of $A \setminus \{a\}$. Is it true that $F(N) > N^{1/2 - o(1)}$?
The answer is no, by the bound of Pham and Zakharov [PhZa24] (
erdos_131.variants.pham_zakharov).depends on sorry what this means
Statement uses:
Iff,False,Exists,Nat,Real,And,Filter.Tendsto,Filter.atTop,nhds,OfNat.ofNat,Filter.Eventually,LT.lt,HPow.hPow,HSub.hSub,HDiv.hDiv, Erdos131.FProof uses:
id,Iff.intro,False.elim,LE.le,HAdd.hAdd, Erdos131.erdos_131.variants.pham_zakharov,Filter.Tendsto.eventually,gt_mem_nhds,Mathlib.Meta.NormNum.isNNRat_lt_true,Mathlib.Meta.NormNum.IsNat.to_isNNRat,Mathlib.Meta.NormNum.isNat_ofNat,Nat.cast_zero,Mathlib.Meta.NormNum.isNNRat_div,Mathlib.Meta.NormNum.isNNRat_mul,HMul.hMul,Inv.inv,Eq.refl,Nat.cast_one,Mathlib.Meta.NormNum.isNNRat_inv_pos,Mathlib.Meta.NormNum.instAtLeastTwoand 79 more132 instances, coercions and auxiliary constants left out.
Tactic trace: 13 steps
Open to load the checked before-and-after goal states.
theorem erdos_131 : answer(False) ↔ ∃ f : ℕ → ℝ, Tendsto f atTop (𝓝 0) ∧ ∀ᶠ N : ℕ in atTop, (N : ℝ) ^ ((1 : ℝ) / 2 - f N) < (F N : ℝ) := by …Mentions: Erdos131.F