Soit k un entier naturel, le reste de la division euclidienne de k est à valeurs dans {0,1,...k-1}.
Si je prends a un entier qui a pour reste 0, j'engendre tout les entiers naturels multiples de k, si le reste vaut 1, j'engendre {k+1,2*k+2,3*k+3,...(k-1)*k+k-1} et tout leurs multiples, si il vaut 2, j'engendre {k+2,2*k+4,3*k+6,...(k-1)*k+2k-1) et tout leurs multiples, et etc...
Si on résonne par classe d'équivalence (que je note ici a~), on engendre avec k+p (p compris entre 0 et k-1 inclus) tout les nombres appartenant à p~ ainsi que (presque tout) les nombres appartenant aux classes d'équivalences q~ telles que p|q.
Il suffira ensuite de restreindre les groupes engendrés par chaque classe d'équivalence à partir du premier élément atteint dans chacune d'entre elles.
Sachant que l'on peut ajouter les éléments parcourus en changeant le k, ça restera stable.