Arithmetic functions on nonzero ideals #
For the intended number-field applications, an ideal-indexed Dirichlet series should not assign an arithmetic coefficient to the zero ideal. Excluding it ensures that ideal convolution never considers factorizations through the zero ideal. This file introduces the carrier used throughout the arithmetic-Dirichlet-series roadmap, parameterized over an arbitrary field:
TauCeti.IdealArithmeticFunction Kis a complex-valued function on the nonzero ideals of𝓞 K;TauCeti.IdealArithmeticFunction.zeroExtendis its canonical extension to all integral ideals, with value zero at the zero ideal;TauCeti.IdealArithmeticFunction.restrictrestricts a function on all ideals to the nonzero ideals;TauCeti.IdealArithmeticFunction.mapandTauCeti.IdealArithmeticFunction.mapEquiv: functoriality under an isomorphismK ≃+* Lof the ambient fields.
It also carries the multiplicativity predicate
TauCeti.IdealArithmeticFunction.IsMultiplicative — value 1 at the unit ideal, multiplicative on
relatively prime nonzero ideals — together with its two factorization consequences:
IsMultiplicative.map_prod for a pairwise relatively prime finite product, and, over a number
field, IsMultiplicative.map_prod_pow for a prime-power factorization of a nonzero ideal, the
factorizations themselves being supplied by Ideal.exists_eq_prod_pow.
The two operations are inverse precisely on functions vanishing at the zero ideal. The resulting
existence-and-uniqueness API is recorded without exposing the implementation of zeroExtend:
TauCeti.IdealArithmeticFunction.existsUnique_zeroExtend_eq characterizes its image, while
TauCeti.IdealArithmeticFunction.zeroExtend_injective says that no information is lost.
The extension respects the pointwise additive, scalar, and multiplicative operations. It does not
preserve the pointwise unit: the constant-one function on all ideals takes value one at the zero
ideal, and therefore cannot be a zero extension. The theorem
TauCeti.IdealArithmeticFunction.not_exists_zeroExtend_eq_one is the zero-ideal rejection test
required by Layer 0 of the roadmap.
Roadmap role #
This is Layer 0.1 of TauCetiRoadmap/ArithmeticDirichletSeries/README.md, and is the common
carrier on which its norm regrouping, ideal convolution, Euler products, and summatory functions
are built. Later Layer 0 files add completely multiplicative and unitary subtypes; those are
special coefficient systems on this general carrier, not replacements for it.
References #
TauCetiRoadmap/ArithmeticDirichletSeries/Suggested.lean, whose Layer 0.1 nonzero-ideal carrier and zero-extension design are adapted here.- J. Neukirch, Algebraic Number Theory, Chapter VII.
- G. Tenenbaum, Introduction to Analytic and Probabilistic Number Theory, Chapters II--III.
An ideal arithmetic function over a field K: a complex-valued function on the nonzero
ideals of 𝓞 K.
The domain is (Ideal (𝓞 K))⁰, Mathlib's non-zero-divisor submonoid. Since the ring of integers is
a domain, its elements are exactly the ideals different from ⊥. For number fields, keeping ⊥
out of the carrier ensures that later divisor sums use only the nonzero-ideal factorization
theory.
Equations
- TauCeti.IdealArithmeticFunction K = (↥(nonZeroDivisors (Ideal (NumberField.RingOfIntegers K))) → ℂ)
Instances For
An ideal arithmetic function is multiplicative when it takes the unit ideal to 1 and
respects products of relatively prime nonzero ideals. This is weaker than the complete
multiplicativity carried by MultiplicativeIdealWeight.
A multiplicative ideal arithmetic function takes the unit ideal to
1.- map_mul_of_isRelPrime {I J : ↥(nonZeroDivisors (Ideal (NumberField.RingOfIntegers K)))} (hIJ : IsRelPrime ↑I ↑J) : f (I * J) = f I * f J
A multiplicative ideal arithmetic function respects products of relatively prime ideals.
Instances For
The everywhere-one ideal arithmetic function is multiplicative.
Pointwise products of multiplicative ideal arithmetic functions are multiplicative.
Complex conjugation preserves multiplicativity of ideal arithmetic functions.
A multiplicative ideal arithmetic function factors over pairwise relatively prime
products. This is the ideal analogue of Mathlib's
ArithmeticFunction.IsMultiplicative.map_prod.
Passing from a pairwise hypothesis to relative primality against the whole product is exactly
Mathlib's IsRelPrime.prod_right, which needs DecompositionMonoid (Ideal (𝓞 K)); that is all
the ambient arithmetic this statement uses, and [NumberField K] supplies it.
A multiplicative ideal arithmetic function factors over a prime-power factorization.
Unique factorization writes every nonzero ideal as a product ∏ P ∈ S, P ^ e P over a finite set
of height-one primes (Ideal.exists_eq_prod_pow), and a multiplicative f takes such a product to
the product of its values on the prime powers.
Extend an ideal arithmetic function to all integral ideals by assigning zero to ⊥.
Use zeroExtend_bot and zeroExtend_coe to simplify its two characteristic cases, rather than
unfolding this definition.
Equations
- f.zeroExtend I = Function.extend Subtype.val f 0 I
Instances For
Restrict a function on all integral ideals to the nonzero ideals.
Equations
Instances For
The zero extension is zero at the zero ideal.
Away from ⊥, the zero extension is the original ideal arithmetic function.
The zero extension agrees with the original function on every nonzero ideal.
Restricting a zero extension recovers the original ideal arithmetic function.
Extending a restriction recovers a function on all ideals exactly when it vanishes at ⊥.
A function on all ideals is a zero extension if and only if it vanishes at ⊥.
Zero extension is injective: its values on nonzero ideals retain the entire function.
Two zero extensions agree exactly when the underlying ideal arithmetic functions agree.
A function on all ideals that vanishes at ⊥ is the zero extension of a unique ideal
arithmetic function.
The zero extension is zero exactly at ⊥ when the original function has no zero values.
If the original function does not vanish, its zero extension is nonzero at every nonzero ideal.
Compatibility with pointwise operations #
Zero extension preserves the pointwise zero function.
Zero extension preserves pointwise addition.
Zero extension preserves pointwise negation.
Zero extension preserves pointwise subtraction.
Zero extension preserves pointwise complex scalar multiplication.
Zero extension preserves pointwise multiplication.
Rejection test. The everywhere-one function on all integral ideals is not the zero
extension of any ideal arithmetic function, since its value at ⊥ is one rather than zero. This
is the roadmap's zero-ideal rejection test. Compare
TauCeti.IdealArithmeticFunction.zeroExtend_one_apply, which computes the zero extension of the
constant function 1 on the nonzero ideals.
The constant-one function on nonzero ideals extends to the indicator of ideals unequal to
⊥.
Functoriality under an isomorphism of fields #
Transport along an isomorphism of fields. An isomorphism e : K ≃+* L carries an ideal
arithmetic function for K to one for L: the value at a nonzero ideal of 𝓞 L is the value
of f at its preimage in 𝓞 K under NumberField.RingOfIntegers.mapRingEquiv e.
Equations
Instances For
Defining equation of TauCeti.IdealArithmeticFunction.map: the value at a nonzero ideal
of 𝓞 L is the zero extension of f at its preimage in 𝓞 K.
Transport is compatible with extension by zero: both extensions send an ideal of 𝓞 L
to the value of f at its preimage in 𝓞 K, the zero ideal included.
Transporting along the identity field isomorphism is the identity.
Transport along an isomorphism of fields, as an equivalence of the two carriers, with
inverse the transport along e.symm.
Equations
- TauCeti.IdealArithmeticFunction.mapEquiv e = { toFun := TauCeti.IdealArithmeticFunction.map e, invFun := TauCeti.IdealArithmeticFunction.map e.symm, left_inv := ⋯, right_inv := ⋯ }
Instances For
Transport preserves the pointwise structure inherited from Pi.