Congruence and continuity properties of the truncations of a p-adic integer #
Mathlib's PadicInt.appr x n is the natural number below p ^ n congruent to x modulo
p ^ n, and PadicInt.toZModPow n is the induced ring homomorphism to ZMod (p ^ n). This
file records the arithmetic dictionary between the two, the congruences that make appr
behave like a ring homomorphism modulo p ^ n, and the continuity of toZModPow.
The congruences are exactly what is needed to raise an element of p-power order in a monoid
to a p-adic exponent: g ^ x.appr n does not change when n grows past the order of g
(PadicInt.pow_appr_eq_pow_appr), so such powers assemble into a well-defined action of
ℤ_[p].
Main results #
PadicInt.val_toZModPow_eq_appr:apprcomputes theZMod (p ^ n)-value oftoZModPow.PadicInt.continuous_toZModPow,PadicInt.continuous_toZMod: truncation modulop ^ nand reduction modulopare continuous,ZMod (p ^ n)andZMod pcarrying the discrete topology.PadicInt.toZMod_eq_zero_iff_dvd,PadicInt.toZModPow_eq_zero_iff_dvd: the kernels of reduction and truncation, as divisibility statements.PadicInt.cast_toZModPow_eq_toZMod: reducing the truncation modulop ^ nfurther moduloprecoverstoZMod.PadicInt.dvd_sub_appr:x - appr x nis divisible byp ^ ninℤ_[p].PadicInt.appr_modEq,PadicInt.appr_add_modEq,PadicInt.appr_mul_modEq,PadicInt.appr_natCast_modEq: the truncations are compatible with each other and with the ring operations, modulop ^ n.PadicInt.appr_natCast_pow_of_le: the truncation ofp ^ mmodulop ^ nis0forn ≤ m.PadicInt.pow_appr_eq_pow_appr: raising an element ofp-power order to the truncated exponent is independent of the truncation level, once that level is large enough.PadicInt.quotientSpanPowEquivZMod:toZModPow nidentifiesℤ_[p] ⧸ (p ^ n)withZMod (p ^ n).PadicInt.span_singleton_eq_span_pow_valuation,PadicInt.quotientSpanEquivZMod,PadicInt.natCard_quotient_span,PadicInt.isAddCyclic_quotient_span: a nonzeroxgenerates the same ideal asp ^ vforvits valuation, soℤ_[p] ⧸ (x)isZMod (p ^ v), a finite ring of cardinalityp ^ vwhose additive group is cyclic.PadicInt.valuation_natCast,PadicInt.valuation_eq_zero_of_isUnit,PadicInt.one_le_valuation_of_dvd: the valuation of a natural number is itsp-adic valuation, units have valuation0, and a nonzero multiple ofphas valuation at least1.PadicInt.quotientSpanToZMod,PadicInt.quotientSpanToZModPow: forp ∣ q, respectivelyp ^ n ∣ q, reduction modulop, respectively truncation modulop ^ n, descends to a continuous ring homomorphism out ofℤ_[p] ⧸ (q).PadicInt.surjective_units_map_toZModPow: every unit ofZMod (p ^ n)lifts to a unit ofℤ_[p].PadicInt.unitsToZModPow: truncation modulop ^ non the units ofℤ_[p], as a continuous homomorphism to the units ofZMod (p ^ n).PadicInt.finite_residueField,PadicInt.card_residueField: the residue field ofℤ_[p]is finite of cardinalityp.
The residue field of ℤ_p is finite, being ℤ/pℤ.
The residue field of ℤ_p has p elements.
Truncation modulo p ^ n is continuous: its fibres are the closed balls of radius
p ^ (-n), which are open because the p-adic distance is ultrametric.
Reduction modulo p is continuous: its fibres are those of the truncation toZModPow 1,
both kernels being the maximal ideal (p).
The truncation toZModPow n identifies the quotient of ℤ_[p] by the ideal (p ^ n) with
ZMod (p ^ n). This is the p ^ n analogue of PadicInt.residueField.
Equations
Instances For
The quotient of ℤ_[p] by the ideal generated by a nonzero element x is ZMod (p ^ v),
where v is the valuation of x: the ideal (x) is (p ^ v), and toZModPow v identifies the
quotient with ZMod (p ^ v).
Equations
Instances For
The valuation of a natural number in ℤ_[p] is its p-adic valuation.
Reduction modulo p of ℤ_[p] ⧸ (q) is continuous for the quotient topology.
Truncation modulo p ^ n of ℤ_[p] ⧸ (q) is continuous for the quotient topology.
Every unit of ZMod (p ^ n) lifts to a unit of ℤ_[p]. For n > 0 this holds because
truncation is a surjective local homomorphism out of the local ring ℤ_[p]; for n = 0 the
target ZMod 1 is the trivial ring, so there is nothing to lift.
Truncation modulo p ^ n on the units of ℤ_[p], as a continuous homomorphism to the units of
ZMod (p ^ n).
Equations
- PadicInt.unitsToZModPow n = { toMonoidHom := Units.map ↑(PadicInt.toZModPow n), continuous_toFun := ⋯ }
Instances For
Raising an element killed by p ^ m to the exponent x.appr n gives the same value for
every truncation level n ≥ m. This is what makes the p-adic power well defined.