

I Introduction
| L'algèbre linéaire effective travaille sur des matrices. Les manipulations sur les matrices correspondent à des actions théoriques. Une bonne compréhension demande de passer sans problème du point de vue pratique au point de vue théorique et réciproquement. Ici, nous allons travailler sur l'anneau des entiers et voir comment des problèmes concrets sur les entiers d'essence linéaire peuvent se résoudre de manière effective. Ce document a été fait à partir de séances devant machine destinées à des étudiants de licence. |
Définition Soit
A un anneau. Un
A-module est un groupe abélien
(M, +)
muni d'une loi externe
vérifiant les mêmes axiomes
que ceux d'un espace vectoriel.
On prend dans la suite . DéfinitionUn
-module libre (de rang
n)
L est un
-module tel qu'il existe
une suite
(e1, ..., en) (appelée base)
de
n éléments de
L vérifiant :
tout élément de
L s'écrit comme combinaison linéaire de
(e1, ..., en), de manière unique.
Nous ne réintroduirons pas tout le vocabulaire très semblable à celui des espaces vectoriels : on parlera donc librement de matrices (à coefficients dans ), de morphisme , de noyau et image d'un morphisme, du groupe (groupe des matrices inversibles dans , on montre que ce sont les matrices dont le déterminant est inversible dans , c'est-à-dire égal à ) ...
Algèbre linéaire sur
|
I-1 Interprétation des matrices
Solution
Si
b1, ...,
bm est un autre système générateur de
M, la matrice
B correspondante est
avec
V la matrice
des
bj exprimés dans le système générateur
(a1, ... , am) de
M :
La matrice V est à coefficients dans . Comme les vecteurs ai peuvent aussi s'exprimer comme combinaison entière des bi, son inverse est aussi à coefficients dans , autrement dit, le déterminant de la matrice V est égal à : . Attention, ici on a pris un système générateur ayant même nombre d'éléments.
|
Les opérations suivantes permettent de faire des "réductions de matrices", c'est-à-dire de transformer une matrice en une matrice plus simple en conservant certaines propriétés : |
Ainsi, on peut transformer par des opérations élémentaires sur des colonnes (resp. sur des lignes) un vecteur ligne (resp. colonne) non nul en le vecteur (1,0) (resp. ). Exercice |
Solution
,
,
,
.
, , . On vérifie que ces matrices ne sont pas équivalentes. |
Dans un anneau, on ne peut diviser par b que si b est inversible, par exemple dans , égal à . Pour remplacer cette opération, on peut utiliser la division euclidienne de a par b : a = b q + r avec (elle n'existe pas dans tous les anneaux, mais nous travaillerons dans ) : En itérant comme dans l'algorithme d'Euclide, on obtient
Cette opération permet de transformer en ; de même en multipliant par une matrice convenable à droite, on peut transformer en :
Exercice
Donner un système de représentants de l'ensemble quotient
.
Comment peut-on traduire ces énoncés en termes de sous-modules ? Faire de même avec , . Préciser comment réduire une matrice de en un représentant parmi ceux trouvés. Quelle interprétation peut-on donner de ces ensembles quotients ?
Donnons une idée des opérations à faire
|
Solution
Formes possibles :
;
avec
a strictement positif ;
avec
d strictement positif ;
avec
a et
d strictement positifs et
.
Vérifiez qu'elles ne sont pas équivalentes modulo la multiplication à droite par une matrice de . Si on avait travaillé sur un corps, qu'aurait-on obtenu ? Les sous- -modules de la deuxième et troisième forme sont de rang 1, ceux de la quatrième forme sont de rang 2. Les pivots (voir paragraphe suivant) sont a (resp. d, resp. ( a, d)). |
I Introduction
|
Algèbre linéaire sur
|
I Introduction
|
Définition
La matrice
est une forme normale de Hermite (supérieure échelonnée en colonnes) (HNF)
si
est une matrice
telle qu'il existe une fonction strictement croissante
Remarque
Par exemple, la matrice suivante a
8 lignes et
7 colonnes, les deux premières
colonnes sont nulles et les cinq dernières sont non nulles (par convention,
dans ce qui suit,
peuvent être nulles, positives ou négatives.
Exercice Donner tous les formes normales d'Hermite HNF de taille
(3, 2), de taille
(2, 3).
Exercice Si une matrice
de rang
n est HNF,
elle est triangulaire supérieure avec des coefficients diagonaux strictement
positifs. La fonction pivot est alors l'identité.
|
I Introduction
| Solution
2,3 : un
-module dans
, équivalent à
(0,v1,v2). On est ramené au cas des matrices
de taille
(2, 2).
;
avec
q strictement positif ;
avec
q strictement positif ;
avec
q1 et
q2 strictement positifs
et
.
3,2 : un sous- -module de engendré par deux vecteurs.
Convention : aucune condition sur les
|
I Introduction
| SolutionLa même chose avec des pivots égaux à 1 et des
égaux à 0
|
II-2 Propriétés de la forme normale d'Hermite
I Introduction
| On admet le résultat suivant (voir cependant l'algorithme qui suit) : Théorème [Forme normale d'Hermite]Si A est une matrice à coefficients dans non singulière, il existe une matrice V unimodulaire (à coefficients dans de déterminant 1) et une unique matrice B qui est HNF telles que . Voici des conséquences. Théorème
Soit
L un
-module libre de rang
n. Une fois fixée une base de
L,
tout sous-module de
L a une base canonique : celle donnée par sa matrice HNF.
Théorème Le groupe linéaire
opère à droite sur
et l'ensemble des
matrices HNF de taille
forme un système de représentants de
.
|
I Introduction
| Pour calculer la forme normale d'Hermite, on utilise un algorithme du type de l'algorithme de Gauss en rajoutant l'opération élémentaire d'Euclide . Il n'est pas demandé de l'implémenter. Le principe est le même que celui de l'algorithme de Gauss donné. On utilisera la commande mathnf dans Pari/GP (la commande mupad linalg::hermiteForm ne fonctionne que pour des matrices carrées inversibles, ce qui limite son utilisation.)
Algorithme naïf pour HNFInput: Output: Soit pour i = m, , 1 faire siil existe j < R - 1 tel que alors Choisir j tel que Ecrire si alors pour i = m, , 1 faire si alors pour j = n, . . . , n - R + 2 faire La forme d'Hermite d'une matrice dont on vient de parler est obtenue par manipulation sur les colonnes et est supérieure . On aurait pu manipuler les lignes ou obtenir une matrice inférieure . Il y a ainsi quatre définitions possibles:
Exercice
Donner pour chacune d'elle la définition formelle. Comment peut-on passer
facilement d'une forme à l'autre ?
Il y a deux involutions intéressantes qui échangent les lignes et les colonnes
qui sont la transposition
et la multiplication (à droite et à gauche) par les matrices carrées
antidiagonales d'antidiagonale formée de 1.
Il suffit d'avoir un algorithme pour l'une des définitions. L'une ou l'autre des définitions est plus ou moins adaptée ensuite selon le problème qu'on se pose. Donner les formules permettant de passer d'une des formes aux trois autres et les comparer sur des exemples significatifs . Quel est le résultat sur la matrice |
I Introduction
| Solution
Définition
La matrice
est une forme normale d'Hermite
supérieure échelonnée en colonnes si
est une matrice
telle qu'il existe une fonction strictement croissante
Définition
La matrice
est une
forme normale d'Hermite supérieure échelonnée en lignes si
est une matrice
telle qu'il existe une fonction strictement croissante
Définition
La matrice
est une forme normale d'Hermite
inférieure échelonnée en colonnes si
est une matrice
telle qu'il existe une fonction strictement croissante
Définition
La matrice
est une
forme normale d'Hermite inférieure échelonnée en lignes si
est une matrice
telle qu'il existe une fonction strictement croissante
Si A est une matrice , on note w(A)=Wn A Wm (ou en abrégé W A W). Pour passer d'une forme à l'autre,
, , Regardons sur un exemple :
gp > hnf1(A) = H = mathnf(A,1) ; [A * H[2], H[2]];
hnf1(A) = H = mathnf(A,1) ; [A * H[2], H[2]];
ww (n) = matrix(n,n,i,j, if(i+j == n + 1,1)) ;
ww(3)
{hnf2(A) = r = matsize(A) ; W1 = ww(r[1]) ; W2 = ww(r[2]) ;
B = W2 * A~ * W1 ; H = mathnf(B,1) ; U = H[2] ; H = B * U ;
[W1 * H~* W2, W1 * U~* W1]}
hnf3(A) = H = hnf1(A~) ; [H[1]~ , H[2]~] ;
hnf4(A) = H = hnf2(A~) ; [H[1]~ , H[2]~] ;
{A = [-2, -2, -1, -3, -3, -3;
-2, -3, -3, -2, 1, 0;
-2, 0, -1, -2, 1, -2;
-3, -1, -1, -3, 0, -3;
-1, 0, 1, -3, -2, -1]} ;
hnf1(A)[1]
hnf2(A)[1]
hnf3(A)[1]
hnf4(A)[1]
|
II-4 Application de la forme d'Hermite
I Introduction
| Nous allons maintenant voir comment utiliser la forme d'Hermite pour résoudre des problèmes. Pour chacun, expliquez comment on peut lire la solution sur une forme d'Hermite. S'il y a lieu, l'appliquer aux problèmes concrets.
Algorithme
Algorithme
Algorithme Montrer qu'un sous-
-module d'un
-module libre est libre.
Trouver une base du
-module engendré dans
par certains vecteurs.
Exercice
Algorithme
Algorithme
Vérifier que deux sous-
-modules
M et
M' de
donnés par des
matrices
A (
m colonnes) et
B (
m' colonnes) sont égaux.
Algorithme
Soient deux sous-
-modules
M et
M' de
donnés par des
matrices
A (
m colonnes) et
B (
m' colonnes).
Vérifier que
M' est contenu dans
M.
Algorithme
Trouver l'intersection dans
des deux sous-modules
M et
N donnés par les matrices
A (
m colonnes) et
B (
m' colonnes).
|
I Introduction
| SolutionNoyau d'un homorphismeInput: matrice représentant l'homomorphisme Output: matrice représentant le noyau calculer la matrice HNF par colonnes de la matrice A : prendre les colonnes de la matrice V correspondant à une colonne de zéros dans H. |
I Introduction
| SolutionImage d'un homomorphismeInput: matrice représentant l'homomorphisme Output: matrice représentant l'image calculer la matrice HNF par colonnes de la matrice A : . prendre les colonnes de la matrice H. |
I Introduction
| SolutionSomme de deux sous-modulesInput: matrices représentant les sous-modules Output: matrice représentant la somme calculer la matrice HNF par colonnes de la matrice : . prendre les colonnes (non nulles) de la matrice H |
I Introduction
| SolutionEgalité de deux sous-modulesInput: Matrices représentant les sous-modules. Output: Booléen disant si les deux sous-modules sont égaux. calculer les matrices HNF de M et M' vérifier qu'elles sont égales.
|
I Introduction
| SolutionInclusion de deux sous-modulesInput: Matrices représentant les sous-modules Output: Booléen indiquant si le premier sous-module est inclus dans l'autre. calculer M + M' ; vérifier que M + M' = M. |
I Introduction
| SolutionIntersection de deux sous-modulesInput: Matrices représentant les sous-modules Output: Matrice représentant l'intersection calculer le noyau N de la matrice en utilisant la matrice HNF par colonnes : prendre les n premières lignes N1 du noyau N calculer A N1 et et le mettre sous forme HNF. |
I Introduction
|
Algèbre linéaire sur
|
I Introduction
| On va maintenant se permettre aussi des multiplications à gauche.
Définition
Une matrice
ou
est dans une forme normale de Smith (SNF) si
D est diagonale, de diagonale
d1, ... , dn formée d'entiers positifs telle que
(en terme d'idéaux, telle que
).
|
III-2 Forme normale de Smith d'une matrice
I Introduction
|
Le théorème suivant est admis.
Théorème [Forme normale de Smith pour les matrices carrées]Si A est une matrice à coefficients dans non singulière, il existe des matrices U et V unimodulaires (à coefficients dans de déterminant 1) tels que soit une matrice diagonale à coefficients dans , de diagonale d1, ... , dn tels que .
Théorème Soit
A une matrice entière
. Il existe
des matrices
U et
V unimodulaires et une unique matrice
S de Smith telles que
Théorème [Traduction]
L'ensemble des matrices SNF
forment un système de représentants
de
|
III-3 Comment calculer la forme de Smith
I Introduction
| Une première méthode est ... d'utiliser les très bons calculateurs qui existent (Pari/GP, ..). Nous n'implémenterons pas les algorithmes ici. Regardons simplement le cas des matrices , qui montre bien les difficultés. Pensez à réinterpréter les multiplications par des matrices comme des opérations sur les lignes ou les colonnes pour comprendre ce qu'on fait. Partons de la matrice . Soit d1 le pgcd de b et d. Si d1 = d, c'est-à-dire si d divise b, on multiplie à gauche par la matrice : En pratique, on commence par amener par des permutations de lignes ou de colonnes l'élément de plus petite valeur absolue en bas à droite et on refait cette opération avant de recommencer.
Exercice Trouver une matrice
pour laquelle le nombre d'opérations à faire pour obtenir sa matrice de Smith
est grand.
|
III-4 Résolution de quelques problèmes
I Introduction
|
Algorithme
Calculer l'ensemble des solutions entières du système diophantien
AX = B
avec
A et
B des matrices à coefficients dans
. Ici,
X est un vecteur colonne.
Exercice
Algorithme
Calculer l'ensemble des solutions entières du système modulaire
Dans le cas où A est la matrice identité et où M est une matrice colonne dont les coefficients sont premiers deux à deux, l'existence et l'unicité d'une solution est donnée par le lemme chinois. Donnez une méthode pour trouver toutes les solutions de la congruence vectorielle . L'appliquer sur des exemples.
Exercice |
I Introduction
| Solution
Il s'agit de calculer l'ensemble des solutions entières d'un système
A X = B Si
B est nul, c'est aussi le noyau de l'application linéaire
de
-modules donnée par
A dans la base canonique.
Utilisons la forme normale de Smith (pour le noyau, la forme normale d'Hermite suffirait). Soit U A V = S la forme normale de Smith. Résoudre en entiers A X = B est équivalent à résoudre S Y = C en entiers avec C = U B, le lien étant donné par X = V Y et. Le système S Y = C est de la forme : |
I Introduction
| Solution
On se ramène à la résolution d'un système linéaire diophantien
en introduisant des inconnues supplémentaires
A X + DM Y = C
où
DM est la matrice diagonale de diagonale
M.
On calcule la matrice SNF de la matrice
.
|
IV Groupes abéliens de type fini
I Introduction
|
Algèbre linéaire sur
|
I Introduction
|
Définition
Un groupe abélien de type fini est un
-module de type fini, c'est-à-dire ayant
un nombre fini de générateurs. Un groupe abélien libre est isomorphe à
pour un entier
d où
d est par définition son rang .
Théorème
Soit
un homomorphisme de groupes abéliens libres de type fini.
Il existe des bases de
L1 et de
L2 telles que la matrice de
f
dans ces bases soit sous forme normale de Smith.
Remarque
Si
A est la matrice de
f dans des bases données de
L1 et de
L2,
la nouvelle base de
L1 est donnée par la matrice
V,
la nouvelle base de
L2 est donnée par la matrice
:
Théorème Soit
M un sous-module d'un
-module
L libre de type fini
et de rang maximal.
Il existe une base de
L et des entiers positifs
d1, ...,
dr tels que
et tels que
d1 e1, ..., dr er soient une base de
M.
Les entiers
d1, ...,
dr caractérisent
.
Exercice
|
I Introduction
| Soit M un groupe abélien de type fini et v1, ..., vs des générateurs . Pour décrire M, introduisons l'application Le noyau de f est un sous- -module de engendré par certains vecteurs r1, ..., rt. Il est appelé module des relations de M. Soit A la matrice formée par les vecteurs r1, ..., rt. C'est une matrice de qu'on appelle une matrice des relations de M (relativement au système générateur ( r1, ..., rt)). En effet, on a La matrice A définit un homomorphisme . Son image est par définition égale au noyau de f. Alors, .
Théorème Soit
M un
-module de type fini, il existe des entiers
positifs
d1, ...,
dm tels que
et un entier
r positif ou nul
tels que
Analyser la structure de M revient donc à étudier le groupe et à en trouver les invariants. Ce qui se fait en utilisant la forme normale de Smith de A.
Exercice
Quelques exemples traités :
exemple
,
exemple
,
exemple
Relations Groupes abéliens Groupes en arithmétique
Exercice
Quotient
Sous-module des rationnels Nombre de sous-groupe d'ordre p Isomorphismes
|
I Introduction
IV Groupes abéliens de type fini
|
Voici quelques problèmes qu'on aimerait résoudre. Ces problèmes ont pour
inconnues des entiers, ce qui les distingue
des problèmes sur
.
V-3 Un système modulo des entiers divers V-4 Un système linéaire : condition de compatibilité V-5 Le groupe multiplicatif dans les rationnels V-9 Groupe abélien défini par générateurs et relations (1)
Algèbre linéaire sur
|
I Introduction
IV Groupes abéliens de type fini
|
Le soleil (c'était alors un dieu) possédait un troupeau de taureaux et de
vaches, dont une partie était blanche, une partie noire, une partie tachetée, et
la quatrième brune. Parmi les taureaux, le nombre de ceux qui étaient blancs
dépassait le nombre des bruns de la moitié plus un tiers du nombre des taureaux
noirs. Le nombre des taureaux noirs dépassait le nombre des taureaux bruns d'un
quart plus un cinquième du nombre des taureaux tachetés. Enfin le nombre des
taureaux tachetés dépassait celui des bruns d'un sixième plus un septième du
nombre des taureaux blancs.
Parmi les vaches, le nombre des blanches était égal au tiers augmenté du quart
du nombre total des bovins noirs. Le nombre des vaches noires, au quart augmenté
du cinquième du nombre total des bovins tachetés. Le nombre des vaches
tachetées, au cinquième augmenté du sixième du nombre total des bovins bruns.
Enfin le nombre des vaches brunes était égal à un sixième plus un septième du
nombre total des bovins blancs.
Peut-on déterminer le troupeau du soleil ? Le plus petit possible ?
Un renseignement supplémentaire : il est possible de mettre les
taureaux blancs et les taureaux noirs ensemble en carré
et de mettre les taureaux bruns et les taureaux tachetés
en triangle.
Ce célèbre problème est généralement attribué à Archimède. Il a été découvert dans
un manuscrit grec conservé dans une bibliothèque du nord de l'Allemagne
en 1773. Le texte propose de compter les troupeaux du dieu du
soleil. La deuxième partie n'est pas faisable avec les méthodes dont on parle aujourd'hui.
[remarquer aussi que les seuls rationnels utilisés sont ce qu'on appelle des fractions égyptiennes,
c'est-à-dire de la forme
1/n.
|
I Introduction
IV Groupes abéliens de type fini
| Solution
Le texte propose de compter les troupeaux du dieu du
soleil, et en substance, il s'énonce de la façon suivante : il s'y trouve
des taureaux et vaches de 4 couleurs différentes, blancs, noirs, tachetés
et marrons. Pour les taureaux, le nombre de blancs est plus grand que
le nombre des marrons de 1/2 + 1/3 du nombre des noirs ; le nombre
des noirs plus grand que les marrons de 1/4 + 1/5 du nombre des tachetés
; le nombre des tachetés plus grand que le nombre des marrons
de 1/6 + 1/7 du nombre des blancs.
Pour les vaches, le nombre des blanches est 1/3 + 1/4 du nombre
total de têtes de bétail noires ; le nombre des noires, 1/4 + 1/5 du
nombre total de têtes de bétail tachetées ; le nombre de tachetées,
1/5 + 1/6 du nombre total de têtes de bétail marrons ; le nombre des
marrons, 1/6 + 1/7 du nombre total de têtes de bétail blanches.
Ce problème se retranscrit simplement en le système suivant de 7 équations
à 8 inconnues :
b = m + 5/6 * n n = m + 9/20*t t = m + 13/42*b B = 7/12(n + N) N = 9/20(t + T) T = 11/30(m + M) M = 13/42(b + B)qui conduit à la solution, z étant un paramètre entier quelconque,
{ A =
[-6, 5, 6, 0, 0, 0, 0, 0;
0, -20, 20, 9, 0, 0, 0, 0;
13, 0, 42, -42, 0, 0, 0, 0;
0, 7, 0, 0, -12, 7, 0, 0;
0, 0, 0, 9, 0, -20, 0, 9;
0, 0, 11, 0, 0, 0, 11, -30;
13, 0, 0, 0, 13, 0, -42, 0]
}
%1 =
[-6, 5, 6, 0, 0, 0, 0, 0;
0, -20, 20, 9, 0, 0, 0, 0;
13, 0, 42, -42, 0, 0, 0, 0;
0, 7, 0, 0, -12, 7, 0, 0;
0, 0, 0, 9, 0, -20, 0, 9;
0, 0, 11, 0, 0, 0, 11, -30;
13, 0, 0, 0, 13, 0, -42, 0]
b = 10366482z, n = 7460514z, m = 4149387z, t = 7358060z, B = 7206360z, N = 4893246z, M = 5439213z, T = 3515820z.
{ A =
[-6, 5, 6, 0, 0, 0, 0, 0;
0, -20, 20, 9, 0, 0, 0, 0;
13, 0, 42, -42, 0, 0, 0, 0;
0, 7, 0, 0, -12, 7, 0, 0;
0, 0, 0, 9, 0, -20, 0, 9;
0, 0, 11, 0, 0, 0, 11, -30;
13, 0, 0, 0, 13, 0, -42, 0]
}
H = mathnf(A, 1)[1]
U = mathnf(A, 1)[2]
U[,1]
De plus, la somme du nombre de taureaux blancs et du nombre de taureaux noirs est un carré. La somme du nombre de taureaux roux et du nombre de taureaux tachetés est un triangulaire.Cela conduit à une équation de Pell-Fermat (un triangulaire est un nombre de la forme n(n+1)).
|
I Introduction
IV Groupes abéliens de type fini
|
I Introduction
IV Groupes abéliens de type fini
| Solution
On cherche la réduction HNF de la matrice
(12, 43, 189, 19, 289) :
gp> mathnf(Mat([12, 43, 189, 19, 289]), 1) %1 = [Mat(1), [-289, 1032, 4536, 456, -24; 0, 1, 0, 0, 0; 0, 0, 1, 0, 0; 0, 0, 0, 1, 0; 12, -43, -189, -19, 1]] De manière générale, pour résoudre le système linéaire M X = B, on écrit M U = (0 | H) sous forme d'Hermite, On doit résoudre gp> Y = [y1, y2, y3, y4, 220]~ ; Il peut bien sûr y avoir des conditions de compatibilités, ce qu'il n'y a pas ici.
A = Mat([12, 43, 189, 19, 289]) HU = mathnf(A, 1) H1 = HU[1] ; U = HU[2] H = A*U Z = 220*H1[1,1] Y = [y1,y2,y3,y4,Z]~ U*Y
|
V-3 Un système modulo des entiers divers
I Introduction
IV Groupes abéliens de type fini
| On cherche un polynôme P du troisième degré à coefficients entiers tel que que Existe-t-il pour toutes valeurs des bi ? quelles conditions faut-il mettre sur les bi ? comment trouver toutes les solutions ? Le polynôme 7x3 - 67x2 + 52x + 43 est-il solution ? (répondre en exploitant les calculs précédents). |
I Introduction
IV Groupes abéliens de type fini
| Solution
On introduit des variables entières supplémentaires : on obtient un système du
type
AX + diag(M) Y = B
La matrice
A est une matrice de Vandermonde ; le programme suivant retourne
la matrice
A1 = (A | diag(M)) si on l'applique aux
vecteurs
a = (53, 19, 2, 47) et
m = (85, 68, 561, 64).
gp> { vandm(a,m)= M = matrix(#a,#a,i,j,a[i]^(j-1));
M = concat(M,matdiagonal(m)); } ;
On voit que le noyau de A1 est de rang 4. Seule la projection sur les quatre première lignes (projection sur le sous-module engendré par les quatre premiers vecteurs de la base canonique nous intéresse). On cherche une solution à l'équation (A|M) X = B.
On résoud ensuite H X = B, puis on calcule U X. On remarque que malheureusement, les coefficients sont très grands. Trouver une petite solution est un autre problème très intéressant que l'on résoud par des méthodes LLL. Pour vérifier que 7x3 - 67x2 + 52x + 43 est solution, on peut bien sûr faire la vérification directe. On peut aussi vérifier que la différence de cette "solution" avec la solution particulière trouvée est bien dans la projection du noyau. gp> Y0 = concat([0, 0, 0, 0], Y~)~ %6 = [0, 0, 0, 0, -28, -394, 496, 61]~ Pour traiter le cas où le second membre n'est pas connu, on peut utiliser la forme d'Hermite, mais il est plus facile d'utiliser la forme de Smith : U A V = S. Résoudre U A V = B revient à résoudre successivement S Y = B
gp> matsnf(A) %10 = [68, 17, 1, 1]
{ vandm(a,m) = M = matrix(#a,#a,i,j,a[i]^(j-1));
M = concat(M,matdiagonal(m)); M }
A1 = vandm([53, 19, 2, 47],[85, 68, 561, 64]) ;
VM = mathnf(A1, 1)
H = VM[1]
V = VM[2]
K = vecextract(V,"1..4","1..4")
B = [20, 37, 496, 61]
Y = H^(-1)*B~
Y1 = concat([y1,y2,y3,y4], Y~)~
Y1 = vecextract(V*Y1,"1..4")
Y0 = concat([0, 0, 0, 0], Y~)~
S0 = vecextract(V*Y0,"1..4")
K0 = S0-[43, 52, -67, 7]~
mathnf(concat(K,K0)) == mathnf(K)
|
V-4 Un système linéaire : condition de compatibilité
I Introduction
IV Groupes abéliens de type fini
|
I Introduction
IV Groupes abéliens de type fini
| Solution
gp> {A =
[4, -17, -22, -9;
0, -30, 45, -18;
20, -75, 95, -39;
7, -25, 33, -14]
} ;
gp> B = Mat([-62, 133, 265, 1760, 29040]) %3 = [-62, 133, 265, 1760, 29040] On trouve donc que pour tous paramètres entiers z1, z2, z3, le système A X = B a une solution entière si et seulement si B est de la forme
{A = [4, -17, -22, -9;
0, -30, 45, -18;
20, -75, 95, -39;
7, -25, 33, -14]
} ;
U = matsnf(A, 1)[1]; S = matsnf(A, 1)[3]
B=[b1,b2,b3,b4]; U*B
B = Mat([-62, 133, 265, 1760, 29040])
mathnf(Mat(B))
mathnf(Mat(B), 1)
mathnf(Mat(B), 1)[2]
B*mathnf(Mat(B), 1)[2]
C = vecextract(mathnf(Mat(B), 1)[2],"1..3","1..4")
[z1,z2,z3]*C
|
V-5 Le groupe multiplicatif dans les rationnels
I Introduction
IV Groupes abéliens de type fini
| On regarde tous les rationnels de la forme . Obtient-on tous les rationnels engendrés multiplicativement par 2, 3, 5 ? Sinon, quelle est "la différence" (à définir proprement) ? Généraliser.
|
I Introduction
IV Groupes abéliens de type fini
| Solution
|
I Introduction
IV Groupes abéliens de type fini
| Un carreleur doit carreler un mur. Il a commencé par mettre des repères-clous régulièrement sur son mur (il est un peu bizarre), il a choisi des vecteurs v1 et v2 à coefficients entiers et il a mis ses repères aux points de coordonnées n v1 + m v2 avec m et n entiers (il est un peu mathématicien). Il voudrait que chaque carreau ait son extrémité en bas à gauche coincée sur un clou et que chaque clou soit le coin en bas à gauche d'un carreau. Quelle taille de carreaux doit-il commander ? Combien de solutions y a-t-il ? Même problème dans le cas de maçonnerie dans l'espace ! Résoudre pour les vecteurs v1=(3,2) et v2 = (5,10), puis dans l'espace pour v1=(-1,-3,0), v2=(-5,-12,0), v3=(2,7,-2).
|
I Introduction
IV Groupes abéliens de type fini
| Solution
On note
e1 = (1, 0),
e2 = (0, 1). La base (
e1,
e2) donne
les directions horizontale et verticale du mur.
Soit
M le
-module libre engendré par
v1 et
v2.
Trouvons d'abord quelques solutions. Prenons une base de M donnée par la normalisation de Hermite. On a donc w1 = a e1 w2 = b e1 + c e2 avec . On se persuade facilement avec un dessin que l'on peut paver le plan comme indiqué avec des briques de dimension . On aurait pu échanger le rôle de e1 et e2 ce qui revient à multiplier la matrice de départ à gauche par une matrice de permutation par et à appliquer ensuite la normalisation de Hermite. On a donc obtenu deux solutions. Réciproquement, on doit montrer que ce sont les deux seules solutions. |
I Introduction
IV Groupes abéliens de type fini
|
Trouver une base du
-module engendré dans
par les vecteurs
-2e1 - 2e2 - 2e3 - 3e4 - e5, -2e1 - 3e2 - e4, -e1 - 3e2 - e3- e4 + e5, -3e1 - 2e2 - 2e3 - 3e4 - 3e5, -3e1 + e2 + e3 - 2e5, -3e1 - 2e3 - 3e4 - e5. |
I Introduction
IV Groupes abéliens de type fini
| Solution
gp> {A = mattranspose([-2, -2, -2, -3, -1;
-2, -3, 0, -1, 0 ;
-1, -3, -1, -1, 1;
-3, -2, -2, -3, -3 ;
-3, 1, 1, 0, -2 ;
-3, 0, -2, -3, -1])
} ;
gp> mathnf(A, 1)[2]
%3 = [-13, -2, 10, -1, 3, -1;
8, 2, -6, 2, -3, 1;
-5, -2, 3, -2, 2, -1;
5, 1, -4, 0, -1, 0;
-7, -2, 5, -1, 2, -1;
7, 1, -5, 1, -2, 1]
-13f1 + 8f2 -5f3 + 5f4 -7f5 +7f6 = 0
Si on veut aller plus loin, soit
L le
-module engendré
gp> matsnf(A) %4 =[4, 1, 1, 1, 1]
gp> U = matsnf(A, 1)[1]
%5 = [-2, 1, -1, -3, -3;
0, 0, 1, 0, 0;
0, 0, 0, 1, 0;
0, 0, 0, 0, 1;
1, 0, 0, 0, 0]
Une base adaptée de est donnée par la matrice U1 inverse de U (il s'agit donc des vecteurs e2, e2 + e3, 3e2 + e4, 3e2 + e5, e1 + 2e2), la nouvelle base de L (exprimée dans la base des fi) est donnée par V :
{A = mattranspose([-2, -2, -2, -3, -1;
-2, -3, 0, -1, 0 ;
-1, -3, -1, -1, 1;
-3, -2, -2, -3, -3 ;
-3, 1, 1, 0, -2 ;
-3, 0, -2, -3, -1])
}
mathnf(A, 1)
mathnf(A, 1)[2]
matsnf(A)
U = matsnf(A, 1)[1]
matsnf(A, 1)[2]
matsnf(A, 1)[3]
matsnf(A, 1)[1]^(-1)
A*matsnf(A, 1)[2]
|
I Introduction
IV Groupes abéliens de type fini
| Soit . Déterminer une base du sous- -module de engendré par les vecteurs colonnes de A. Si f est l'application -linéaire dont la matrice dans les bases canoniques de et est A, donner une base du noyau de f. Donner la structure du groupe abélien . |
I Introduction
IV Groupes abéliens de type fini
| Solution
gp> {A= = [10, 10, -9, -8;
-16, -6, 22, 20;
6, -1, -4, -6;
8, 12, -5, -4;
12, 8, -13, -12]};
gp> U1 = matsnf(A, 1)[1]^(-1)
%7 = [0, 7, 8, 11, 25;
0, 1, 0, 0, 2;
0, 0, 0, 1, 0;
0, 10, 11, 15, 35;
1, 4, 5, 7, 15]
{A= = [10, 10, -9, -8;
-16, -6, 22, 20;
6, -1, -4, -6;
8, 12, -5, -4;
12, 8, -13, -12]}
V = mathnf(A, 1)[1]
mathnf(A, 1)[2]
matsnf(A)
matsnf(A, 1)[1]
matsnf(A, 1)[2]
U = matsnf(A, 1)[1]
U1 = U^(-1):
mathnf(A) == mathnf(concat (A, U1[,4]))
mathnf(A) == mathnf(concat (A, U1[,5]))
|
V-9 Groupe abélien défini par générateurs et relations (1)
I Introduction
IV Groupes abéliens de type fini
| Un groupe abélien G a trois générateurs u, v, w soumis aux relations
8u + 9v = 2u - 20v + 22w = 27v - 24w = 0
Décrire le module des relations. Donner
la structure du groupe
G.
|
I Introduction
IV Groupes abéliens de type fini
| Solution
Les relations sont données par la matrice
gp> { A = [8, 2, 0;
9, -20, 27;
0, 22, -24]
} ;
{ A = [8, 2, 0;
9, -20, 27;
0, 22, -24] };
matsnf(A)
matsnf(A, 1)[3]
|
V-10 Groupe abélien défini par générateurs et relations (2)
I Introduction
IV Groupes abéliens de type fini
| Soit H un groupe abélien engendré par trois éléments h1, h2, h3 soumis aux relations
3h1 + h2 + h3 = 0,
25h1 + 8h2 + 10h3 = 0,
46h1 + 20h2 + 11h3 = 0
Montrer que
H est fini. Trouver sa structure (en fait
)
et trouver explicitement un isomorphisme de
H dans
et de
dans
H
(préciser les images de
h1,
h2,
h3 ou l'image de 1 pour la réciproque).
|
I Introduction
IV Groupes abéliens de type fini
| Solution On définit une application
f de
dans
H par
gp> { A =
[3, 25, 46;
1, 8, 20;
1, 10, 11]} ;
{ A = [3, 25, 46;
1, 8, 20;
1, 10, 11]
} ;
U = matsnf(A, 1)[1]
V = matsnf(A, 1)[2]
D = matsnf(A, 1)[3]
U^(-1)
|
V-11 Groupe abélien défini par générateurs et relations (3)
I Introduction
IV Groupes abéliens de type fini
| Le -module M est engendré par des éléments u1, u2, u3 soumis aux relations
3u1 + 2u2 - 2u3 = 0, - 4u1 - u2 + 4u3 = 0.0
Monter que
M est un
-module libre.
Trouver une base de
M.
|
I Introduction
IV Groupes abéliens de type fini
| Solution Une matrice des relations est
gp> {A =
[3, -4;
2, -1;
-2, 4];
}
|
Par
|
Version interactive |
Dernière modif. 2012-05-09 20:22:34
| | |
Keywords: module,hermite,smith, forme normale, matrice, Gauss,groupe, group, wims, mathematics, mathematical, math, maths, interactive mathematics, interactive math, interactive maths, mathematic, online, calculator, graphing, exercise, exercice, puzzle, calculus, K-12, algebra, mathématique, interactive, interactive mathematics, interactive mathematical, interactive math, interactive maths, mathematical education, enseignement mathématique, mathematics teaching, teaching mathematics, algebra, geometry, calculus, function, curve, surface, graphing, virtual class, virtual classes, virtual classroom, virtual classrooms, interactive documents, interactive document