FormalConjectures/ErdosProblems/283.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
9 declarations, 8 contain sorry, 0 declared as axioms
Erdős Problem 283
References:
- erdosproblems.com/283
- [Al19] Alekseyev, Max A., On partitions into squares of distinct integers whose reciprocals sum to 1. (2019), 213--221.
- [Ca60] Cassels, J. W. S., On the representation of integers as the sums of distinct summands taken from a fixed set. Acta Sci. Math. (Szeged) (1960), 111-124.
- [Gr63] Graham, R. L., A theorem on partitions. J. Austral. Math. Soc. (1963), 435-441.
- [vD25] W. van Doorn, Partitions with prescribed sum of rationals: asymptotic bounds. arXiv:2502.02200 (2025).
Imports (1)
- def
Erdos283.ConditionGiven a polynomialpwith rational coefficients, the predicate that ifptakes integer values at all integers, the leading coefficient is positive and there exists no line 44 sourceSource documentation
Given a polynomial
pwith rational coefficients, the predicate that ifptakes integer values at all integers, the leading coefficient is positive and there exists no $d≥2$ with $d ∣ p(n)$ for all $n≥1$, then for all sufficiently large $m$, there exist integers $1≤n_1<\dots < n_k$ such that $$1=\frac{1}{n_1}+\cdots+\frac{1}{n_k}$$ and $$m=p(n_1)+\cdots+p(n_k)$$?standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Polynomial,RatProof uses:
Int,Exists,Eq,Polynomial.eval,GT.gt,Polynomial.leadingCoeff,OfNat.ofNat,Not,And,GE.ge,HMul.hMul,Filter.Eventually,Nat,Fin,HAdd.hAdd,StrictMono,Finset.sum,Finset.Icc,Fin.last,HDiv.hDivand 1 more27 instances, coercions and auxiliary constants left out.
def Condition (p : ℚ[X]) : Prop := …
- theorem
Erdos283.erdos_283Documented declaration: erdos_283 sorry line 66 sourceSource documentation
Let $p\colon \mathbb{Z} \rightarrow \mathbb{Z}$ be a polynomial (with rational coefficients, taking integer values at all integers) whose leading coefficient is positive and such that there exists no $d≥2$ with $d ∣ p(n)$ for all $n≥1$. Is it true that, for all sufficiently large $m$, there exist integers $1≤n_1<\dots < n_k$ such that $$1=\frac{1}{n_1}+\cdots+\frac{1}{n_k}$$ and $$m=p(n_1)+\cdots+p(n_k)$$?
GPT 5.5 Pro (prompted by Price) has given a proof that the answer is yes, for the stronger version with $1$ replaced by any rational $\alpha>0$.
This was formalized in Lean by Ammanamanchi using Opus 4.6 and GPT 5.5 Pro.
depends on sorry what this means
Statement uses:
Iff,True,Polynomial,Rat, Erdos283.ConditionProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous,OfNat.ofNat,Nat3 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_283 : answer(True) ↔ ∀ p : ℚ[X], Condition p := by …
Mentions: Erdos283.Condition
- theorem
Erdos283.erdos_283.variants.grahamGraham [Gr63] has proved this when $p(x)=x$ sorry line 73 sourceSource documentation
Graham [Gr63] has proved this when $p(x)=x$.
depends on sorry what this means
Statement uses: Erdos283.Condition,
Polynomial.X,RatProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous,OfNat.ofNat,Nat3 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_283.variants.graham : Condition X := by …
Mentions: Erdos283.Condition
- theorem
Erdos283.erdos_283.variants.graham_alphaGraham also conjectures that this remains true with $1$ replaced by an arbitrary rational $\alpha>0$ (provided $m$ is taken sufficiently large depending on $\alpha$) sorry line 81 sourceSource documentation
Graham also conjectures that this remains true with $1$ replaced by an arbitrary rational $\alpha>0$ (provided $m$ is taken sufficiently large depending on $\alpha$).
depends on sorry what this means
Statement uses:
Polynomial,Rat,Int,Exists,Eq,Polynomial.eval,LT.lt,OfNat.ofNat,Polynomial.leadingCoeff,Not,And,GE.ge,HMul.hMul,GT.gt,Filter.Eventually,Nat,Finset,Membership.mem,LE.le,Finset.sumand 2 moreProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous38 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_283.variants.graham_alpha : ∀ (p : ℚ[X]) (α : ℚ), (∀ n : ℤ, ∃ z : ℤ, p.eval (n : ℚ) = z) → 0 < p.leadingCoeff → (¬ ∃ (d : ℤ), d ≥ 2 ∧ ∀ (n : ℤ), n ≥ 1 → ∃ z : ℤ, p.eval (n : ℚ) = d * z) → α > 0 → ∀ᶠ (m : ℕ) in atTop, ∃ S : Finset ℕ, (∀ n ∈ S, 1 ≤ n) ∧ (∑ n ∈ S, (1 / (n : ℚ))) = α ∧ (∑ n ∈ S, p.eval (n : ℚ)) = (m : ℚ) := by … - theorem
Erdos283.erdos_283.variants.casselsCassels [Ca60] has proved that these conditions on the polynomial imply every sufficiently large integer is the sum of $p(n_i)$ with distinct $n_i$ sorry line 98 sourceSource documentation
Cassels [Ca60] has proved that these conditions on the polynomial imply every sufficiently large integer is the sum of $p(n_i)$ with distinct $n_i$.
depends on sorry what this means
Statement uses:
Polynomial,Rat,Int,Exists,Eq,Polynomial.eval,LT.lt,OfNat.ofNat,Polynomial.leadingCoeff,Not,And,GE.ge,HMul.hMul,Filter.Eventually,Nat,Finset,Membership.mem,LE.le,Finset.sum,Filter.atTopProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous34 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_283.variants.cassels : ∀ (p : ℚ[X]), (∀ n : ℤ, ∃ z : ℤ, p.eval (n : ℚ) = z) → 0 < p.leadingCoeff → (¬ ∃ (d : ℤ), d ≥ 2 ∧ ∀ (n : ℤ), n ≥ 1 → ∃ z : ℤ, p.eval (n : ℚ) = d * z) → ∀ᶠ (m : ℕ) in atTop, ∃ S : Finset ℕ, (∀ n ∈ S, 1 ≤ n) ∧ (∑ n ∈ S, p.eval (n : ℚ)) = (m : ℚ) := by … - theorem
Erdos283.erdos_283.variants.burrBurr has proved this if $p(x)=x^k$ with $k\geq 1$ and if we allow $n_i=n_j$ sorry line 112 sourceSource documentation
Burr has proved this if $p(x)=x^k$ with $k\geq 1$ and if we allow $n_i=n_j$.
depends on sorry what this means
Statement uses:
Nat,GE.ge,OfNat.ofNat,Filter.Eventually,Exists,Multiset,And,Membership.mem,LE.le,Eq,Rat,Multiset.sum,Multiset.map,HDiv.hDiv,Bind.bind,Pure.pure,Int,HPow.hPow,Filter.atTopProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous40 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_283.variants.burr : ∀ (k : ℕ), k ≥ 1 → ∀ᶠ (m : ℕ) in atTop, ∃ M : Multiset ℕ, (∀ n ∈ M, 1 ≤ n) ∧ (M.map (fun n ↦ 1 / (n : ℚ))).sum = 1 ∧ (M.map (fun n ↦ (n : ℤ)^k)).sum = (m : ℤ) := by … - theorem
Erdos283.erdos_283.variants.alekseyevAlekseyev [Al19] has proved this when $p(x)=x^2$, for all $m>8542$ sorry line 124 sourceSource documentation
Alekseyev [Al19] has proved this when $p(x)=x^2$, for all $m>8542$.
depends on sorry what this means
Statement uses:
Nat,GT.gt,OfNat.ofNat,Exists,Finset,And,Membership.mem,LE.le,Eq,Rat,Finset.sum,HDiv.hDiv,Int,HPow.hPowProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous34 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_283.variants.alekseyev : ∀ (m : ℕ), m > 8542 → ∃ S : Finset ℕ, (∀ n ∈ S, 1 ≤ n) ∧ (∑ n ∈ S, (1 / (n : ℚ))) = 1 ∧ (∑ n ∈ S, (n : ℤ)^2) = (m : ℤ) := by … - theorem
Erdos283.erdos_283.variants.van_doorn_linearvan Doorn [vD25] has investigated the question of what 'sufficiently large' means for $p(x)=x$ sorry line 137 sourceSource documentation
van Doorn [vD25] has investigated the question of what 'sufficiently large' means for $p(x)=x$. van Doorn has also proved the original conjecture for many linear and quadratic polynomials. For example, if $p(x) = x + b$ with $1 \leq b \leq 5000$, then the conjecture is true.
depends on sorry what this means
Statement uses:
Int,LE.le,OfNat.ofNat, Erdos283.Condition,HAdd.hAdd,Polynomial,Rat,Polynomial.X,RingHom,Polynomial.CProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous,Nat23 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_283.variants.van_doorn_linear : ∀ b : ℤ, 1 ≤ b → b ≤ 5000 → Condition (X + C (b : ℚ)) := by …
Mentions: Erdos283.Condition
- theorem
Erdos283.erdos_283.variants.van_doorn_quadraticvan Doorn [vD25] has proved the original conjecture for many linear and quadratic polynomials sorry line 146 sourceSource documentation
van Doorn [vD25] has proved the original conjecture for many linear and quadratic polynomials. For example, if $p(x) = x^2 + b$ with $1 \leq b \leq 800$, then the conjecture is true.
depends on sorry what this means
Statement uses:
Int,LE.le,OfNat.ofNat, Erdos283.Condition,HAdd.hAdd,Polynomial,Rat,HPow.hPow,Nat,Polynomial.X,RingHom,Polynomial.CProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous32 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem erdos_283.variants.van_doorn_quadratic : ∀ b : ℤ, 1 ≤ b → b ≤ 800 → Condition (X^2 + C (b : ℚ)) := by …
Mentions: Erdos283.Condition