{VERSION 6 0 "IBM INTEL NT" "6.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 1 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 1 }{CSTYLE "2D Output" 2 20 "" 0 1 0 0 255 1 0 0 0 0 0 0 0 0 0 1 } {PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Output" -1 11 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }3 3 0 0 0 0 1 0 1 0 2 2 0 1 }} {SECT 0 {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "restart: with(algcur ves):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 264 "The puiseux program can give unnecessarily large answers. Reading the following code into Map le before using the puiseux command will help to prevent one (but not \+ all) of the causes of these large answers, namely it will help to prev ent some unnecessary expanding." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 2225 "`algcurves/lift_exp` := proc(v, f, x, y)\nlocal i, ii, r, re s, v7, vv7, v3, ext, a, j, n, np, ram, j3;\n if v[5] = 1 then retur n \{v\} end if;\n v3 := degree(v[3], x);\n res := \{\};\n r : = v[1] + y*x^v[2];\n vv7 := v[7]*v3 + v[2] - 1;\n vv7 := vv7 + v [5];\n ii := `algcurves/truncate_subs`(subs(x = v[3], f), x, y, r, \+ vv7 + 1,\n v[4]);\n if ii = 0 then error \"degree estimate w as wrong\" end if;\n v7 := (ldegree(ii, x) - v[2])/v3;\n r := `a lgcurves/v_ext_m`(\n `algcurves/g_factors`(tcoeff(ii, x), y, v[ 4]), y);\n for i in r do res := res union `algcurves/lift_exp`([\n \+ v[1] + x^v[2]*i[1], v[2] + 1, v[3], [op(i[3]), op(v[4])], i[2], \n v[6]*i[4], v7, [op(v[8]), [op(1 .. 4, v)]]], f, x, y)\n e nd do;\n if add(i[5]*i[6]*degree(i[3], x)/(v[6]*v3), i = res) <>\n \+ degree(tcoeff(ii, x), y) then error \"found wrong number of expansi ons\"\n end if;\n if v[5] = degree(tcoeff(ii, x), y) then\n \+ if ldegree(ii, x) <> vv7 then error \"degree estimate was wrong\"\n end if;\n return res\n end if;\n ii := collect(ii , y);\n ii := add(`algcurves/normal_tcoeff`(coeff(ii, y, i), x)*y^i ,\n i = 0 .. degree(ii, y));\n np := `algcurves/Newtonpolygo n`(ii, x, y);\n if nops(np) = 2 and np[1][3] = 0 then\n erro r \"found wrong number of expansions\"\n end if;\n for j in np d o\n if 2 < nops(j) and 0 < j[3] and j[3] < 1 then\n \+ r := `algcurves/g_factors`(j[4], x, v[4]);\n r := `algcurve s/v_ext_m`(r, x);\n for i in r do\n j3 := j[ 3] - v[2];\n ext := [op(i[3]), op(v[4])];\n \+ n := mods(1/numer(j3), denom(j3));\n ram := i[1]^n* x^denom(j3);\n a := v[2]*denom(j3) - numer(j[3]);\n \+ res := res union `algcurves/lift_exp`([collect(\n \+ subs(x = ram, v[1])\n + x^a*i[1]^((1 - \+ n*numer(j3))/denom(j3)), x, normal),\n a + 1, norma l(subs(x = ram, v[3])), ext, i[2],\n v[6]*i[4],\n \+ (j[2] - j[1]*j[3] - a/degree(ram, x))/degree(v[3], x ),\n [op(v[8]), [op(1 .. 4, v)]]], f, x, y)\n \+ end do\n end if\n end do;\n res\nend proc:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 61 "A:=x^5+(x+y)^2*y^2+e*x^4*y+f *x^3*y^2+g*x^2*y^3+h*x*y^4+j*y^5;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#> %\"AG,0*$)%\"xG\"\"&\"\"\"F**&),&F(F*%\"yGF*\"\"#F*)F.F/F*F**(%\"eGF*) F(\"\"%F*F.F*F**(%\"fGF*)F(\"\"$F*F0F*F**(%\"gGF*)F(F/F*)F.F8F*F**(%\" hGF*F(F*)F.F4F*F**&%\"jGF*)F.F)F*F*" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 21 "define polynomial [1]" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "puiseux(A,x=0,y,0);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#<%,$*&\" \"\"F&%\"jG!\"\"F(,&*&)*&%\"xGF&,.%\"eGF&F&F(%\"hGF(%\"fGF(%\"gGF&F'F& F(#\"\"$\"\"#F&)F.F5F&F&*(,.F/F(F&F&F0F&F1F&F2F(F'F(F&F-F&F.F(F&*$),$F -F(F3F&" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 15 "numerator=0 [2]" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "solve(e-1-h-f+g+j,e);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#,,%\"gG!\"\"\"\"\"F&%\"hGF&%\"fGF&%\"j GF%" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "A1:=eval(A,e=%);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#A1G,0*$)%\"xG\"\"&\"\"\"F**&),&F(F* %\"yGF*\"\"#F*)F.F/F*F**(,,%\"gG!\"\"F*F*%\"hGF*%\"fGF*%\"jGF4F*)F(\" \"%F*F.F*F**(F6F*)F(\"\"$F*F0F*F**(F3F*)F(F/F*)F.F " 0 "" {MPLTEXT 1 0 11 "factor(A 1);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$*&,&%\"xG\"\"\"%\"yGF'F',<*$) F&\"\"%F'!\"\"*()F&\"\"$F'%\"gGF'F(F'F'*(F/F'%\"jGF'F(F'F'*(F/F'%\"hGF 'F(F'F-*(F/F'%\"fGF'F(F'F-*()F&\"\"#F'F1F')F(F:F'F-*(F9F'F3F'F;F'F-*(F 9F'F5F'F;F'F'*&F;F'F&F'F-*(F&F'F3F')F(F0F'F'*(F&F'F5F'F@F'F-*$F@F'F-*& F3F')F(F,F'F-F'F-" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 22 "polynomial f actors [5]" }}}}{MARK "11 0 0" 22 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 } {PAGENUMBERS 0 1 2 33 1 1 }