Les nombres premiers et les anneaux commutatifs libres

1) Introduction

Pour étudier les nombres premiers de façon classique et d'une manière générale, il convient de se placer dans une structure mathématique ne comprenant que les seuls opérations nécessaires à la décomposition en produit de facteurs premiers et à la division euclidienne qui est à la base de nombreux algorithmes. On se place ainsi dans un cadre général qui est celui des anneaux factoriels et des anneaux euclidiens. Et on commence par l'étude des anneaux commutatifs libres.

En choississant le point de vue intuitionniste, nous accédons à une description complète assez simple de la catégorie des anneaux commutatifs libres.

2 ) Langage mathématique

Le mot "ssi" signifie "si et seulement si".

Pour éviter l'usage intensif des parenthèses, on fixe un ordre de priorité syntaxique des opérateurs, du plus prioritaire au moins prioritaire :

`**` `+` `in`,`!in` `<,<=,>,>=` `"et", "ou"` `=>, iff` `=,!=` `AA, EE`

Ainsi par exemples, pour tout élément `x,y,z`, pour tout prédicat unaire `A,B` et pour tout booléen `P,Q,R`, nous avons :

l'expression `x**y + z` signifie `(x**y) + z` et non `x**(y+z)`,
l'expression `AA x,  A(x) => B(x)` signifie `AA x,  (A(x) => B(x))` et non `(AAx,  A(x)) => B(x)`,
l'expression `P " et " Q => R` signifie `(P" et "Q) => R` et non `P" et "(Q => R)`,
l'expression `P => Q " ou " R` signifie `P => (Q " ou " R)` et non `(P => Q) " ou " R`,
l'expression `x + y = z` signifie `(x + y) = z` et non `x + (y = z)`,

On définie les opérations `+, **`, indifféremment sur des éléments ou des ensembles d'éléments. Ainsi par exemple, pour un élément `a` et des ensembles `U` et `V`, nous avons :

`a+U = {a+u " / " u in U}`,
`aU = {au " / " u in U}`,
`U+V = {u+v " / " u in U " et " v in V}`,
`UV={uv " / " u in U " et " v in V}`.

On définie une conversion implicite de type entre les booléans et les entiers, le vrai est transformé en `1` et le faux est transformé en `0`. Ainsi l'expression `(a=b)+(a=c)+(b=c)` vaut `3` ssi `a` et `b` et `c` désignent le même élément.

3) Anneau commutatif

La structure d'anneau `(bbbA,+,**)` comprend un ensemble sous-jacent `bbbA` regroupant l'ensemble des éléments de l'anneau. Elle comprend une addition `+` telle que `(bbbA,+)` est un groupe abelien. Cette addition définie un élément neutre que l'on note `0` et une fonction opposée que l'on note `-`. On note `bbbA^**` l'anneau dans lequel on a enlevé l'élément `0`. Elle comprend une multiplication `**`, que l'on note par absence de symbole lorsqu'il n'y a pas d'ambiguité, et telle que `(bbbA^**,**)` est un monoïde commutatif. Cet multiplication définie un élément neutre que l'on note `1`. Et la multiplication doit être distributive sur l'addition. En résumé nous avons un langage d'opérateurs `<+, **, -, 0, 1>` et une théorie d'égalité composée des 9 axiomes suivants :

`AA(x,y,z)inbbbA^3,`

`x+(y+z) = (x+y)+z`
`+` est associatif
`(bbbA,+)` est un groupe abelien
`(bbbA,+,**)` est un anneau commutatif
`x+y = y+x`
`+` est commutatif
`x+(-x) = 0`
`-` est l'opposé pour `+`
`x+0 = x`
`0` est l'élément neutre pour `+`
`x(yz) = (xy)z`
`**` est associatif
`(bbbA^**,**)` est un monoïde commutatif
`xy = yx`
`**` est commutatif
`1**x = x`
`1` est l'élément neutre pour `**`
`x(y+z) = (xy+xz)`
`**` est distributif à gauche par rapport à `+`
`**` est distributif par rapport à `+`
`(y+z)x = yx+zx`
`**` est distributif à droite par rapport à `+`

