{VERSION 3 0 "SGI MIPS UNIX" "3.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 }{CSTYLE "2D Comment" 2 18 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 } {CSTYLE "2D Output" 2 20 "" 0 1 0 0 255 1 0 0 0 0 0 0 0 0 0 }{PSTYLE " Normal" -1 0 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Maple Output" 0 11 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 3 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }} {SECT 0 {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "with(MS):" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 112 "Consider the Genocchi numbers, as define d by Lehmer \\cite\{Lehmer\} having an exponential generating function of " }{XPPEDIT 18 0 "2*x/(exp(x)+1);" "6#*(\"\"#\"\"\"%\"xGF%,&-%$ex pG6#F&F%\"\"\"F%!\"\"" }{TEXT -1 25 ". \\Label\{defn:Genocchi\} " } {TEXT -1 19 "The calculation of " }{XPPEDIT 18 0 "product(exp(x*omega[ m]^i)+1,i = 0 .. m-1);" "6#-%(productG6$,&-%$expG6#*&%\"xG\"\"\")&%&om egaG6#%\"mG%\"iGF,F,\"\"\"F,/F2;\"\"!,&F1F,\"\"\"!\"\"" }{TEXT -1 8 ", where " }{XPPEDIT 18 0 "omega[m];" "6#&%&omegaG6#%\"mG" }{TEXT -1 4 " is " }{XPPEDIT 18 0 "exp(2*Pi*I/m);" "6#-%$expG6#**\"\"#\"\"\"%#PiGF( %\"IGF(%\"mG!\"\"" }{TEXT -1 245 " is of interest to compute the recur rence of the denominator. Set $t(x) = e^x + 1$ and $s(x) = 2 x$. Ass ume that this function is to be multisectioned by 4. Then to do this \+ with recurrence polynomials, first find the recurrence polynomial of \+ " }{XPPEDIT 18 0 "t(x) = exp(x)+1;" "6#/-%\"tG6#%\"xG,&-%$expG6#F'\"\" \"\"\"\"F," }{TEXT -1 39 ". Notice deg^d(t(x)) = 0 hence deg^d(" } {XPPEDIT 18 0 "product(t(x*omega[m]^i),i = 0 .. m-1);" "6#-%(productG6 $-%\"tG6#*&%\"xG\"\"\")&%&omegaG6#%\"mG%\"iGF+/F1;\"\"!,&F0F+\"\"\"!\" \"" }{TEXT -1 87 ") = 0. This means that the resulting recurrence pol ynomial may have no multiple roots." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "t := exp(x)+1;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>% \"tG,&-%$expG6#%\"xG\"\"\"F*F*" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "poly := convert_poly(convert_egf(t,f,x));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%polyG,&*$)%\"xG\"\"#\"\"\"\"\"\"F(!\"\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 47 "Scale this to get the recurrence polynomi al of " }{XPPEDIT 18 0 "t(-x);" "6#-%\"tG6#,$%\"xG!\"\"" }{TEXT -1 105 " and then use the resultant to get the result of multiplying the \+ two poly-exponential functions together." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 25 "poly2 := subs(x=-x,poly);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&poly2G,&*$)%\"xG\"\"#\"\"\"\"\"\"F(F+" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "poly3 := resultant(subs(x=x-y,poly) ,subs(x=y,poly2),y);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&poly3G*&,&* $)%\"xG\"\"#\"\"\"\"\"\"F)!\"\"F,,&F'F,F)F,F," }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 98 "There are no multiple roots, so factor out multiple ro ot, and factor out the leading coefficient." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 75 "gcd(poly3, diff(poly3,x), 'poly4'): poly4 := exp and(poly4/lcoeff(poly4,x));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&poly 4G,&*$)%\"xG\"\"$\"\"\"\"\"\"F(!\"\"" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 55 "Scale this again, to get the recurrence polynomial for " } {XPPEDIT 18 0 "t(I*x)*t(-I*x);" "6#*&-%\"tG6#*&%\"IG\"\"\"%\"xGF)F)-F% 6#,$*&F(F)F*F)!\"\"F)" }{TEXT -1 106 ", and then use the resultant to \+ get the result of multiplying the two poly-exponential functions toget her." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "poly5 := subs(x=I*x ,poly4);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&poly5G,&*&%\"IG\"\"\")% \"xG\"\"$\"\"\"!\"\"*&F'F,F*F(F-" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 56 "poly6 := resultant(subs(x=x-y,poly4),subs(x=y,poly5), y);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&poly6G*(%\"IG\"\"\",&*$)%\"x G\"\"$\"\"\"F'F+!\"\"F',**$)F+\"\"%F-F.*$)F+\"\"#F-!\"%F6F'*$)F+\"\"'F -F.F'" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 112 "There will be no multip le roots, so factor out spurious multiple roots, and factor out the le ading coefficient.." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 75 "gcd( poly6, diff(poly6,x), 'poly7'): poly7 := expand(poly7/lcoeff(poly7,x)) ;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&poly7G,(*$)%\"xG\"\"&\"\"\"\" \"$*$)F(\"\"*F*\"\"\"F(!\"%" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 45 "No w determine the linear recurrence relation." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "convert_rec(poly7,f,x);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/-%\"fG6#%\"xG,&-F%6#,&F'\"\"\"!\"%F,!\"$-F%6#,&F'F,!\" )F,\"\"%" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 68 "Alternatively, the au tomated function in Maple could have been used." }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 28 "`bottom/ms/result`(t,f,x,4);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6&/-%\"fG6#%\"xG,&-F%6#,&F'\"\"\"!\"%F,!\"$-F%6#,&F'F, !\")F,\"\"%F%F'7+/-F%6#\"\"!\"#;/-F%6#F,F8/-F%6#\"\"#F8/-F%6#\"\"$F8/- F%6#F3F2/-F%6#\"\"&F8/-F%6#\"\"'F8/-F%6#\"\"(F8/-F%6#\"\")\"#s" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 28 "Which gives the same result." }}}} {MARK "18 0 0" 0 }{VIEWOPTS 1 1 0 1 1 1803 }