Théorie > Théorie des nombres > Fonctions arithmétiques

Prérequis

Résumé

Une fonction arithmétique est simplement une fonction définie sur $\mathbb{N}_0$. Dans ce chapitre nous discutons d'abord des fonctions (totalement) multiplicatives, qui sont des fonctions arithmétiques vérifiant une propriété bien précise. Nous introduisons ensuite la convolution de Dirichlet, une opération définie sur l'ensemble des fonctions arithmétiques. Ces outils nous permettront notamment de démontrer un résultat laissé sans preuve dans un chapitre précédent...

Ce chapitre a été écrit par C. Bodart et mis en ligne le 10 novembre 2018.

1. Définitions

Une fonction arithmétique est simplement une fonction $f \colon \mathbb{N}_0 \to \mathbb{R}$. Parmi ces fonctions, nous distinguons deux cas intéressants :

Définition
Soit $f \colon \mathbb{N}_0 \to \mathbb{R}$ une fonction arithmétique. Alors :

  • $f$ est dite multiplicative si $f(1) = 1$ et si l'égalité $f(mn)=f(m)f(n)$ tient pour tous $m,n\in\mathbb{N}_0$ premiers entre-eux.

  • $f$ est dite totalement multiplicative si $f(1) = 1$ et si l'égalité $f(mn)=f(m)f(n)$ tient plus généralement pour tous $m,n\in\mathbb{N}_0$.

Remarquons que la supposition $f(1) = 1$ n'est quasi pas restrictive : elle revient juste à demander que la fonction $f$ soit non-nulle. En effet l'égalité $f(1 \cdot 1) = f(1) \cdot f(1)$ implique à elle seule que $f(1) \in \{0, 1\}$, et si on avait $f(1) = 0$ alors on aurait tout de suite $f(1 \cdot n) = f(1) \cdot f(n) = 0$ pour tout $n \in \mathbb{N}_0$.

Dans le contexte des fonctions (totalement) multiplicatives, il est naturel d'utiliser le théorème fondamental de l'arithmétique : la décomposition en facteurs premiers. On obtient en effet facilement les descriptions suivantes.

Lemme
Soit $f \colon \mathbb{N}_0 \to \mathbb{R}$ une fonction arithmétique. Alors :

  1. $f$ est multiplicative si et seulement si
    $$f(n) = f(p_1^{e_1})\cdot f(p_2^{e_2}) \cdot \ldots \cdot f(p_k^{e_k}) \quad (1)$$ pour tout $n \in \mathbb{N}_0$, où $n = p_1^{e_1} \cdot p_2^{e_2} \cdot \ldots \cdot p_k^{e_k}$ est la décomposition en facteurs premiers de $n$.

  2. $f$ est totalement multiplicative si et seulement si
    $$f(n) = f(p_1)^{e_1}\cdot f(p_2)^{e_2} \cdot \ldots \cdot f(p_k)^{e_k} \quad (2)$$ pour tout $n \in \mathbb{N}_0$, où $n = p_1^{e_1} \cdot p_2^{e_2} \cdot \ldots \cdot p_k^{e_k}$ est la décomposition en facteurs premiers de $n$.

Il est à noter que $(1)$ et $(2)$ se lisent "$f(1) = 1$" pour $n = 1$, puisque $1$ possède une décomposition en facteurs premiers sans aucun facteur.

Démonstration
Il est évident à partir de la définition qu'une fonction multiplicative vérifie $(1)$ et qu'une fonction totalement multiplicative vérifie $(2)$.

Supposons à présent qu'une fonction arithmétique $f$ vérifie $(1)$. Comme dit plus haut, on a déjà $f(1) = 1$ en prenant $n = 1$ dans $(1)$. D'autre part, si $m, n \in \mathbb{N}_0$ sont premiers entre eux alors leurs décompositions $m = p_1^{e_1} \cdot \ldots \cdot p_k^{e_k}$ et $n = q_1^{f_1} \cdot \ldots \cdot q_\ell^{f_\ell}$ n'ont aucun nombre premier en commun. Autrement dit la décomposition en facteurs premiers de $mn$ est $p_1^{e_1} \cdot \ldots \cdot p_k^{e_k} \cdot q_1^{f_1} \cdot \ldots \cdot q_\ell^{f_\ell}$ et il découle directement de $(1)$ que $f(mn) = f(m)f(n)$, d'où $f$ est multiplicative.