On démontre que `0**x + 1**x = (0+1)**x = 1**x` et donc que `0**x = 0`. Autrement dit `0` est l'élément absorbant pour la multiplication, et il est nécessairement unique.

On se place dans l'anneau `bbbA`. Les quantificateurs `AA x` et `EE x` ont une porté par défaut sur `bbbA`, c'est à dire que pour une variable `x` quelconque, l'expression`AA x` signifie `AA x in bbbA` et l'expression `EE x` signifie `EE x in bbbA`. Le groupe des unités de `bbbA` noté `U(bbbA)` sera simplement noté `U`.

Voici quelques définitions courantes :

Un élément inversible ou unité `u` est un élément qui possède un inverse pour la multiplication, et on notera cet inverse `u^(-1)`. L'ensemble des éléments inversibles se note `U` et est appelé le groupe des unités, car muni de la multiplication il forme un groupe.

On dit que `a` et `b` sont associés et on note `a=_**b` ssi il existe un élément inversible `u` tel que `a = ub`. La relation `=_**` est une relation d'équivalence. Les unités ou éléments inversibles sont les éléments associés à `1`. On note `a!=_**b` lorsque `a` et `b` ne sont pas associés. Cette notation met en avant l'égalité entre classes d'équivalences. La classe d'équivalence de `x` est l'ensemble `xU`, nous avons `a=_**b` ssi `aU=bU`

On dit que `a` divise `b` ou que `a` est un diviseur de `b` ou que `b` est un multiple de `a` et on note `a<=_**b`, ssi il existe un élément `c` tel que `ca = b`. On dit que `a` est un diviseur propre de `b` ou que `b` est un multiple propre de `a` et on note `a<_**b`, ssi `a` divise `b` sans être associé à `b`, c'est à dire ssi `a<=_**b` et `a!=_**b`. On remarque que si `a<=_**b` et `b<=_**a` alors `a=_**b`. La relation `<=_**` qui signifie « est un diviseur de » est une relation d'ordre partiel. Par commodité on utilisera aussi les relations symétriques `>=_**` qui signifie « est un multiple de » et `>_**` qui signifie « est un multiple propre de ».

On dit que `a` est un plus grand commun diviseur de `x` et `y`, et on note `a in "pgcd"(x,y)`, ssi `a` est à la fois un diviseur de `x` et un diviseur de `y` et que tout élément qui divise à la fois `x` et `y`, divise `a`. Autrement dit :

`a in "pgcd"(x,y)`
ssi
`a<=_**x " et " a<=_**y " et " AA b,  (b<=_**x " et " b<=_**y) => b<=_**a`

Notez que le terme de plus grand commun diviseur fait référence à une relation d'ordre qui doit être interprété comme la relation d'ordre partielle `>=_**` et non comme la relation d'ordre `>=` telle qu'elle peut exister sur `ZZ` par exemple, bien que pour cet exemple cela revienne au même. L'ensemble `"pgcd"(x,y)` se note également par `xvvy` en utilisant le symbole `vv` qui évoque l'ensemble des diviseurs communs et plus particulièrement son leader qui l'engendre et qui est l'ensemble des plus grands communs diviseurs.

On dit que `a` est un plus petit commun multiple de `x` et `y`, et on note `a in "ppcm"(x,y)`, ssi `a` est à la fois un multiple de `x` et un multiple de `y` et que tout élément qui est à la fois un multiple de `x` et un multiple de `y`, est un multiple de `a`. Autrement dit :

`a in "ppcm"(x,y)`
ssi
`a>=_**x" et " a >=_**y" et " AA b,  (b>=_**x" et " b >=_**y) => b>=_**a`

