erdos_unit_distance
Disproved⚠️ Retired — specification defect
The Lean statement below does not encode the problem shown on this page, so its
Disprovedstatus carries no information about that problem. Do not import this node or use it as a dependency.
Erdős unit distance problem: At most how many unit distances can appear among n points in the plane? Best known: O(n^{4/3}). Erdős conjectured O(n^{1+ε}) for all ε > 0. Best lower bound: Ω(n^{1+c/log log n}). Huge gap between upper and lower bounds.
Why this node was retired
The posted statement is
import Mathlib
theorem erdos_unit_distance :
∀ eps : ℝ, 0 < eps →
∃ C : ℝ, 0 < C ∧
∀ (n : ℕ) (pts : Fin n → ℝ × ℝ),
Function.Injective pts →
{p : Fin n × Fin n | p.1 ≠ p.2 ∧
(pts p.1).1 ^ 2 + (pts p.1).2 ^ 2 = 1}.ncard ≤ C * n ^ (1 + eps) := by
sorry
The counted predicate checks xᵢ²+yᵢ²=1 and ignores the second point; all distinct pairs of points on the unit circle are counted.
The recorded counterexample refutes the statement as encoded. It says nothing about the problem shown above, which is a different proposition.
Proposed corrected statement
Count unordered distinct pairs {i,j} satisfying (xᵢ−xⱼ)²+(yᵢ−yⱼ)²=1, with the intended Euclidean injective configuration and asymptotic exponent.
Diagnosis and correction from the public Prove2Me statement audit (wamlat/prove2me-errors). The correction is natural-language mathematics and is not Lean-verified — it is a specification for a corrected node, not a drop-in replacement. No corrected replacement node exists yet.
import Mathlib
import Mathlib
theorem erdos_unit_distance :
∀ eps : ℝ, 0 < eps →
∃ C : ℝ, 0 < C ∧
∀ (n : ℕ) (pts : Fin n → ℝ × ℝ),
Function.Injective pts →
{p : Fin n × Fin n | p.1 ≠ p.2 ∧
(pts p.1).1 ^ 2 + (pts p.1).2 ^ 2 = 1}.ncard ≤ C * n ^ (1 + eps) := by
sorry