Si maintenant $f$ vérifie $(2)$, alors on a à nouveau $f(1) = 1$ comme décrit plus haut. De plus, si $m, n \in \mathbb{N}_0$ sont des nombres ayant pour décompositions $m = p_1^{e_1} \cdot \ldots \cdot p_k^{e_k}$ et $n = p_1^{f_1} \cdot \ldots \cdot p_k^{f_k}$ (où cette fois on utilise les mêmes nombres premiers, en rajoutant des nombres premiers exposant $0$ à chaque décomposition si nécessaire), alors on a $mn = p_1^{e_1+f_1} \cdot \ldots \cdot p_k^{e_k+f_k}$. En utilisant $(2)$ on trouve directement que $f(mn) = f(m)f(n)$, donc $f$ est bel et bien totalement multiplicative.

Le résultat précédent implique que, pour "connaître" une fonction multiplicative, il suffit de connaître ses valeurs en chaque puissance de nombre premier. Si cette fonction est totalement multiplicative, il suffit de connaître ses valeurs en chaque nombre premier.

De nombreuses fonctions "connues" sont multiplicatives voire totalement multiplicatives. L'exemple le plus basique est la fonction constante $1\ \colon\ n \mapsto 1$ qui est évidemment totalement multiplicative.

Un exemple moins trivial est la fonction "nombre de diviseurs", traditionnellement notée $\tau$ (ou $\sigma_0$), qui à chaque nombre $n$ associe son nombre de diviseurs positifs. On peut voir qu'elle est multiplicative en utilisant notre lemme, puisque
$$\tau(p_1^{e_1}\cdot\ldots\cdot p_k^{e_k}) = (e_1+1)\cdot \ldots \cdot(e_k+1) = \tau(p_1^{e_1})\cdot \ldots \cdot \tau(p_k^{e_k}).$$

2. Convolution de Dirichlet

Étant données deux fonctions arithmétiques, il est possible d'en construire une nouvelle ayant d'intéressantes propriétés : il s'agit de la convolution (de Dirichlet) des deux fonctions.

Définition et premières propriétés

Définition
Étant données $f$ et $g$ deux fonctions arithmétiques, la convolution de Dirichlet de $f$ et $g$ est la fonction arithmétique $f*g$ définie par
$$(f*g)(n) = \sum_{d\mid n}\,f(d)\cdot g\left(\frac nd\right) \quad \text{pour tout $n\in\mathbb{N}_0$},$$ où $\sum_{d\mid n}$ désigne la somme sur les diviseurs positifs $d$ de $n$.

Cette définition peut se reformuler comme suit : pour tout $n\in\mathbb{N}_0$, on a
$$(f*g)(n) = \sum_{ab=n} f(a)\cdot g(b) \qquad(3)$$ où la somme $\sum_{ab=n}$ est prise sur les couples $(a,b)\in\mathbb{N}^2$ vérifiant $ab=n$.

Nous allons voir que l'opération $*$ possède de bonnes propriétés. Quand $E$ est un ensemble, on dit qu'une opération $\star \,\colon E \times E \to E$ est commutative si $a \star b = b \star a$ pour tous $a,b \in E$. On dit qu'elle est associative si $a \star (b \star c) = (a \star b) \star c$ pour tous $a,b,c \in E$. On dit finalement qu'un élément particulier $e \in E$ est neutre pour l'opération $\star$ si $e \star a = a = a \star e$ pour tout $a \in E$. À noter que le neutre, s'il existe, est toujours unique puisqu'avoir deux neutres $e$ et $e'$ implique $e = e \star e' = e'$. Voici quelques exemples pour se faire une meilleure intuition de ces notions :
  • Les opérations $+$ et $\times$ sur les nombres réels sont commutatives et associatives. Le neutre pour $+$ est $0$ et le neutre pour $\times$ est $1$.
  • L'opération $-$ sur les nombres réels n'est pas commutative, ni associative, puisque $a-b \neq b-a$ en général, et $a-(b-c) \neq (a-b)-c$. Il n'y a pas non plus de neutre pour le $-$ : on pourrait croire que $0$ est neutre car $a-0 = a$ pour tout $a \in \mathbb R$, mais on a en général $0-a \neq a$.
Dans notre cas, $*$ est une opération sur l'ensemble des fonctions arithmétiques (au lieu de l'ensemble des nombres réels comme dans les exemples). Cela peut sembler plus complexe mais ça ne l'est pas vraiment : il faut juste comprendre que $*$ prend deux fonctions arithmétiques $f$ et $g$ et rend une autre fonction arithmétique notée $f*g$.

Proposition
L'opération $*$ définie sur l'ensemble des fonctions arithmétiques est associative et commutative, et possède le neutre $\delta$ défini comme suit :
$$\delta(n) = \begin{cases} \; 1 & \text{si $n=1$,} \\ \; 0 & \text{sinon.} \end{cases}$$

Démonstration
Le membre de droite de $(3)$ est clairement symétrique en $f$ et $g$. On peut donc permuter $f$ et $g$ dans le membre de gauche sans en changer la valeur : $f*g=g*f$ pour toutes fonctions arithmétiques $f$ et $g$. Autrement dit, $*$ est commutative.

Un bon exercice est de montrer que, pour toutes fonctions arithmétiques $f,g,h$ et tout $n \in \mathbb N_0$, on a
\[ (f*(g*h))(n) = \sum_{abc=n} f(a)\cdot g(b)\cdot h(c) \] où la somme est prise sur les triplets $(a,b,c)\in\mathbb N^3$ vérifiant $abc=n$. De nouveau, le membre de droite est symétrique en $f$, $g$ et $h$. On peut donc permuter $f$, $g$ et $h$ dans le membre de gauche et obtenir $f*(g*h)=h*(f*g)$. En utilisant la commutativité, on obtient alors
$$f*(g*h)=(f*g)*h$$ c'est-à-dire l'associativité de $*$.

Finalement, à partir de la définition de $\delta$ on calcule
$$(\delta*f)(n) = \sum_{d\mid n}\,\delta(d)\cdot f\left(\frac nd\right) = \delta(1)\cdot f(n) + \sum_{d\mid n \text{ et } d\ne 1} \delta(d)\cdot f\left(\frac nd\right) = 1\cdot f(n) +0 = f(n)$$ pour tout $f$, d'où $\delta*f=f$. Donc $\delta$ est le neutre de la convolution.

Convolution de fonctions multiplicatives

Jusqu'ici nous n'avons pas encore vu de rapport entre cette convolution et les fonctions multiplicatives, mais vous vous doutez qu'il doit y en avoir un ! Il s'avère en fait que, malgré la grosse somme peu intuitive dans sa définition, la convolution se comporte très bien avec les fonctions multiplicatives. En effet, nous avons la proposition suivante :

Théorème
Étant données $f$ et $g$ deux fonctions multiplicatives, leur convolution $f*g$ est également multiplicative.

Démonstration
Soient $f$ et $g$ deux fonctions multiplicatives, et $m$ et $n$ deux naturels premiers entre-eux. On a
$$(f*g)(mn) = \sum_{ab=mn} f(a)\cdot g(b).$$ Chaque nombre $a$ divisant $mn$ peut s'écrire de manière univoque comme $a = a_1 \cdot a_2$ avec $a_1 \mid m$ et $a_2 \mid n$, puisque $m$ et $n$ sont premiers entre eux. Bien sûr, réciproquement si $a_1$ est un nombre divisant $m$ et $a_2$ un nombre divisant $n$, alors $a = a_1 \cdot a_2$ divise $mn$. On peut dire de même à propos de $b$ qui peut s'écrire comme $b_1 \cdot b_2$ avec $b_1 \mid m$ et $b_2 \mid n$. Ces constatations impliquent que la somme ci-dessus peut être réécrite comme
$$(f*g)(mn) = \sum_{a_1b_1=m}\ \sum_{a_2b_2=n} f(a_1a_2)\cdot g(b_1b_2).$$ Puisque $f$ (respectivement $g$) est multiplicative et $a_1$ et $a_2$ (resp. $b_1$ et $b_2$) sont premiers entre-eux, ceci nous donne
$$\begin{eqnarray}
(f*g)(mn)
& = & \sum_{a_1b_1=m}\ \sum_{a_2b_2=n} f(a_1)f(a_2)\cdot g(b_1)g(b_2) \\
& = & \Big(\sum_{a_1b_1=m}f(a_1)\cdot g(b_1)\Big)\cdot\Big(\sum_{a_2b_2=n}f(a_2)\cdot g(b_2)\Big) \\
& = & (f*g)(m)\cdot (f*g)(n)
\end{eqnarray}$$ ce qui conclut la preuve.

