FormalConjecturesForMathlib/NumberTheory/Divisors.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

2 declarations, 0 contain sorry, 0 declared as axioms

The increasing enumeration of the divisors of a natural number

Basic facts about Nat.nth (· ∈ n.divisors), the increasing enumeration of the divisors of n.

Imports (2)
Imported by 1 file
  1. lemma Nat.nth_divisors_zero The smallest divisor of a positive number is 1, i.e. the 0th entry of the increasing enumeration of its divisors line 33 source

    Source documentation

    The smallest divisor of a positive number is 1, i.e. the 0th entry of the increasing enumeration of its divisors.

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

    Statement uses: Nat, Ne, OfNat.ofNat, Eq, Nat.nth, Membership.mem, Finset, Nat.divisors

    Proof uses: Eq.mpr, InfSet.sInf, Set.ofPred, id, congrArg, Nat.nth_zero, IsLeast.csInf_eq, And.intro, Set, lowerBounds, Iff.mpr, Nat.one_mem_divisors, Nat.pos_of_mem_divisors

    16 instances, coercions and auxiliary constants left out.

    Tactic trace: 2 steps

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

    lemma nth_divisors_zero {n : ℕ} (hn : n ≠ 0) : Nat.nth (· ∈ n.divisors) 0 = 1 := by
    …
  2. lemma Nat.two_le_nth_divisors Every divisor enumerated after index 0 is at least 2 line 38 source

    Source documentation

    Every divisor enumerated after index 0 is at least 2.

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

    Statement uses: Nat, Ne, OfNat.ofNat, Nat.nth, Membership.mem, Finset, Nat.divisors, LE.le

    Proof uses: Set.Finite, Set.ofPred, Finset.finite_toSet, Nat.pos_of_mem_divisors, Nat.nth_mem_of_ne_zero, LT.lt, Eq, Or, LE.le.lt_or_eq, Decidable.byContradiction, Not, absurd, Nat.nth_injOn, Iff.mpr, Set, Set.Iio, Finset.card, Set.Finite.toFinset, Set.mem_Iio, Nat.lt_card_toFinset_of_nth_ne_zero and 4 more

    19 instances, coercions and auxiliary constants left out.

    Tactic trace: 11 steps

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

    lemma two_le_nth_divisors {n : ℕ} (hn : n ≠ 0) {i : ℕ} (hi : i ≠ 0)
        (h : Nat.nth (· ∈ n.divisors) i ≠ 0) : 2 ≤ Nat.nth (· ∈ n.divisors) i := by
    …