The projection $\pi_q f : \mathbb{Z}/q \to \mathbb{C}$ of an arithmetic function $f : \mathbb{N} \to \mathbb{C}$ truncated to $[0, N)$: at $a \in \mathbb{Z}/q$ it sums $f(n)$ over $n < N$ with $n \equiv a \pmod q$.
Instances For
Swap the order of four nested sums (two over ZMod q, two over Finset.range N)
so that the n, m sums are outermost — used to rearrange double sums in the
projection-of-convolution computation.
Expanding the mod-$q$ multiplicative convolution of two truncated projections: $\bigl(\pi_q f *_M \pi_q g\bigr)(a) = \sum_{n, m < N,\ nm \equiv a} f(n)\, g(m)$.
If $f, g$ are supported on positive integers $< N$, then for $n < N^2$ the truncated product-sum $\sum_{(d_1, d_2) \in [0,N)^2,\ d_1 d_2 = n} f(d_1) g(d_2)$ equals the sum over the full divisor antidiagonal $\sum_{d_1 d_2 = n} f(d_1) g(d_2)$.
Projection of multiplicative convolution (pointwise form): if $f, g$ are supported on positive integers $< N$, then $\pi_q(f *_M g)(a) = (\pi_q f *_M \pi_q g)(a)$, where the truncation on the left is taken at $N^2$.
Projection-of-convolution identity for ArithmeticFunctions: with the support hypotheses
on $f, g$, we have $\pi_q(f * g)(a) = (\pi_q f *_M \pi_q g)(a)$ (here f * g is Dirichlet
convolution of arithmetic functions).
Functional form of the projection-of-convolution identity: under the support hypotheses, $\pi_q(f *_M g) = \pi_q f *_M \pi_q g$ as functions on $\mathbb{Z}/q$.
Projection of multiplicative convolution (positive-truncation version): if $f, g$ are supported on $n < N$, then $\pi_q^+(f *_M g) = \pi_q^+ f *_M \pi_q^+ g$ as functions on $\mathbb{Z}/q$.