L'ensemble `"ppcm"(x,y)` se note également par `x^^y` en utilisant le symbole `^^` qui évoque l'ensemble des multiples communs et plus particulièrement son leader qui l'engendre et qui est l'ensemble des plus petits communs multiples (selon la relation d'ordre partielle `<=_**`).

On dit que `a` et `b` sont premiers entre eux ssi les seuls diviseurs communs de `a` et de `b` sont les éléments inversibles. C'est à dire que `a` et `b` sont premiers entre eux ssi `"pgcd"(a,b) = U`.

`a` et `b` sont premiers entre eux
ssi
`AA x,  (x<=_**a " et " x<=_**b) => x in U`

Un élément `a` est irréductible ou premier ssi il n'est pas inversible et que tout diviseur de `a` est soit inversible ou soit associé à `a`. Autrement dit, un élément premier ne possède pas de diviseur autre que lui même et que les unités de l'anneau, et ne doit pas être lui-même une unitée de l'anneau. Autrement dit, il est premier ssi l'ensemble de ses diviseurs propres correspond à l'ensemble des unités de l'anneau.

`a` est premier
ssi
`a !in U " et " AA x,  x<_**a => x in U`

L'ensemble des diviseurs de `a` se note `{x " / " x<=_**a}`, et l'ensemble des diviseurs propre de `a` se note `{x " / " x<_**a}`.

Libéllé
Notation
`x` est inversible. `x` est une unité de l'anneau.
`x in U`
`a` et `b` sont associés
`a=_**b`
`a` et `b` ne sont pas associés
`a!=_**b`
`a` divise `b`, ou `a` est un diviseur de `b`
`a<=_**b`
`a` est un multiple de `b`
`a>=_**b`
`a` est un diviseur propre de `b`
`a<_**b`
`a` est un multiple propre de `b`
`a>_**b`
`a` est un plus grand commun diviseur de `x` et `y`
`a in xvvy`
`a` est un plus petit commun multiple de `x` et `y`
`a in x^^y`
`a` et `b` sont premiers entre eux
`avvb=U`
`a` est irréductible ou premier
`{x " / " x<_**a}=U`

4) Point de vue intuitionniste

Selon le point de vue intuitionniste ou élémentarien, on ne peut conçevoir de façon exacte que des ensembles constructibles c'est à dire des ensembles énumérables où chaque élément est constructible par une succession finie d'opérations qui constitue une formule. Cela revient à dire que toutes structures est définie par des opérateurs générateurs et par une théorie d'égalité.

Cette définition peut paraître trop restrictive car elle ne permet pas de construire les nombres réels à l'aide des seuls opérations de l'anneau `<0,1,+,-,**>`. Il faudra pour construire les nombres réels une opération supplémentaire qu'est le passage à la limite. Les élémentariens considèrent que le continuum réel, tel qu'il est définie classiquement, n'existe pas. Ils construisent `bbbR` par le même procédé des suites de Cauchy classiques mais avec une restriction de taille qui est que la suite doit être calculable, c'est à dire que les termes de la suite indéfinie doivent être produits par un programme de taille finie. Autrement dit le nombre réel, défini par cette suite, est défini par ce programme et est donc d'une certaine façon le résultat d'une construction finie et autorisée dans un langage. C'est ainsi que les élémentariens rendent énumérable l'ensemble des réels, simplement en refusant d'adopter l'axiome du choix, soit en restant sur le statu quo, comme quoi on ne peut pas prouver qu'il existe des réels ne pouvant pas être obtenu par une suite de Cauchy calculable, soit en optant pour un axiome opposé à l'axiome du choix, qui affirme que les suites non calculables n'existent pas.

A la lumière de cette introduction, considérez que le qualificatif constructible, s'il ne précise pas avec quels moyens, est synonyme de définissable.

Il arrive que la théorie d'égalité d'une structure définie à l'aide de générateurs possède un degré d'incomplètude plus élevé que l'Arithmétique, c'est à dire qu'il existe des propriétés indémontrables non pas à cause de l'incomplètude de l'Arithmétique, mais à cause d'une incomplétude supplémentaire propre à la définition intuitionniste et élémentarienne de la structure qui introduit une propriété du second ordre logique qu'est l'engendrement à partir d'éléments générateurs. Par analogie avec la mécanique quantique, la structure qui est dans ce cas, est en quelque sorte dans plusieurs états quantiques à la fois. Elle représente à la fois et en même temps plusieurs structures de définitions logiques distinctes au sens des mathématiques classiques.

