{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 73 "A:=a*x^6+(x+y)^2*y^3+g*x^5*y +h*x^4*y^2+j*x^3*y^3+k*x^2*y^4+l*x*y^5+m*y^6;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"AG,2*&%\"aG\"\"\")%\"xG\"\"'F(F(*&),&%\"yGF(F*F(\" \"#F()F/\"\"$F(F(*(%\"gGF()F*\"\"&F(F/F(F(*(%\"hGF()F*\"\"%F()F/F0F(F( *(%\"jGF()F*F2F(F1F(F(*(%\"kGF()F*F0F()F/F:F(F(*(%\"lGF(F*F()F/F6F(F(* &%\"mGF()F/F+F(F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 21 "define polyn omial [1]" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "puiseux(A,x=0, y,0);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#<%,$*&\"\"\"F&%\"mG!\"\"F(,&* &),0%\"gGF(%\"lGF(%\"aGF&%\"kGF&%\"jGF(%\"hGF&F'F&\"\"#F&)*&%\"xGF&F,F (#\"\"$F3F&F&*(,0F-F&F.F&F/F(F0F(F1F&F2F(F'F(F&F6F&F,F(F&,$*&,$*&F6F&F /F&F(#\"\"%F8F/F(F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 15 "numerator= 0 [2]" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "solve(-g-l+a+k-j+h +m,k);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,.%\"gG\"\"\"%\"lGF%%\"aG!\" \"%\"jGF%%\"hGF(%\"mGF(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 " A1:=eval(A,k=%);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#A1G,2*&%\"aG\" \"\")%\"xG\"\"'F(F(*&),&%\"yGF(F*F(\"\"#F()F/\"\"$F(F(*(%\"gGF()F*\"\" &F(F/F(F(*(%\"hGF()F*\"\"%F()F/F0F(F(*(%\"jGF()F*F2F(F1F(F(*(,.F4F(%\" lGF(F'!\"\"F=F(F8FB%\"mGFBF()F*F0F()F/F:F(F(*(FAF(F*F()F/F6F(F(*&FCF() F/F+F(F(" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 25 "reevaluate polynomial [3]" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "factor(A1);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#*&,&%\"yG\"\"\"%\"xGF&F&,@*&%\"aGF&)F' \"\"&F&F&*()F'\"\"%F&%\"gGF&F%F&F&*(F.F&F*F&F%F&!\"\"*()F'\"\"$F&%\"hG F&)F%\"\"#F&F&*(F4F&F7F&F0F&F2*(F4F&F*F&F7F&F&*()F'F8F&%\"jGF&)F%F5F&F &*(F6F&FF&F2*(FF&F0F&F&*(FF&F*F&F2*(F'F&%\"mGF&)F%F/F&F 2*(%\"lGF&F'F&FDF&F&*&F>F&F'F&F&*$FDF&F&*&FCF&)F%F,F&F&F&" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 22 "polynomial factors [5]" }}}}{MARK "12" 0 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }