Assez d’injectifs et le small object argument

Les modules injectifs sont des objets relativement importants en algèbre commutative et surtout en algèbre homologique : grâce à eux on peut construire des résolutions injectives et donc remplacer adéquatement des modules – par exemple pour construire la théorie des foncteurs dérivés à droite.

Un théorème fondamental dans le domaine est le suivant :

Théorème : Soit R un anneau (unitaire) et M un module à gauche sur R. Alors il existe un module injectif I et une injection M\to I.

Souvent ce théorème est prouvé après une série de réductions (via des enveloppes, des “extensions essentielles”, …). Cette preuve est instructive parce qu’elle révèle d’autres éléments (notamment elle fournit une enveloppe injective plus que juste un module injectif) qui peuvent être intéressants. Mais elle est trop compliquée si on veut simplement prouver le théorème en question (en algèbre homologique de base, on a rarement besoin de l’enveloppe injective, juste d’un module injectif).

Récemment je me renseignais sur les catégories de modèles, et il y a un argument connu dans ce domaine qui s’appelle le “small object argument” – utilisé a priori pour des choses qui n’ont pas grand chose à voir; mais je me suis rendu compte qu’on peut l’utiliser pour prouver ce théorème de manière plus efficace. Je vais donc le décrire dans ce contexte pour donner une preuve rapide dudit théorème (preuve qui, par ailleurs, peut être utile dans des contextes où la preuve par extensions essentielles ne s’adapte pas)

Avant de me lancer, je rappelle le critère suivant :

Critère d’injectivité : Soit R un anneau (unitaire) et I un R-module à gauche. Alors I est injectif si et seulement si pour tout idéal à gauche a et tout morphisme de R-modules a\to I, il existe une extension R\to I de ce morphisme.

Ce critère se prouve relativement simplement une fois qu’on pense au lemme de Zorn; je ne m’y attarde pas parce que ce n’est pas l’objet de ce post.

Preuve du théorème : L’idée est de partir de M et de forcer l’existence d’extensions aux morphismes a\to M en rajoutant simplement de la place. Concrètement, on construit une suite de modules M_\alpha de la manière suivante :

M_0 := M, pour construire M_{\alpha +1} à partir de M_\alpha on procède de la manière suivante : on considère \displaystyle\bigoplus_{a \triangleleft R, f: a\to M_\alpha} R \oplus M_\alpha où la somme est indexée par les idéaux a et les R-morphismes a\to M_\alpha et on quotiente par les relations x\sim f(x) : plus précisément l’élément x\in a du R indexée par (a,f) est identifié à l’élément f(x) du terme M_\alpha. On appelle le quotient M_{\alpha +1}

Il est alors assez facile de vérifier que le morphisme naturel M_\alpha \to M_{\alpha +1} est injectif.

On a presque fini. Si R était noethérien, on aurait effectivement fini en prenant la colimite (l’union) M_\infty des M_n, n\in \mathbb N. En effet, un morphisme a\to M_\infty se factoriserait alors par un des M_n puisque a serait de type fini, et alors ce morphisme s’étendrait naturellement à M_{n+1} par construction (si le morphisme est f : a\to M_n, alors on définit g : R\to M_{n+1} par l’inclusion dans le terme d’indice (a,f)).

Le problème c’est qu’on n’a pas d’hypothèse sur R. Il faut donc continuer à faire ça de manière transfinie, jusqu’à ce qu’on soit sûr que tous les morphismes partant d’idéaux se factorisent par une étape qui vient avant la fin. Ce n’est pas compliqué :

On définit en réalité M_\alpha pour \alpha un ordinal, on a décrit comment faire pour les \alpha successeur, et aux étapes limites on prend simplement la colimite de ce qui a été construit avant. Jusqu’à où faut-il faire ça ?

Soit \kappa un cardinal supérieur à tous les |a|, a idéal de R, et \lambda un cardinal de cofinalité >\kappa (il en existe, il suffit de prendre \kappa^+ ou 2^\kappa). On prend alors I:= M_\lambda. En effet, si f:a \to I est un morphisme partant d’un idéal de R, alors comme |a| \leq \kappa, la fonction i \in a \mapsto \min\{\beta < \lambda, f(i) \in M_\beta\} ne peut pas être cofinale, et donc f se factorise par un M_\beta, \beta < \lambda. Il y a alors une extension R\to M_{\beta +1} par construction, et donc R\to M_\lambda.

Il suffit donc de s’arrêter à \lambda. Ainsi d’après le critère, M_\lambda est injectif, et on a une injection M\to M_\lambda, donc tout ce qu’on voulait. \square

Leave a comment