Cette propriété peut sembler bien abstraite, mais elle permet en fait de voir que certaines fonctions a priori compliquées sont multiplicatives. Par exemple, on peut prendre pour $f$ la fonction $f \colon n \mapsto n^k$ (pour un $k$ fixé) et pour $g$ la fonction constamment égale à $1$. Ces deux fonctions sont clairement totalement multiplicatives. Et la convolution de ces deux fonctions est égale à
$$ f * g = \sum_{d\mid n} d^k =: \sigma_k(n),$$ la somme des puissances $k$-ième des diviseurs de $n$. Celle-ci est donc multiplicative. À noter que $\sigma_k(2) = 1+2^k$ et $\sigma_k(4) = 1+2^k+4^k \neq \sigma_k(2)^2$, donc $\sigma_k$ n'est pas totalement multiplicative. En particulier, la convolution de deux fonctions totalement multiplicatives n'est pas forcément totalement multiplicative.

3. Inversion

Nous avons déjà longuement discuté de la notion d'inverse lorsque l'on s'est intéressé aux modulos : on dit que $b$ est l'inverse de $a$ modulo $n$ si $a \cdot b \equiv 1 \pmod n$. Nous avons notamment vu que $a$ possède un inverse modulo $n$ si et seulement si $a$ est premier avec $n$.

La question de l'existence d'un inverse se pose en fait dès que l'on est en présence d'une opération avec un neutre. Nous venons ici de définir l'opération $*$ de convolution de fonctions arithmétiques, et nous avons vu que la fonction $\delta$ était son neutre. Il est donc naturel de se demander quelles fonctions arithmétiques $f$ possèdent un inverse $\tilde f$ pour la convolution, c'est-à-dire une fonction arithmétique $\tilde f$ telle que $f * \tilde f = \delta$. Un tel inverse $\tilde f$ nous permettrait notamment de passer d'une équation du type $f * g = h$ à l'équation $g = \tilde f * h$. Autrement dit, il sera possible de "diviser" par $f$ (en multipliant par son inverse $\tilde f$).

Proposition
Soit $f\colon\mathbb N_0\to\mathbb R$, une fonction arithmétique. Alors $f$ possède un inverse pour la convolution $*$ si et seulement si $f(1) \neq 0$. De plus, si cet inverse existe, alors il est unique.

Démonstration
Tout d'abord, supposons que $f$ possède un inverse $\tilde f$, alors
$$1=\delta(1)=(\tilde f*f)(1)= \sum_{ab=1} \tilde f(a) \cdot f(b) = \tilde f(1)\cdot f(1).$$ En particulier on a $f(1)\ne 0$, ce qui montre le sens $\,\Rightarrow$ de l'équivalence.

Supposons maintenant que $f(1) \neq 0$, et essayons de construire une fonction $\tilde f$ telle que $\tilde f * f = \delta$. Vu l'équation ci-dessus, il est déjà nécessaire de choisir $\tilde f (1) = f(1)^{-1}$. Pour avoir $\tilde f * f = \delta$, il ne reste plus qu'à faire en sorte que $(\tilde f * f)(n) = 0$ pour tout $n \geq 2$. Or on a
$$(\tilde f*f)(n) = \tilde f(n) \cdot f(1) + \sum_{d\mid n \text{ et } d\ne n} \tilde f(d) \cdot f\left(\frac nd \right),$$ et pour que cette expression soit égale à $0$ il est nécessaire d'avoir
$$\tilde f(n) = -f(1)^{-1} \cdot \sum_{d\mid n \text{ et } d\ne n} \tilde f(d) \cdot f\left(\frac nd \right) \qquad (4)$$ On remarque que, un nombre $n$ étant fixé, le membre de droite de $(4)$ ne fait intervenir que des $\tilde f(d)$ pour $d < n$ (plus précisément pour $d$ diviseur strict de $n$). Cela signifie qu'on peut construire $\tilde f$ récursivement : lorsqu'on a construit $\tilde f (1),\ \tilde f (2), \ldots,\ \tilde f (n-1)$ on peut construire $\tilde f$ en utilisant simplement la formule $(4)$. Par construction, cette fonction vérifie alors $(\tilde f*f)(n)=\delta(n)$ pour tout $n$ et nous fournit bien un inverse de $f$.

