Anneaux et idéaux#

L’art de poser les bonnes questions en mathématiques est plus important que l’art de les résoudre.

Emmy Noether

Introduction#

Un anneau est un ensemble muni de deux opérations — addition et multiplication — qui généralisent les opérations sur \(\mathbb{Z}\). La théorie des anneaux, développée par Emmy Noether dans les années 1920, unifie l’arithmétique (divisibilité dans \(\mathbb{Z}\)), l’algèbre des polynômes, et bien d’autres structures. Les idéaux jouent le rôle des sous-groupes distingués : ils permettent de former des anneaux quotients.

Hide code cell source

import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
from matplotlib.patches import Patch

sns.set_theme(style="whitegrid", palette="muted", font_scale=1.1)

fig, axes = plt.subplots(3, 1, figsize=(9, 14))

# 1. Tables de multiplication Z/pZ pour p premier vs p composé
for ax, n, title in zip(axes[:2], [5, 6], ['$\\mathbb{Z}/5\\mathbb{Z}$ (corps, $p=5$ premier)', '$\\mathbb{Z}/6\\mathbb{Z}$ (non intègre, $6=2\\times 3$)']):
    table = np.array([[(i*j) % n for j in range(n)] for i in range(n)])
    im = ax.imshow(table, cmap='viridis', vmin=0, vmax=n-1, aspect='auto')
    for i in range(n):
        for j in range(n):
            ax.text(j, i, table[i,j], ha='center', va='center', fontsize=11,
                    fontweight='bold', color='white')
    # Marquer les diviseurs de zero
    if n == 6:
        # 2*3 = 0, 3*2 = 0, 4*3 = 0, 3*4 = 0
        divz = [(2,3),(3,2),(4,3),(3,4)]
        for (i,j) in divz:
            ax.add_patch(plt.Rectangle((j-0.5, i-0.5), 1, 1, fill=False, edgecolor='red', lw=3))
    ax.set_xticks(range(n)); ax.set_yticks(range(n))
    ax.set_xticklabels([f'$\\bar{{{k}}}$' for k in range(n)], fontsize=9)
    ax.set_yticklabels([f'$\\bar{{{k}}}$' for k in range(n)], fontsize=9)
    ax.set_title(title)
    plt.colorbar(im, ax=ax, label='$i \\times j \\;(\\mathrm{mod}\\; n)$')

# 2. Diagramme hiérarchie des structures
ax = axes[2]
ax.set_xlim(0, 10); ax.set_ylim(0, 8); ax.axis('off')
boxes = [
    (5, 7, 'Anneau $(A,+,\\times)$', 'lightblue'),
    (5, 5.5, 'Anneau commutatif', 'lightblue'),
    (5, 4, 'Anneau intègre\n(sans div. de 0)', 'steelblue'),
    (5, 2.5, 'Anneau principal\n(tout idéal $=(a)$)', 'steelblue'),
    (5, 1, 'Corps\n($A^\\times = A\\setminus\\{0\\}$)', 'tomato'),
]
for (x, y, label, color) in boxes:
    ax.text(x, y, label, ha='center', va='center', fontsize=9,
            bbox=dict(boxstyle='round,pad=0.4', fc=color, alpha=0.7, ec='gray'))
# Fleches
for i in range(len(boxes)-1):
    ax.annotate('', xy=(boxes[i+1][0], boxes[i+1][1]+0.45),
                xytext=(boxes[i][0], boxes[i][1]-0.45),
                arrowprops=dict(arrowstyle='->', color='gray', lw=1.5))
# Exemples
examples = [
    (8.5, 7, '$\\mathcal{M}_n(\\mathbb{K})$\n$\\mathbb{Z}[i]$'),
    (8.5, 5.5, '$\\mathbb{Z}, \\mathbb{K}[X]$\n$\\mathbb{Z}[i]$'),
    (8.5, 4, '$\\mathbb{Z}, \\mathbb{K}[X]$'),
    (8.5, 2.5, '$\\mathbb{Z}, \\mathbb{K}[X]$'),
    (8.5, 1, '$\\mathbb{Q},\\mathbb{R},\\mathbb{C}$\n$\\mathbb{F}_p$'),
]
for (x, y, label) in examples:
    ax.text(x, y, label, ha='center', va='center', fontsize=8, color='gray')
ax.set_title('Hiérarchie des structures annulaires', fontsize=11)

plt.tight_layout()
plt.show()
_images/697f383b20aeca69e6e791d959f9f27449555dc5ad3ec3afbc8cc569221b6676.png

Anneaux#

Définition 252 (Anneau)

Un anneau \((A, +, \times)\) est un ensemble \(A\) muni de deux lois telles que :

  • \((A, +)\) est un groupe abélien (neutre \(0\), opposé \(-a\))

  • \(\times\) est associative avec un élément neutre \(1\) (l”unité)

  • \(\times\) est distributive par rapport à \(+\) : \(a(b+c) = ab + ac\)

L’anneau est commutatif si \(ab = ba\) pour tous \(a, b\).

Remarque 130

Tous les anneaux de ce cours ont une unité \(1 \neq 0\), et les morphismes envoient \(1\) sur \(1\).

Exemple 136

  • \((\mathbb{Z}, +, \times)\) : anneau commutatif, archétype de la théorie

  • \((\mathbb{Z}/n\mathbb{Z}, +, \times)\) : anneau commutatif fini

  • \((\mathbb{K}[X], +, \times)\) : anneau des polynômes, commutatif

  • \((\mathcal{M}_n(\mathbb{K}), +, \times)\) : anneau non commutatif pour \(n \geq 2\)

  • \((\mathbb{Z}[i] = \{a + bi : a, b \in \mathbb{Z}\}, +, \times)\) : entiers de Gauss

Définition 253 (Éléments particuliers)

Soit \(A\) un anneau.

  • \(a \in A\) est inversible si \(\exists b, \; ab = ba = 1\). L’ensemble \(A^\times\) des inversibles forme un groupe (le groupe des unités)

  • \(a \in A \setminus \{0\}\) est un diviseur de zéro si \(\exists b \neq 0, \; ab = 0\)

  • \(a\) est nilpotent si \(\exists n \geq 1, \; a^n = 0\)

Exemple 137

  • \(\mathbb{Z}^\times = \{-1, 1\}\). \(\mathbb{K}[X]^\times = \mathbb{K}^*\).

  • Dans \(\mathbb{Z}/6\mathbb{Z}\) : \(\bar{2} \cdot \bar{3} = \bar{0}\), donc \(\bar{2}\) et \(\bar{3}\) sont diviseurs de zéro.

  • Dans \(\mathbb{Z}/4\mathbb{Z}\) : \(\bar{2}^2 = \bar{0}\), donc \(\bar{2}\) est nilpotent.

Définition 254 (Anneau intègre, corps)

  • \(A\) est intègre s’il est commutatif, \(1 \neq 0\), et n’a pas de diviseur de zéro

  • \(A\) est un corps s’il est commutatif, \(1 \neq 0\), et \(A^\times = A \setminus \{0\}\)

Proposition 313

Tout corps est intègre. Tout anneau intègre fini est un corps.

Proof. Corps \(\implies\) intègre : Si \(ab = 0\) et \(a \neq 0\), multiplier par \(a^{-1}\) : \(b = 0\).

Intègre fini \(\implies\) corps : Soit \(a \neq 0\). L’application \(\mu_a : A \to A\), \(x \mapsto ax\) est injective (car \(ax = ay \implies a(x-y) = 0 \implies x = y\) par intégrité). Comme \(A\) est fini, \(\mu_a\) est bijective, donc \(\exists b, \; ab = 1\).

Exemple 138

\(\mathbb{Z}/p\mathbb{Z}\) est un corps pour \(p\) premier : si \(p \mid ab\) avec \(p\) premier, alors \(p \mid a\) ou \(p \mid b\) (lemme d’Euclide), donc \(\mathbb{Z}/p\mathbb{Z}\) est intègre, et fini, donc corps.

Morphismes d’anneaux#

Définition 255 (Morphisme d’anneaux)

Un morphisme d’anneaux \(\varphi : A \to B\) est une application vérifiant :

  • \(\varphi(a + b) = \varphi(a) + \varphi(b)\)

  • \(\varphi(ab) = \varphi(a)\varphi(b)\)

  • \(\varphi(1_A) = 1_B\)

Exemple 139

  • L’inclusion \(\mathbb{Z} \hookrightarrow \mathbb{Q} \hookrightarrow \mathbb{R} \hookrightarrow \mathbb{C}\)

  • La projection \(\pi : \mathbb{Z} \to \mathbb{Z}/n\mathbb{Z}\), \(k \mapsto \bar{k}\)

  • L’évaluation \(\mathrm{ev}_a : \mathbb{K}[X] \to \mathbb{K}\), \(P \mapsto P(a)\)

  • La conjugaison \(z \mapsto \bar{z}\) : automorphisme de \(\mathbb{C}\) sur \(\mathbb{R}\)

Idéaux#

Définition 256 (Idéal)

Un idéal d’un anneau commutatif \(A\) est un sous-ensemble \(I \subset A\) tel que :

  1. \((I, +)\) est un sous-groupe de \((A, +)\)

  2. \(\forall a \in A, \; \forall x \in I, \; ax \in I\) (absorption)

On note \(I \trianglelefteq A\).

Remarque 131

Le noyau \(\ker\varphi\) d’un morphisme d’anneaux est toujours un idéal. Réciproquement, tout idéal est le noyau de la projection canonique \(A \to A/I\).

Exemple 140

  • \(n\mathbb{Z}\) est un idéal de \(\mathbb{Z}\) (pour tout \(n \geq 0\))

  • \(\{0\}\) et \(A\) sont les idéaux triviaux

  • \(\ker(\mathrm{ev}_a) = \{P \in \mathbb{K}[X] : P(a) = 0\} = (X - a)\mathbb{K}[X]\)

  • Dans \(\mathbb{K}[X, Y]\) : l’idéal \((X, Y) = \{P : P(0,0) = 0\}\) n’est pas principal

Définition 257 (Idéal engendré, idéal principal)

L”idéal engendré par \(S \subset A\) est \((S) = \bigl\{\sum_{i} a_i s_i : a_i \in A, s_i \in S\bigr\}\), le plus petit idéal contenant \(S\).

Un idéal est principal s’il est engendré par un seul élément : \(I = (a) = aA\).

Un anneau intègre est principal (ou DIP) si tout idéal est principal.

Théorème 53 (\(\mathbb{Z}\) est principal)

Tout idéal de \(\mathbb{Z}\) est de la forme \(n\mathbb{Z}\) pour un unique \(n \geq 0\).

Proof. Soit \(I\) un idéal non nul de \(\mathbb{Z}\). \(I \cap \mathbb{N}^*\) est non vide (si \(a \in I\), \(a \neq 0\), alors \(|a| \in I\)). Soit \(n = \min(I \cap \mathbb{N}^*)\).

\(n\mathbb{Z} \subset I\) : car \(I\) est un idéal. Pour \(a \in I\), la division euclidienne donne \(a = nq + r\) avec \(0 \leq r < n\). Or \(r = a - nq \in I\), et \(r < n\) implique \(r = 0\) par minimalité. Donc \(I \subset n\mathbb{Z}\).

Théorème 54 (\(\mathbb{K}[X]\) est principal)

Tout idéal de \(\mathbb{K}[X]\) est de la forme \(P \cdot \mathbb{K}[X]\) pour un polynôme \(P\) unique à scalaire près.

Proof. Même preuve qu’pour \(\mathbb{Z}\) : on remplace la valeur absolue par le degré et la division euclidienne dans \(\mathbb{Z}\) par la division euclidienne dans \(\mathbb{K}[X]\) (algorithme d’Euclide pour les polynômes). L’idéal est engendré par le polynôme de plus petit degré.

Anneaux quotients#

Définition 258 (Anneau quotient)

Soit \(I \trianglelefteq A\). L”anneau quotient \(A/I\) est l’ensemble des classes \(\bar{a} = a + I\) muni des opérations

