{VERSION 2 3 "Windows XP" "2.3" } {USTYLETAB {PSTYLE "Ordered List 1" -1 200 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 0 2 0 2 2 -1 1 } {PSTYLE "Ordered List 2" -1 201 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 36 2 0 2 2 -1 1 }{PSTYLE "Ordered List 3" -1 202 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 72 2 0 2 2 -1 1 }{PSTYLE "Ordered List 4" -1 203 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 108 2 0 2 2 -1 1 }{PSTYLE "Ordered List 5" -1 204 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 144 2 0 2 2 -1 1 }{PSTYLE "Author" -1 19 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }3 1 0 0 8 8 2 0 2 0 2 2 -1 1 }{PSTYLE "Annotatio n Title" -1 205 1 {CSTYLE "" -1 -1 "Times" 1 18 0 0 0 1 2 1 2 2 2 2 1 0 0 1 }3 1 0 0 12 12 2 0 2 0 2 2 -1 1 }{PSTYLE "Warning" -1 7 1 {CSTYLE "" -1 -1 "Courier" 1 10 0 0 255 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Fixed Width" -1 17 1 {CSTYLE "" -1 -1 "Courier" 1 10 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }3 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Maple Plot" -1 13 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }3 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Line Prin ted Output" -1 6 1 {CSTYLE "" -1 -1 "Courier" 1 10 0 0 255 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Text Output" -1 2 1 {CSTYLE "" -1 -1 "Courier" 1 10 0 0 255 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Diagnostic" -1 9 1 {CSTYLE "" -1 -1 " Courier" 1 10 64 128 64 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Help" -1 10 1 {CSTYLE "" -1 -1 "Courier" 1 9 0 0 255 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Maple Output" -1 11 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }3 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Dash Item" -1 16 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 0 2 0 2 2 -1 1 }{PSTYLE "Title" -1 18 1 {CSTYLE "" -1 -1 "Times" 1 18 0 0 0 1 2 1 1 2 2 2 1 0 0 1 }3 1 0 0 12 12 2 0 2 0 2 2 -1 1 }{PSTYLE "Error" -1 8 1 {CSTYLE "" -1 -1 " Courier" 1 10 255 0 255 1 2 2 2 2 2 1 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Heading 1" -1 3 1 {CSTYLE "" -1 -1 "Times" 1 18 0 0 0 1 2 1 2 2 2 2 1 0 0 1 }1 1 0 0 6 6 2 0 2 0 2 2 -1 1 }{PSTYLE "Bullet I tem" -1 15 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 0 2 0 2 2 -1 1 }{PSTYLE "Heading 4" -1 20 1 {CSTYLE "" -1 -1 "Times" 1 10 0 0 0 1 1 1 2 2 2 2 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Heading 3" -1 5 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 1 1 2 2 2 2 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "Headin g 2" -1 4 1 {CSTYLE "" -1 -1 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 1 0 0 1 }1 1 0 0 4 4 2 0 2 0 2 2 -1 1 }{PSTYLE "Left Justified Maple Output" -1 12 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }{PSTYLE "List Item" -1 14 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 3 3 2 0 2 0 2 2 -1 1 }{CSTYLE "Annotation Text" -1 200 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Help Maple Name" -1 35 "Times" 1 12 104 64 92 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "2D Math Bold" -1 5 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "Help Menus" -1 36 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "2D Math Italic" -1 3 "Times" 1 12 0 0 0 1 1 2 2 2 2 2 0 0 0 1 }{CSTYLE "Help Normal" -1 30 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Plot Text" -1 28 "Times" 1 8 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Help Nonterminal" -1 24 "Courier" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "Help Heading" -1 26 "Times" 1 14 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "Help Italic" -1 42 "Times" 1 12 0 0 0 1 1 2 2 2 2 2 0 0 0 1 }{CSTYLE "Help Variable" -1 25 "Courier" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Help Italic Bold" -1 40 "Times" 1 12 0 0 0 1 1 2 2 2 2 2 0 0 0 1 }{CSTYLE "Default" -1 38 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Help Underlined Italic" -1 43 " Times" 1 12 0 0 0 1 1 2 1 2 2 2 0 0 0 1 }{CSTYLE "Maple Input" -1 0 "C ourier" 1 12 255 0 0 1 2 1 2 2 1 2 0 0 0 1 }{CSTYLE "2D Output" -1 20 "Times" 1 12 0 0 255 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "2D Math Bold Smal l" -1 10 "Times" 1 1 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "2D Math Sma ll" -1 7 "Times" 1 1 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Page Number " -1 33 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Output Labe ls" -1 29 "Times" 1 8 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Plot Title " -1 27 "Times" 1 10 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "Help Emphas ized" -1 22 "Times" 1 12 0 0 0 1 1 2 2 2 2 2 0 0 0 1 }{CSTYLE "2D Math Symbol 2" -1 16 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Ma ple Comment" -1 21 "Courier" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "Maple Input Placeholder" -1 201 "Courier" 1 12 200 0 200 1 2 1 2 2 1 2 0 0 0 1 }{CSTYLE "Code" -1 202 "Courier" 1 12 255 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "2D Inert Output" -1 203 "Times" 1 12 144 144 144 1 2 2 2 2 1 2 0 0 0 1 }{CSTYLE "2D Math Italic Small" -1 204 "Times" 1 1 0 0 0 1 1 2 2 2 2 2 0 0 0 1 }{CSTYLE "2D Comment" -1 18 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Help Underlined Bold" -1 41 "Tim es" 1 12 0 0 0 1 1 1 2 2 2 2 0 0 0 1 }{CSTYLE "Copyright" -1 34 "Times " 1 10 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Hyperlink" -1 17 "Times" 1 12 0 128 128 1 2 2 1 2 2 2 0 0 0 1 }{CSTYLE "Help Underlined" -1 44 "Times" 1 12 0 0 0 1 2 2 1 2 2 2 0 0 0 1 }{CSTYLE "Prompt" -1 1 "Couri er" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "2D Math" -1 2 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "2D Input" -1 19 "Times" 1 12 255 0 0 1 2 2 2 2 1 2 0 0 0 1 }{CSTYLE "Header and Footer" -1 205 "Ti mes" 1 10 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Text" -1 206 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Help Notes" -1 37 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "Help Bold" -1 39 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "Equation Label" -1 207 "Times" 1 12 0 0 0 1 2 1 2 2 2 2 0 0 0 1 }{CSTYLE "LaTeX" -1 32 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{CSTYLE "Popup" -1 31 "Times" 1 12 0 128 128 1 1 2 1 2 2 2 0 0 0 1 }{CSTYLE "Dictionary Hyperlink" -1 45 "Times " 1 12 147 0 15 1 2 2 1 2 2 2 0 0 0 1 }{CSTYLE "Help Fixed" -1 23 "Cou rier" 1 10 0 0 0 1 2 2 2 2 2 2 0 0 0 1 }{PSTYLE "" -1 206 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 0 0 1 }1 1 0 0 0 0 2 0 2 0 2 2 -1 1 }} {SECT 0 {SECT 0 {PARA 4 "" 0 "" {TEXT 208 50 "I Algorithme d'Euclide \+ classique sur les polyn\364mes" }}{PARA 0 "" 0 "" {TEXT 209 0 "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "euclide1:=proc(A,B)\n" } {MPLTEXT 1 0 23 "local U,V,A1,B1,T,R,Q;\n" }{MPLTEXT 1 0 23 "U:=1;A1:= A;B1:=B;V:=0;\n" }{MPLTEXT 1 0 17 "while B1 <> 0 do\n" }{MPLTEXT 1 0 42 " \n R:=rem(A1,B1,X);Q:=quo(A1,B1,X);\n" }{MPLTEXT 1 0 51 " \+ print(R);\n T:=U-Q*V;U:=V;A1:=B1;V:=T;B1:=R;\n" }{MPLTEXT 1 0 9 " od; \n" }{MPLTEXT 1 0 32 "if divide((A1-A*U),B,'q') then \n" } {MPLTEXT 1 0 10 " V:=q;\n" }{MPLTEXT 1 0 4 "fi;\n" }{MPLTEXT 1 0 18 "[U,V,expand(A1)];\n" }{MPLTEXT 1 0 4 "end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$I\"AG6\"I\"BGF%6)I\"UGF%I\"VGF%I#A1GF%I#B1GF%I\"TGF%I \"RGF%I\"QGF%F%F%C)>8$\"\"\">8&9$>8'9%>8%\"\"!?(F%F2F2F%0F7F;C*>8)-I$r emG6$%*protectedGI(_syslibGF%6%F4F7I\"XGF%>8*-I$quoGFCFF-I&printGFD6#F @>8(,&F1F2*&FIF2F:F2!\"\">F1F:>F4F7>F:FP>F7F@@$-I'divideGFD6%,&F4F2*&F 5F2F1F2FSF8.I\"qGF%>F:Fin7%F1F:-I'expandGFD6#F4F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 44 "f:=824*X^5-65*X^4-814*X^3-741*X^2-9 79*X-764;" }}{PARA 11 "" 1 "" {XPPMATH 20 ",.*$I\"XG6\"\"\"&\"$C)*$F$ \"\"%!#l*$F$\"\"$!$9)*$F$\"\"#!$T(F$!$z*!$k(\"\"\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "g:=216*X^4+663*X^3+880*X^2-916*X+617;" }} {PARA 11 "" 1 "" {XPPMATH 20 ",,*$I\"XG6\"\"\"%\"$;#*$F$\"\"$\"$j'*$F$ \"\"#\"$!))F$!$;*\"$<'\"\"\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "euclide1(f,g);" }}{PARA 11 "" 1 "" {XPPMATH 20 ",*#\"(D,B$\"$'[ \"\"\"*$I\"XG6\"\"\"$#\"'pUh\"$i\"*$F(\"\"##\"(\\tB$\"$V#F(#!(-K[$F2" }}{PARA 11 "" 1 "" {XPPMATH 20 ",(#\"07O4&zZiH\"-hVSEtP\"\"\"*$I\"XG6 \"\"\"##\"0Yy.0:Jn(F%F(#!0)3KCB1`iF%" }}{PARA 11 "" 1 "" {XPPMATH 20 " ,&#\"A>#yRH%[v5RL#=N9J,\"\">ix,%*4>)zNYwu#4F$\"\"\"I\"XG6\"#!Ar)fs[6@a T_C2'G'G'R\">\"))3q\\&4**yJ#QPYN;" }}{PARA 11 "" 1 "" {XPPMATH 20 "#\" Xv1![xs8u\\(*3*>_*4Xr\"R4I7ysM!3JhD5PQm(zHKBDq#p\"U\"[*z#GVnO pQ2p]2Y[y\"fdcVJ'))>;%*$F(\"\"##\"U^*QKTDOCatl$QF]1HIbl%e\\.xGi$\"Ui*) fll[L(Qx9Q,:#ppN=:8(GExRK)F(#\"Uskl2z4elcug7@$4;,&)oYxwcJ]\"=FJ#\"U6?$ y-(3c<]_*4Xr\"R4I7 " 0 "" {MPLTEXT 1 0 20 "euclide2:=proc(A,B)\n" } {MPLTEXT 1 0 23 "local U,V,A1,B1,T,R,Q;\n" }{MPLTEXT 1 0 23 "U:=1;A1:= A;B1:=B;V:=0;\n" }{MPLTEXT 1 0 17 "while B1 <> 0 do\n" }{MPLTEXT 1 0 21 " R:=rem(A1,B1,X);\n" }{MPLTEXT 1 0 18 " if R<>0 then \n" } {MPLTEXT 1 0 26 " R:=R/lcoeff(R);\n" }{MPLTEXT 1 0 28 " \+ print(R);\n fi;\n" }{MPLTEXT 1 0 21 " Q:=quo(A1,B1,X);\n" } {MPLTEXT 1 0 37 " T:=U-Q*V;U:=V;A1:=B1;V:=T;B1:=R;\n" }{MPLTEXT 1 0 9 "od; \n" }{MPLTEXT 1 0 32 "if divide((A1-A*U),B,'q') then \n" }{MPLTEXT 1 0 10 " V:=q;\n" }{MPLTEXT 1 0 4 "fi;\n" }{MPLTEXT 1 0 12 "expand(A1);\n" }{MPLTEXT 1 0 4 "end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$I\"AG6\"I\"BGF%6)I\"UGF%I\"VGF%I#A1GF%I#B1GF%I\"TGF%I\"RGF%I\" QGF%F%F%C)>8$\"\"\">8&9$>8'9%>8%\"\"!?(F%F2F2F%0F7F;C*>8)-I$remG6$%*pr otectedGI(_syslibGF%6%F4F7I\"XGF%@$0F@F;C$>F@*&F@F2-I'lcoeffGFD6#F@!\" \"-I&printGFDFO>8*-I$quoGFCFF>8(,&F1F2*&FTF2F:F2FP>F1F:>F4F7>F:FX>F7F@ @$-I'divideGFD6%,&F4F2*&F5F2F1F2FPF8.I\"qGF%>F:F`o-I'expandGFD6#F4F%F% F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "euclide2(f,g);" }} {PARA 11 "" 1 "" {XPPMATH 20 ",*#\"(D,B$\"(2G%=\"\"\"*$I\"XG6\"\"\"$F& *$F(\"\"##\"()pukF%F(#!(/k'pF%" }}{PARA 11 "" 1 "" {XPPMATH 20 ",(#\"/ M&Q3@ek\"\"/Zl%pTGE%\"\"\"*$I\"XG6\"\"\"#F&F(#!/;^8N#RZ$F%" }}{PARA 11 "" 1 "" {XPPMATH 20 ",&#!5z0 et 1 sinon. \n" } }{PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "lu:=proc(f)\n" }{MPLTEXT 1 0 9 "lo cal l;\n" }{MPLTEXT 1 0 6 "l:=1;\n" }{MPLTEXT 1 0 13 "if f<>0 then\n" }{MPLTEXT 1 0 19 " l:=lcoeff(f,X);\n" }{MPLTEXT 1 0 4 "fi;\n" } {MPLTEXT 1 0 3 "l;\n" }{MPLTEXT 1 0 4 "end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6#I\"fG6\"6#I\"lGF%F%F%C%>8$\"\"\"@$09$\"\"!>F*-I'lcoef fG%*protectedG6$F.I\"XGF%F*F%F%F%" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 209 65 "Algorithme d'Euclide avec des op\351rations exclusivement dans Z[X]\n" }{TEXT 209 44 "(on utilise des pseudo divisions dan Z[X]).\n" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "euclideprimitif:=proc(f,g)\n" } {MPLTEXT 1 0 23 "local f1,g1,n1,n2,i,t;\n" }{MPLTEXT 1 0 7 "f1:=f;\n" }{MPLTEXT 1 0 7 "g1:=g;\n" }{MPLTEXT 1 0 17 "n1:=degree(f,X);\n" } {MPLTEXT 1 0 17 "n2:=degree(g,X);\n" }{MPLTEXT 1 0 17 "while g1 <> 0 d o\n" }{MPLTEXT 1 0 44 " t:=rem(lcoeff(g1,X)^(1+n1-n2)*f1,g1,X);\n" }{MPLTEXT 1 0 12 " n1:=n2;\n" }{MPLTEXT 1 0 12 " f1:=g1;\n" } {MPLTEXT 1 0 26 " print(f1);\n g1:=t;\n" }{MPLTEXT 1 0 22 " n 2:=degree(g1,X);\n" }{MPLTEXT 1 0 9 "od; \n" }{MPLTEXT 1 0 11 "f1/ lu(f1);\n" }{MPLTEXT 1 0 4 "end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$ I\"fG6\"I\"gGF%6(I#f1GF%I#g1GF%I#n1GF%I#n2GF%I\"iGF%I\"tGF%F%F%C(>8$9$ >8%9%>8&-I'degreeG%*protectedG6$F1I\"XGF%>8'-F86$F4F;?(F%\"\"\"FAF%0F3 \"\"!C(>8)-I$remG6$F9I(_syslibGF%6%*&)-I'lcoeffGF96$F3F;,(FAFAF6FAF=! \"\"FAF0FAF3F;>F6F=>F0F3-I&printGF96#F0>F3FF>F=-F8FP*&F0FA-I#luGF%FWFR F%F%F%" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 209 34 "Application \340 l'exe mple du texte.\n" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "euclideprimitif (f,g);" }}{PARA 11 "" 1 "" {XPPMATH 20 ",,*$I\"XG6\"\"\"%\"$;#*$F$\"\" $\"$j'*$F$\"\"#\"$!))F$!$;*\"$<'\"\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 ",*\"*+?45$\"\"\"*$I\"XG6\"\"\"$\"*s%4p<*$F&\"\"#\"*35d@'F&!*%yu(o'" }}{PARA 11 "" 1 "" {XPPMATH 20 ",(\"5GPbWi6x>dC\"\"\"*$I\"XG6\"\"\"#\" 5C')4fQZ&)QkjF&!5sq5ZG9+a'=&" }}{PARA 11 "" 1 "" {XPPMATH 20 ",&\"Ps%p ta&f(*H_HjRChQhZCN+.M&e\"\"\"I\"XG6\"!Q'*)GD\"R^-w'*Q'=W\\NmZBB%>N>zX" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"^r+c#o\"RFJ#zJ'f\"Qps&y!p5jT6\"fpI! G*y+7lo)=%H\"4G=Uk2sP55#yK\"='z,xrm.)R" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 209 20 "Un autre exemple... \n" }{MPLTEXT 1 0 43 "euclideprimitif((X-1)^3*x^9*13,(X-1)^2*13);" }} {PARA 11 "" 1 "" {XPPMATH 20 "*$,&I\"XG6\"\"\"\"!\"\"F&\"\"#" }}}} {SECT 0 {PARA 4 "" 0 "" {TEXT 208 64 "IV Algorithme d'Euclide modulair e \"version grand nombre premier\"" }}{PARA 0 "" 0 "" {TEXT 209 0 "" } }{EXCHG {PARA 0 "" 0 "" {TEXT 209 62 "Le contenu d'un polynome ( i.e. \+ le pgcd des ses coefficients)\n" }{TEXT 209 34 "avec pour convention c ont(0) = 1.\n" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "cont:=proc(f)\n" } {MPLTEXT 1 0 13 "local c,n,i;\n" }{MPLTEXT 1 0 6 "c:=1;\n" }{MPLTEXT 1 0 14 "if f <>0 then\n" }{MPLTEXT 1 0 19 " n:=degree(f,X);\n" } {MPLTEXT 1 0 20 " c:=coeff(f,X,0);\n" }{MPLTEXT 1 0 36 " for i fro m 1 to n while c<> 1 do\n" }{MPLTEXT 1 0 28 " c:=igcd(c,coeff(f,X,i) );\n" }{MPLTEXT 1 0 7 " od;\n" }{MPLTEXT 1 0 4 "fi;\n" }{MPLTEXT 1 0 3 "c;\n" }{MPLTEXT 1 0 7 "end; " }}{PARA 11 "" 1 "" {XPPMATH 20 "f *6#I\"fG6\"6%I\"cGF%I\"nGF%I\"iGF%F%F%C%>8$\"\"\"@$09$\"\"!C%>8%-I'deg reeG%*protectedG6$F0I\"XGF%>F,-I&coeffGF76%F0F9F1?(8&F-F-F40F,F->F,-I% igcdGF76$F,-F<6%F0F9F?F,F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "cont(2*X^7+2*X);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"#" }}} {EXCHG {PARA 0 "" 0 "" {TEXT 209 32 "Partie primitive d'un polynome.\n " }{TEXT 209 67 "Renvoit le polynome de contenu 1 du meme degr\351 que f qui divise f.\n" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "primitivepart :=proc(f)\n" }{MPLTEXT 1 0 11 "f/cont(f);\n" }{MPLTEXT 1 0 4 "end;" }} {PARA 11 "" 1 "" {XPPMATH 20 "f*6#I\"fG6\"F%F%F%*&9$\"\"\"-I%contGF%6# F'!\"\"F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "primitivep art(f);" }}{PARA 11 "" 1 "" {XPPMATH 20 ",.*$I\"XG6\"\"\"&\"$C)*$F$\" \"%!#l*$F$\"\"$!$9)*$F$\"\"#!$T(F$!$z*!$k(\"\"\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 209 77 "Programmation de la norme infini sur les coefficie nts d'un polynome de C[X].\n" }{TEXT 209 70 "On peut utiliser et on ut ilisera la fonction maple norm(f,infinity).\n" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "normInfini:=proc(P)\n" }{MPLTEXT 1 0 15 "local n,N,i, t;\n" }{MPLTEXT 1 0 7 "n:=-1;\n" }{MPLTEXT 1 0 6 "N:=0;\n" }{MPLTEXT 1 0 14 "if P<>0 then \n" }{MPLTEXT 1 0 18 " n:=degree(P);\n" } {MPLTEXT 1 0 4 "fi;\n" }{MPLTEXT 1 0 21 "for i from 0 to n do\n" } {MPLTEXT 1 0 26 " t:=abs(coeff(P,X,i));\n" }{MPLTEXT 1 0 23 " if evalf(t)>N then\n" }{MPLTEXT 1 0 14 " N:=t;\n" }{MPLTEXT 1 0 8 " fi;\n" }{MPLTEXT 1 0 4 "od;\n" }{MPLTEXT 1 0 3 "N;\n" }{MPLTEXT 1 0 4 "end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6#I\"PG6\"6&I\"nGF%I\" NGF%I\"iGF%I\"tGF%F%F%C'>8$!\"\">8%\"\"!@$09$F1>F--I'degreeG%*protecte dG6#F4?(8&F1\"\"\"F-I%trueGF8C$>8'-I$absGF86#-I&coeffGF86%F4I\"XGF%F;@ $2F0-I&evalfGF86#F@>F0F@F0F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "f2:=(1+I)*X+1;" }}{PARA 11 "" 1 "" {XPPMATH 20 ",&*&^$\"\"\"F %F%I\"XG6\"F%F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "norm Infini(f2); " }}{PARA 11 "" 1 "" {XPPMATH 20 "*$\"\"##\"\"\"F#" }}} {EXCHG {PARA 0 "" 0 "" {TEXT 209 96 "Donne un nombre premier choisi au hasard entre les entiers 2*B et 4*B avec B donn\351 en argument.\n" } }{PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "premier:=proc(B)\n" }{MPLTEXT 1 0 14 "local p,ra,k;\n" }{MPLTEXT 1 0 20 "ra:=rand(2*B..4*B);\n" } {MPLTEXT 1 0 10 "p:=4*B+1;\n" }{MPLTEXT 1 0 18 "while p>(4*B) do \n" } {MPLTEXT 1 0 9 "k:=ra();\n" }{MPLTEXT 1 0 17 "p:=nextprime(k);\n" } {MPLTEXT 1 0 4 "od;\n" }{MPLTEXT 1 0 3 "p;\n" }{MPLTEXT 1 0 4 "end;" } }{PARA 11 "" 1 "" {XPPMATH 20 "f*6#I\"BG6\"6%I\"pGF%I#raGF%I\"kGF%F%F% C&>8%-I%randG6$%*protectedGI(_syslibGF%6#;,$9$\"\"#,$F5\"\"%>8$,&F5F8 \"\"\"F8&-F,F%>F:-I*nextprimeGF/6#FAF:F%F%F%" }}} {PARA 11 "" 0 "" {TEXT 210 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "premier(1000);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"%`Q" }}} {EXCHG {PARA 0 "" 0 "" {TEXT 209 52 "Donne la forme normale d'un polyn ome dans Z/pZ [X],\n" }{TEXT 209 113 "( c'est \340 dire si f<>0, le po lynome unitaire qui divise f* et qui est de m\352me degr\351 que f* a vec f = f* mod p ).\n" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "formeNorma l:=proc(f,p)\n" }{MPLTEXT 1 0 16 "local n,k,f1,a;\n" }{MPLTEXT 1 0 7 " f1:=0;\n" }{MPLTEXT 1 0 14 "if f<>0 then \n" }{MPLTEXT 1 0 25 " n:=d egree(f mod p,X);\n" }{MPLTEXT 1 0 44 " igcdex(lcoeff(f mod p) mod p ,p,'u','v');\n" }{MPLTEXT 1 0 15 " a:=u mod p;\n" }{MPLTEXT 1 0 24 " for k from 0 to n do\n" }{MPLTEXT 1 0 40 " f1:=f1+X^k*a*coeff (f,X,k) mod p;\n" }{MPLTEXT 1 0 14 " od; \n" }{MPLTEXT 1 0 4 " fi;\n" }{MPLTEXT 1 0 4 "f1;\n" }{MPLTEXT 1 0 4 "end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6$I\"fG6\"I\"pGF%6&I\"nGF%I\"kGF%I#f1GF%I\"aGF%F%F%C %>8&\"\"!@$09$F/C&>8$-I'degreeG%*protectedG6$-I$modGF%6$F29%I\"XGF%-I' igcdexG6$F8I(_syslibGF%6&-F;6$-I'lcoeffGF86#F:F=F=.I\"uGF%.I\"vGF%>8'- F;6$FJF=?(8%F/\"\"\"F5I%trueGF8>F.-F;6$,&F.FS*()F>FRFSFNFS-I&coeffGF86 %F2F>FRFSFSF=F.F%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "fo rmeNormal(g,3);" }}{PARA 11 "" 1 "" {XPPMATH 20 ",(*$I\"XG6\"\"\"#\"\" \"F$F&F&F'" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 209 94 "Algorithme d'Eucli de pour calculer le polyn\364me unitaire v de Z [X] tel que normInfin y(v)

" 0 "" {MPLTEXT 1 0 25 "euclideModP:=proc(f,g,p)\n" }{MPLTEXT 1 0 23 "local k,r,q,s,t,l,i,a;\n" }{MPLTEXT 1 0 13 "k[0]:=l u(f);\n" }{MPLTEXT 1 0 30 "r[0]:=formeNormal(f mod p,p);\n" }{MPLTEXT 1 0 24 "igcdex(k[0],p,'u','v');\n" }{MPLTEXT 1 0 9 "s[0]:=u;\n" } {MPLTEXT 1 0 9 "t[0]:=0;\n" }{MPLTEXT 1 0 19 "k[1]:=lu(g mod p);\n" } {MPLTEXT 1 0 24 "r[1]:=formeNormal(g,p);\n" }{MPLTEXT 1 0 24 "igcdex(k [1],p,'u','v');\n" }{MPLTEXT 1 0 9 "t[1]:=u;\n" }{MPLTEXT 1 0 9 "s[1]: =0;\n" }{MPLTEXT 1 0 6 "i:=1;\n" }{MPLTEXT 1 0 17 "while r[i]<>0 do\n" }{MPLTEXT 1 0 29 " q[i]:=quo(r[i-1],r[i],X);\n" }{MPLTEXT 1 0 49 " \+ k[i+1]:=lu((expand(r[i-1]-q[i]*r[i])) mod p);\n" }{MPLTEXT 1 0 29 " \+ igcdex(k[i+1],p,'u','v');\n" }{MPLTEXT 1 0 9 " a:=u;\n" }{MPLTEXT 1 0 47 " r[i+1]:=expand((r[i-1]-q[i]*r[i])*a) mod p;\n" }{MPLTEXT 1 0 47 " s[i+1]:=expand((s[i-1]-q[i]*s[i])*a) mod p;\n" }{MPLTEXT 1 0 47 " t[i+1]:=expand((t[i-1]-q[i]*t[i])*a) mod p;\n" }{MPLTEXT 1 0 11 " i:=i+1;\n" }{MPLTEXT 1 0 4 "od;\n" }{MPLTEXT 1 0 8 "l:=i-1;\n" }{MPLTEXT 1 0 20 "s[l]:=mods(s[l],p);\n" }{MPLTEXT 1 0 20 "t[l]:=mods( t[l],p);\n" }{MPLTEXT 1 0 20 "r[l]:=mods(r[l],p);\n" }{MPLTEXT 1 0 18 "[s[l],t[l],r[l]];\n" }{MPLTEXT 1 0 4 "end;" }}{PARA 11 "" 1 "" {XPPMATH 20 "f*6%I\"fG6\"I\"gGF%I\"pGF%6*I\"kGF%I\"rGF%I\"qGF%I\"sGF%I \"tGF%I\"lGF%I\"iGF%I\"aGF%F%F%C3>&8$6#\"\"!-I#luGF%6#9$>&8%F5-I,forme NormalGF%6$-I$modGF%6$F:9&FD-I'igcdexG6$%*protectedGI(_syslibGF%6&F3FD .I\"uGF%.I\"vGF%>&8'F5FL>&8(F5F6>&F46#\"\"\"-F86#-FB6$9%FD>&F=FW-F?Ffn -FF6&FVFDFKFM>&FTFWFL>&FQFWF6>8*FX?(F%FXFXF%0&F=6#FboF6C*>&8&Ffo-I$quo GFG6%&F=6#,&FboFX!\"\"FXFeoI\"XGF%>&F46#,&FboFXFXFX-F86#-FB6$-I'expand GFH6#,&F^pFX*&FioFXFeoFXFapFD-FF6&FdpFDFKFM>8+FL>&F=Fep-FB6$-F\\q6#*&F ^qFXFcqFXFD>&FQFep-FB6$-F\\q6#*&,&&FQF_pFX*&FioFX&FQFfoFXFapFXFcqFXFD> &FTFep-FB6$-F\\q6#*&,&&FTF_pFX*&FioFX&FTFfoFXFapFXFcqFXFD>FboFfp>8)F`p >&FQ6#Fcs-I%modsGFH6$FesFD>&FTFfs-Fhs6$F[tFD>&F=Ffs-Fhs6$F_tFD7%FesF[t F_tF%F%F%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "euclideModP(X- 3,X+3,3);" }}{PARA 11 "" 1 "" {XPPMATH 20 "7%\"\"!\"\"\"I\"XG6\"" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "euclideModP(f,g,3);" }} {PARA 11 "" 1 "" {XPPMATH 20 "7%I\"XG6\",*!\"\"\"\"\"*$F#\"\"%F'*$F#\" \"#F&F#F&F'" }}}{EXCHG {PARA 0 "" 0 "" {TEXT 209 63 "Algorithme d'Eucl ide modulaire \"version grand nombre premier\".\n" }{TEXT 209 112 "Ent r\351e: f,g deux polyn\364mes primitifs de Z[X] avec n:=deg f >= deg g >= 1 et normInfini(f), normInfini(b) <= A." }}{PARA 0 "" 0 "" {TEXT 209 33 "Sortie: h:=pgcd(f,g) dans Z[X]\n" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "euclide3:=proc(f,g)\n" }{MPLTEXT 1 0 29 "local A,n,h, p,b,B,f1,g1,v,w;\n" }{MPLTEXT 1 0 16 "n:=degree(f,X);\n" }{MPLTEXT 1 0 34 "b:=igcd(lcoeff(f,X),lcoeff(g,X));\n" }{MPLTEXT 1 0 63 "A:=max(ce il(evalf(normInfini(f))),ceil(evalf(normInfini(g))));\n" }{MPLTEXT 1 0 37 "B:=ceil(evalf((n+1)^(1/2)*2^n*A*b));\n" }{MPLTEXT 1 0 8 "w:=B+1; \n" }{MPLTEXT 1 0 7 "f1:=1;\n" }{MPLTEXT 1 0 7 "g1:=1;\n" }{MPLTEXT 1 0 58 "while norm(f1,1)*norm(w,1)>B or norm(g1,1)*norm(w,1)>B do\n" } {MPLTEXT 1 0 19 " p:=premier(B);\n" }{MPLTEXT 1 0 30 " v:=euclid eModP(f,g,p)[3];\n" }{MPLTEXT 1 0 20 " w:=mods(b*v,p);\n" }{MPLTEXT 1 0 44 " f1:=mods(expand(Quo(b*f,w,X) mod p),p);\n" }{MPLTEXT 1 0 43 " g1:=mods(expand(Quo(b*g,w,X)mod p),p);\n" }{MPLTEXT 1 0 4 "od; \n" }{MPLTEXT 1 0 18 "primitivepart(w);\n" }{MPLTEXT 1 0 4 "end;" }} {PARA 11 "" 1 "" {XPPMATH 20 "f*6$I\"fG6\"I\"gGF%6,I\"AGF%I\"nGF%I\"hG F%I\"pGF%I\"bGF%I\"BGF%I#f1GF%I#g1GF%I\"vGF%I\"wGF%F%F%C+>8%-I'degreeG %*protectedG6$9$I\"XGF%>8(-I%igcdGF76$-I'lcoeffGF7F8-FA6$9%F:>8$-I$max GF76$-I%ceilGF%6#-I&evalfGF76#-I+normInfiniGF%6#F9-FK6#-FN6#-FQ6#FD>8) -FK6#-FN6#**,&F4\"\"\"F[oF[o#F[o\"\"#)F]oF4F[oFFF[oF8-,&FZF[oF[oF [o>8*F[o>8+F[o?(F%F[oF[oF%52FZ*&-I%normGF%6$FcoF[oF[o-F[p6$F`oF[oF[o2F Z*&-F[p6$FeoF[oF[oF]pF[oC'>8'-I(premierGF%6#FZ>8,&-I,euclideModPGF%6%F 9FDFep6#\"\"$>F`o-I%modsGF76$*&FFco-Fcq6$-I'expandGF76#- I$modGF%6$-I$QuoGF%6%*&FFeo-Fcq6$-Fjq6#-F]r6$-F`r 6%*&F " 0 "" {MPLTEXT 1 0 14 "euclide3(f,g);" }}{PARA 11 "" 1 "" {XPPMATH 20 "\"\"\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 45 "A:=e xpand(randpoly([X],degree = 30)*(X^2+1));" }}{PARA 11 "" 1 "" {XPPMATH 20 ",4*$I\"XG6\"\"#J!#c*$F$\"#HF'*$F$\"#?!#i*$F$\"#=\"#N*$F$ \"#;\"#(**$F$\"\"(!#t*$F$\"\"&F5*$F$\"\"'!\"%*$F$\"\"%F:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 45 "B:=expand(randpoly([X],degree = 30) *(X^2+1));" }}{PARA 11 "" 1 "" {XPPMATH 20 ",:*$I\"XG6\"\"#J!##)*$F$\" #HF'*$F$\"#G\"#!)*$F$\"#EF,*$F$\"#D!#W*$F$\"#BF1*$F$\"#;\"#r*$F$\"#9F6 *$F$\"\"(!#<*$F$\"\"&F;*$F$\"\"'!#v*$F$\"\"%F@" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "euclide3(A,B);" }}{PARA 11 "" 1 "" {XPPMATH 20 ",&*$I\"XG6\"\"\"%\"\"\"*$F$\"\"'F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {XPPEDIT 19 1 "" "%#%?G" }}}}} {MARK "0 0 0" 0 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }