Documentation

Mathlib.NumberTheory.Padics.PadicVal.Defs

p-adic Valuation #

This file defines the p-adic valuation on , , and .

The p-adic valuation on is the difference of the multiplicities of p in the numerator and denominator of q. This function obeys the standard properties of a valuation, with the appropriate assumptions on p. The p-adic valuations on and agree with that on .

The valuation induces a norm on . This norm is defined in Mathlib/NumberTheory/Padics/PadicNorm.lean.

theorem padicValNat_eq_emultiplicity_of_ne_one {p : } (hp : p 1) {n : } (hn : n 0) :
(padicValNat p n) = emultiplicity p n
theorem padicValNat_def' {p n : } (hp : p 1) (hn : n 0) :
theorem padicValNat_def {p : } [hp : Fact (Nat.Prime p)] {n : } (hn : n 0) :

A simplification of padicValNat when one input is prime, by analogy with padicValRat_def.

theorem padicValNat_eq_emultiplicity {p : } [hp : Fact (Nat.Prime p)] {n : } (hn : n 0) :
(padicValNat p n) = emultiplicity p n

A simplification of padicValNat when one input is prime, by analogy with padicValRat_def.

@[deprecated padicValNat_eq_emultiplicity (since := "2026-03-15")]
theorem padicValNat.maxPowDiv_eq_emultiplicity {p : } [hp : Fact (Nat.Prime p)] {n : } (hn : n 0) :
(padicValNat p n) = emultiplicity p n

Alias of padicValNat_eq_emultiplicity.


A simplification of padicValNat when one input is prime, by analogy with padicValRat_def.

@[deprecated padicValNat_def' (since := "2026-03-15")]
theorem padicValNat.maxPowDiv_eq_multiplicity {p n : } (hp : p 1) (hn : n 0) :

Alias of padicValNat_def'.

@[deprecated padicValNat_zero_right (since := "2026-03-15")]
theorem padicValNat.zero {p : } :
padicValNat p 0 = 0
@[deprecated padicValNat_one_right (since := "2026-03-15")]
theorem padicValNat.one {p : } :
padicValNat p 1 = 0
@[simp]
theorem padicValNat.eq_zero_iff {p n : } :
padicValNat p n = 0 p = 1 n = 0 ¬p n
theorem le_emultiplicity_iff_replicate_subperm_primeFactorsList {a b n : } (ha : Nat.Prime a) (hb : b 0) :
n emultiplicity a b (List.replicate n a).Subperm b.primeFactorsList
theorem le_padicValNat_iff_replicate_subperm_primeFactorsList {a b n : } (ha : Nat.Prime a) (hb : b 0) :
n padicValNat a b (List.replicate n a).Subperm b.primeFactorsList