Finalement, il y a deux manières de montrer que cet inverse est unique. Une façon de le voir est simplement de remarquer que dans la construction de $\tilde f$ ci-dessus nous n'avons aucune liberté. À chaque fois le choix pour $\tilde f (n)$ est imposé par la formule $(4)$. Donc il y a bien un unique $\tilde f$ vérifiant $\tilde f * f = \delta$. Il est aussi possible de raisonner par l'absurde : s'il existait un deuxième inverse $g$ de $f$, alors on aurait $$g = g * \delta = g * (f * \tilde f) = (g * f) * \tilde f = \delta * \tilde f = \tilde f,$$ en utilisant l'associativité de la convolution.

Il découle en particulier de la proposition ci-dessus qu'une fonction multiplicative possède toujours un inverse. Normalement votre curiosité mathématique vous amène directement à vous demander si l'inverse d'une fonction multiplicative est encore multiplicative ! Et votre intuition devrait vous dire que, comme les mathématiques sont souvent bien faites, cela doit certainement être le cas. Et vous avez raison !

Proposition
L'inverse d'une fonction multiplicative est multiplicative.

Démonstration
Soit $f$ une fonction multiplicative. Plutôt que montrer directement que l'inverse $\tilde f$ construit dans la preuve précédente est multiplicative, nous allons construire une fonction $g$ multiplicative et prouver qu'il s'agit de l'inverse de $f$. Nous définissons d'abord $g(1) = 1$. Ensuite, étant donné un nombre premier $p$ fixé, on définit $g(p^e)$ récursivement sur $e$ (le cas de base étant $p^0 = 1$) par
$$g(p^e)= -\sum_{\ell=0}^{e-1} g(p^\ell)\cdot f(p^{e-\ell}).$$ Il s'agit simplement de l'équation $(4)$ appliquée à notre cas particulier. Ce choix est donc déjà tel que $(g*f)(p^e) = \delta(p^e)$ pour tout $p$ premier et tout $e$ naturel. On définit ensuite $g$ sur l'ensemble des nombres naturels non-nuls via la formule
$$g(p_1^{e_1}\cdot p_2^{e_2}\cdot \ldots \cdot p_k^{e_k}) = g(p_1^{e_1})\cdot g(p_2^{e_2})\cdot \ldots \cdot g(p_k^{e_k}).$$ De par sa définition, $g$ est multiplicative. Vu que la convolution de deux fonctions multiplicatives est également multiplicative, on en déduit que $g * f$ est multiplicative. Il vient alors que
$$(g*f)(p_1^{e_1}\cdot p_2^{e_2}\cdot \ldots \cdot p_k^{e_k}) = (g*f)(p_1^{e_1})\cdot (g*f)(p_2^{e_2})\cdot \ldots \cdot (g*f)(p_k^{e_k})$$ qui vaut $0$ dès qu'un $p_i^{e_i}$ est supérieur à $1$. On a donc bien $(g*f)(n) = \delta(n)$ pour tout $n \in \mathbb N_0$ et donc $g$ est bien l'inverse de $f$.

Fonction de Möbius

Une des fonctions arithmétiques les plus simples est la fonction $1\,\colon n \mapsto 1$ qui associe $1$ à tout $n \in \mathbb N_0$. À quoi ressemble l'inverse $\tilde 1$ de la fonction $1$ ? Cet inverse est plus traditionnellement noté $\mu$ et est appelé fonction de Möbius.

Lemme (Fonction de Möbius)
L'inverse de $1$ pour la convolution est la fonction $\mu$ définie comme
$$\mu(p_1^{e_1}\cdot \ldots \cdot p_k^{e_k}) = \begin{cases} (-1)^k & \text{si $e_i=1$ pour tout $i$} \\ 0 & \text{sinon.} \end{cases}$$ (où les $p_i$ sont supposés distincts et les $e_i$ strictement positifs).