\[\bar{a} + \bar{b} = \overline{a+b}, \qquad \bar{a} \cdot \bar{b} = \overline{ab}\]

La projection canonique \(\pi : A \to A/I\), \(a \mapsto \bar{a}\) est un morphisme surjectif de noyau \(I\).

Théorème 55 (Premier théorème d’isomorphisme (anneaux))

Si \(\varphi : A \to B\) est un morphisme d’anneaux, alors

\[A / \ker(\varphi) \cong \mathrm{Im}(\varphi)\]

Proof. On applique le 1er théorème d’isomorphisme de groupes à \((A, +)\) : l’isomorphisme additif \(\bar{\varphi}\) est aussi multiplicatif car \(\bar{\varphi}(\bar{a}\bar{b}) = \bar{\varphi}(\overline{ab}) = \varphi(ab) = \varphi(a)\varphi(b) = \bar{\varphi}(\bar{a})\bar{\varphi}(\bar{b})\).

Exemple 141

\(\mathrm{ev}_a : \mathbb{R}[X] \to \mathbb{R}\) : \(\ker = (X-a)\), donc \(\mathbb{R}[X]/(X-a) \cong \mathbb{R}\).

\(\mathrm{ev}_i : \mathbb{R}[X] \to \mathbb{C}\), \(P \mapsto P(i)\) : \(\ker = (X^2+1)\) (car \(X^2+1\) est le polynôme minimal de \(i\) sur \(\mathbb{R}\)), donc

\[\mathbb{R}[X]/(X^2+1) \cong \mathbb{C}\]

C’est une construction algébrique de \(\mathbb{C}\) à partir de \(\mathbb{R}\) : on adjoint formellement une racine de \(X^2+1\).

Idéaux premiers et maximaux#

Définition 259 (Idéal premier et idéal maximal)

Un idéal propre \(\mathfrak{p} \trianglelefteq A\) est premier si \(ab \in \mathfrak{p} \implies a \in \mathfrak{p}\) ou \(b \in \mathfrak{p}\).

Un idéal propre \(\mathfrak{m} \trianglelefteq A\) est maximal s’il n’est contenu dans aucun idéal propre plus grand.

Théorème 56 (Caractérisations par le quotient)

Soit \(A\) commutatif et \(I \trianglelefteq A\) propre.

  • \(I\) est premier \(\iff\) \(A/I\) est intègre

  • \(I\) est maximal \(\iff\) \(A/I\) est un corps

Proof. Premier : \(ab \in I \iff \bar{a}\bar{b} = \bar{0}\) dans \(A/I\). Donc \(I\) premier \(\iff\) \(A/I\) intègre.

Maximal : Les idéaux de \(A/I\) correspondent aux idéaux de \(A\) contenant \(I\). \(I\) maximal \(\iff\) les seuls idéaux de \(A/I\) sont \(\{0\}\) et \(A/I\) \(\iff\) \(A/I\) est un corps (un anneau commutatif non nul n’a pas d’idéal propre non trivial \(\iff\) c’est un corps).

Corollaire 2

Tout idéal maximal est premier (car tout corps est intègre). La réciproque est fausse en général.

Exemple 142

Dans \(\mathbb{Z}\) : les idéaux \(p\mathbb{Z}\) avec \(p\) premier sont premiers et maximaux. L’idéal \((0)\) est premier (car \(\mathbb{Z}\) intègre) mais pas maximal (\(\mathbb{Z}/(0) \cong \mathbb{Z}\) n’est pas un corps).

Dans \(\mathbb{K}[X]\) : les idéaux \((P)\) avec \(P\) irréductible sont premiers et maximaux (car \(\mathbb{K}[X]/(P)\) est un corps).

Anneaux de polynômes#

Définition 260 (Polynôme irréductible)

\(P \in \mathbb{K}[X]\) de degré \(\geq 1\) est irréductible s’il n’est pas produit de deux polynômes de degré \(\geq 1\).

