@@ -18,21 +18,17 @@ chaque classe d'équivalence `C`, tous les élements de `C` sont envoyé
18
18
sur le même élément `c ` de `C `. L'élément `c ` est alors appelé la
19
19
forme normale des éléments de `C `.
20
20
21
- .. TOPIC :: Exemples
21
+ .. TOPIC :: Exemple 1
22
22
23
23
- `E=\ZZ `
24
+ - `\rho `: égalité modulo `p `
25
+ - `f: x \mapsto x \mod p `
24
26
25
- `\rho `: égalité modulo `p `
26
-
27
- `f: x \mapsto x \mod p `
27
+ .. TOPIC :: Exemple 2
28
28
29
29
- `E=\ZZ\times \ZZ `
30
-
31
- `\rho `: `(a,b) \rho (c,d) ` si `ad=bc `
32
-
33
- `f `: ???
34
-
35
- - ...
30
+ - `\rho `: `(a,b) \rho (c,d) ` si `ad=bc `
31
+ - `f `: ???
36
32
37
33
.. TOPIC :: Quel intérêt?
38
34
@@ -64,6 +60,8 @@ forme normale des éléments de `C`.
64
60
65
61
Solution partielle::
66
62
63
+ sage: %display latex
64
+
67
65
sage: K = GF(5)
68
66
69
67
sage: M = matrix(K, [[0,0,3,1,4], [3,1,4,2,1], [4,3,2,1,3]]); M
@@ -72,7 +70,8 @@ forme normale des éléments de `C`.
72
70
[4 3 2 1 3]
73
71
74
72
sage: v = vector(SR.var('x1,x2,x3,x4,x5'))
75
- sage: [(eq == 0) for eq in matrix(ZZ,M)*v]
73
+ sage: for eq in matrix(ZZ,M) * v:
74
+ sage: display( eq == 0 )
76
75
77
76
sage: M.echelon_form()
78
77
[1 2 0 3 3]
@@ -344,13 +343,19 @@ Forme échelon et matrices équivalentes
344
343
(lower triangular): le produit des inverses des matrices
345
344
ci-dessus. On appelle cela la *décomposition `LU` *.
346
345
347
- .. TOPIC :: Exercice
346
+ .. TOPIC :: Exemple
348
347
349
348
Déterminer la décomposition `M=LU ` de notre matrice favorite.
350
349
351
350
Solution::
352
351
353
- sage: M.LU()
352
+ sage: P, L, U = M.LU()
353
+ sage: P, L, U
354
+
355
+ sage: L * U
356
+
357
+ sage: P * L * U
358
+
354
359
355
360
Disons ici que deux matrices `M ` et `M' ` de `M_{n,m}(K) ` sont
356
361
*équivalentes * (modulo l'action de `GL_n(K) ` à gauche) s'il existe une
@@ -464,7 +469,7 @@ Sous espaces vectoriels et formes échelon
464
469
.. TOPIC :: Exercice
465
470
466
471
- Compter le nombre de points, droites, plans et hyperplans dans
467
- `GF(q)^3 ` en fonction de leur rang .
472
+ `GF(q)^3 `.
468
473
469
474
- On se place maintenant dans `\RR^3 `. Décrire géométriquement, en
470
475
fonction de leur forme échelon, comment ces sous espaces
@@ -528,32 +533,30 @@ Appliquons le même programme.
528
533
529
534
À chaque base ordonnée, on peut associer naturellement un drapeau
530
535
complet. Ici on considérera principalement le drapeau canonique
531
- associé à la base canonique `e_1,\cdots ,e_m ` de `V=K^m `:
536
+ associé à la base canonique `e_1,\ldots ,e_m ` de `V=K^m `:
532
537
533
538
.. MATH ::
534
539
535
- V_i:=\langle e_{m-i+1 }, \ldots , e_m \rangle
540
+ \{ 0 \} =
541
+ \langle\rangle \subsetneq
542
+ \langle e_n \rangle \subsetneq \cdots \subsetneq
543
+ \langle e_i,\ldots ,e_n\rangle \subsetneq \cdots \subsetneq
544
+ \langle e_1 ,\ldots ,e_n\rangle = V
536
545
537
546
Note: on prend les éléments dans cet ordre pour que cela colle
538
- avec nos petites habitudes de calcul du pivot de Gauß. Et pour
539
- alléger les notations, on utilisera plutôt:
540
-
541
- .. MATH ::
542
-
543
- \overline V_i:=\langle e_i, \ldots , e_m \rangle =V_{n-i+1 }
544
-
547
+ avec nos petites habitudes de calcul du pivot de Gauß.
545
548
546
549
.. TOPIC :: Formes échelon et bases adaptées
547
550
548
551
Dans ce formalisme, qu'est-ce qu'une matrice sous forme échelon?
549
552
550
553
C'est une base `B ` d'un espace vectoriel `E ` *adaptée à un drapeau
551
554
complet * donné. C'est-à-dire une base sur laquelle on peut lire
552
- immédiatement les sous espaces `E_i:=E\cap \overline V_i `:
555
+ immédiatement les sous espaces `E_i:=E\cap \langle e_i,\ldots,e_n\rangle `:
553
556
554
557
.. MATH ::
555
558
556
- \langle B \cap E_i\rangle = E_i
559
+ E_i = \langle B \cap E_i\rangle
557
560
558
561
Le pivot de Gauß est un algorithme de calcul de base adaptée.
559
562
@@ -606,9 +609,42 @@ Appliquons le même programme.
606
609
Gauß est le prototype du type de lien.
607
610
608
611
609
- .. TODO :: Faire un résumé ici
612
+ Résumé
613
+ ======
614
+
615
+ La forme échelon d'une matrice joue un rôle central en algèbre
616
+ linéaire car:
617
+
618
+ - Il existe des algorithmes relativement peu coûteux pour la calculer
619
+ (par exemple Gauß: `O(n^3) `).
620
+
621
+ - La plupart des problèmes en algèbre linéaire sur un corps se
622
+ traitent aisément sur cette forme échelon. Notamment:
623
+ - calcul sur matrices
624
+ - calcul sur les équations
625
+ - calcul sur espaces vectoriels
626
+ - calcul sur les morphismes
627
+
628
+ - La forme échelon a un sens algébrique: c'est une forme normale pour
629
+ la relation d'équivalence induite par l'action à gauche du groupe
630
+ linéaire.
631
+
632
+ - La forme échelon a un sens géométrique: c'est une forme normale pour
633
+ un sous-espace vectoriel; elle décrit sa position par rapport au
634
+ drapeau canonique.
635
+
636
+ Nous verrons d'autres formes normales pour d'autres classes
637
+ d'équivalences de matrices.
638
+
639
+
640
+ TP
641
+ ==
642
+
643
+ .. TODO ::
644
+
645
+ - Réorganisation
646
+ - Décomposition LU: exercice en TP
610
647
611
- .. TODO :: vérifier / homogénéiser les notations
612
648
613
649
Applications des formes échelon
614
650
-------------------------------
@@ -666,38 +702,6 @@ Applications des formes échelon
666
702
667
703
#. Calculer les espaces propres de `\phi `.
668
704
669
-
670
- .. TODO ::
671
-
672
- - Décomposition LU, exercice en TD ou TP
673
- - Le cours est un peu long; décider quoi déplacer en TP
674
-
675
- Résumé
676
- ======
677
-
678
- La forme échelon d'une matrice joue un rôle central en algèbre
679
- linéaire car:
680
-
681
- - Il existe des algorithmes relativement peu coûteux pour la calculer
682
- (par exemple Gauß: `O(n^3) `).
683
-
684
- - La plupart des problèmes en algèbre linéaire sur un corps se
685
- traitent aisément sur cette forme échelon.
686
-
687
- - La forme échelon a un sens algébrique: c'est une forme normale pour
688
- la relation d'équivalence induite par l'action à gauche du groupe
689
- linéaire.
690
-
691
- - La forme échelon a un sens géométrique: c'est une forme normale pour
692
- un sous-espace vectoriel; elle décrit sa position par rapport au
693
- drapeau canonique.
694
-
695
- Nous verrons d'autres formes normales pour d'autres classes
696
- d'équivalences de matrices.
697
-
698
- TP
699
- ==
700
-
701
705
Exercice 1: Du calcul matriciel au calcul sur les sous espaces vectoriels
702
706
-------------------------------------------------------------------------
703
707
@@ -742,7 +746,7 @@ Indications:
742
746
sage: M = matrix(V)
743
747
sage: list(M)
744
748
sage: M[1].is_zero()
745
- sage: [ n^2 for n in range (20) if n.is_prime() ]
749
+ sage: [ n^2 for n in srange (20) if n.is_prime() ]
746
750
747
751
Test d'appartenance d'un vecteur à un sous-espace vectoriel
748
752
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
0 commit comments