TP MAPLE Munsch Marc 22 juin 2010 Règle de Descartes La règle de Descartes ramène l’étude du nombre de racines strictement positives d’un polynôme à coefficients réels à l’évaluation d’une fonction simple : le nombre de changements de signe dans la suite des coefficients du polynôme. On note V (a) = V (a1 , · · · , ak ) le nombre de changements de signe d’une suite finie a ∈ (R∗ )k . On a alors le résultat suivant : Théoreme. Le nombre µ(P ) de racines strictement positives(comptées avec leur ordre de multiplicité) d’un polynôme P (X) = d X ai X i ∈ R[X] i=0 est majoré par V (a0 , · · · , ad ). De plus la différence V (a0 , · · · , ad ) − µ(P ) est paire. Si le polynôme P a toutes ses racines réelles, alors on a l’égalité µ(P ) = V (a0 , · · · , ad ). Exercice 1 Démontrer le théorème puis implémenter la règle de Descartes. On l’appliquera ensuite pour déterminer si une matrice symétrique est définie 1 positive par exemple sur la matrice M de taille 10 où aij = i+j−1 . Factorisation de polynômes sur Z Soit P un polynôme à coefficients entiers. On aimerait factoriser P , une méthode découverte par Schubert repose sur l’observation suivante : pour tout entier r, P (r) est un entier. Supposons P de degré m et réductible alors on sait que m m−1 P a un facteur de degré ≤ m 2 . Posons d = 2 si m est pair et d = 2 si m est impair. Soient n0 , · · · , nd des entiers distincts et posons P (n0 ) = r0 , · · · , P (nd ) = rd qui sont entiers. Supposons maintenant que P (X) = A(X)B(X) avec deg(A) ≤ d. Alors on a pour tout ni : A(ni )B(ni ) = P (ni ) = ri Donc A(ni ) divise ri et le vecteur (A(n0 ), · · · , A(nd )) est un vecteur de diviseurs de (r0 , · · · , rd ). Ainsi tout diviseur A de degré ≤ d figure parmi un nombre 1 fini de polynômes possibles, les polynômes Q vérifiant (Q(n0 ), · · · , Q(nd )) = (q0 , · · · , qd ) où (q0 , · · · , qd ) est un vecteur de diviseurs de (r0 , · · · , rd ). Pour trouver un facteur de P de degré ≤ d, il suffit de les tester parmi les polynômes interpolateurs des qi aux points ni . Ceci fournit donc un algorithme qui factorise P en un nombre fini d’étapes. Exercice 2 Utiliser cette méthode pour montrer que le polynôme P (x) = x4 + x + 1 est irréductible sur Z. Spirale d’Ulam Cette fameuse spirale est une représentation visuelle des nombres premiers. Pour la tracer, on se place sur une feuille quadrillée. On part d’une origine qui va représenter l’entier 1 puis on se déplace d’une case vers la droite qui va représenter l’entier 2 et on continue ainsi de suite en dessinant une spirale "carrée". On colorie chaque point qui représente un nombre premier. Exercice 3 Ecrire une procédure qui prend en entrée un entier n et sort les coordonnées des (2n + 1)2 points de la spirale. Représenter graphiquement les points de la spirale pour n = 200 par exemple. Symbole de Jacobi On pose pour p un nombre premier impair, et n un entier, np le symbole de Legendre, valant 0 si p divise n, et si p ne divise pas n, 1 si n est un carré modulo p et −1 sinon. p−1 Rappeler pourquoi np = n 2 mod p. On prolonge cette définition à tout couple d’entiers n et m, avec m impair, en posant : n Y n ei = m pi i Q ei où m = i pi est la décomposition en produit de facteurs premiers de m. n Montrer que le symbole de Jacobi m ne dépend que de la classe de n modulo m. Montrer qu’il vaut 1 si n est un carré modulo p, pour tout diviseur p premier de m. Montrer que le fait que le symbole de Jacobi soit 1 ne caractérise pas les carrés inversibles modulo m en général. Dans le cas où m et n sont premiers entre eux, on a la loi de réciprocité : n m (n−1)(m−1) 4 = (−1) m n et les règles supplémentaires : m−1 m2 −1 −1 2 2 = (−1) , = (−1) 8 m m 2 En déduire un algorithme permettant de calculer le symbole de Jacobi puis l’implémenter. Donner sa complexité et la comparer au calcul du symbole de Legendre par exponentiation rapide. 3