Démonstration
Soit $\mu$ l'inverse de $1$. Par la dernière propriété, $\mu$ est multiplicative et il suffit donc de connaître $\mu$ en chaque puissance de nombre premier. Pour tout $p$ premier et $e\ge 0$, on a
$$\delta(p^e) = (\mu*1)(p^e) = \sum_{\ell=0}^e \,\mu(p^\ell)\cdot 1(p^{e-\ell}) = \sum_{\ell=0}^e \mu(p^\ell).$$ On en déduit en fait que $\delta(p^e) - \delta(p^{e-1}) = \mu(p^e)$ pour tout $e \geq 1$, ce qui implique que $\mu(p) = -1$ et $\mu(p^e) = 0$ lorsque $e \ge 2$. De là on trouve directement la formule donnée dans l'énoncé, en utilisant que $\mu$ est multiplicative.

La formule d'inversion de Möbius dit alors simplement qu'il y a équivalence entre $g = 1 * f$ et $f = \mu * g$, c'est-à-dire entre
$$g(n) = \sum_{d \mid n} f(d)$$ et
$$f(n) = \sum_{d \mid n} \mu(d) \cdot g\left(\frac n d\right).$$ Nous verrons directement dans la section suivante en quoi cette formule peut être utile.

Remarque
Malgré son utilisation fréquente dans cette section, la notation $\tilde f$ n'est pas une notation usuelle pour "l'inverse pour la convolution", mieux vaut donc la définir avant de l'utiliser en dehors de Mathraining.

4. Exemple d'application

Dans cette section nous allons prouver un résultat énoncé dans le chapitre sur les résidus quadratiques. Rappelons d'abord la définition suivante :

Définition
On dit que $a$ est une racine primitive modulo $n$ si son ordre multiplicatif modulo $n$ vaut $\varphi(n)$, c'est-à-dire si le plus petit nombre $k\ge 1$ tel que $a^k\equiv1\pmod n$ est $k=\varphi(n)$.

Le résultat qui nous intéresse est celui que nous avons énoncé comme suit. Nous allons en effet pouvoir le démontrer grâce aux outils développés dans ce chapitre.

Proposition
Soit $p$ un nombre premier. Il existe exactement $\varphi(p-1)$ racines primitives modulo $p$.

Pour démontrer ce résultat nous aurons besoin du petit lemme suivant, qui peut être montré de diverses manières. Nous en donnons une démonstration assez intuitive.

Lemme
Pour tout $n \geq 1$ entier, on a
$$\sum_{d \mid n} \varphi(d) = n.$$ Autrement dit, on a
$$1 * \varphi = \mathrm{id},$$ où $1$ est la fonction arithmétique $n \mapsto 1$, $\varphi$ est la fonction arithmétique $n \mapsto \varphi(n)$, et $\mathrm{id}$ est la fonction arithmétique $n \mapsto n$.

Démonstration
Nous expliquons ce résultat sur un exemple, à savoir $n = 12$. Examinons les fractions $\frac 1{12}, \frac 2{12}, \ldots, \frac{12}{12}$ et mettons-les sous leur forme irréductible. On obtient les $12$ fractions suivantes :
$$\frac 1 {12},\ \frac 1 6,\ \frac 1 4,\ \frac 1 3,\ \frac 5 {12},\ \frac 1 2,\ \frac 7 {12},\ \frac 2 3,\ \frac 3 4,\ \frac 5 6,\ \frac {11}{12},\ \frac 1 1.$$ Parmi ces fractions, nous en observons quatre ayant $12$ pour dénominateur. Et ces quatre fractions ont $1, 5, 7$ et $11$ pour numérateurs, qui sont bien sûr les nombres inférieurs à $12$ et premiers avec $12$. C'est donc logique qu'ils soient au nombre de $\varphi(12) = 4$. Pareillement, il y a deux fractions ayant $6$ pour dénominateur, et les numérateurs sont $1$ et $5$, qui sont les nombres inférieurs à $6$ et premiers avec $6$. Ils sont donc au nombre de $\varphi(6) = 2$. Vu qu'il y a au total $12$ fractions, on obtient au total que
$$12 = \varphi(12) + \varphi(6) + \varphi(4) + \varphi(3) + \varphi(2) + \varphi(1) = \sum_{d \mid 12} \varphi(d).$$ Et cette preuve fonctionne bien sûr pour n'importe quel $n$ à la place de $12$.

Nous pouvons maintenant passer à la preuve de la proposition sur le nombre de racines primitives modulo $p$.

Démonstration de la proposition
Soit $p$ un nombre premier fixé.