Proposition 314 (Irréductibles de \(\mathbb{R}[X]\) et \(\mathbb{C}[X]\))

  • Dans \(\mathbb{C}[X]\) : les irréductibles sont exactement les polynômes de degré 1 (théorème de d’Alembert-Gauss).

  • Dans \(\mathbb{R}[X]\) : les irréductibles sont les polynômes de degré 1 et les polynômes de degré 2 à discriminant \(< 0\).

Théorème 57 (Factorisation unique dans \(\mathbb{K}[X]\))

Tout polynôme non nul de \(\mathbb{K}[X]\) se décompose de manière unique (à l’ordre et aux constantes multiplicatives près) en produit d’irréductibles.

Proof. \(\mathbb{K}[X]\) est un anneau principal. Or tout anneau principal est factoriel (anneau à factorisation unique). La preuve reprend celle du théorème fondamental de l’arithmétique dans \(\mathbb{Z}\) :

  • Existence : si \(P\) n’est pas irréductible, \(P = QR\) avec \(\deg Q, \deg R < \deg P\), et on raisonne par récurrence sur le degré.

  • Unicité : si \(p\) irréductible divise \(QR\), alors \((p)\) est un idéal premier (car \((p)\) maximal \(\implies\) \(\mathbb{K}[X]/(p)\) corps \(\implies\) intègre), donc \(p \mid Q\) ou \(p \mid R\). On en déduit l’unicité par récurrence.

Corps de fractions#

Théorème 58 (Corps de fractions)

Tout anneau intègre \(A\) se plonge dans un corps \(\mathrm{Frac}(A)\), le corps des fractions, qui est le plus petit corps contenant \(A\).

Proof. Considérer les couples \((a, b) \in A \times (A \setminus \{0\})\) modulo \((a, b) \sim (c, d) \iff ad = bc\) (l’intégrité est utilisée pour la transitivité). La classe de \((a, b)\) est notée \(a/b\). Les opérations \(\frac{a}{b} + \frac{c}{d} = \frac{ad+bc}{bd}\) et \(\frac{a}{b} \cdot \frac{c}{d} = \frac{ac}{bd}\) munissent l’ensemble quotient d’une structure de corps.

L’injection \(A \hookrightarrow \mathrm{Frac}(A)\), \(a \mapsto a/1\) est un morphisme injectif.

Exemple 143

  • \(\mathrm{Frac}(\mathbb{Z}) = \mathbb{Q}\)

  • \(\mathrm{Frac}(\mathbb{K}[X]) = \mathbb{K}(X)\) (fractions rationnelles)

  • \(\mathrm{Frac}(\mathbb{Z}[i]) = \mathbb{Q}(i) = \{a + bi : a, b \in \mathbb{Q}\}\)

Hide code cell source

fig, axes = plt.subplots(3, 1, figsize=(9, 14))

# 1. Ideaux de Z : Z/nZ comme anneau quotient, et idéaux premiers/maximaux
ax = axes[0]
n_max = 20
xs = list(range(1, n_max+1))
is_prime = [all(n % d != 0 for d in range(2, n)) for n in xs]
colors_p = ['tomato' if p else 'steelblue' for p in is_prime]
ax.bar(xs, xs, color=colors_p, alpha=0.7, edgecolor='white')
ax.set_xlabel('$n$'); ax.set_ylabel('$n$')
ax.set_title('Idéaux $n\\mathbb{Z}$ de $\\mathbb{Z}$\nRed = premier & maximal ($n$ premier)')
ax.set_xticks(xs); ax.set_xticklabels(xs, fontsize=8)
from matplotlib.patches import Patch
ax.legend(handles=[Patch(color='tomato', label='$n\\mathbb{Z}$ premier & maximal'),
                   Patch(color='steelblue', label='$n\\mathbb{Z}$ non premier')],
          fontsize=9)

