FLT/Mathlib/NumberTheory/Padics/PadicIntegers.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
16 declarations, 0 contain sorry, 0 declared as axioms
TODO
- Rename
Coe.ringHomtocoeRingHom - Protect
PadicInt.norm_mul,PadicInt.norm_units,PadicInt.norm_pow
Imports (3)
Imported by 3 files
- lemma
PadicInt.coe_coeRingHomline 31 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fact,Nat.Prime,Eq,PadicInt,Padic,RingHom,PadicInt.Coe.ringHom,Membership.mem,Subring,PadicInt.subringProof uses:
rfl24 instances, coercions and auxiliary constants left out.
- lemma
PadicInt.coe_injectiveline 33 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fact,Nat.Prime,Function.Injective,Subtype,Padic,Membership.mem,Subring,PadicInt.subringProof uses:
Subtype.val_injective11 instances, coercions and auxiliary constants left out.
- instance
PadicInt.(instance at line 37)line 37 source - lemma
PadicInt.nnnorm_pline 39 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fact,Nat.Prime,Eq,NNReal,NNNorm.nnnorm,PadicInt,Inv.invProof uses:
Eq.mpr,NNReal.mk,Real,Norm.norm,LE.le,OfNat.ofNat,norm_nonneg,PadicInt.norm_p,id,congrFun',congrArg,NNReal.mk.congr_simp,Eq.refl43 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
PadicInt.nnnorm_unitsline 41 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fact,Nat.Prime,Units,PadicInt,Eq,NNReal,NNNorm.nnnorm,OfNat.ofNatProof uses:
of_eq_true,Eq.trans,True,congrFun',congrArg,Real.toNNReal,Norm.norm,Real,PadicInt.norm_units,Real.toNNReal_one,eq_self31 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
PadicInt.exists_unit_mul_p_pow_eqline 44 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fact,Nat.Prime,PadicInt,Ne,OfNat.ofNat,Exists,Units,Eq,HMul.hMul,HPow.hPowProof uses:
Exists.intro,PadicInt.unitCoeff,PadicInt.valuation,Eq.symm,PadicInt.unitCoeff_spec38 instances, coercions and auxiliary constants left out.
- lemma
PadicInt.image_coe_smul_setline 47 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fact,Nat.Prime,PadicInt,Set,Eq,Padic,Set.image,Membership.mem,Subring,PadicInt.subring,HSMul.hSMulProof uses:
Set.image_comm,rfl37 instances, coercions and auxiliary constants left out.
- instance
PadicInt.(instance at line 51)line 51 sourceSource comment
Yaël: Do we really want this as a coercion?noncomputable instance : Coe ℤ_[p]ˣ ℚ_[p]ˣ where coe := Units.map Coe.ringHom.toMonoidHom
- lemma
PadicInt._root_.AddSubgroup.comap_smul_oneline 53 source - lemma
PadicInt.index_span_p_powline 66 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fact,Nat.Prime,PadicInt,Ne,OfNat.ofNat,Eq,NNReal,AddSubgroup.index,Submodule.toAddSubgroup,Ideal.span,Singleton.singleton,Set,HPow.hPow,PadicInt.valuation,Inv.inv,NNNorm.nnnorm,Padic,Membership.mem,Subringand 1 moreProof uses:
RingEquiv,HasQuotient.Quotient,Ideal,RingHom.ker,ZMod,RingHom,PadicInt.toZModPow,RingHom.quotientKerEquivOfSurjective,ZMod.ringHom_surjective,Nat.card,Nat.card_congr,RingEquiv.toEquiv,Ideal.quotEquivOfEq,PadicInt.ker_toZModPow,AddSubgroup,rfl,of_eq_true,Eq.trans,Real,Trueand 18 more123 instances, coercions and auxiliary constants left out.
Tactic trace: 7 steps
Open to load the checked before-and-after goal states.
- lemma
PadicInt.smul_submodule_one_indexline 83 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fact,Nat.Prime,PadicInt,Eq,NNReal,AddSubgroup.index,Submodule.toAddSubgroup,HSMul.hSMul,Submodule,OfNat.ofNat,Inv.inv,NNNorm.nnnorm,Padic,Membership.mem,Subring,PadicInt.subringProof uses:
dite,Classical.propDecidable,of_eq_true,Eq.trans,True,congr,congrArg,Nat.card,Bot.bot,AddSubgroup,Top.top,Ideal,Ideal.one_eq_top,zero_smul,AddSubgroup.index_bot,Nat.card_eq_zero_of_infinite,CharP.cast_eq_zero,nnnorm_zero,inv_zero,eq_selfand 20 more133 instances, coercions and auxiliary constants left out.
Tactic trace: 7 steps
Open to load the checked before-and-after goal states.
- lemma
PadicInt.smul_submodule_one_relIndexx • Shas index‖x‖⁻¹inS, whereSis the copy ofℤ_[p]insideℚ_[p]line 94 sourceSource documentation
x • Shas index‖x‖⁻¹inS, whereSis the copy ofℤ_[p]insideℚ_[p]standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fact,Nat.Prime,PadicInt,Eq,NNReal,AddSubgroup.relIndex,Padic,HSMul.hSMul,AddSubgroup,Submodule.toAddSubgroup,OfNat.ofNat,Submodule,Inv.inv,NNNorm.nnnorm,Membership.mem,Subring,PadicInt.subringProof uses:
AddSubgroup.index, PadicInt.smul_submodule_one_index,AddMonoidHom,RingHom.toAddMonoidHom,PadicInt.Coe.ringHom,AddSubgroup.comap,Top.top,AddSubgroup.map,AddSubgroup.relIndex_comap,AddSubgroup.ext,of_eq_true,Iff,Eq.trans,Exists,True,congr,congrArg,RingHom,And,funextand 15 more131 instances, coercions and auxiliary constants left out.
Tactic trace: 14 steps
Open to load the checked before-and-after goal states.
lemma smul_submodule_one_relIndex : (x • (1 : Submodule ℤ_[p] ℚ_[p]).toAddSubgroup).relIndex (1 : Submodule ℤ_[p] ℚ_[p]).toAddSubgroup = ‖x.val‖₊⁻¹ := by … - lemma
PadicInt.smul_submodule_one_isFiniteRelIndexx • Shas finite inS, whereSis the copy ofℤ_[p]insideℚ_[p]line 120 sourceSource documentation
x • Shas finite inS, whereSis the copy ofℤ_[p]insideℚ_[p]standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fact,Nat.Prime,PadicInt,Ne,OfNat.ofNat,AddSubgroup.IsFiniteRelIndex,Padic,HSMul.hSMul,AddSubgroup,Submodule.toAddSubgroup,SubmoduleProof uses:
AddSubgroup.IsFiniteRelIndex.mk,Eq.mpr,AddSubgroup.relIndex,NNReal,id,Eq,congrArg,Eq.symm,propext,Nat.cast_ne_zero,of_eq_true,Eq.trans,Inv.inv,NNNorm.nnnorm,Membership.mem,Subring,PadicInt.subring,True,congrFun', PadicInt.smul_submodule_one_relIndex and 4 more102 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
lemma smul_submodule_one_isFiniteRelIndex (hx : x ≠ 0) : (x • (1 : Submodule ℤ_[p] ℚ_[p]).toAddSubgroup).IsFiniteRelIndex (1 : Submodule ℤ_[p] ℚ_[p]).toAddSubgroup where … - instance
PadicInt.(instance at line 128)line 128 sourceSource comment
Yaël: Do we really want this as a coercion?noncomputable instance : Coe ℤ_[p]⁰ ℚ_[p]ˣ where …
- lemma
PadicInt.closure_nonZeroDivisors_padicIntNon-zero p-adic integers generate non-zero p-adic numbers as a group line 134 sourceSource documentation
Non-zero p-adic integers generate non-zero p-adic numbers as a group.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fact,Nat.Prime,Eq,Subgroup,Units,Padic,Subgroup.closure,Set.range,Subtype,PadicInt,Membership.mem,Submonoid,nonZeroDivisors,Units.mk0,Subring,PadicInt.subring,Top.topProof uses:
Eq.mpr,id,congrArg,rfl,propext,Subgroup.eq_top_iff',Exists,And,HDiv.hDiv,RingHom,Algebra.algebraMap,IsFractionRing.div_surjective,Not,OfNat.ofNat,False,False.elim,Eq.mp,Eq.trans,congrFun',zero_divand 13 more79 instances, coercions and auxiliary constants left out.
Tactic trace: 11 steps
Open to load the checked before-and-after goal states.
lemma closure_nonZeroDivisors_padicInt : Subgroup.closure (Set.range ((↑) : ℤ_[p]⁰ → ℚ_[p]ˣ)) = ⊤ := by … - lemma
Padic.submodule_one_eq_closedBallline 153 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fact,Nat.Prime,Eq,Set,Padic,Submodule,PadicInt,OfNat.ofNat,Metric.closedBall,RealProof uses:
Set.ext,Eq.mpr,Iff,Membership.mem,Exists,Subring,PadicInt.subring,LE.le,Norm.norm,id,congr,congrArg,Eq.trans,RingHom,Algebra.algebraMap,Dist.dist,congrFun',dist_zero_right,of_eq_true,Trueand 9 more67 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.