FormalConjectures/Wikipedia/Goormaghtigh.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
6 declarations, 1 contain sorry, 0 declared as axioms
The Goormaghtigh conjecture
A repunit is a number whose digits in some base are all $1$. Here a nontrivial representation has at least three digits. The Goormaghtigh conjecture says that $31$ and $8191$ are the only numbers having nontrivial repunit representations in two different bases.
References:
- Wikipedia
- J. Grantham, No new Goormaghtigh primes up to $10^{700}$
Imports (1)
- def
Goormaghtigh.repunitThe repunit withdigitsdigits in the given base, expressed without division line 38 sourceSource documentation
The repunit with
digitsdigits in the given base, expressed without division.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NatProof uses:
Finset.sum,Finset.range,HPow.hPow5 instances, coercions and auxiliary constants left out.
def repunit (base digits : ℕ) : ℕ := …
- def
Goormaghtigh.IsGoormaghtighNumberA number having repunit representations of at least three digits in two distinct bases line 42 sourceSource documentation
A number having repunit representations of at least three digits in two distinct bases.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
NatProof uses:
Exists,And,LE.le,OfNat.ofNat,Ne,Eq, Goormaghtigh.repunit2 instances, coercions and auxiliary constants left out.
def IsGoormaghtighNumber (N : ℕ) : Prop := …
- theorem
Goormaghtigh.goormaghtigh_conjectureThe only Goormaghtigh numbers are $31$ and $8191$ sorry line 50 sourceSource documentation
The only Goormaghtigh numbers are $31$ and $8191$.
depends on sorry what this means
Statement uses:
Nat, Goormaghtigh.IsGoormaghtighNumber,Or,Eq,OfNat.ofNatProof uses:
sorryAx,Lean.Name,Bool.false,Lean.Name.num,Lean.Name.str,Lean.Name.anonymous2 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem goormaghtigh_conjecture (N : ℕ) (hN : IsGoormaghtighNumber N) : N = 31 ∨ N = 8191 := by …Mentions: Goormaghtigh.IsGoormaghtighNumber
- theorem
Goormaghtigh.isGoormaghtighNumber_31The number $31$ is a repunit in bases $2$ and $5$ line 56 sourceSource documentation
The number $31$ is a repunit in bases $2$ and $5$.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses: Goormaghtigh.IsGoormaghtighNumber,
OfNat.ofNat,NatProof uses:
Exists.intro,Exists,And,LE.le,Ne,Eq, Goormaghtigh.repunit,of_eq_true,Eq.trans,True,congr,congrArg,eq_true,Mathlib.Meta.NormNum.isNat_le_true,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Bool,Bool.true,Mathlib.Meta.NormNum.isNat_eq_false,Bool.falseand 33 more25 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
theorem isGoormaghtighNumber_31 : IsGoormaghtighNumber 31 := by …
Mentions: Goormaghtigh.IsGoormaghtighNumber
- theorem
Goormaghtigh.isGoormaghtighNumber_8191The number $8191$ is a repunit in bases $2$ and $90$ line 62 sourceSource documentation
The number $8191$ is a repunit in bases $2$ and $90$.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses: Goormaghtigh.IsGoormaghtighNumber,
OfNat.ofNat,NatProof uses:
Exists.intro,Exists,And,LE.le,Ne,Eq, Goormaghtigh.repunit,of_eq_true,Eq.trans,True,congr,congrArg,eq_true,Mathlib.Meta.NormNum.isNat_le_true,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Bool,Bool.true,Mathlib.Meta.NormNum.isNat_eq_false,Bool.falseand 33 more25 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
theorem isGoormaghtighNumber_8191 : IsGoormaghtighNumber 8191 := by …
Mentions: Goormaghtigh.IsGoormaghtighNumber
- theorem
Goormaghtigh.repunit_two_digitsAllowing two-digit repunits would make $13$ a representation in two distinct bases line 68 sourceSource documentation
Allowing two-digit repunits would make $13$ a representation in two distinct bases.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
And,Eq,Nat, Goormaghtigh.repunit,OfNat.ofNatProof uses:
of_eq_true,Eq.trans,True,congr,congrArg,congrFun',Mathlib.Meta.NormNum.IsNat.to_eq,Finset.sum,Finset.range,HPow.hPow,Eq.rec,Finset.cons,Finset.notMem_range_self,Mathlib.Meta.NormNum.IsNat,HAdd.hAdd,Mathlib.Meta.NormNum.isNat_add,Eq.refl,Mathlib.Meta.NormNum.isNat_pow,Mathlib.Meta.NormNum.isNat_ofNat,Mathlib.Meta.NormNum.IsNat.raw_refland 18 more19 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
theorem repunit_two_digits : repunit 3 3 = 13 ∧ repunit 12 2 = 13 := by …
Mentions: Goormaghtigh.repunit