FormalConjectures/ErdosProblems/507.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, 7 contain sorry, 0 declared as axioms
Erdős Problem 507
References:
- erdosproblems.com/507
- [CPZ23] Cohen, Alex, Cosmin Pohoata, and Dmitrii Zakharov. "A new upper bound for the Heilbronn triangle problem." arXiv preprint arXiv:2305.18253 (2023).
- [CPZ24] Cohen, Alex, Cosmin Pohoata, and Dmitrii Zakharov. "Lower bounds for incidences." Inventiones mathematicae (2025): 1-74.
- [KPS82] Komlós, János, János Pintz, and Endre Szemerédi. "A lower bound for Heilbronn's problem." Journal of the London Mathematical Society 2.1 (1982): 13-24.
- [KPS81] Komlós, János, János Pintz, and Endre Szemerédi. "On Heilbronn's triangle problem." Journal of the London Mathematical Society 2.3 (1981): 385-396.
Imports (1)
Imported by 1 file
- def
Erdos507.minTriangleAreaThe minimum (unsigned) area of a triangle determined by three distinct points in a setSline 47 sourceSource documentation
The minimum (unsigned) area of a triangle determined by three distinct points in a set
S. Collinear triples count with area0.EuclideanGeometry.triangle_areais a signed area, so the absolute value is taken before the infimum.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Finset,EuclideanSpace,Real,Fin,OfNat.ofNat,NatProof uses:
InfSet.sInf,Set.ofPred,Exists,Function.Injective,Membership.mem,Eq,abs, EuclideanGeometry.triangle_area,ENNReal32 instances, coercions and auxiliary constants left out.
noncomputable def minTriangleArea (S : Finset ℝ²) : ℝ := …
- def
Erdos507.α$\alpha(n)$ is the supremum ofminTriangleArea Sover all setsSof $n$ points in the unit disk line 54 sourceSource documentation
$\alpha(n)$ is the supremum of
minTriangleArea Sover all setsSof $n$ points in the unit disk.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,RealProof uses:
SupSet.sSup,Set.image,Finset,EuclideanSpace,Fin,OfNat.ofNat, Erdos507.minTriangleArea,Set.ofPred,And,Eq,Finset.card,LE.le,Set,Metric.closedBall,ENNReal,Not,Collinear43 instances, coercions and auxiliary constants left out.
noncomputable def α (n : ℕ) : ℝ := …
- def
Erdos507.lowerBestCurrent best lower bound [KPS82] line 61 sourceSource documentation
Current best lower bound [KPS82].
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,RealProof uses:
HDiv.hDiv,Real.log,HPow.hPow,OfNat.ofNat10 instances, coercions and auxiliary constants left out.
noncomputable def lowerBest (n : ℕ) : ℝ := Real.log n / (n : ℝ) ^ 2
- def
Erdos507.upperBarrierThe "Barrier" function: n^(-7/6) used for the best upper bound [CPZ24] line 66 sourceSource documentation
The "Barrier" function: n^(-7/6) used for the best upper bound [CPZ24].
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,RealProof uses:
HDiv.hDiv,OfNat.ofNat,HPow.hPow12 instances, coercions and auxiliary constants left out.
noncomputable def upperBarrier (n : ℕ) : ℝ := 1 / (n : ℝ) ^ ((7 : ℝ) / 6) …
- theorem
Erdos507.erdos_507.equivalentLet $\alpha(n)$ be such that every set of $n$ points in the unit disk contains three points which determine a triangle of area at most $\alpha(n)$ sorry line 73 sourceSource documentation
Let $\alpha(n)$ be such that every set of $n$ points in the unit disk contains three points which determine a triangle of area at most $\alpha(n)$. Estimate $\alpha(n)$.
depends on sorry what this means
Statement uses:
Asymptotics.IsEquivalent,Nat,Real,Filter.atTop, Erdos507.α,sorryAx,Bool.falseProof uses:
Lean.Name,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous,OfNat.ofNat13 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_507.equivalent: α ~[atTop] (answer(sorry) : ℕ → ℝ) := by …Mentions: Erdos507.α
- theorem
Erdos507.erdos_507.lowerEstimate a lower bound for$\alpha(n)$ sorry line 81 sourceSource documentation
Estimate a lower bound for$\alpha(n)$.
depends on sorry what this means
Statement uses:
Nat,Real,sorryAx,Bool.false,And,Asymptotics.IsLittleO,Filter.atTop, Erdos507.lowerBest,Asymptotics.IsBigO, Erdos507.αProof uses:
Lean.Name,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous,OfNat.ofNat5 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_507.lower: let ans := (answer(sorry) : ℕ → ℝ) … - theorem
Erdos507.erdos_507.upperEstimate an upper bound for$\alpha(n)$ sorry line 90 sourceSource documentation
Estimate an upper bound for$\alpha(n)$.
depends on sorry what this means
Statement uses:
Nat,Real,sorryAx,Bool.false,And,Asymptotics.IsBigO,Filter.atTop, Erdos507.α,Asymptotics.IsLittleO, Erdos507.upperBarrierProof uses:
Lean.Name,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous,OfNat.ofNat5 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_507.upper: let ans := (answer(sorry) : ℕ → ℝ) … - theorem
Erdos507.erdos_507.variants.upper_trivialIt is trivial that $\alpha(n) \ll 1/n$ sorry line 99 sourceSource documentation
It is trivial that $\alpha(n) \ll 1/n$.
depends on sorry what this means
Statement uses:
Asymptotics.IsBigO,Nat,Real,Filter.atTop, Erdos507.α,HDiv.hDiv,OfNat.ofNatProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous19 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_507.variants.upper_trivial : α ≪ (fun n ↦ 1 / (n : ℝ)) := by …
Mentions: Erdos507.α
- theorem
Erdos507.erdos_507.variants.lower_erdosErdős observed that $\alpha(n) \gg 1/n^2$ sorry line 106 sourceSource documentation
Erdős observed that $\alpha(n) \gg 1/n^2$.
depends on sorry what this means
Statement uses:
Asymptotics.IsBigO,Nat,Real,Filter.atTop,HDiv.hDiv,OfNat.ofNat,HPow.hPow, Erdos507.αProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous28 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_507.variants.lower_erdos : α ≫ (fun n ↦ 1 / (n : ℝ) ^ 2) := by …
Mentions: Erdos507.α
- theorem
Erdos507.erdos_507.variants.lower_kps82Current best lower bound [KPS82] sorry line 113 sourceSource documentation
Current best lower bound [KPS82].
depends on sorry what this means
Statement uses:
Asymptotics.IsBigO,Nat,Real,Filter.atTop, Erdos507.lowerBest, Erdos507.αProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous,OfNat.ofNat5 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_507.variants.lower_kps82 : lowerBest ≪ α := by …
Mentions: Erdos507.lowerBest, Erdos507.α
- theorem
Erdos507.erdos_507.variants.upper_cpz24Current best upper bound [CPZ24]: $\alpha(n) \ll n^{-7/6 + o(1)}$ sorry line 120 sourceSource documentation
Current best upper bound [CPZ24]: $\alpha(n) \ll n^{-7/6 + o(1)}$.
depends on sorry what this means
Statement uses:
Exists,Nat,Real,And,Filter.Tendsto,Filter.atTop,nhds,OfNat.ofNat,Asymptotics.IsBigO, Erdos507.α,HMul.hMul, Erdos507.upperBarrier,HPow.hPowProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous27 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_507.variants.upper_cpz24 : ∃ (o : ℕ → ℝ), Tendsto o atTop (𝓝 0) ∧ α ≪ (fun n ↦ upperBarrier n * (n : ℝ) ^ o n) := by …Mentions: Erdos507.α, Erdos507.upperBarrier