# 2. Construction de C = R[X]/(X^2+1)
ax = axes[1]
ax.set_xlim(-2.5, 2.5); ax.set_ylim(-2.5, 2.5); ax.set_aspect('equal')
th = np.linspace(0, 2*np.pi, 300)
ax.plot(np.cos(th), np.sin(th), 'steelblue', lw=1.5, alpha=0.5)
# Quelques elements de R[X]/(X^2+1) representés comme nombres complexes
examples_c = [(1+1j), (2-1j), (-1+2j), (0+1j), (1+0j)]
for z in examples_c:
    ax.scatter([z.real], [z.imag], s=80, color='tomato', zorder=5)
    ax.annotate(f'${z.real:.0f}+{z.imag:.0f}i$' if z.imag >= 0 else f'${z.real:.0f}{z.imag:.0f}i$',
                xy=(z.real, z.imag), xytext=(z.real+0.15, z.imag+0.15), fontsize=8)
ax.axhline(0, color='k', lw=0.5); ax.axvline(0, color='k', lw=0.5)
# Representer i comme racine de X^2+1
ax.scatter([0], [1], s=200, color='gold', zorder=6)
ax.annotate('$i = \\bar{X}$\n(racine de $X^2+1$)', xy=(0,1), xytext=(0.3, 1.4), fontsize=9,
            arrowprops=dict(arrowstyle='->', color='gold'))
ax.set_xlabel('Re'); ax.set_ylabel('Im')
ax.set_title('$\\mathbb{R}[X]/(X^2+1) \\cong \\mathbb{C}$\nConstruction algébrique des complexes')

# 3. Diviseurs de zero et inversibles dans Z/12Z
ax = axes[2]
n_12 = 12
theta_12 = [k * 2*np.pi/n_12 - np.pi/2 for k in range(n_12)]
for k in range(n_12):
    xk = np.cos(theta_12[k]); yk = np.sin(theta_12[k])
    gcd_k = np.gcd(k, n_12)
    if gcd_k == 1:
        color, marker, size = 'gold', '*', 350   # inversible
    elif gcd_k == n_12 or k == 0:
        color, marker, size = 'gray', 's', 200   # zero
    else:
        color, marker, size = 'tomato', 'o', 200  # diviseur de zero
    ax.scatter([xk], [yk], s=size, color=color, marker=marker, zorder=5)
    ax.text(xk*1.3, yk*1.3, f'$\\bar{{{k}}}$', ha='center', fontsize=10, fontweight='bold')
ax.plot(np.cos(th), np.sin(th), 'gray', lw=1, alpha=0.4)
ax.set_xlim(-1.7, 1.7); ax.set_ylim(-1.7, 1.7); ax.set_aspect('equal')
ax.legend(handles=[
    Patch(color='gold', label='Inversibles ($\\gcd(k,12)=1$)'),
    Patch(color='tomato', label='Diviseurs de 0 ($\\gcd(k,12)>1$)'),
    Patch(color='gray', label='Zéro'),
], fontsize=8, loc='lower right')
ax.set_title('Éléments de $\\mathbb{Z}/12\\mathbb{Z}$')
ax.axis('off')

plt.tight_layout()
plt.show()
_images/169b4b3858e48d7dec92e64847ed7839e68a862ec87ae931fc172c4950f3cfbc.png

Résumé#

Concept

Propriété clé

Anneau

\((A, +, \times)\) avec \((A,+)\) abélien, \(\times\) associative distributive, \(1\)

Intègre

Commutatif sans diviseur de zéro

Corps

Intègre avec \(A^\times = A \setminus \{0\}\)

Idéal

Sous-groupe absorbant ; \(\ker\) de tout morphisme

Principal

Tout idéal \(=(a)\) ; \(\mathbb{Z}\) et \(\mathbb{K}[X]\) sont principaux

Quotient

\(A/I\) anneau ; \(I\) premier \(\iff\) \(A/I\) intègre ; \(I\) maximal \(\iff\) \(A/I\) corps

1er th. d’iso.

\(A/\ker\varphi \cong \mathrm{Im}\varphi\)

\(\mathbb{R}[X]/(X^2+1)\)

\(\cong \mathbb{C}\) (construction algébrique)

Corps de fractions

\(\mathrm{Frac}(\mathbb{Z}) = \mathbb{Q}\), \(\mathrm{Frac}(\mathbb{K}[X]) = \mathbb{K}(X)\)