Une structure sans générateur autre que ceux produits par sa théorie sera qualifiée d'agène. Mais le qualificatif agène comme celui de libre n'est pas une précision nécessaire dans la nomenclature intuitionniste. Le qualificatif agène signifie que l'on n'ajoute pas d'élément à l'ensemble sous-jacent par extension élémentaire, et le qualificatif libre signifie que l'on n'ajoute pas de propriété d'égalité à la théorie par quotientage, toutes choses qui, dans la logique intuitionniste, sont par principe posées par défaut. (Voir Structures fondamentales.)

5) Langage mathématique pour les suites

Les suites de `n"+"1` termes, `f(0),f(1),f(2), ..., f(n)` se notent avec l'opérateur de suite `ccS` qui se comporte comme un quantificateur dont la porté par défaut est sur la suite `(0,1,2, ..., n)`.

`(ccS_(i"="1".."3),  f(i)) = (f(1),f(2),f(3))`

`(ccS_i,  f(i)) = (f(0),f(1),f(2), ..., f(n))`

Le quantificateur de suite `ccS` peut s'appliquer deux fois de suites et ainsi définir une suite de suites, une suite de `n"+"1` suites de `n"+"1` termes, ou un tableau de `(n"+"1)×(n"+"1)` termes. Et on note l'opérateur de façon condensé par `ccS_(i,j)`

`(ccS_i, ccS_j,  f(i,j)) = ((f(0,0),f(0,1),f(0,2), ..., f(0,n)), (f(1,0),f(1,1), f(1,2), ..., f(1,n)), (f(2,0),f(2,1), f(2,2), ..., f(1,n)), (..., ..., ..., ..., ...), (f(n,0), f(n,1), f(n,2), ..., f(n,n)))`

`(ccS_(i,j),  f(i,j)) = (ccS_i, ccS_j,  f(i,j))`

Ce quantificateur peut s'appliquer `m` fois de suites pour définir des tableaux de dimension `m` où chaque dimension a une taille `n"+"1` :

`ccS_(i_1), ccS_(i_2), ccS_(i_3), ..., ccS_(i_m),  f(i_1,i_2,i_3, ..., i_(m))`

`ccS_(i_1, i_2, i_3, ..., i_m),  f(i_1,i_2,i_3, ..., i_(m))`

Le paramètre `n` utilisé par défaut, sert de borne temporaire pour explorer l'ensemble des suites finies.

Le quantificateur de suite `ccS`, comme son nom l'indique, définie une suite. Pour concaténer plusieurs suites en une seul suite, on utilise un opérateur de concaténation `"concat"` de priorité syntaxique plus forte que celle de `=`, ainsi par exemple :

`(ccS_(i"="1".."2),  f(i)) " concat " (ccS_(i"="1".."2),  g(i)) = (f(1),f(2),g(1),g(2))`

Tandis que

`((ccS_(i"="1".."2),  f(i)), (ccS_(i"="1".."2),  g(i))) = ((f(1),f(2)),(g(1),g(2)))`

6) L'anneau commutatif agène libre

L'anneau commutatif agène libre se présente en notation linguistique par `L"/"T` `L` est le langage d'opérateurs `L=<0, 1, −, +, **>`, et où `T` est la théorie d'égalité de l'anneau commutatif c'est à dire l'ensemble des 9 axiomes présentés dans le premier tableau.

L'anneau agène semble à première vue être une structure bigène engendrée par `0` et `1`, mais comme nous avons `0=1+(-1)`, l'anneau agène est en faite une structure monogène engendrée par le seul élément `1`. L'anneau commutatif agène libre se présente en notation programmative par :

Anneau commutatif `(+,0,−,**,1)`

Le patron Anneau commutatif donne un rôle précis à chacun de ses arguments dans un ordre précis, le 1er argument désigne l'opérateur binaire servant pour l'addition, le 2nd argument désigne l'élément servant d'élément neutre pour l'addition, le 3ième argument désigne l'opérateur unaire servant pour la soustraction, le 4ième argument désigne l'opérateur binaire servant pour la multiplication et le 5ième argument désigne l'élément servant d'élément neutre pour la multiplication.

