Remontée de Newton en algèbre

Hello,
J'ouvre ce fil car j'ai comme l'impression que moduloP et moi-même sommes en train de parasiter le fil de CechLM in http://www.les-mathematiques.net/phorum/read.php?3,1583746,1583746#msg-1583746. Donc ici, suite du post de http://www.les-mathematiques.net/phorum/read.php?3,1583746,1599436#msg-1599436

@moduloP
J'estime que l'algorithmique est une science à part entière. Et, probablement dans la précipitation, nous avons mal fait notre travail. C'est compliqué à expliquer, mais j'ai connu une époque où il fallait PROUVER ses programmes (langage des assertions, approche axiomatique de Hoare, ...par exemple http://www.ensiie.fr/~guillaume.burel/download/ISL_cours_WP.pdf, attention c'est le premier pointeur que j'ai trouvé).

Avec, en particulier, comme conséquence que l'on n'accédait pas aux structures de données n'importe comment. Ici plus d'accès à NewtonLifts[k-1] ou k-2 selon les langages. A l'intérieur de la boucle, on voit des assertions de type // x = x_{k-1}

NewtonLifts := function(F, N)
  // F est un polynôme à une variable à coefficients dans un corps k
  // Il est supposé séparable
  // Retourne les N premiers itérés de Newton x_1=X, x_2, .., x_N
  DF := Derivative(F) ;
  gcd, u, v := XGCD(DF, F) ;
  assert gcd eq 1 and  u*DF + v*F eq 1 ;
  X := Parent(F).1 ;
  // x_{k+1} = x_k - u*F(x_k)
  x1 := X ;
  Lifts := [x1] ;
  x := x1 ;
  for k := 2 to N do
    // x = x_{k-1}
    y := (x - u*Evaluate(F,x)) mod F^k ;
    assert Evaluate(F,y) mod F^k eq 0   and   (y - x1) mod F eq 0 ;
    Append(~Lifts, y) ;
    // y = x_k
    x := y ;
    // x = x_k
  end for ;
  return Lifts ;
end function ;

Ainsi plus de soucis concernant les listes indexées à partir de 0 ou 1.

Sans aucun doute, ce post est obscur. Pour clarifier (sic) ce qu'est un algorithme prouvé, j'attache un petit exemple qui trainait quelque part chez moi.
«134

Réponses

  • Ok, compris. Par contre, j'avais également un bug un peu vicieux. Lorsque le polynôme $f$ à pour variable $u$ (ou $v$), comme dans le programme je redéfini $u$ et $v$ alors cette modification est globale, d'où bug. J'ai corrigé ça.

    Mais c'est un peu embêtant que les variables des polynômes ne soient pas protégées !
  • C'est quoi ce langage ? Tu n'as pas moyen de déclarer explicitement locales les variables locales ? Comment as tu pu corriger cela ? Sais tu quel est le nom de l'indéterminée que je choisirais Mercredi prochain ? Moi, non.
  • Si si il faut faire :
    var('u,v,w,gcd')
    
    Mais le truc c'est que
    k.<u>  =PolynomialRing(QQ)
    u=1;
    
    est un commande autorisée, je trouve que c'est un peu dangereux.
  • Vu. Faisons un tout petit peu de maths. A un moment donné, il faudra faire du ponctuel i.e. se placer en un point $x_0$ et supposer que $F'(x_0)$ est inversible modulo $I$ ...etc.. On pourra même affaiblir cela (on verra plus tard, peut-être ou pas).

    Exemple : soit $a \in A$ inversible modulo un idéal $I$ et soit $b$ un inverse de $a$ modulo $I$ i.e. $ab \equiv 1 \bmod I$. Ici le polynôme est $F(X) = aX-1$. Combien trouves tu pour $\widetilde b$ qui est un inverse de $a$ modulo $I^2$ ? On peut avoir besoin de cela pour faire des remontées quadratiques (au lie de linéaires).
  • Hum, je ne sais pas si j'ai compris la question !

    Soit $x \in I$ tel que $ab+x = 1$ dans $A$. Alors on mettant au carré, $a^2b^2+ 2abx+x^2 = 1$. On en déduit que : $a (ab^2+2bx) +x^2 = 1$ et en posant $\tilde{b} := ab^2+2bx$, on a : $a \tilde{b} = 1 \pmod{I^2}$
  • Ok mais là tu as réfléchi (introduire $x$, élever au carré ...etc..). Or on veut jouer un peu les bourrins (cf plus loin). Et dans ta réponse, puisque $x$ c'est $1 - ab$, je le remplace par ce qu'il est. Si bien que ta réponse est :
    $$
    \widetilde b = ab^2 + 2b(1-ab) = ab^2 + 2b - 2ab^2 = \fbox {$b (2 - ab)$}
    $$
    Maintenant, je joue les bourrins avec $F(X) = aX-1$, de dérivée $F'(X) = a$, au point $x_0 = b$ i.e. on a $F(b) \equiv 0 \bmod I$. On a $F'(b) = a$, inversible modulo $I$, d'inverse $b$ modulo $I$ ; donc Newton donne, en notant $u$ un inverse de $F'(b)$ modulo $I$ i.e. $u = b$
    $$
    x_1 = x_0 - u \times F(x_0) = b - b(ab -1) = b (1 - ab +1) = b(2 - ab)
    $$
    Pareil que toi.

    Et une fois que l'on a un inverse modulo $I^2$, on recommence pour en déduire un inverse modulo $I^4$, puis $I^8$ and so on. Attention, à ce moment là, c'est une bonne chose d'indexer les itérés $x_\bullet$ à partir de $0$ pour tenir compte du $2^k$ :
    $$
    x_0 \bmod I^{2^0} = I, \qquad
    x_1 \bmod I^{2^1} = I^2, \qquad
    x_2 \bmod I^{2^2} = I^4, \qquad
    x_3 \bmod I^{2^3} = I^8, \qquad \cdots \hbox {etc} \cdots
    $$
    Une mini-mini-illustration. Je prends $A= \Z[t]$, $a = 1-t$ et $I = \langle t\rangle$ (tiens $t$ est le nom de l'indéterminée cet après-midi). On va donc inverser $1-t$ en bossant modulo $t$, $t^2$, $t^4$, $t^8$ .. i.e. dans $\Zt$. Modulo $t$, comme $1-t$ vaut 1, je vais prendre $b=1$

    > Z := IntegerRing() ;
    > Zt<t> := PolynomialRing(Z) ;
    > a := 1-t ;
    > b := 1 ;
    > for k := 1 to 4 do
    for>  b := b * (2 - a*b) ;            
    for>  printf "b = %o\n", b ;
    for> end for ;
    b = t + 1
    b = t^3 + t^2 + t + 1
    b = t^7 + t^6 + t^5 + t^4 + t^3 + t^2 + t + 1
    b = t^15 + t^14 + t^13 + t^12 + t^11 + t^10 + t^9 + t^8 + t^7 + t^6 + t^5 + t^4 + t^3 + t^2 + t + 1
    

    Bon, on vient de réinventer l'eau chaude :
    $$
    {1 \over 1-t} = 1 + t + t^2 + t^3 + \cdots
    $$
    On fera mieux la prochaine fois.
  • @moduloP
    J'ai un peu peur d'une descente de police sur le forum (qui me prendrait la main dans le sac en train de faire du Newton pour obtenir le développement de $1 \over 1-t$). Je fais un peu moins trivial avec
    $$
    F(X) = X^2 - (1+t), \qquad \hbox {au point $x=1$, avec le modulus $t$}
    $$
    I.e. on va développer $\sqrt {1 + t}$ au voisinage de $t=0$ en prenant $\sqrt 1 = 1$ (et pas $-1$). On a $F'(X) = 2X$, $F(1) = 1 - (1+t) = 0 \bmod t$, et $F'(1) = 2$ est inversible car je travaille au dessus de $\Q$. L'itérateur de Newton est donc :
    $$
    x \longmapsto x - {1\over2} F(x) = x - {1 \over 2} \big( x^2 - (1+t) \big)
    $$

     > Qt<t> := PolynomialRing(RationalField()) ;
    > x := 1 ;
    > for k := 2 to 20 do x := x - 1/2*(x^2 - (1+t)) ;  x := x mod t^k ;  end for ;
    > x ;
    119409675/34359738368*t^19 - 64822395/17179869184*t^18 + 17678835/4294967296*t^17 - 9694845/2147483648*t^16 + 334305/67108864*t^15 
        - 185725/33554432*t^14 + 52003/8388608*t^13 - 29393/4194304*t^12 + 4199/524288*t^11 - 2431/262144*t^10 + 715/65536*t^9 - 
        429/32768*t^8 + 33/2048*t^7 - 21/1024*t^6 + 7/256*t^5 - 5/128*t^4 + 1/16*t^3 - 1/8*t^2 + 1/2*t + 1
    

    Le résultat $x$ est un polynôme en $t$, affiché coefficient dominant d'abord. On va passer dans $\Qt$ pour d'une part le faire afficher comme une série (coefficient constant d'abord) et d'autre part faire la comparaison avec $\sqrt {1+t}$ de magma :

    > Qt<t> := PowerSeriesRing(RationalField()) ;                                    
    > Qt ! x;                                                                        
    1 + 1/2*t - 1/8*t^2 + 1/16*t^3 - 5/128*t^4 + 7/256*t^5 - 21/1024*t^6 + 33/2048*t^7 - 429/32768*t^8 + 715/65536*t^9 - 
        2431/262144*t^10 + 4199/524288*t^11 - 29393/4194304*t^12 + 52003/8388608*t^13 - 185725/33554432*t^14 + 334305/67108864*t^15 - 
        9694845/2147483648*t^16 + 17678835/4294967296*t^17 - 64822395/17179869184*t^18 + 119409675/34359738368*t^19
    > Sqrt(1+t) ;  
    1 + 1/2*t - 1/8*t^2 + 1/16*t^3 - 5/128*t^4 + 7/256*t^5 - 21/1024*t^6 + 33/2048*t^7 - 429/32768*t^8 + 715/65536*t^9 - 
        2431/262144*t^10 + 4199/524288*t^11 - 29393/4194304*t^12 + 52003/8388608*t^13 - 185725/33554432*t^14 + 334305/67108864*t^15 - 
        9694845/2147483648*t^16 + 17678835/4294967296*t^17 - 64822395/17179869184*t^18 + 119409675/34359738368*t^19 + O(t^20)
    > Qt!x - Sqrt(1+t) ;
    O(t^20)
    

    Ca marche comme dit l'autre.
  • Ok, compris. Bon c'est marrant la méthode de Newton :)
  • @moduloP
    Contexte : $A \in M_n(K)$, $K$ corps commutatif. Obtenir, via la méthode de Newton, la décomposition $A = D+N$, $D,N \in M_n(K)$, avec $DN = ND$, $N$ nilpotente, $D$ diagonalisable dans un surcorps de $K$.
    Mieux obtenir $D$ (ou $N$) sous la forme d'un polynôme en $A$. I.e. produire $P \in K[X]$ tel que $D = P(A)$. Sans sortir du corps de base $K$. I.e. toute cette histoire est $K$-rationnelle. Il faut juste une petite hypothèse technique sur le polynôme caractéristique de $A$, toujours vérifiée si $K$ est un corps parfait.

    Tu as déjà vu cela ?
  • Tiens ça me rappelle un joli complément d'agreg que j'avais eu : http://agreg-maths.univ-rennes1.fr/journal/2016/jordan_chevalley.pdf :-)
  • @Poirot
    Merci pour le pointeur. C'était aussi le sujet de l'épreuve de Lyon en 1994. A l'époque, on ne disposait pas de toutes les documents que je vois dans les références bibliographiques du pdf pointé. J'avais dû tirer cela d'un écrit de Chevalley ou d'un papier qui rapportait cet écrit de Chevalley, je ne me souviens plus.
  • Hello Claude,

    Non non je ne connais pas, par contre c'est intéressant, je vais y réfléchir un peu, si j'arrive a programmer ça :-)

    Merci Poirot pour la référence.
  • @moduloP
    Avais tu vu les deux pdf attachés dans http://www.les-mathematiques.net/phorum/read.php?5,1585752,1586770#msg-1586770, en particulier la partie V ?
  • Hello Claude,

    J'ai vu, mais je galère je galère avec ces choses :-D
    sage: A = companion_matrix((w^2+1)^2*(w+1)^2)
    sage: P = (w^2+1)*(w+1)
    sage: Newton(P,2)
    [w, -1/4*w^5 + 5/4*w]
    sage: D = Newton(P,2)[1]
    sage: D(A)
    
    [   0  1/4 -1/2  1/4    0 -3/4]
    [ 5/4  1/2 -3/4    0  1/4 -3/2]
    [   0    2   -1    0    0   -2]
    [   0    1    0    0    0   -3]
    [   0  3/4 -1/2  3/4    0 -9/4]
    [-1/4  1/2 -1/4    0  3/4 -3/2]
    sage: P(D(A))
    
    [0 0 0 0 0 0]
    [0 0 0 0 0 0]
    [0 0 0 0 0 0]
    [0 0 0 0 0 0]
    [0 0 0 0 0 0]
    [0 0 0 0 0 0]
    sage: (A-D(A))^2
    
    [0 0 0 0 0 0]
    [0 0 0 0 0 0]
    [0 0 0 0 0 0]
    [0 0 0 0 0 0]
    [0 0 0 0 0 0]
    [0 0 0 0 0 0]
    
    
  • @moduloP
    Pas étonnant (galère) parce qu'en même temps, tu apprends Sage.
    J'ai également réalisé l'implémentation mais je me suis contenté de produire $(D,N)$ à partir de $A$, je n'ai pas fait suivre les polynômes (c'est pas bien). Le plus important dans cette histoire est de générer des données pour la matrice $A$. J'ai bien vu comment tu procédais (moi, pareil).

    Plusieurs choses à te dire en faisant un peu de maths (pour éviter que le fil ne soit déplacé en informatique).

    1) Je n'ai pas pris le temps de regarder les documents pointés par Poirot mais je crois me souvenir de l'épreuve de Lyon. Depuis un certain temps, je n'utilise plus le schéma de Newton qui y est décrit, j'en prends une variante. Quand j'étais petit, j'ai enseigné un peu d'Analyse Numérique (si, si) et on pouvait remplacer le schéma de gauche par celui de droite :
    $$
    x_{k+1} = x_k - {F(x_k) \over F'(x_k)} \qquad\qquad
    x_{k+1} = x_k - {F(x_k) \over \hbox {approximation de $F'(x_1)$}}
    $$
    En algèbre, cela prend la forme suivante : $F \in A[X]$, $I$ un idéal donné, $x \in A$ vérifiant $F(x) = 0 \bmod I$ et $u\in A$ tel que $uF'(x) \equiv 1 \bmod I$ ($u$ est un inverse de $F'(x)$ modulo $I$). Supposons avoir déterminé à une étape $k \ge 1$ un $y$ tel que :
    $$
    y \equiv x \bmod I, \qquad F(y) \equiv 0 \bmod I^k
    $$
    On veut améliorer $y$ en une racine modulo $I^{k+1}$. De manière absolument pas pédagogique, je pose $\fbox {$z = y - uF(y)$}$. C'est clair que $z \equiv y \bmod I^{k}$. En posant $h = -uF(y) \equiv 0 \bmod I^k$, on a :
    $$
    F(z) = F(y+h) \equiv F(y) + hF'(y) = F(y)\big(1 - uF'(y)\big) \bmod h^2 \quad \hbox { a fortiori modulo $I^{2k}$} \quad \hbox { a fortiori modulo $I^{k+1}$}
    $$
    Et comme $F(y) \equiv 0 \bmod I^k$ et $1 - uF'(y) \equiv 0 \bmod I$, on a bien $F(z) \equiv 0 \bmod I^{k+1}$.

    Cela m'évite, pour passer de l'étape $k$ à l'étape $k+1$, de calculer un inverse de $F'(x)$ modulo $I^k$. Je ne sais pas si je suis bien clair.


    2) Toujours histoire de faire un peu de maths. C'est à propos du polynôme caractéristique $\chi_A$. La première étape dans le binz $A \mapsto (D,N)$ est de produire un polynôme séparable $P$ tel que $\chi_A \mid P^ e$ pour un certain exposant $e$.

    J'oublie un peu le contexte matriciel et je prends le contexte suivant : $G \in K[X]$ un polynôme de degré $\ge 1$ sur un corps commutatif $K$ et $L/K$ le corps de décomposition de $G$ sur $K$. Alors :
    $$
    \hbox {$L/K$ est une extension séparable} \iff
    \hbox {il existe $P \in K[X]$ séparable tel que $G$ divise une puissance de $P$}
    $$
    Pour me rassurer, j'ai fait la vérification (je ne me souvenais plus de l'avoir faite un jour).
  • Le 1) est clair Claude ;)

    J'avais fais le calcul d'inverse modulo $I^k$ dans la première version du programme, et j'ai changé quand j'ai vu ton programme.

    Le 2) Je ne suis pas clean sur les histoires de séparabilité. Je pense que le pgcd est important mais je dois regarder un peu dans les détails.
  • @moduloP
    Plusieurs petites choses

    1) En procédant comme dans mon dernier post, on perd l'avantage de disposer d'une convergence quadratique i.e. on passe de $I^k$ à $I^{k+1}$. Alors que l'on pourrait passer de $I^k$ à $I^{2k}$ (en travaillant bien). Mais je ne crois pas que l'on veuille fonder une boite de logiciels autour de Newton. Donc l'aspect quadratique, on peut s'asseoir dessus.

    2) Tu parles pgcd dans ton dernier post. Mais peut-être que tu voulais dire ppcm ? En tout cas, le ppcm de deux polynômes séparables est séparable et cela intervient dans le binz.

    Le minimum syndical dans les histoires d'extensions (algébriques) séparables, c'est de savoir qu'une extension engendrée par des éléments (algébriques) séparables est séparable. Et cela peut se voir en faisant intervenir l'algèbre linéaire et la diagonalisation simultanée. Il faut travailler un peu car si $x,y$ sont séparables sur $K$ i.e. $P(x) = Q(y) = 0$ avec $P, Q \in K[X]$ séparables, il va falloir faire un petit effort pour montrer que $x+y$ et $xy$ le sont.

    3) Mais surtout. J'ai encore fait joujou avec ma calculette Newton. Autour de la réversion des séries. Et j'ai enfin réglé un truc qui trainait depuis plus d'une dizaine d'années : la formule de réversion de Lagrange-Bürmann. C'est dingue : de nos jours, on trouve de bons cours (ici de Combinatoire) sur le net (on trouve aussi n'importe quoi, mais c'est une autre histoire).
  • @Claude : Un petit coup de résultant pour sauver les soldats $x+y$ et $xy$ ?
  • $\def\fa{\mathfrak a}$@gai-requin
    Non, justement. Car le coup du résultant pour le produit $xy$, à partir d'un polynôme unitaire $P$ de racines $x_1=x, x_2, \cdots$ et d'un polynôme unitaire $Q$ de racines $y_1=y, y_2, \cdots$ produit un polynôme ayant pour racines les $x_iy_j$ qui n'ont aucune raison d'être deux à deux distincts même si $P, Q$ sont séparables. Pense par exemple à $P(X) = X$ de racine $0$ ; il va y avoir un méchant écrasement en ce qui concerne les $x_iy_j$.

    Même mésaventure pour la somme.

    Mais l'algèbre linéaire va nous sauver. Je note $L$ une extension de $K(x,y)$ dans laquelle $P,Q$ sont complètement scindés. Par exemple, le corps de décomposition de $PQ$ au dessus de $K(x,y)$ si c'est moi qui paie, sinon $\overline {K(x,y)}$. On fixe une base $e_1, \cdots, e_n$ de $K(x,y)$ sur $K$ et on considère :
    $$
    K(x,y) \ni z \longmapsto M_z \in M_n(K), \qquad \hbox {$M_z$ matrice de la multiplication par $z$ dans la base choisie de $K(x,y)/K$}
    $$
    Alors $M_x, M_y$ sont diagonalisables au dessus de $L$ car d'une part $P,Q$ sont séparables et d'autre part $L$ est algébriquement clos (pour les pauvres). Mais $M_x$ et $M_y$ commutent donc sont simultanément diagonalisables dans $M_n(L)$. Donc tous les $z \in K(x,y)$ sont simultanément diagonalisables dans $M_n(L)$.

    Je te laisse terminer. Attention au patacaisse : base de $L^n$ sur $L$ (quand j'ai parlé de $M_n(L)$) et base de $K(x,y)/K$. Prendre un verre d'eau avant. Et ne pas oublier de redescendre sur $K$ : on veut un polynôme unitaire séparable $R \in K[X]$ tel que $R(z) = 0$. Reprendre un second verre d'eau. Mieux : pendre du papier et un stylo et le faire au calme.


    @moduloP
    Tu as fini par montrer que $\fa \subseteq I$ et $\fa \subseteq J$, cela entraine $\fa \subseteq IJ$. C'est cela ? Les catégories, c'est fortiche, non ?
  • @gai-requin
    A propos de redescendre sur $K$. Il faut avoir fait une fois dans sa vie le truc de rationalité linéaire suivant. Soit $A \in M_n(K)$, $K$ corps quelconque et $L/K$ une extension quelconque. Alors le polynôme minimal de $A$ sur $K$ est le même que celui de $A$ sur $L$ (i.e. $A$ vue dans $M_n(L)$). Cela demande un petit quelque chose.
  • Bonjour Claude,

    Avec ce que tu viens de dire, le polynôme minimal $R$ de $M_z$ sur $K$ est le polynôme minimal de $M_z$ sur $L$ qui est à racines simples car $M_z$ est diagonalisable sur $L$.
    Et c'est gagné puisque $R(z)=0$.
  • @gai-requin
    Oui, il reste à prouver le résultat de rationalité sur les polynômes minimaux.

    Si j'ai parlé de patacaisse, c'est pour la raison suivante. Travailler au dessus de $L$ (la pseudo clôture algébrique de $K(x,y)$), cela signifie travailler dans $M_n(L)$ où une matrice est vue comme un endomorphisme $L$-linéaire de $L^n$. Diagonalisation simultanée signifie existence d'une $L$-base (commune) de $L^n$ telle que .. etc.. Cela pourrait prendre la tête car cela n'a pas grand chose à voir avec la base de $K(x,y)/K$. Je dis bien ``pourrait''.

    Tout ce binz matriciel est un peu sordide. Et Bourbaki a résolu (A. V, p. 28) la chose proprement (de manière magistrale, je trouve) en faisant un peu monter la mer.
    En deux mots : il est indispensable de changer de catégorie : il faut considérer celle des $K$-algèbres $A$ (commutatives de dimension finie) et pas seulement la catégorie des $K$-extensions.

    Soit $A$ une $K$-algèbre.

    1) Elle est dite diagonalisable si elle est isomorphe (comme $K$-algèbre) à $K^n$ pour un certain $n$
    2) On dit que $A$ est diagonalisée par une extension $L/K$ si $L \otimes_K A$ est une $L$-algèbre diagonalisable.
    3) Enfin, $A/K$ est dite étale si elle est diagonalisée par une certaine $K$-extension.

    Et en montrant quelques résultats sur les algèbres étales (sur un corps), Bourbaki plie le truc (celui des extensions algébriques séparables) comme il faut sans considération matricielle sordide.
  • Si $d$ est le degré du polynôme minimal de $A$ sur $K$, est-ce qu'il existe $x\in K^n$ tel que $(x,Ax,\ldots,A^{d-1}x)$ soit $K$-libre ?
    Si c'est vrai, on peut conclure par conservation du rang.
  • Hello Claude,

    Ah mais je suis très loin là, je réfléchi seulement à comment prouver que deux endomorphismes qui commute et qui sont diagonalisables ont une base de diagonalisation commune.

    Soit $k$ un corps et $E = k^n$. Soit $A,B \in \mathcal{M}_n(k)$ deux endomorphismes diagonalisables et qui commutent, alors il existe une base de diagonalisation commune. Et en particulier, tout polynôme en $A$ et $B$ est diagonalisable.

    J'écris la décomposition de $E$ qui provient de la diagonalisation de $A$.
    $$
    E = \bigoplus_{\lambda \in \text{Sp}(A)} E_\lambda(A)
    $$
    On montre que $B$ est stable sur cette décomposition : si $u \in E_\lambda(A)$ alors $A.B.u = B.A.u =\lambda B.u$ et par suite $B.u \in E_\lambda(A)$.

    Et que chaque restriction $B_\lambda$ de $B$ est diagonalisable : là c'est le coup du polynôme minimal d'un endomorphisme défini par bloc. Et ensuite comme $A$ restreint à $E_\lambda(A)$ est une homothétie. C'est bon.

    Hum pas très clair, je me trouve !
  • @Claude : Sinon, j'ai fini par démontrer que $a \subset I$ et $a \subset J$ et $(I \cap J)^2 = I \cap J$ alors $a \subset IJ$ :-D

    En fait dans mon message avant, là où je bloque c'est au niveau du calcul suivant :
    $$M= \begin{pmatrix}
    A & B \\
    0 & C
    \end{pmatrix}$$
    Je veux prouver quelque chose du style pour tout polynôme $P$ on a :
    $$
    P(M) = \begin{pmatrix}
    P(A) & \star \\
    0 & \star
    \end{pmatrix}$$
    Je pense que ça marche avec des calculs de bloc mais je ne me souviens plus comment on fait ça !

    Edit : En plus clair, j'essaye de prouver que
    $$
    \begin{pmatrix}
    A & B \\
    0 & C
    \end{pmatrix} \times \begin{pmatrix}
    A' & B' \\
    0 & C'
    \end{pmatrix} = \begin{pmatrix}
    A*A' & B'' \\
    0 & C''
    \end{pmatrix}
    $$
  • @moduloP :
    $B$ est diagonalisable donc il existe $P\in K[X]$ scindé à racines simples tel que $P(B)=0$.
    Avec tes notations, $P(B_{\lambda})=0$ donc $B_{\lambda}$ est diagonale dans une certaine base de $E_{\lambda}(A)$ dont tous les éléments sont vecteurs propres de $A$ et $B$.

    Pas besoin de polynôme minimal.
  • @moduloP : $$\begin{pmatrix}

    A & \star \\

    0 & C

    \end{pmatrix} \times \begin{pmatrix}

    A' & \star \\

    0 & C'

    \end{pmatrix} = \begin{pmatrix}

    AA' & \star \\

    0 & CC'

    \end{pmatrix}$$

    Il suffit de faire le calcul. Ou alors tu fais une preuve formelle avec la formule qui donne les coefficients du produit de deux matrices, tu verras qu'à cause du zéro, les indices des termes qui apparaissent dans les coins en haut à gauche et en haut à droite concordent pour ne donner que les termes donnant $AA'$ et $CC'$.
  • @Gai requin : merci ! Tu me sauves, pas besoin d'écrire les produits (tu)

    @Poirot : Merci, mais je n'avais pas envie d'écrire les produits des trucs.
  • Hello,
    Je pense qu'une fois dans sa vie (encore !), il est bon de faire l'exercice suivant. Soit $E$ un $K$-espace vectoriel de dimension finie et $(u_i)_{i \in I}$ une famille QUELCONQUE d'endomorphismes de $E$ telle que chaque $u_i$ soit diagonalisable (sur $K$) et telle que les $u_i$ commutent deux à deux.

    Alors les $u_i$ sont simultanément diagonalisables.

    Note : famille quelconque signifie qu'elle n'est pas supposée finie, par exemple.
  • @Claude : Je suis certain que j'ai déjà fait cet exercice mais j'ai mis du temps a retrouver l'argument.

    Soit $E$ un $k$-ev de dimension $n$. Soit $\Lambda = (u_k)$ un famille d'endomorphisme diagonalisable et commutant deux à deux.

    On part sur un récurrence (forte) sur la dimension, en supposant que la proposition est valide pour tous les espaces de dimension $<n$.

    Si les $u_\lambda$ sont tous des homothéties alors il n'y a rien a faire. Sinon, on prend $ u \in \Lambda$ qui n'est pas une homothétie et on diagonalise i.e on écrit :
    $$
    E = \bigoplus_{\lambda \in \text{Sp}(u)} E_\lambda(u)
    $$
    Là on applique l'hypothèse de récurrence sur chaque $E_\lambda(u)$ avec la famille des restrictions de $(u_k)$ à $E_\lambda(u)$.
  • @moduloP
    Vu (on est poussé à faire une récurrence sur la dimension .. et pas sur le nombre d'endomorphismes !).

    @gai-requin
    Rationalité pour les polynômes minimaux. J'ai vu ton post (flemme de pointer) : on peut se passer de ce que tu évoques mais on en reparlera à une autre occasion.

    Je propose de le (= coup des polynômes minimaux) tirer comme conséquence des résultats suivants de rationalité linéaire où $K \subset L$ sont deux corps quelconques.

    1) Si des vecteurs de $K^N$ sont $L$-liés dans le $L$-espace espace vectoriel $L^N$, ils sont $K$-liés. Ou encore, si des vecteurs de $K^N$ sont $K$-linéairement, ils sont $L$-linéairement indépendants.

    2) Soit $A : K^m \to K^n$ et $b \in K^n$. Si le système $Ax = b$ a une solution $x$ dans $L^m$, alors il admet une solution dans $K^m$. Bonus : qui va nous donner sur un plateau une $K$-solution ?
  • @Claude :
    Soit $v_1,\ldots,v_m$ des vecteurs de $K^N$ indépendants sur $K$.
    Soit $a_1,\ldots,a_m\in L$ tels que $\sum {a_iv_i}=0$.
    Soit $e$ une base du $K$-espace vectoriel $L$.
    Pour tout $i$, il existe des $b_{ij}\in K$ tels que $a_i=\sum_j {b_{ij}e_j}$.
    Donc pour tout $1\leq k\leq N$, $$\sum_j{(\sum_i{b_{ij}v_{ik}})e_j}=0.$$Ainsi, pour tous $j,k$, $$\sum_i{b_{ij}v_{ik}}=0.$$ Comme les $v_i$ sont $K$-indépendants, les $b_{ij}$ sont tous nuls donc $a_i=0$ pour tout $i$.

    Bon, sinon, pour éviter de devenir fou, on a le résultat directement par conservation du rang d'une matrice à vie !
  • Pour le 2), soit $F$ le $L$-espace vectoriel engendré par les colonnes $C_1,\ldots,C_m$ de $A$.
    Quitte à supprimer des colonnes, on peut supposer qu'elles sont $L$-indépendantes.
    Si $b\in F$, la famille $(C_1,\ldots,C_m,b)$ est $L$-liée donc $K$-liée d'après 1) et il existe des $\alpha_i\in K$ non tous nuls tels que $$\alpha_1 C_1+\cdots+\alpha_m C_m=\alpha_{m+1}b.\quad (\star)$$
    $C_1,\ldots,C_m$ étant $L$-indépendantes, $\alpha_{m+1}\neq 0$.
    En multipliant $(\star)$ par $\alpha_{m+1}^{-1}$, on obtient une solution $x\in K^m$ de $Ax=b$.
  • @gai-requin
    Vu. Un complément concernant l'aspect rationnel de la résolution de $Ax = b$. Rappel : $A,b$ sont à coefficients dans $K$ et $x$ une solution à coefficients dans un sur-corps de $K$ ; et pourquoi pas dans un sur-anneau de $K$.

    Oublions $b,x$ deux secondes. Et suppose que je te livre, en même temps que $A$, une matrice $B$, à coefficients dans $K$, telle que $ABA = A$. Bien sûr, si $A$ est $n \times m$, alors $B$ est $m \times n$. Maintenant $b$ débarque, et à ce qu'il paraît, il y a une solution (inconnue) $x$, à coefficients dans un sur-anneau de $K$ ...etc... Comment CALCULER une $K$-solution ?

    Et au fait, étant donnée $A$, où trouve-t-on une $B$ telle que $ABA = A$ ? Sous le sabot d'un cheval ? Pas du tout. La détermination d'une telle $B$ est conséquence de la méthode d'élimination de Gauss. C'est du concret de chez concret.

    Je commence par $A$ une matrice strictement échelonnée en colonnes. Ceci veut dire que d'une part, $A$ est échelonnée en colonnes relativement à la fonction hauteur. I.e. les hauteurs des colonnes non nulles sont deux à deux distinctes (en principe, on doit deviner ce qu'est la hauteur d'une colonne). Je viens d'expliquer ce que signifie ``échelonnée en colonnes'' (sous-entendu, relativement à la fonction hauteur). Maintenant j'explique le ``strictement''. Cela signifie que les lignes passant par les pivots (on devine, n'est ce pas ?) sont des vecteurs de la base canonique. Il faut bien examiner l'exemple ci-dessous, et comprendre comment est conçue ${}^t B$ en fonction de $A$.

    > A ;
    [  0   0   0   0]
    [  0   0   1   0]
    [  1   0   0   0]
    [a41   0 a43   0]
    [  0   0   0   1]
    [a61   0 a63 a64]
    [a71   0 a73 a74]
    > tB ;
    [0 0 0 0]
    [0 0 1 0]
    [1 0 0 0]
    [0 0 0 0]
    [0 0 0 1]
    [0 0 0 0]
    [0 0 0 0]
    > B := Transpose(tB) ;
    > A*B*A ;
    [  0   0   0   0]
    [  0   0   1   0]
    [  1   0   0   0]
    [a41   0 a43   0]
    [  0   0   0   1]
    [a61   0 a63 a64]
    [a71   0 a73 a74]
    > A*B*A eq A ;
    true
    

    Tu vas me dire : oui, mais ici, $A$ est très spéciale ; et pour $A$ quelconque. Eh bien, que dit, de manière précise, la méthode de Gauss ?

    Autre chose : la méthode de Gauss permet également de déterminer le corps de rationalité (ou de définition) d'une famille de vecteurs de $K^n$ ; ce n'est pas complètement banal (et pas écrit partout, il y en a même qui pensent que la méthode de Gauss, c'est de l'analyse numérique, beurk).
  • Impressionnant Gauss une fois encore !

    Pour rappel : si $Ax=b$ a une solution (dans une extension de $K$ donc), $x:=Bb$ est une solution dans $K$.

    Je termine l'histoire du polynôme minimal à vie.

    Soit $K\subset L$ une extension de corps, $A\in M_n(K)$, $\mu_K$ (resp. $\mu_L$) son polynôme minimal sur $K$ (resp. $L$).
    Notons $d=\deg \mu_K$ et $d'=\deg \mu_L$.
    D'après 1),$$\{m\in\mathbb N;(I,A,\ldots,A^m)\text{ est $K$-liée}\}=\{m\in\mathbb N;(I,A,\ldots,A^m)\text{ est $L$-liée}\}.$$
    En passant au $\min$, on a donc $d=d'$.
    Or, $\mu_L\mid \mu_K$ donc, ces polynômes étant unitaires, $\mu_L= \mu_K$.
  • @gai-requin
    On peut même aller plus loin pour $Ax = b$. On VERIFIE SI $A(Bb) = b$ ; si c'est le cas, on est content. Et si ce n'est pas le cas, on sait quoi penser de la personne qui nous a filé $(A,b)$ en prétendant l'existence d'une solution de $Ax=b$ sur une extension du corps de base.

    A propos de $ABA = A$. Il y a deux projecteurs dans cette histoire : $AB$ et $BA$. J'ai oublié de les montrer.

    > A*B ;
    [  0   0   0   0   0   0   0]
    [  0   1   0   0   0   0   0]
    [  0   0   1   0   0   0   0]
    [  0 a43 a41   0   0   0   0]
    [  0   0   0   0   1   0   0]
    [  0 a63 a61   0 a64   0   0]
    [  0 a73 a71   0 a74   0   0]
    > B*A ;
    [1 0 0 0]
    [0 0 0 0]
    [0 0 1 0]
    [0 0 0 1]
    

    Tu ne m'as pas dit comment, pour une matrice QUELCONQUE $A \in M_{nm}(K)$, on déterminait $B$ telle que $ABA = A$.


    @gai-requin, moduloP
    Je suis embêté : j'ai perdu un idéal.
  • Bien joué Gai requin ; j'étais entrain de relire pour remettre les choses en ordre :)
  • @gai-requin, moduloP
    A propos de l'idéal que j'ai perdu. Je suis bien embêté car c'était un petit idéal $I$ de $\Q[X,Y]$ tout simple. J'ai cru que je pouvais m'en sortir car, avant de le perdre, je l'avais prêté à une personne. Mais, c'est dingue, cette personne, elle a joué dans $\R[X,Y]$. Quelle idée ! Et quand je lui ai demandé, elle m'a fourni les deux générateurs $G_1, G_2$ de $I\R$, l'idéal de $\R[X,Y]$ engendré par $I$, ci-dessous :

    > G1 ;
    e*pi^2*X^7*Y + e^2*pi^2*X^6*Y^3 - e*pi^2*X^5*Y^2 + 2*X^5 + (-e^2*pi^2 + e*pi^2)*X^4*Y^4 + 2*e*X^4*Y^2 + X^4 + e^2*pi^2*X^3*Y^6 + 2*e*X^3*Y^2 
        - 2*X^3*Y + X^3 + e^2*X^2*Y^4 + (-2*e + 2)*X^2*Y^3 + X^2*Y^2 + 2*e*X*Y^5 + 2*e*X*Y^4 - X*Y + e^2*Y^6 + Y^3
    > G2 ;
    -e^2*pi^4*X^9*Y^2 + e^2*pi^4*X^7*Y^3 - 4*e*pi^2*X^7*Y - e^2*pi^4*X^6*Y^5 - e*pi^2*X^6*Y - e^2*pi^2*X^5*Y^3 + 4*e*pi^2*X^5*Y^2 - 4*X^5 - 
        4*e*pi^2*X^4*Y^4 - e*pi^2*X^4*Y^3 - 2*X^4 - e^2*pi^2*X^3*Y^5 - 2*e*X^3*Y^2 + 4*X^3*Y - 4*X^2*Y^3 - 2*X^2*Y^2 + X^2 - 2*e*X*Y^4 + Y^2
    

    C'est quoi pi et e ? Eh bien, pi c'est le réel $\pi$ et $e$ ce à quoi vous pensez.

    > Pi(R) ;   
    3.14159265358979323846264338328
    > Exp(1.0) ;
    2.71828182845904523536028747135
    

    Est ce que l'on va pouvoir retrouver $I$ de $\Q[X,Y]$ ?
    Rationalité, quand tu me tiens.
  • @Claude:
    Voilà ce que j'ai compris.
    Soit $P,Q$ des matrices inversibles telles que $A'=PAQ$ soit strictement échelonnée en colonnes.
    Soit $B'$ telle que $^tB'$ est la matrice extraite de $A'$ en ne gardant que les pivots (égaux à $1$).
    On devrait avoir $A'B'A'=A'$ soit $AQB'PA=A$ et on peut choisir $B=QB'P$.

    Mais quel est cet idéal ?
  • @gai requin
    Oui, en ce qui concerne $B$. Mais pas besoin de $P$ : il y a $Q$ inversible (que l'on peut déterminer) telle que $AQ$ soit strictement échelonnée en colonnes.

    Quant à mon histoire d'idéal ce n'est pas très pédagogique mon affaire. Je donne juste la solution SANS aucune explication :

    > GroebnerBasis([G1,G2]) ;                                                                                                                    
    [
        X^2 + Y^2,
        X*Y + 2*Y^4,
        Y^5 + Y^4 + 1/2*Y^3
    ]
    

    En fait, je suis parti de $F_1, F_2$ :

    > F1 := X^3 + Y^3 - X*Y ;
    > F2 := X^2 + Y^2 ;
    > 
    > Ideal([G1,G2]) eq Ideal([F1,F2]) ;
    true
    

    que j'ai combinés avec une célèbre matrice $2 \times 2$ de déterminant 1 à deux paramètres, disons $a,b$. Quel est l'auteur de cette célèbre matrice ? cela commence par un C


    Plus pédagogique (rationalité linéaire, suite)
    Soit $E$ un sous-espace vectoriel de $K^n$. On dit que $E$ est défini sur un sous-corps $K_0$ de $K$ si $E$ est $K$-engendré par des vecteurs à composantes dans $K_0$. Alors il y a un plus petit corps de rationalité. Il faut travailler un peu pour le montrer. Et comment le déterminer. Il faut travailler encore.
  • @Claude :
    On n'a pas besoin de $P$ parce qu'on ne travaille que sur les colonnes donc on change la base de l'espace de départ. C'est ça ?
    Et on pourrait faire la même chose sur les lignes (s'il y en a moins que des colonnes par exemple) en raisonnant avec une certaine matrice $PA$ au lieu de $AQ$.


    Je réfléchirai à la rationalité linéaire cet après-midi.
  • $\def\Res{\text{Res}}$@gai-requin, moduloP
    Deux petites choses :

    1) Soit $P, Q \in K[X]$ deux polynômes unitaires séparables ($K$ est un corps). Et $R \in K[X]$ défini par
    $$
    R = \Res_Y\big(P(Y), Q(X-Y)\big) = \Res_Y\big(Q(Y), P(X-Y)\big)
    $$
    de sorte que (dans une $K$-extension) si on a $P(X) = \prod_i (X-x_i)$, $Q(X) = \prod_j (X - y_j)$, alors $R(X) = \prod_{i,j}(X - (x_i+y_j))$.

    $R$ n'a aucune raison d'être séparable. Mais dispose-t-on d'un algorithme $K$-rationnel qui décompose $R$ en produit de polynômes séparables ? Sans factoriser car il n'y a pas d'algorithme universel de factorisation. Je ne sais pas faire pour l'instant.

    2) J'ai un peu peur que la modération s'aperçoive que le contenu d'un certain nombre des derniers posts n'est pas du tout en accord avec le fil initial ``Méthode de Newton''. C'est pas faux. Je vais essayer d'y revenir, je ne sais pas trop comment.
  • Matrice de Cohn, de déterminant 1, que j'ai utilisée pour créer du garbage $(F_1, F_2) \mapsto (G_1, G_2)$ :
    $$
    C = \pmatrix { 1 + ab & -a^2 \cr b^2 & 1-ab}, \qquad \qquad \det(C) = 1
    $$
    Ce n'est pas une matrice banale.
    En prime, dans le demi-plan de Poincaré, c'est le fixateur sous $\text{PSL}_2(\Z)$, du cusp $(a : b) = a/b$ :
    $$
    \pmatrix { 1 + ab & -a^2 \cr b^2 & 1-ab} \pmatrix {a \cr b} = \pmatrix {a \cr b}
    $$


    PS : aucun rapport avec la méthode de Newton. C'est n'importe quoi ce fil. On devrait prendre modèle sur les autres fils, qui sont tellement carrés.
  • Hello Claude,

    Pour l'histoire de Groebner, il y a unicité des bases de Grobner unicité d'un certain type de base de Groebner qui te garantie que si l'idéal $I$ est rationnelle, alors "sa" base de Groebner est rationnelle ?
  • @moduloP
    Oui, c'est cela. Mais ce n'était absolument pas pédagogique de ma part d'en parler. J'aurais dû rester dans le cadre ``linéaire pur'' (encore que, avec la $K$-base des monômes, je me comprends). Bref, j'aurais dû considérer les sous-espaces vectoriels $E$ de $K^n$. Relativement à la fonction hauteur, ceux-ci admettent une et une seule base strictement échelonnée (j'espère ne pas raconter de bêtise). C'est elle qui tient la rationalité.

    Comme je me suis fait ch.er à écrire un programme général (qui prend en données la suite des hauteurs), je redonne un exemple pour l'aspect strictement échelonné (en colonnes).

    [  1   0   0   0]
    [a21   0   0   0]
    [  0   0   0   1]
    [  0   0   1   0]
    [a51   0 a53 a54]
    [  0   1   0   0]
    [a71 a72 a73 a74]
    [a81 a82 a83 a84]
    [a91 a92 a93 a94]
    

    J'aurais pu faire du garbage sur les colonnes mais du point de vue affichage, horrible.
  • @moduloP
    A partir des colonnes d'une matrice $n \times m$ à coefficients dans $K$, tu peux fabriquer $m$ formes linéaires de $K[X_1, \cdots, X_n]$. Alors la propriété, pour les colonnes, de former une famille strictement échelonnée, c'est exactement, pour les formes linéaires, être une base de Gröbner réduite.
  • @moduloP, gai-requin
    Je tiens à m'excuser. Vraiment. Car cette histoire de base de Gröbner, ce n'est pas du tout, mais pas du tout pédagogique. Alors que je vois d'autres fils qui le sont tant.
  • @Claude : Et avec Gröbner, a-t-on la matrice $Q$ telle $A'=AQ$ soit strictement échelonnée en colonnes ?
    Ce qui permettrait de récupérer sans trop d'efforts $B$ telle que $ABA=A$...
  • :-D

    Ca à l'air marrant cette histoire de rationalité des espaces vectoriels mais je ne vois pas trop quoi dire d'intelligent sur cette situation ! Ah si un petit truc par exemple, l'espace vectoriel sur $\Q[ i]$ engendré par $(1,i)$ n'est pas rationnel sur $\Q$. Mais bon je n'ai pas l'habitude de manipuler des corps autre que les "corps classiques" ... je ne vois pas trop ce que ça veut dire si on prend des gros corps comme $k(x,y)$ ou autre truc ? Enfin, si l'extension est grosse j'ai l'impression qu'il n'y a pas beaucoup d'espace rationnel !
  • Hello,
    Je suis en train de préparer un petit truc avec Gröbner et des formes linéaires mais cela demande toujours un peu de temps.

    1) moduloP : on a oublié de préciser l'adjectif ``réduite'' dans "base de Gröbner réduite". C'est cela qui assure l'unicité.

    2) Rationalité linéaire. On peut le voir comme cela (si je me souviens bien, j'ai la preuve quelque part mais où ?). Soit $E \subset K^n$ un sous-espace vectoriel. On considère un supplémentaire $S$ de $E$ dans $K^n$ engendré par des vecteurs de la base canonique. C'est important la précision ``base canonique''. Cela existe toujours (théorème de la base incomplète ou un truc comme cela). On note $\pi_E$ la projection de $K^n$ sur $E$ dans la décomposition $K^n = E \oplus S$ :
    $$
    \xymatrix @C = 2cm{
    K^n\ar@/^1pc/[r]^{\pi_E} & E \oplus S
    }
    $$
    Alors le corps $K_0$ de rationalité de $E$ est le sous-corps de $K$ engendré (sur le sous-corps premier de $K$) par les composantes des $\pi_E(e_i)$ où $(e_i)_{1 \le i \le n}$ est la base canonique de $K^n$.
Connectez-vous ou Inscrivez-vous pour répondre.