FLT/Mathlib/RingTheory/Norm/Quadratic.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, Pinned FLT blueprint introduction
7 declarations, 0 contain sorry, 0 declared as axioms
Trace and norm in a separable quadratic extension
Proposed new Mathlib file Mathlib.RingTheory.Norm.Quadratic: trace and norm via the
nontrivial automorphism of a separable quadratic extension.
Imports (3)
Imported by 2 files
- theorem
Algebra.IsQuadraticExtension.algebraMap_trace_eq_addIn a separable quadratic extension, the trace ofxisx + σx, whereσis the nontrivial automorphism line 30 sourceSource documentation
In a separable quadratic extension, the trace of
xisx + σx, whereσis the nontrivial automorphism.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Algebra,Algebra.IsQuadraticExtension,Algebra.IsSeparable,AlgEquiv,Ne,OfNat.ofNat,Eq,RingHom,Algebra.algebraMap,LinearMap,RingHom.id,Algebra.trace,HAdd.hAddProof uses:
Eq.mpr,Finset.sum,Finset.univ,id,congrArg,trace_eq_sum_automorphisms,Insert.insert,Finset,Classical.propDecidable,Singleton.singleton, Algebra.IsQuadraticExtension.univ_algEquiv,Finset.sum_pair,Ne.symm,of_eq_true,eq_self63 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
theorem Algebra.IsQuadraticExtension.algebraMap_trace_eq_add {σ : L ≃ₐ[K] L} (hσ : σ ≠ 1) (x : L) : algebraMap K L (Algebra.trace K L x) = x + σ x := by … - theorem
Algebra.IsQuadraticExtension.algebraMap_norm_eq_mulIn a separable quadratic extension, the norm ofxisx * σx, whereσis the nontrivial automorphism line 38 sourceSource documentation
In a separable quadratic extension, the norm of
xisx * σx, whereσis the nontrivial automorphism.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Algebra,Algebra.IsQuadraticExtension,Algebra.IsSeparable,AlgEquiv,Ne,OfNat.ofNat,Eq,RingHom,Algebra.algebraMap,MonoidHom,Algebra.norm,HMul.hMulProof uses:
Eq.mpr,Finset.prod,Finset.univ,id,congrArg,Algebra.norm_eq_prod_automorphisms,Insert.insert,Finset,Classical.propDecidable,Singleton.singleton, Algebra.IsQuadraticExtension.univ_algEquiv,Finset.prod_pair,Ne.symm,of_eq_true,eq_self65 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
theorem Algebra.IsQuadraticExtension.algebraMap_norm_eq_mul {σ : L ≃ₐ[K] L} (hσ : σ ≠ 1) (x : L) : algebraMap K L (Algebra.norm K x) = x * σ x := by … - theorem
Algebra.IsQuadraticExtension.trace_algebraMap_add_algebraMap_mulThe trace ofb + aθin a separable quadratic extension isa·tr(θ) + 2bline 45 sourceSource documentation
The trace of
b + aθin a separable quadratic extension isa·tr(θ) + 2b.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Algebra,Algebra.IsQuadraticExtension,Algebra.IsSeparable,Eq,LinearMap,RingHom.id,Algebra.trace,HAdd.hAdd,RingHom,Algebra.algebraMap,HMul.hMul,OfNat.ofNat,NatProof uses:
AlgEquiv,Ne,Exists, Algebra.IsQuadraticExtension.exists_algEquiv_ne_one,FaithfulSMul.algebraMap_injective,Eq.mpr,id,congr,congrArg,Eq.trans,map_add, Algebra.IsQuadraticExtension.algebraMap_trace_eq_add,AlgEquiv.commutes,map_mul,MonoidHom.id,congrFun',map_ofNat,Mathlib.Tactic.Ring.of_eq,HPow.hPow,Nat.rawCastand 25 more97 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
theorem Algebra.IsQuadraticExtension.trace_algebraMap_add_algebraMap_mul (a b : K) (θ : L) : Algebra.trace K L (algebraMap K L b + algebraMap K L a * θ) = a * Algebra.trace K L θ + 2 * b := by … - theorem
Algebra.IsQuadraticExtension.norm_algebraMap_add_algebraMap_mulThe norm ofb + aθin a separable quadratic extension isb² + ab·tr(θ) + a²·N(θ)line 54 sourceSource documentation
The norm of
b + aθin a separable quadratic extension isb² + ab·tr(θ) + a²·N(θ).standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Algebra,Algebra.IsQuadraticExtension,Algebra.IsSeparable,Eq,MonoidHom,Algebra.norm,HAdd.hAdd,RingHom,Algebra.algebraMap,HMul.hMul,HPow.hPow,Nat,OfNat.ofNat,LinearMap,RingHom.id,Algebra.traceProof uses:
AlgEquiv,Ne,Exists, Algebra.IsQuadraticExtension.exists_algEquiv_ne_one,FaithfulSMul.algebraMap_injective,Eq.mpr,id,congr,congrArg,Eq.trans, Algebra.IsQuadraticExtension.algebraMap_norm_eq_mul,map_add,AlgEquiv.commutes,map_mul,MonoidHom.id,congrFun',map_pow, Algebra.IsQuadraticExtension.algebraMap_trace_eq_add,Mathlib.Tactic.Ring.of_eq,Nat.rawCastand 30 more107 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
theorem Algebra.IsQuadraticExtension.norm_algebraMap_add_algebraMap_mul (a b : K) (θ : L) : Algebra.norm K (algebraMap K L b + algebraMap K L a * θ) = b ^ 2 + a * b * Algebra.trace K L θ + a ^ 2 * Algebra.norm K θ := by … - theorem
Algebra.IsQuadraticExtension.discrim_ne_zeroDocumented declaration: discrim_ne_zero line 68 sourceSource documentation
If
θgenerates a separable quadratic extension ofK— that is, lies outsideK— andt,ndenote its trace and norm, so thatθ² = tθ - n, then the discriminantt² - 4nof the minimal polynomial ofθis nonzero. (Over the nontrivial automorphismσit equals(θ - σθ)²withσθ ≠ θ. In characteristic 2 the statement sayst ≠ 0: separable quadratic extensions are Artin–Schreier extensions.)standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Algebra,Algebra.IsQuadraticExtension,Algebra.IsSeparable,Not,Membership.mem,Set,Set.range,RingHom,Algebra.algebraMap,Ne,HSub.hSub,HPow.hPow,Nat,LinearMap,RingHom.id,Algebra.trace,OfNat.ofNat,HMul.hMul,MonoidHomand 1 moreProof uses:
AlgEquiv,Exists, Algebra.IsQuadraticExtension.exists_algEquiv_ne_one,Eq,congrArg,Mathlib.Tactic.LinearCombination.eq_of_eq,HAdd.hAdd,Eq.mp,congr,Eq.trans,map_sub,map_pow,congrFun', Algebra.IsQuadraticExtension.algebraMap_trace_eq_add,map_mul,map_ofNat, Algebra.IsQuadraticExtension.algebraMap_norm_eq_mul,map_zero,Mathlib.Tactic.LinearCombination.eq_rearrange,Mathlib.Tactic.Ring.of_eqand 67 more133 instances, coercions and auxiliary constants left out.
Tactic trace: 7 steps
Open to load the checked before-and-after goal states.
theorem Algebra.IsQuadraticExtension.discrim_ne_zero {θ : L} (hθ : θ ∉ Set.range (algebraMap K L)) : Algebra.trace K L θ ^ 2 - 4 * Algebra.norm K θ ≠ 0 := by … - theorem
Algebra.IsQuadraticExtension.trace_eq_zero_of_sq_eqA square rootα ∉ Kof an element ofKhas trace0: the nontrivial automorphism sendsαto-α(Algebra.IsQuadraticExtension.algEquiv_apply_eq_neg_of_sq_eq) line 83 sourceSource documentation
A square root
α ∉ Kof an element ofKhas trace0: the nontrivial automorphism sendsαto-α(Algebra.IsQuadraticExtension.algEquiv_apply_eq_neg_of_sq_eq).standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Algebra,Algebra.IsQuadraticExtension,Algebra.IsSeparable,Not,Membership.mem,Set,Set.range,RingHom,Algebra.algebraMap,Eq,HPow.hPow,Nat,OfNat.ofNat,LinearMap,RingHom.id,Algebra.traceProof uses:
AlgEquiv,Ne,Exists, Algebra.IsQuadraticExtension.exists_algEquiv_ne_one,FaithfulSMul.algebraMap_injective,Eq.mpr,HAdd.hAdd,id,congrArg, Algebra.IsQuadraticExtension.algebraMap_trace_eq_add,Neg.neg, Algebra.IsQuadraticExtension.algEquiv_apply_eq_neg_of_sq_eq,map_zero,add_neg_cancel,Eq.refl84 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
theorem Algebra.IsQuadraticExtension.trace_eq_zero_of_sq_eq {α : L} {d : K} (hαK : α ∉ Set.range (algebraMap K L)) (hα : α ^ 2 = algebraMap K L d) : Algebra.trace K L α = 0 := by … - theorem
Algebra.IsQuadraticExtension.norm_eq_neg_of_sq_eqA square rootα ∉ Kofd ∈ Khas norm-d: the nontrivial automorphism sendsαto-α(Algebra.IsQuadraticExtension.algEquiv_apply_eq_neg_of_sq_eq) line 93 sourceSource documentation
A square root
α ∉ Kofd ∈ Khas norm-d: the nontrivial automorphism sendsαto-α(Algebra.IsQuadraticExtension.algEquiv_apply_eq_neg_of_sq_eq).standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Algebra,Algebra.IsQuadraticExtension,Algebra.IsSeparable,Not,Membership.mem,Set,Set.range,RingHom,Algebra.algebraMap,Eq,HPow.hPow,Nat,OfNat.ofNat,MonoidHom,Algebra.norm,Neg.negProof uses:
AlgEquiv,Ne,Exists, Algebra.IsQuadraticExtension.exists_algEquiv_ne_one,FaithfulSMul.algebraMap_injective,Eq.mpr,HMul.hMul,id,congrArg, Algebra.IsQuadraticExtension.algebraMap_norm_eq_mul, Algebra.IsQuadraticExtension.algEquiv_apply_eq_neg_of_sq_eq,map_neg,Eq.symm,Mathlib.Tactic.Ring.of_eq,HAdd.hAdd,Nat.rawCast,Int.rawCast,inferInstance,Ring,Int.negOfNatand 35 more92 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
theorem Algebra.IsQuadraticExtension.norm_eq_neg_of_sq_eq {α : L} {d : K} (hαK : α ∉ Set.range (algebraMap K L)) (hα : α ^ 2 = algebraMap K L d) : Algebra.norm K α = -d := by …