L'anneau comprend le Groupe monogène `(+,0,-,1)`, c'est à dire `bbbN`. Comme la multiplication est distributive sur l'addition nous avons par exemple `2**3 = (1+1)**(1+1+1) = 1+1+... 2**3 fois ...` et d'une manière générale `(1+1+ ... n fois ...)**(1+1+ ... m fois ...) = (1+1+ ... n**m fois ...)`. En conclusion, l'anneau commutatif agène libre correspond aux entiers relatifs.

`bbbZ =` Anneau commutatif `(+,0,−,**,1)`

7) L'anneau commutatif monogène libre

Voyons maintenant à quoi ressemble l'anneau commutatif monogène libre.

`bbbZ[a] =` Anneau commutatif monogène `(+,0,−,**,1,a)`

Le patron Anneau commutatif monogène donne un rôle précis à chacun de ses arguments dans un ordre précis, les 5 premiers arguments désigne les opérateurs de l'anneau et le 6ième argument désigne l'élément générateur. Et il n'y en a pas d'autre car l'anneau commutatif en question est qualifié de monogène.

Cela correspond exactement à une extension élémentaire de `bbbZ` par un élément nommé ici `a`, et qui se note `bbbZ[a]`

Même raisonnement que tout à l'heure, l'anneau monogène est une structure au plus bigène, engendrée par les deux éléments `1, a`. Et comme l'anneau est libre, le langage `<a, −, +, **>` ne peut engendrer aucune expression réduite à `1`, on en déduit que c'est bien une structure bigène.

Grâce à l'associativité et la commutativité des opérations et à la distributivité de `**` par rapport à `+` , toute expression dans le langage de l'anneau monogène `L = < a, 0, 1, −, +, ** >` se met sous la forme d'un polynôme à une variable `a` et à coefficients dans `bbbZ`. Ainsi pouvons-nous énumérer tous les éléments de `bbbZ[a]`.

`bbbZ[a] ={x_0+x_1a+x_2a^2+x_3a^3+ ...+ x_na^n " / " EE n in bbbN,  (x_0,x_1,x_2,x_3,...,x_n) in bbbZ"*"}`

`"*"` est l'opérateur de Kleene, et donc `bbbZ"*"` est l'ensemble des suites finies d'entiers relatifs. Dans cette seconde représentation de l'anneau où les élèments sont représentés par des suites finies d'entiers relatifs formant des vecteurs, l'addition correspond à l'addition vectoriel sur les suites, et la multiplication correspond à la suite des sommes des produits dont la somme des indices est égale à l'indice en cours :

`((x_0),(x_1),(x_2),(...),(x_n)) + ((y_0),(y_1),(y_2),(...),(y_n)) = ((x_0+y_0),(x_1+y_1),(x_2+y_2),(...),(x_n+y_n))`
`((x_0),(x_1),(x_2),(...),(x_n)) ** ((y_0),(y_1),(y_2),(...),(y_n)) = ((x_0y_0),(x_0y_1+x_1y_0),(x_0y_2+x_1y_1+x_2y_0),(...),(sum_(i=0)^n x_iy_(n-i)))`

Ce qui s'écrit :

`(ccS_i,  x_i) + (ccS_i,  y_i) = ccS_i,  x_i+y_i`
`(ccS_i,  x_i) ** (ccS_i,  y_i) = ccS_i,  sum_(p=0)^i x_py_(i-p)`

`n` est le degrés du polynôme qui peut être égal à n'importe quel entier naturel, les termes d'indice supérieur à `n` étant tous nuls.

L'opérateur `ccS_i`, se comporte comme un quantificateur (à part le fait qu'il porte sur une liste de valeurs et non sur un ensemble de valeurs possibles) quantifiant la variable `i`. Cela construit une suite de `n"+"1` termes en remplaçant dans ce qui suit, `i` par une valeur entière variant de `0` à `n`.

`(ccS_i, x_i) = (x_0, x_1, x_2,..., x_n)`

L'anneau commutatif monogène libre se nomme également l'anneau des polynomes à une variables et à coefficients entiers relatifs.

8) L'anneau commutatif bigène libre

Voyons maintenant à quoi ressemble l'anneau commutatif bigène libre.

