FormalConjectures/ErdosProblems/114.lean

GitHub source file

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

6 declarations, 3 contain sorry, 0 declared as axioms

Erdős Problem 114

References:

Imports (1)
  1. def Erdos114.lemniscate The lemniscate $\{z \in \mathbb{C} : \lvert p(z)\rvert = 1\}$ of a complex polynomial $p$ line 40 source

    Source documentation

    The lemniscate $\{z \in \mathbb{C} : \lvert p(z)\rvert = 1\}$ of a complex polynomial $p$.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Polynomial, Complex, Set

    Proof uses: Set.ofPred, Eq, Real, Norm.norm, Polynomial.eval, OfNat.ofNat

    5 instances, coercions and auxiliary constants left out.

    def lemniscate (p : ℂ[X]) : Set ℂ := {z | ‖p.eval z‖ = 1}
  2. def Erdos114.lemniscateLength The length of the lemniscate of $p$, as its one-dimensional Hausdorff measure line 43 source

    Source documentation

    The length of the lemniscate of $p$, as its one-dimensional Hausdorff measure.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Polynomial, Complex, ENNReal

    Proof uses: MeasureTheory.Measure, Set, MeasureTheory.Measure.hausdorffMeasure, OfNat.ofNat, Real, Erdos114.lemniscate

    11 instances, coercions and auxiliary constants left out.

    noncomputable def lemniscateLength (p : ℂ[X]) : ENNReal := μH[1] (lemniscate p)
    …

    Mentions: Erdos114.lemniscate

  3. theorem Erdos114.erdos_114 If $p(z) \in \mathbb{C}[z]$ is a monic polynomial of degree $n$, is the length of the curve $\{z \in \mathbb{C} : \lvert p(z)\rvert = 1\}$ maximised when $p(z) = z^n - 1$? sorry line 53 source

    Source documentation

    If $p(z) \in \mathbb{C}[z]$ is a monic polynomial of degree $n$, is the length of the curve $\{z \in \mathbb{C} : \lvert p(z)\rvert = 1\}$ maximised when $p(z) = z^n - 1$?

    We require $n \geq 1$. For $n = 0$ the only monic polynomial is $1$, whose level set is all of $\mathbb{C}$, while $z^0 - 1 = 0$ has an empty level set.

    depends on sorry what this means

    Statement uses: Iff, True, Nat, LE.le, OfNat.ofNat, Polynomial, Complex, Polynomial.Monic, Eq, Polynomial.natDegree, ENNReal, Erdos114.lemniscateLength, HSub.hSub, HPow.hPow, Polynomial.X

    Proof uses: sorryAx, Lean.Name, Bool.false, Lean.Name.num, Lean.Name.str, Lean.Name.anonymous

    28 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

    theorem erdos_114 : answer(sorry) ↔
        ∀ n : ℕ, 1 ≤ n → ∀ p : ℂ[X], p.Monic → p.natDegree = n →
          lemniscateLength p ≤ lemniscateLength (X ^ n - 1) := by
    …

    Mentions: Erdos114.lemniscateLength

  4. theorem Erdos114.erdos_114.variants.large_n Tao [Ta25] proved that $z^n - 1$ maximises the length of the lemniscate for all sufficiently large $n$ sorry line 63 source

    Source documentation

    Tao [Ta25] proved that $z^n - 1$ maximises the length of the lemniscate for all sufficiently large $n$.

    depends on sorry what this means

    Statement uses: Filter.Eventually, Nat, Polynomial, Complex, Polynomial.Monic, Eq, Polynomial.natDegree, LE.le, ENNReal, Erdos114.lemniscateLength, HSub.hSub, HPow.hPow, Polynomial.X, OfNat.ofNat, Filter.atTop

    Proof uses: sorryAx, Lean.Name, Bool.false, Lean.Name.num, Lean.Name.str, Lean.Name.anonymous

    27 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

    theorem erdos_114.variants.large_n : ∀ᶠ n in atTop, ∀ p : ℂ[X], p.Monic → p.natDegree = n →
        lemniscateLength p ≤ lemniscateLength (X ^ n - 1) := by
    …

    Mentions: Erdos114.lemniscateLength

  5. theorem Erdos114.erdos_114.variants.two Eremenko and Hayman [ErHa99] proved the case $n = 2$ sorry line 69 source

    Source documentation

    Eremenko and Hayman [ErHa99] proved the case $n = 2$.

    depends on sorry what this means

    Statement uses: Polynomial, Complex, Polynomial.Monic, Eq, Nat, Polynomial.natDegree, OfNat.ofNat, LE.le, ENNReal, Erdos114.lemniscateLength, HSub.hSub, HPow.hPow, Polynomial.X

    Proof uses: sorryAx, Lean.Name, Bool.false, Lean.Name.num, Lean.Name.str, Lean.Name.anonymous

    26 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

    theorem erdos_114.variants.two (p : ℂ[X]) (hp : p.Monic) (hdeg : p.natDegree = 2) :
        lemniscateLength p ≤ lemniscateLength (X ^ 2 - 1) := by
    …

    Mentions: Erdos114.lemniscateLength

  6. theorem Erdos114.erdos_114.variants.one The case $n = 1$ line 78 source

    Source documentation

    The case $n = 1$. A monic linear polynomial is $z - a$. Its lemniscate is a translate of the lemniscate of $z - 1$, and translations preserve Hausdorff measure.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Polynomial, Complex, Polynomial.Monic, Eq, Nat, Polynomial.natDegree, OfNat.ofNat, LE.le, ENNReal, Erdos114.lemniscateLength, HSub.hSub, HPow.hPow, Polynomial.X

    Proof uses: HAdd.hAdd, RingHom, Polynomial.C, Polynomial.coeff, Finset.sum, Finset.range, HMul.hMul, Polynomial.Monic.as_sum, Eq.mp, congrArg, congr, pow_one, Eq.trans, Singleton.singleton, Finset, Finset.sum_singleton, pow_zero, mul_one, Set, Erdos114.lemniscate and 68 more

    96 instances, coercions and auxiliary constants left out.

    Tactic trace: 10 steps

    Open to load the checked before-and-after goal states.

    theorem erdos_114.variants.one (p : ℂ[X]) (hp : p.Monic) (hdeg : p.natDegree = 1) :
        lemniscateLength p ≤ lemniscateLength (X ^ 1 - 1) := by
    …

    Mentions: Erdos114.lemniscateLength