On définit $f \colon \mathbb N_0 \to \mathbb N$ en disant que $f(n)$ est le nombre d'éléments de $\{1,\ldots,p-1\}$ dont l'ordre multiplicatif modulo $p$ est exactement $n$. Remarquons déjà que $f(1) = 1$ puisque le seul élément d'ordre multiplicatif $1$ est $1$. Notre but est de montrer que $f(p-1) = \varphi(p-1)$.

On définit également $g \colon \mathbb N_0 \to \mathbb N$ en disant que $g(n)$ est le nombre d'éléments $x \in \{1,\ldots,p-1\}$ tels que $x^n \equiv 1 \pmod p$. Il est clair qu'un nombre $x$ vérifie cette propriété si et seulement si son ordre multiplicatif $o_p(x)$ divise $n$. Autrement dit, on a l'égalité suivante :
$$\sum_{d\mid n} f(d) = g(n),$$ qui peut se réécrire
$$1 * f = g$$ ou encore
$$f = \mu * g$$ en utilisant la formule d'inversion de Möbius. On voit donc qu'en trouvant une formule pour $g$, on pourra en déduire une formule pour $f$. En fait, vu qu'on s'intéresse surtout à $f(p-1)$, on aura seulement besoin des valeurs $g(d)$ pour $d$ un diviseur de $p-1$.

  • Le petit théorème de Fermat nous donne directement $g(p-1) = p-1$.

  • Si maintenant $d$ est un diviseur de $p-1$, alors on peut montrer qu'on a également $g(d) = d$. Pour ce faire, le plus simple est probablement d'étudier le polynôme $X^{p-1}-1$ vu comme un polynôme sur $\mathbb Z / p \mathbb Z$. Rappelons que $\mathbb Z / p \mathbb Z$ désigne simplement l'ensemble des éléments $\{0,1,\ldots,p-1\}$ munis de l'addition et de la multiplication modulo $p$. Il s'agit d'un corps, et parler de polynômes à coefficients dans ce corps est donc tout à fait acceptable (comme expliqué dans le chapitre sur les polynômes). Le théorème de Fermat nous indique que ce polynôme $X^{p-1}-1$ a tous les éléments $1,2,\ldots,p-1$ pour racines. Cela signifie qu'on peut factoriser ce polynôme dans $\mathbb Z / p \mathbb Z$ comme
    $$X^{p-1}-1 = (X-1)\cdot (X-2)\cdot \ldots \cdot (X-(p-1)).$$ Or, on sait aussi que $X^d-1$ divise $X^{p-1}-1$ lorsque $d$ divise $p-1$. Il en découle que $X^d-1$ se factorise comme $(X-a_1)\cdot (X-a_2) \cdot \ldots \cdot (X-a_d)$ pour certains $a_1, \ldots, a_d \in \{1,2,\ldots,p-1\}$ distincts. Autrement dit, les éléments $a_1,\ldots,a_d$ sont exactement les éléments $x$ de $\{1,2,\ldots,p-1\}$ tels que $x^d \equiv 1 \pmod p$ et on a bien $g(d) = d$ comme annoncé.
Nous pouvons à présent calculer $f(p-1)$. On a
$$f(p-1) = (g * \mu)(p-1) = \sum_{d\mid p-1} \,g(d)\cdot\mu\left(\frac {p-1}d\right) = \sum_{d\mid p-1}\,d\cdot\mu\left(\frac {p-1}d\right) = (\mathrm{id} * \mu)(p-1).$$ Or, le lemme nous indique que $1 * \varphi = \mathrm{id}$, ou encore que $\varphi = \mathrm{id} * \mu$ par la formule d'inversion de Möbius. On obtient donc comme désiré que
$$f(p-1) = \varphi(p-1).$$

Remarque
Dans la preuve ci-dessus, on peut même voir que $f(d) = \varphi(d)$ pour tout $d$ diviseur de $p-1$. (Il suffit de remplacer $p-1$ par un de ses diviseurs dans les trois dernières lignes de la preuve.) Cela signifie que le nombre d'éléments de $\{1,\ldots,p-1\}$ dont l'ordre multiplicatif est $d$ est exactement $\varphi(d)$. Pour exemple, modulo $11$, il y a $\varphi(10) = 4$ éléments d'ordre multiplicatif $10$, $\varphi(5) = 4$ éléments d'ordre multiplicatif $5$, $\varphi(2) = 1$ élément d'ordre multiplicatif $2$, et $\varphi(1) = 1$ élément d'ordre multiplicatif $1$.