`bbbZ[a,b] =` Anneau commutatif bigène `(+,0,−,**,1,a,b)`

Le patron Anneau commutatif bigène donne un rôle précis à chacun de ses arguments dans un ordre précis, les 5 premiers arguments désigne les opérateurs de l'Anneau, le 6ième argument désigne le premier élément générateur et le 7ième argument désigne le second élément générateur, et il n'y en a pas d'autre car l'anneau commutatif en question est qualifié de bigène.

Cela correspond exactement à une extension élémentaire de `bbbZ` par deux éléments nommés ici `a` et `b`, et qui se note `bbbZ[a,b]`

Même raisonnement que tout à l'heure, l'anneau bigène libre est une structure trigène, engendrée par les trois éléments `1, a, b`.

Grâce à l'associativité et la commutativité des opérations et à la distributivité, toute expression dans le langage `<a, b, 0, 1, −, +, ** >` se met sous la forme d'un polynôme à deux variables `a` et `b` et à coefficients dans `bbbZ`. Ainsi pouvons-nous énumérer tous les éléments de `bbbZ[a,b]`.

`bbbZ[a] = {sum_(i=0)^n sum_(j=0)^n x_(i,j) a^ib^j" / "EE n in bbbN,  (ccS_(i,j),  x_(i,j)) in bbbZ"**"}`

`"**"` est l'opérateur de Kleene au carré, et donc `bbbZ"**"` est l'ensemble des suites finies de suites finies d'entiers relatifs. Dans cette seconde représentation de l'anneau où les éléments sont des suites finies de suites finies d'entiers relatifs formant des matrices, l'addition correspond à l'addition matricielle et la multiplication correspond à la suite de suite des sommes des produits dont la somme des indices est égale à l'indice en cours.

`(ccS_(i,j),  x_(i,j))+(ccS_(i,j),  y_(i,j)) = ccS_(i,j),  x_(i,j)+y_(i,j)`

`(ccS_(i,j),  x_(i,j))**(ccS_(i,j),  y_(i,j)) = ccS_(i,j),  sum_(p=0)^n sum_(q=0)^n x_(p,q) y_(i-p,j-q)`

Notez que dans ces expressions tout terme d'indice supérieur à la porté du quantificateur de liste, c'est à dire supérieur à `n`, est nul par convention.

L'anneau commutatif bigène libre se nomme également l'anneau des polynomes à deux variables et à coefficients entiers relatifs.

9) L'Anneau commutatif m-gènes libre.

`bbbZ[a_1,a_2,a_3, ..., a_m] =` Anneau commutatif m-gènes `(+,0,−,**,1,a_1,a_2,a_3, ..., a_m)`

C'est une structure `m+1` gènes, engendrée par `1, a_1, a_2, a_3, ..., a_m`. Tout élément de l'anneau se met sous la forme d'un polynôme à `m` variables `a_1, a_2, a_3, ..., a_m` et à coefficients dans `bbbZ`. Ainsi pouvons-nous énumérer tous les éléments de `bbbZ[a_1,a_2,a_3, ..., a_m]`.

`bbbZ[a_1,a_2,a_3, ..., a_m] = {sum_(i_1=0)^n sum_(i_2=0)^n ... sum_(i_m=0)^n x_(i_1, i_2 ..., i_m)a_1^(i_1)a_2^(i_2) ... a_m^(i_m)" / "EE n in bbbN,  (ccS_(i_1,i_2,...,i_n),  x_(i_1,i_2, ..., i_m)) in bbbZ"*"^("("m")")}`

`"*"^("("m")")` est l'opérateur de Kleene à la puissance `m`, et donc `bbbZ"*"^("("m")")` est l'ensemble des suites finies de suites finies de suite finies... répété ainsi `m` fois... d'entiers relatifs. Dans cette seconde représentation de l'anneau où les éléments sont des tenseurs de dimenssion `m`, l'addition correspond à l'addition des tenseurs et la multiplication correspond aux sommes des produits dont la somme des indices est égale à l'indice en cours dans chaque dimension du tenseur..

