Documentation

TauCeti.NumberTheory.ArithmeticDirichletSeries.Convolution

Ideal convolution of ideal arithmetic functions #

The Dirichlet convolution of two arithmetic functions on the nonzero ideals of the ring of integers of a number field K sums over the factorizations B * C = A of a nonzero ideal A. This file constructs that index set, defines the convolution, and proves that it makes TauCeti.IdealArithmeticFunction K a commutative monoid with identity TauCeti.IdealArithmeticFunction.delta, bilinear over the pointwise additive structure. It also transports this operation through TauCeti.normCoeff to Mathlib's Dirichlet convolution on ArithmeticFunction β„‚.

Main definitions #

Main results #

Implementation notes #

TauCeti.IdealArithmeticFunction K is a Pi type, so it already carries Mathlib's pointwise CommRing structure, in which f * g is fun A => f A * g A and 1 is the everywhere-one function. Convolution is therefore deliberately not registered as a Mul instance and its identity is the separate function TauCeti.IdealArithmeticFunction.delta; this is the roadmap's convention that pointwise multiplication and ideal convolution stay distinct operations on one carrier. The monoid laws are stated as ordinary theorems about TauCeti.IdealArithmeticFunction.convolution, and TauCeti.IdealArithmeticFunction.convolution_one_one_ne_mul records that the two products really do differ. Consequently iterated convolution is the explicit TauCeti.IdealArithmeticFunction.convolutionPow rather than a Monoid.npow.

Excluding the zero ideal from the carrier is what makes the index set finite: βŠ₯ * J = βŠ₯ for every J, so the zero ideal has infinitely many factorizations while a nonzero ideal has only finitely many, by Mathlib's UniqueFactorizationMonoid.fintypeSubtypeDvd for the unique factorization monoid Ideal (π“ž K).

Roadmap role #

This is Layer 2.1 of TauCetiRoadmap/ArithmeticDirichletSeries/README.md, built on the Layer 0.1 carrier of TauCeti/NumberTheory/ArithmeticDirichletSeries/Basic.lean. Its consumers are the ideal MΓΆbius function and von Mangoldt transform of Layer 2 and the local factors of Layer 3.

References #

The convolution identity #

The delta function on nonzero ideals: 1 at the unit ideal and 0 elsewhere. It is the identity for ideal convolution. It is not the pointwise unit (1 : IdealArithmeticFunction K), which is the everywhere-one function.

Equations
Instances For
    @[simp]

    The delta function takes the value 1 at the unit ideal.

    @[simp]

    The delta function vanishes away from the unit ideal.

    The convolution identity is multiplicative.

    The antidiagonal of a nonzero ideal #

    A nonzero ideal admits only finitely many factorizations into two nonzero ideals. This is where the exclusion of βŠ₯ from the carrier bites: every ideal J satisfies βŠ₯ * J = βŠ₯.

    The antidiagonal of a nonzero ideal A: the finite set of pairs (B, C) of nonzero ideals with B * C = A. It is the index set of the ideal Dirichlet convolution, and the ideal analogue of Mathlib's Nat.divisorsAntidiagonal.

    Equations
    Instances For
      @[simp]

      A pair lies in the antidiagonal of A exactly when its two entries multiply to A.

      The first entry of an antidiagonal pair divides A.

      The second entry of an antidiagonal pair divides A.

      @[simp]

      The unit ideal factors only as 1 * 1.

      Every nonzero ideal other than the unit ideal has at least the two factorizations 1 * A and A * 1.

      Ideal convolution #

      The ideal Dirichlet convolution of two ideal arithmetic functions: the value at a nonzero ideal A is the sum of f B * g C over the factorizations B * C = A into nonzero ideals.

      Equations
      Instances For
        @[simp]

        The defining formula for ideal convolution.

        At the unit ideal, convolution is the product of the two values there.

        The monoid laws #

        Ideal convolution is commutative.

        Ideal convolution is associative.

        @[simp]

        The delta function is a left identity for ideal convolution.

        @[simp]

        The delta function is a right identity for ideal convolution.

        Bilinearity over the pointwise additive structure #

        @[simp]

        Convolving with the zero function gives zero.

        @[simp]

        Convolving the zero function with anything gives zero.

        Ideal convolution distributes over pointwise addition on the right.

        Ideal convolution distributes over pointwise addition on the left.

        Ideal convolution is homogeneous in its second argument.

        Ideal convolution is homogeneous in its first argument.

        Ideal convolution commutes with pointwise negation on the right.

        Ideal convolution commutes with pointwise negation on the left.

        Ideal convolution distributes over pointwise subtraction on the right.

        Ideal convolution distributes over pointwise subtraction on the left.

        Iterated convolution #

        @[simp]

        The empty convolution power is the convolution identity.

        @[simp]

        The recursion defining the convolution powers.

        The first convolution power is the function itself.

        The recursion defining the convolution powers, with the new factor on the left.

        Convolution powers add exponents.

        Convolution is not the pointwise product #

        Convolving the everywhere-one function with itself counts the factorizations of a nonzero ideal: this is the ideal divisor-counting function.

        The rejection test against confusing the two products on IdealArithmeticFunction K: ideal convolution is not the pointwise multiplication carried by the Pi ring structure. The everywhere-one function is a pointwise unit, whereas convolving it with itself counts factorizations, and the ring of integers of a number field is not a field, so some nonzero ideal has more than one factorization.

        Compatibility with Dirichlet convolution #

        @[simp]

        Regrouping sends the identity for ideal convolution to the identity for Mathlib's Dirichlet convolution.

        @[simp]

        Regrouping by absolute norm transports ideal convolution to Mathlib's Dirichlet convolution of arithmetic functions.

        Regrouping transports iterated ideal convolution to powers under Mathlib's Dirichlet convolution.