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

Fundamental discriminants

A fundamental discriminant is an integer that occurs as the discriminant of a quadratic field.

References:

Imports (2)
Imported by 1 file
  1. def NumberField.IsFundamentalDiscr Fundamental discriminants are those integers D that appear as discriminants of quadratic fields line 39 source

    Source documentation

    Fundamental discriminants are those integers D that appear as discriminants of quadratic fields.

    D is a fundamental discriminant if it is either of the form 4m for m congruent to 2 or 3 mod 4 squarefree, or if it congruent to 1 mod 4 and squarefree.

    standard axioms: propext what this means

    Statement uses: Int

    Proof uses: Or, And, Dvd.dvd, OfNat.ofNat, Not, Int.ModEq, HDiv.hDiv, Squarefree, Ne

    5 instances, coercions and auxiliary constants left out.

    def IsFundamentalDiscr (D : ℤ) : Prop :=
    …
  2. theorem NumberField.isFundamentalDiscr_iff Documented declaration: isFundamentalDiscr_iff line 45 source

    Source documentation

    Unfolding of IsFundamentalDiscr in terms of %: a fundamental discriminant is either 4 times a squarefree integer congruent to 2 or 3 mod 4, or a squarefree integer congruent to 1 mod 4 other than 1 itself.

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

    Statement uses: Int, Iff, NumberField.IsFundamentalDiscr, Or, Exists, And, Eq, HMul.hMul, OfNat.ofNat, HMod.hMod, Squarefree, Ne

    Proof uses: Not, Dvd.dvd, False, absurd, IsUnit, Exists.intro, Decidable.byContradiction, of_eq_true, Eq.trans, True, congrArg, Neg.neg, congr, Nat, eq_false', False.elim, noConfusion_of_Nat, Int.ctorIdx, or_self, not_false_eq_true and 23 more

    40 instances, coercions and auxiliary constants left out.

    Tactic trace: 25 steps

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

    theorem isFundamentalDiscr_iff {D : ℤ} :
        IsFundamentalDiscr D ↔
          (∃ m, D = 4 * m ∧ (m % 4 = 2 ∨ m % 4 = 3) ∧ Squarefree m) ∨
            D ≠ 1 ∧ D % 4 = 1 ∧ Squarefree D := by
    …

    Mentions: NumberField.IsFundamentalDiscr