Dans cette seconde représentation de l'anneau, l'addition et la multiplication sont données par les formules suivantes :

`(ccS_(i_1,i_2, ...,i_n),  x_(i_1,i_2, ..., i_m)) + (ccS_(i_1,i_2,...,i_n),  y_(i_1,i_2, ..., i_m)) = (ccS_(i_1,i_2, ...,i_n),  x_(i_1,i_2, ..., i_m) + y_(i_1,i_2, ..., i_m))`

`(ccS_(i_1,i_2, ...,i_n),  x_(i_1,i_2, ..., i_m)) ** (ccS_(i_1,i_2,...,i_n),  y_(i_1,i_2, ..., i_m)) = (ccS_(i_1,i_2, ...,i_n),  sum_(p_1=0)^n sum_(p_2=0)^n ... sum_(p_m=0)^n x_(p_1,p_2...,p_m) y_(i_1-p_1,i_2-p_2...,i_m-p_m))`

10) L'Anneau commutatif `oo`-gènes libre.

L'approche intuitionniste n'exclut pas l'infini mais le contraint à être constructif c'est à dire tel que chaque élément de cet infini doit être finiment définissable. On peut donc concevoir une infinité énumérable de générateurs `a_1,a_2,a_3...`.

`bbbZ[a_1,a_2,a_3...] =` Anneau commutatif `oo`-gènes `(+,−,0,**,1,a_1,a_2,a_3...)`

La structure est ainsi engendrée par une infinité d'éléments générateurs `1, a_1, a_2, a_3...`.

Selon le paradigme intuitionniste, tout élément de l'anneau est définie par une formule de taille finie. Et donc tout élément n'est engendrée que par un nombre fini d'éléments générateurs. Délors les règles de sommation et de produit se ramènent aux mêmes règles que pour le cas des anneaux commutatifs de type fini (de type fini signifie engendré par un nombre fini de générateurs).

 

Pierre Audibert, "Algorithmes et théorie des nombres", Ellipse 2014
Daniel Lignon, "Dictionnaire de (presque) tous les nombres entiers", Ellipse, 2012
Gérald Tenenbaum, Michel Mendès France, "Les Nombres premiers, entre l'ordre et le chaos", Dunod 2011
Jean-Paul Delehaye, "Merveilleux nombres premiers. Voyage au coeur de l'arithmétique" Belin • Pour la science, 2003
Sabah Al Fakir, "Algèbre et théorie des nombres. Cryptographie. Primalité" Ellipses, 2003
Philippe Saux Picart, "Cours de calcul formel.Algorithmes fondamentaux", Ellipses 1999

Dominique Mabboux-Stromberg

 

---- 27 décembre 2015 ----

 

 

 

 

 

 

 

 

 

 

 

 

L'anneau `bbbA` est dit intègre ssi il n'existe pas de diviseur de 0, c'est à dire ssi `AAx,yinbbbA, xy=0 => x=0 " ou " y=0`.

L'anneau `(bbbA,+,"·")` est factoriel ssi tout élément non inversible, non nul, peut s'écrire comme produit d'éléments irréductibles.

L'anneau `(bbbA,+,"·")` est euclidien ssi y existe une division euclidienne à droite, c'est à dire s'il existe une valuation `v` à droite, c'est à dire une application croissante sur la droite de `bbbA^"." sur bbbN`, c'est à dire qui vérifie `AAa,binbbbA a|_db => v(a) <= v(b)`, et si cette valuation est euclidienne, c'est à dire telle que `AAainA,AAbinA^"·",EE(q,r)inA^2,`

`a=qb+r " et " (r=0 " ou " v(r)<v(b))`

On dit que la division euclidienne à droite de `a` par `b` donne comme résultat `q` et comme reste `r`.

L'anneau `(bbbA,+,"·")` est euclidien à gauche s'il y existe une division euclidienne à gauche, c'est à dire s'il existe une valuation `v` à gauche, c'est à dire une application croissante sur la gauche de `bbbA^"." sur bbbN`, c'est à dire qui vérifie `AAa,binbbbA a|_gb => v(a) <= v(b)`, et si cette valuation est euclidienne, c'est à dire telle que `AAainA,AAbinA^"·",EE(q,r)inA^2,`

`a=bq+r " et " (r=0 " ou " v(r)<v(b))`

On dit que la division euclidienne à gauche de `a` par `b` donne comme résultat `q` et comme reste `r`.

On se place dans l'anneau bbbA. Les quantificateur AA x et EE x ont une porté par défaut sur bbbA, c'est à dire que AAx signifie AAxinbbbA et EEx signifie EExinbbbA. Le groupe des unités de bbbA noté U(bbbA) sera noté simplement U.

La structure est intègre  
AAx,y, xy=0 => (x=0 ou y=0)
 

Un Sous-anneau monogène <x> est l'ensemble engendré par x, l'addition, la soustraction, l'élément neutre de l'addition, la multiplication et l'élément neutre de la multiplication

On démontre que `x"·"0 + x"·"1 = x"·"(0+1) = x"·"1` et donc que `x"·"0 = 0` et pareillement que `0"·"x=0`. Autrement dit `0` est l'élément absorbant de la multiplication.

Un élément inversible `u ` de l'anneau `bbbA ` est un élément qui possède un inverse pour la multiplication dans `bbbA `, et on notera cette élément inverse par `u^(-1)`. Il n'y a pas d'inverse à droite distinct de l'inverse à gauche, si `xa=1` et `bx=1` alors `bxa=a` et `b=a`.

Soit `a,b` deux élément d'un anneau `bbbA `. On dit que `a` divise à droite `b ` dans `bbbA` et on note `a"|"_db`, s'il existe un élément `c` dans `bbbA` tel que `b = ca`. Et on dit que `a ` divise à gauche `b ` dans `bbbA` et on note également `a"|"_gb`, s'il existe un élément `c` dans `bbbA` tel que `b = ac`. On remarque que si `a"|"_db` et `b"|"_da` alors `a ` et `b ` sont inversibles, et de même si `a"|"_gb` et `b"|"_ga` alors `a ` et `b ` sont inversibles. On dit que `a` divise `b` ou que `a` est un diviseur de `b` et on note `a"|"b`, si `a` divise à droite `b` ou bien si `a` divise à gauche `b`.

On dit que `a ` est `b ` sont associé s'il existe des éléments inversibles `u,v` tel que `a = ubv `.

Un élément `a ` est irréductible ou premier s'il est non nul, s'il n'est pas inversible, et si tout diviseur de `a ` est soit inversible ou soit associé à `a `.

L'anneau `bbbA` est dit intègre ss'il n'existe pas de diviseur de 0, c'est à dire ssi `AAx,yinbbbA, xy=0 => x=0 " ou " y=0`.

L'anneau `(bbbA,+,"·")` est factoriel si tout élément non inversible, non nul, peut s'écrire comme produit d'éléments irréductibles.

L'anneau `(bbbA,+,"·")` est euclidien à droite s'il y existe une division euclidienne à droite, c'est à dire s'il existe une valuation `v` à droite, c'est à dire une application croissante sur la droite de `bbbA^"." sur bbbN`, c'est à dire qui vérifie `AAa,binbbbA a|_db => v(a) <= v(b)`, et si cette valuation est euclidienne, c'est à dire telle que `AAainA,AAbinA^"·",EE(q,r)inA^2,`

`a=qb+r " et " (r=0 " ou " v(r)<v(b))`

On dit que la division euclidienne à droite de `a` par `b` donne comme résultat `q` et comme reste `r`.

L'anneau `(bbbA,+,"·")` est euclidien à gauche s'il y existe une division euclidienne à gauche, c'est à dire s'il existe une valuation `v` à gauche, c'est à dire une application croissante sur la gauche de `bbbA^"." sur bbbN`, c'est à dire qui vérifie `AAa,binbbbA a|_gb => v(a) <= v(b)`, et si cette valuation est euclidienne, c'est à dire telle que `AAainA,AAbinA^"·",EE(q,r)inA^2,`

`a=bq+r " et " (r=0 " ou " v(r)<v(b))`

On dit que la division euclidienne à gauche de `a` par `b` donne comme résultat `q` et comme reste `r`.