{VERSION 1 0 "X11/Motif" "1.0"}{GLOBALS 3 1}{FONT 0 "-adobe-helve
tica-bold-r-normal--*-140-*" "helvetica" "Helvetica-Bold" 8 14 0 
"Helvetica-Bold" 12}{FONT 1 "-adobe-times-medium-r-normal--*-140-
*" "times" "Times-Roman" 4 14 64 "Times-Roman" 12}{FONT 2 "-adobe
-courier-medium-r-normal--*-140-*" "courier" "Courier" 4 14 192 "
Courier" 12}{FONT 3 "-adobe-new century schoolbook-bold-r-normal-
-*-180-*-*-*-*-*-*" "new century schoolbook" "Times-Bold" 8 18 64
 "Times-Bold" 18}{FONT 4 "-adobe-new century schoolbook-medium-r-
normal--*-140-*-*-*-*-*-*" "new century schoolbook" "Times-Roman"
 4 14 64 "Times-Roman" 14}{FONT 5 "-adobe-new century schoolbook-
medium-r-normal--*-180-*-*-*-*-*-*" "new century schoolbook" "Tim
es-Roman" 4 18 64 "Times-Roman" 18}{FONT 6 "-adobe-new century sc
hoolbook-medium-r-normal--*-180-*-*-*-*-*-*" "new century schoolb
ook" "Times-Roman" 4 18 64 "Times-Roman" 18}{FONT 7 "-adobe-new c
entury schoolbook-medium-r-normal--*-180-*-*-*-*-*-*" "new centur
y schoolbook" "Times-Roman" 4 18 64 "Times-Roman" 18}{FONT 8 "-ad
obe-new century schoolbook-medium-r-normal--*-180-*-*-*-*-*-*" "n
ew century schoolbook" "Times-Roman" 4 18 64 "Times-Roman" 18}
{FONT 9 "-adobe-new century schoolbook-medium-r-normal--*-180-*-*
-*-*-*-*" "new century schoolbook" "Times-Roman" 4 18 64 "Times-R
oman" 18}{FONT 10 "-adobe-new century schoolbook-medium-r-normal-
-*-180-*-*-*-*-*-*" "new century schoolbook" "Times-Roman" 4 18 
64 "Times-Roman" 18}{FONT 11 "-adobe-new century schoolbook-mediu
m-r-normal--*-180-*-*-*-*-*-*" "new century schoolbook" "Times-Ro
man" 4 18 64 "Times-Roman" 18}{FONT 12 "-adobe-new century school
book-medium-r-normal--*-180-*-*-*-*-*-*" "new century schoolbook"
 "Times-Roman" 4 18 64 "Times-Roman" 18}{FONT 13 "-adobe-new cent
ury schoolbook-medium-r-normal--17-*" "new century schoolbook" "T
imes-Roman" 4 12 64 "Times-Roman" 17}{FONT 14 "-adobe-new century
 schoolbook-medium-r-normal--17-*" "new century schoolbook" "Time
s-Roman" 4 12 64 "Times-Roman" 17}{FONT 15 "-adobe-new century sc
hoolbook-medium-r-normal--17-*" "new century schoolbook" "Times-R
oman" 4 12 64 "Times-Roman" 17}{SCP_R 1 0 700{COM_R 2 0{TEXT 3 60
 "\015New features that have been added to Maple V for Release 3\
012"}}{COM_R 3 0{TEXT 4 41 "\012Development of Improved User Inte
rfaces\012"}}{COM_R 4 0{TEXT 1 426 "Most of the improvements and \+
work done for this release has been to make the user interfaces c
onsistent across the main platforms, namely under Windows on the \+
PC, the Macintosh, and under X Windows on UNIX platforms.  Many s
mall improvements and fixes have been made.  The new interfaces p
rovide more tools and support for getting output from parts of wo
rksheets into PostScript files for preparing LaTeX documents and \+
books.\012"}}{COM_R 5 0{TEXT 1 18 "1: Export to Text\012"}}{COM_R
 6 0{TEXT 1 335 "The Windows and Macintosh versions now allow a w
orksheet to be exported as a plain text file.  Text regions are i
ndicated by lines beginning with the sharp character are Maple in
put regions are indicated by lines beginning with the prompt are \+
Maple input regions.  Output regions are printed as ASCII text. F
or example, is such a file\012"}}{COM_R 7 0{TEXT 1 327 "# This is
 a line of text\012> Int( exp(-t)*ln(t), t=0..infinity ) = int( e
xp(-t)*ln(t),t=0..infinity );\012\012                       infin
ity\012                          /\012                         |\
012                         |      exp(- t) ln(t) dt = - gamma\01
2                         |\012                        /\012     \+
                   0"}}{COM_R 8 0{TEXT 1 280 "\015This output fil
e can be imported back into Maple.  Lines beginning with # are co
nverted to text regions.  Lines beginning with > are converted to
 input regions.  All other text in the file is discarded.  Hence \+
the Maple output in this example is discarded.  It can be recompu
ted."}}{COM_R 9 0{TEXT 1 20 "\0152: Export to LaTeX\012"}}{COM_R 
10 0{TEXT 1 413 "New versions of Maple support an ``Export to LaT
eX'' facility that allows the user to convert their worksheet int
o a LaTeX file.  The conversion includes converting Maple mathema
tical formulae into LaTeX.  Large expressions will automatically \+
be broken up.  The conversion is faithful to the Maple style of o
utput of Mathematical expressions.  For example, the above sessio
n would output the following LaTeX file\012"}}{COM_R 11 0{TEXT 1 
32 "  %% Created by Maple V Research"}}{COM_R 12 0{TEXT 1 34 "  \
\documentstyle[maplems]\{article\}"}}{COM_R 13 0{TEXT 1 18 "  \\b
egin\{document\}"}}{COM_R 14 0{TEXT 1 24 "  This is a line of tex
t"}}{COM_R 15 0{TEXT 1 20 "  \\begin\{mapleinput\}"}}{COM_R 16 0
{TEXT 1 75 "  Int( exp(-t)*ln(t), t=0..infinity ) = int( exp(-t)*
ln(t),t=0..infinity );"}}{COM_R 17 0{TEXT 1 18 "  \\end\{mapleinp
ut\}"}}{COM_R 18 0{TEXT 1 20 "  \\begin\{maplelatex\}"}}{COM_R 19
 0{TEXT 1 4 "  \\["}}{COM_R 20 0{TEXT 1 58 "  \{\\displaystyle \\
int_\{0\}^\{\{ \\infty\}\}\} e\}^\{(\\, - \{t\}\\,)\}\\,"}}{COM_R
 21 0{TEXT 1 35 "  ln\}(\\,\{t\}\\,)\\,\{d\}\{t\}= - \{ \\gamma\}
"}}{COM_R 22 0{TEXT 1 4 "  \\]"}}{COM_R 23 0{TEXT 1 18 "  \\end\{
maplelatex\}"}}{COM_R 24 0{TEXT 1 16 "  \\end\{document\}"}}
{COM_R 25 0{TEXT 1 34 "  %% End of Maple V Session Output"}}
{COM_R 26 0{TEXT 1 0 ""}}{INP_R 27 0 "> "{TEXT 0 72 "restart; # t
his will cause the Maple kernel to clear its internal memory"}}
{COM_R 28 0{TEXT 5 10 "\015Graphics\012"}}{COM_R 29 0{TEXT 1 136 
"Most of the improvements in the rendering software have been to \+
fix problems on the various platforms.  New plotting facilities i
nclude."}}{COM_R 30 0{TEXT 1 29 "\0151: Plotting discontinuities\
012"}}{COM_R 31 0{TEXT 1 83 "A facility for identifying discontin
uities in an algebraic expression.  For example"}}{INP_R 32 0 "> \+
"{TEXT 0 54 "plot( tan(x) , x = -10..10, y=-4..4, discont = true \+
);"}}{INP_R 33 0 "> "{TEXT 0 75 "plot( -1.5 + Heaviside(x) + Heav
iside( 2 - x ) , x=-5..5, discont = true );"}}{COM_R 34 0{TEXT 1 
34 "\0152: Statistical plotting routines\012"}}{COM_R 35 0{TEXT 1
 34 "New statistical plotting routines."}}{INP_R 36 0 "> "{TEXT 0
 23 "with(stats[statplots]);"}}{OUT_R 37 0 36{DAG [2,Cn4\`boxplot
`n5\`histogram`n5\`notchedbox`n5\`quantile`n5\`quantile2`n5\`scat
ter1d`n5\`scatter2d`n5\`symmetry`n4\`xscale`n4\`xshift`n5\`xyexch
ange`}}{COM_R 38 0{TEXT 1 48 "See section below on stats package \+
for examples."}}{COM_R 39 0{TEXT 1 16 "\0153: New options\012"}}
{COM_R 40 0{TEXT 1 230 "Options have been added for controlling t
he number of contours, the style and thickness of lines, differen
t point styles, different fonts for text on plots.  See ?plot,opt
ions and ?plot3d,options and ?plot3d,structure for details."}}
{COM_R 41 0{TEXT 6 42 "\015New and Enhanced Mathematical Faciliti
es\012"}}{COM_R 42 0{TEXT 1 24 "1: Definite Integration\012"}}
{COM_R 43 0{TEXT 1 247 "Work is proceeding on generalizing certai
n classes of integrals which yield solutions in terms of special \+
functions. This solution of the following integral is computed in
 terms of the Beta function and its derivative w.r.t. to its firs
t argument."}}{INP_R 44 0 "> "{TEXT 0 35 "f:=(x^(-1/3))*ln(x)*((1
-x)^(1/2)): "}}{INP_R 45 0 "> "{TEXT 0 40 "Int(f,x=0..1) = simpli
fy(int(f,x=0..1));"}}{OUT_R 46 0 45{DAG =3(3n3\`Int`,3*7n3\`x`/3i
2x0001j2x0003(3n3\`ln`,2p6j2x0001+5p12p12p6p9/3p12j2x0002=3p6~3j2
x0000p12+3*9(3n4\`GAMMA`,2/3p1BpBp12(3p26,2/3j2x0005j2x0006p12+Bn
4\`gamma`i2x0042*5n3\`Pi`p12pBp19j2x0007(3pE,2pBi2x0063i2x0288p12
(3n3\`Psi`,2/3p12p34p3Bp12p3E/3p9p1B/3pBj2x0098}}{COM_R 47 0{TEXT
 1 77 "The solution of this integral involves the Beta and hyperg
eometric functions."}}{INP_R 48 0 "> "{TEXT 0 25 "assume(a>0): as
sume(b<0):"}}{INP_R 49 0 "> "{TEXT 0 25 "f:=x^(a-1)*(1-Kt*x)^(-b)
:"}}{INP_R 50 0 "> "{TEXT 0 30 "Int(f,x=0..1) = int(f,x=0..1);"}}
{OUT_R 51 0 50{DAG =3(3n3\`Int`,3*5^3n3\`x`+5n3\`a~~`j2x0001i2x00
01pCpC^3+5pCpC*5n3\`Kt`pCp7pCpE+3n3\`b~~`pEpC=3p7~3j2x0000pC+7*9(
3n4\`Beta`,3pApCpCpApC+5pApCp1EpEpE^3+5pCpCp17pEp1EpEpC*Bp2ApCpAp
Cp17pEp34pEp3ApEpE*Bp2ApCpApCp17pEp34pE(3n5\`hypergeom`,4[2,3p1Ep
9[2,2pAp17pCpC}}{COM_R 52 0{TEXT 1 158 "Is the answer correct?  W
e include one numerical check by comparing the formula\012obtaine
d with the result from numerical integration at some particular v
alues."}}{INP_R 53 0 "> "{TEXT 0 26 "subs(a=1/2,Kt=1/3,b=-6,\");"
}}{OUT_R 54 0 53{DAG =3(3n3\`Int`,3*5n3\`x`/3i2x0001j2x0002+5j2x0
001pEp6/3p9j2x0003j2x0006=3p6~3j2x0000pE+5(3n4\`Beta`,3/3pEpBpE/3
i2x0128j2x9477*5p1FpE(3n5\`hypergeom`,4[2,3i2x0006p8[2,2p24/3pEp1
4pE/3p14j2x0013}}{INP_R 55 0 "> "{TEXT 0 12 "simplify(\");"}}
{OUT_R 56 0 55{DAG =3+3(3n3\`Int`,3*5n3\`x`/3i2x0001j2x0002+5i2x0
003j2x0001p7p11j2x0006=3p7~3j2x0000p11/3p11j2x0729/3j3x00845440j3
x00729729}}{INP_R 57 0 "> "{TEXT 0 9 "evalf(\");"}}{OUT_R 58 0 57
{DAG =3e3j4x001158567084i2x0009p1}}{INP_R 59 0 "> "{TEXT 0 19 "a \+
:= 'a': b := 'b':"}}{COM_R 60 0{TEXT 1 27 "\0152: Indefinite Inte
gration\012"}}{COM_R 61 0{TEXT 1 67 "Maple now knows how to integ
rate some Bessel Functions, for example"}}{INP_R 62 0 "> "{TEXT 0
 28 "int(x^9*BesselY(3,2*x^2),x);"}}{OUT_R 63 0 62{DAG +3*5n3\`x`
j2x0008(3n4\`BesselY`,3j2x0004+3*3p2j2x0002pBj2x0001p10}}{INP_R 
64 0 "> "{TEXT 0 12 "assume(a>0):"}}{INP_R 65 0 "> "{TEXT 0 44 "i
nt( x^(2*a)*BesselJ(a,x)*BesselJ(a-1,x),x);"}}{OUT_R 66 0 65{DAG 
+3*7^3n3\`x`+5n3\`a~~`j2x0002j2x0001pApAp6i2x0001+5*5(3n4\`Bessel
J`,3p6p3pA(3p14,3+5p6pApFpAp3pApA*5(3p14,3+5p6pApApAp3pAp13pApApA
/3pAj2x0004}}{INP_R 67 0 "> "{TEXT 0 9 "a := 'a':"}}{COM_R 68 0
{TEXT 1 144 "Maple now supports Hermite reduction for integrals o
f the form where f is either exp, ln, sin or cos and p(x) and q(x
) are polynomials. Examples"}}{INP_R 69 0 "> "{TEXT 0 35 "f := ex
p(-z)/z^2/(z^2 + 6*z + 6)^2:"}}{INP_R 70 0 "> "{TEXT 0 20 "Int(f,
z) = int(f,z);"}}{OUT_R 71 0 70{DAG =3(3n3\`Int`,3*7(3n3\`exp`,2+
3n3\`z`i2x0001j2x0001pBi2x0002+7*3pBj2x0002pFpBj2x0006p1BpFp12pB+
5*9p6pF+7p17pFpBj2x0005p15pFpFpBpDp14pD/3pDj2x0012(3n3\`Ei`,3pFpB
/3pFp34}}{INP_R 72 0 "> "{TEXT 0 31 "f := exp(-z)/z/(z+1)/(z^3 + \+
2):"}}{INP_R 73 0 "> "{TEXT 0 20 "Int(f,z) = int(f,z);"}}{OUT_R 
74 0 73{DAG =3(3n3\`Int`,3*9(3n3\`exp`,2+3n3\`z`i2x0001j2x0001pBp
D+5pBpFpFpFpD+5*3pBj2x0003pFj2x0002pFpDpB+7(3n3\`Ei`,3pFpB/3pDp1F
*5(3p7,2pFpF(3p26,3pFp13pFpF(3n3\`sum`,3+3*9+7p1FpFn3\`_R1`p1F*3p
44p1FpFpFp44i2x0002(3p7,2p44pF(3p26,3pF+5pBpFp44pFpF/3pFj2x0006=3
p44(3n4\`RootOf`,2+5*3n3\`_Z`p1CpFp4DpFpD}}{INP_R 75 0 "> "{TEXT 
0 23 "f := ln(x)/x/(x^2+1)^2:"}}{INP_R 76 0 "> "{TEXT 0 20 "Int(f
,x) = int(f,x);"}}{OUT_R 77 0 76{DAG =3(3n3\`Int`,3*7(3n3\`ln`,2n
3\`x`j2x0001pAi2x0001+5*3pAj2x0002pCpCpCi2x0002pA+D*3p6p14/3pCp14
*5n3\`Pi`pC(3n4\`arctan`p9pCp20(3n4\`dilog`,2+3*5n3\`I`pCpApCpFp2
0(3p2F,2p34p20(3p7,2p11/3pCj2x0004*7p6pCpAp14p11pF/3pFp14}}{INP_R
 78 0 "> "{TEXT 0 22 "f := sin(z)/(z^3-z-1):"}}{INP_R 79 0 "> "
{TEXT 0 20 "Int(f,z) = int(f,z);"}}{OUT_R 80 0 79{DAG =3(3n3\`Int
`,3*5(3n3\`sin`,2n3\`z`j2x0001+7*3pAj2x0003pCpAi2x0001p15pCp15pA(
3n3\`sum`,3*5+5*3n3\`_R1`j2x0002p11p15pCp15+5*5(3n3\`Si`,2+5pApCp
22p15pC(3n3\`cos`,2p22pCpC*5(3n3\`Ci`p2FpC(3p7p39pCpCpC=3p22(3n4\
`RootOf`,2+7*3n3\`_Z`p11pCp52p15p15pC}}{COM_R 81 0{TEXT 1 18 "\01
53: signum(0) = ?\012"}}{COM_R 82 0{TEXT 1 866 "The definition of
 signum has changed so that signum(0) is now undefined by default
.  The value of signum(<expr which evaluates to 0>) will return a
 result which could be 0 or any complex number of magnitude 1.  W
hy not simply define signum(0) to be 0?  Or 1 as it was previousl
y?  Because any specific definition will not permit certain desir
able simplifications from taking place.  For example, the transfo
rmation would be wrong at x=0 if signum(0)=0.  Similarly, for rea
l x and y, the transformation would be wrong for x<0 and y=0 if s
ignum(0)=1.  Yet both simplifications are desired in many context
s e.g. definite integration.  Thus making the value of signum(0) \+
undefined appears to be the most useful definition. \015\015The v
alue of signum(0) can however be fixed, either by assigning to th
e\012environment variable _Envsignum0 or by using a 3-argument fo
rm of signum:"}}{COM_R 83 0{TEXT 1 23 "\012  signum(0,<expr>,s).\
012"}}{COM_R 84 0{TEXT 1 237 "This will evaluate  signum(expr)  u
nder the assumption that signum(0)=s . The leading argument \"0\"
 specifies that the 0'th derivative of signum is being computed. \+
 The csgn function (complex sign) been modified in the same way.\
015\012Examples"}}{INP_R 85 0 "> "{TEXT 0 15 "assume(y,real);"}}
{INP_R 86 0 "> "{TEXT 0 69 "signum(abs(x)), signum(-2*x^2), signu
m(-2*y^2); # signum(0)=undefined"}}{OUT_R 87 0 86{DAG ,4j2x0001+3
*3(3n4\`signum`,2n3\`x`j2x0002i2x0001pE}}{INP_R 88 0 "> "{TEXT 0 
37 "_Envsignum0 := 0; # using signum(0)=0"}}{OUT_R 89 0 88{DAG :3
n5\`_Envsignum0`j2x0000}}{INP_R 90 0 "> "{TEXT 0 45 "signum(abs(x
)), signum(-x^2), signum(-2*y^2);"}}{OUT_R 91 0 90{DAG ,4(3n4\`si
gnum`,2(3n3\`abs`,2n3\`x`+3*3(3p2p9j2x0002i2x0001+3*3(3p2,2n3\`y~
~`p11p13}}{INP_R 92 0 "> "{TEXT 0 43 "_Envsignum0 := 1; # using t
he old behaviour"}}{OUT_R 93 0 92{DAG :3n5\`_Envsignum0`j2x0001}}
{INP_R 94 0 "> "{TEXT 0 45 "signum(abs(x)), signum(-x^2), signum(
-2*y^2);"}}{OUT_R 95 0 94{DAG ,4j2x0001(3n4\`signum`,2+3*3n3\`x`j
2x0002i2x0001(3p4,2+3*3n3\`y~~`pCpE}}{INP_R 96 0 "> "{TEXT 0 45 "
_Envsignum :='_Envsignum': # clear _Envsignum"}}{INP_R 97 0 "> "
{TEXT 0 19 "y := 'y': # clear y"}}{COM_R 98 0{TEXT 1 23 "\0154: L
aplace transforms\012"}}{COM_R 99 0{TEXT 1 76 "The laplace functi
ons have been extended to handle convolutions.  E.g. given"}}
{INP_R 100 0 "> "{TEXT 0 23 "f := laplace(F(t),t,s):"}}{INP_R 101
 0 "> "{TEXT 0 23 "g := laplace(G(t),t,s):"}}{INP_R 102 0 "> "
{TEXT 0 23 "h := laplace(H(t),t,s):"}}{COM_R 103 0{TEXT 1 19 "Dir
ect convolutions"}}{INP_R 104 0 "> "{TEXT 0 20 "invlaplace(f*g,s,
t);"}}{OUT_R 105 0 104{DAG (3n3\`int`,3*5(3n3\`G`,2n3\`_U1`j2x000
1(3n3\`F`,2+5n3\`t`pBp9i2x0001pB=3p9~3j2x0000p12}}{INP_R 106 0 ">
 "{TEXT 0 30 "laplace(\",t,s); # check answer"}}{OUT_R 107 0 106
{DAG *5(3n4\`laplace`,4(3n3\`F`,2n3\`t`pAn3\`s`j2x0001(3p2,4(3n3\
`G`p9pApDpF}}{INP_R 108 0 "> "{TEXT 0 22 "invlaplace(f*g*h,s,t);"
}}{OUT_R 109 0 108{DAG (3n3\`int`,3*5(3p1,3*5(3n3\`H`,2n3\`_U3`j2
x0001(3n3\`G`,2+5n3\`_U1`pFpDi2x0001pF=3pD~3j2x0000p16pF(3n3\`F`,
2+5n3\`t`pFp16p1ApF=3p16~3p20p29}}{INP_R 110 0 "> "{TEXT 0 74 "in
vlaplace(exp(s)*f,s,t); # case where one of the products has a tr
ansform"}}{OUT_R 111 0 110{DAG *5(3n5\`Heaviside`,2+5n3\`t`j2x000
1pApApA(3n3\`F`p6pA}}{INP_R 112 0 "> "{TEXT 0 15 "laplace(\",t,s)
;"}}{OUT_R 113 0 112{DAG (3n4\`laplace`,4(3n3\`F`,2+5n3\`t`j2x000
1pCpCpAn3\`s`}}{INP_R 114 0 "> "{TEXT 0 26 "invlaplace(exp(-s)*f,
s,t);"}}{OUT_R 115 0 114{DAG *5(3n5\`Heaviside`,2+5n3\`t`j2x0001i
2x0001pApA(3n3\`F`p6pA}}{INP_R 116 0 "> "{TEXT 0 54 "invlaplace(s
*f,s,t); # derivative case for convolution"}}{OUT_R 117 0 116{DAG
 +5(3n4\`diff`,3(3n3\`F`,2n3\`t`pAj2x0001*5(3p7,2j2x0000pD(3n4\`D
irac`p9pDpD}}{INP_R 118 0 "> "{TEXT 0 15 "laplace(\",t,s);"}}
{OUT_R 119 0 118{DAG *5n3\`s`j2x0001(3n4\`laplace`,4(3n3\`F`,2n3\
`t`pEp1p3}}{INP_R 120 0 "> "{TEXT 0 62 "invlaplace(1/(s - 1)*f,s,
t); # integration case of convolution"}}{OUT_R 121 0 120{DAG (3n3
\`int`,3*5(3n3\`exp`,2n3\`_U`j2x0001(3n3\`F`,2+5n3\`t`pBp9i2x0001
pB=3p9~3j2x0000p12}}{INP_R 122 0 "> "{TEXT 0 15 "laplace(\",t,s);
"}}{OUT_R 123 0 122{DAG *5+5n3\`s`j2x0001i2x0001p4p6(3n4\`laplace
`,4(3n3\`F`,2n3\`t`p13p2p4}}{COM_R 124 0{TEXT 1 11 "\0155: RootOf
\012"}}{COM_R 125 0{TEXT 1 271 "The value RootOf(a(x)=0,x) specif
ies a root of a(x).  This is used to represent algebraic numbers \+
and functions in Maple that cannot be expressed in terms of radic
als.  RootOf(a(x)=0,x) represents any of the roots. The extension
 in the new version (for algebraic numbers)"}}{COM_R 126 0{TEXT 1
 23 "\012   RootOf(a(x)=x,x,z)\012"}}{COM_R 127 0{TEXT 1 151 "spe
cifies the complex root of a(x) which is near the numerical appro
ximation z.  For example (further examples are given below for mi
nimize and solve) "}}{INP_R 128 0 "> "{TEXT 0 21 "RootOf(x^4-2,x,
+1.2);"}}{OUT_R 129 0 128{DAG (3n4\`RootOf`,3+5*3n3\`_Z`j2x0004j2
x0001i2x0002pBe3j2x0012i2x0001}}{INP_R 130 0 "> "{TEXT 0 9 "evalf
(\");"}}{OUT_R 131 0 130{DAG e3j4x001189207115i2x0009}}{COM_R 132
 0{TEXT 1 32 "An example of a series expansion"}}{INP_R 133 0 "> \+
"{TEXT 0 42 "series(RootOf(x^4+k*x-16, x, 2.001*I), k);"}}{OUT_R 
134 0 133{DAG _En3\`k`(3n4\`RootOf`,3+5*3n3\`_Z`j2x0002j2x0001j2x
0004pE+3n3\`I`e3j2x2001i2x0003x0/3pEj2x0016x1+3p3/3pEj2x2048x2+3p
3/3j2x0007j3x08388608x4/3i2x0001p2Dx5(3n3\`O`,2pEx6}}{COM_R 135 0
{TEXT 1 25 "\0156: The minimize command\012"}}{COM_R 136 0{TEXT 1
 212 "The definition of minimize now supports the option infinite
 which means minimize will minimize over the closed real interval
 [infinity,infinity]. The default is to minimize over (-infinity,
infinity).  For example"}}{INP_R 137 0 "> "{TEXT 0 17 "f := x^3-5
*x^2+4;"}}{OUT_R 138 0 137{DAG :3n3\`f`+7*3n3\`x`j2x0003j2x0001*3
p5j2x0002i2x0005j2x0004p9}}{INP_R 139 0 "> "{TEXT 0 14 "minimize(
f,x);"}}{OUT_R 140 0 139{DAG /3i2x0392j2x0027}}{INP_R 141 0 "> "
{TEXT 0 23 "minimize(f,x,infinite);"}}{OUT_R 142 0 141{DAG +3n5\`
infinity`i2x0001}}{COM_R 143 0{TEXT 1 182 "For polynomials, if th
e minimum cannot be expressed in terms of radicals, it is now exp
ressed in the RootOf notation where the root is identified as the
 second argument.  For example"}}{INP_R 144 0 "> "{TEXT 0 13 "g :
= x^4-x+4;"}}{OUT_R 145 0 144{DAG :3n3\`g`+7*3n3\`x`j2x0004j2x000
1p5i2x0001p7p9}}{INP_R 146 0 "> "{TEXT 0 14 "minimize(g,x);"}}
{OUT_R 147 0 146{DAG +5(3n4\`RootOf`,3+5*3n3\`_Z`j2x0003j2x0004i2
x0001j2x0001e3j4x006299605249i2x0010/3i2x0003pCpCp10}}{INP_R 148 
0 "> "{TEXT 0 9 "evalf(\");"}}{OUT_R 149 0 148{DAG e3j4x003527529
606i2x0009}}{COM_R 150 0{TEXT 1 61 "Also, minimize supports minim
ization over ranges, for example"}}{INP_R 151 0 "> "{TEXT 0 67 "m
inimize( -2*y^2/((y-x^2)^4+1)+x^2+y^2, \{x,y\}, \{x=-1..1,y=-1..1
\} );"}}{OUT_R 152 0 151{DAG +D*3(3n4\`RootOf`,3+13i2x0004j2x0001
*3n3\`_Z`j2x0004j2x0016*3pDj2x0006i2x0056*3pDj2x0008j2x0072*3pDj2
x0010p17*3pDj2x0002p1B*3pDp11pA*3pDj2x0014i2x0008*3pDj2x0012j2x00
28e3i4x006891910084i2x0010p21/3i2x0001pF*3p2p1B/3j2x0005pF*3p2p26
/3p42p26*3p2p15/3i2x0005p26*3p2pF/3p49p26p4FpA}}{INP_R 153 0 "> "
{TEXT 0 9 "evalf(\");"}}{OUT_R 154 0 153{DAG e3i4x003837893698i2x
0010}}{COM_R 155 0{TEXT 1 32 "\0157: Solving algebraic equations\
012"}}{COM_R 156 0{TEXT 1 221 "A new method for solving large sys
tems which have algebraic functions solutions.  A better method f
or finding the solutions during back substitution not rationalizi
ng the algebraic functions.  An example of such a system "}}
{INP_R 157 0 "> "{TEXT 0 64 "e1 := H1^2 + (2*H2*H3/3 + H3^2*x1/3)
 *(x3 - 3/2*x1*x2 + x1^3/2):"}}{INP_R 158 0 "> "{TEXT 0 61 "e2 :=
 2*H1*H2 - H2*H3*(x1^2 - x2) + H3^2*(-x1/2*(x1^2 - x2) +"}}{INP_R
 159 0 "> "{TEXT 0 33 "    (x3 - 3/2*x1*x2 + x1^3/2)/3):"}}{INP_R
 160 0 "> "{TEXT 0 55 "e3 := 2*H1*H3 + H2^2 + 2*H2*H3*x1 + H3^2*(
x1^2 + x2)/2:"}}{INP_R 161 0 "> "{TEXT 0 71 "eqns := \{0 = a1 + a
2*H1 + a3*e1, 1 = a2*H2 + a3*e2, 0 = a2*H3 + a3*e3\};"}}{OUT_R 
162 0 161{DAG :3n4\`eqns`%2,4=3j2x0000+7n3\`a1`j2x0001*5n3\`a2`pC
n3\`H1`pCpC*5n3\`a3`pC+5*3p12j2x0002pC*5+5*5n3\`H2`pCn3\`H3`pC/3p
1Dj2x0003*5p26p1Dn3\`x1`pC/3pCp2BpC+7n3\`x3`pC*5p30pCn3\`x2`pC/3i
2x0003p1D*3p30p2B/3pCp1DpCpCpCpC=3pC+5*5pFpCp23pCpC*5p17pC+7*5p12
pCp23pCp1D*7p23pCp26pC+5*3p30p1DpCp3Ei2x0001pCp6D*5p26p1D+9*5p30p
Cp67pC/3p6Dp1Dp38p33p3Bp7Ap45/3pCj2x0006pCpCpCpC=3p7+5*5pFpCp26pC
pC*5p17pC+9*5p12pCp26pCp1D*3p23p1DpC*7p23pCp26pCp30pCp1D*5p26p1D+
5p68pCp3EpCpCp48pCpC}}{COM_R 163 0{TEXT 1 193 "where we want to s
olve for H1,H2,H3 where the solutions are algebraic functions of \+
the parameters a1,a2,a3,x1,x2,x3.  The solutions involve the root
s of an irreducible polynomial over degree 8."}}{COM_R 164 0{TEXT
 1 72 "Solving with radicals improved in general and also selects
 correct roots"}}{INP_R 165 0 "> "{TEXT 0 33 "solve( sqrt(x+2)-sq
rt(2*x-1)=1 );"}}{OUT_R 166 0 165{DAG +5j2x0006j2x0001*3j2x0007/3
p3j2x0002i2x0002}}{INP_R 167 0 "> "{TEXT 0 55 "solve( \{x^2-y+2, \+
x*y=sqrt(75), x-sqrt(3)+y-5\}, \{x,y\} );"}}{OUT_R 168 0 167{DAG 
%2,3=3n3\`y`j2x0005=3n3\`x`*3j2x0003/3j2x0001j2x0002}}{COM_R 169 
0{TEXT 1 57 "Added power in solving systems of trigonometric equa
tions"}}{INP_R 170 0 "> "{TEXT 0 39 "e1 := x - (l1*cos(t1) + l2*c
os(t1+t2)):"}}{INP_R 171 0 "> "{TEXT 0 39 "e2 := y - (l1*sin(t1) \+
+ l2*sin(t1+t2)):"}}{INP_R 172 0 "> "{TEXT 0 24 "solve(\{e1,e2\},
 \{t1,t2\});"}}{OUT_R 173 0 172{DAG %2,3=3n3\`t1`+3(3n4\`arctan`,
2(3n4\`RootOf`,2+F*5+B*5n3\`x`j2x0001n3\`l1`p16j2x0002*3p14p1Bp16
*3p18p1Bp16*3n3\`l2`p1Bi2x0001*3n3\`y`p1Bp16p16n3\`_Z`p1Bp16*7p18
p16p31p16p2Cp16i2x0004p1Dp16p2Bp16p21p16p25p29p13i2x0002p1B=3n3\`
t2`+3(3p7,2*5+15*7pBp16p2Cp1Bp14p16p16*7pBp16p26p1Bp14p16p29*7pBp
16p18p1Bp14p16p16*5pBp16p14j2x0003p16*7pBp16p14p1Bp18p16p1B*7pBp1
6p18p16p2Cp1Bp1B*3p2Cp6Fp29*5p18p1Bp2Cp16p29*5p26p1Bp2Cp16p16*5p1
4p1Bp2Cp16p29p16+15*5pBp16p2Cp6Fp16*7pBp16p26p1Bp2Cp16p29*7pBp16p
14p1Bp2Cp16p16*9pBp16p18p16p2Cp16p26p16p1B*7pBp16p18p1Bp2Cp16p29*
5p26p1Bp14p16p29*7p14p16p18p16p26p16p1B*5p18p1Bp14p16p29*5p2Cp1Bp
14p16p16*3p14p6Fp16p29p47}}{COM_R 174 0{TEXT 1 109 "Equations inv
olving RootOfs are now handled more generally.  For example, here
 is an algebraic function in a."}}{INP_R 175 0 "> "{TEXT 0 25 "f \+
:= RootOf(x^2+a*x+1,x):"}}{INP_R 176 0 "> "{TEXT 0 27 "solve( f^2
+1/f=a^2-1/a, a);"}}{OUT_R 177 0 176{DAG (3n4\`RootOf`,2+B*3n3\`_
Z`j2x0004j2x0002*3p7j2x0003pB*3p7pBj2x0001p7i2x0002p15p15}}{COM_R
 178 0{TEXT 1 47 "More generality in the solutions of inequations
"}}{INP_R 179 0 "> "{TEXT 0 23 "solve( x^3+x > 5-2/x );"}}{OUT_R 
180 0 179{DAG ,3%2,3<3j2x0000n3\`x`<3p6(3n4\`RootOf`,3+9n3\`_Z`i2
x0005j2x0002j2x0001*3p10j2x0004p16*3p10p14p16e3j4x004482633973i2x
0010%2,2<3(3pB,3pFe3j4x001292690487i2x0009p6}}{COM_R 181 0{TEXT 1
 52 "\0158: Complex evaluation of the Riemann Zeta function\012"}
}{COM_R 182 0{TEXT 1 372 "Complex numerical evaluation of the Rie
mann Zeta function and its derivatives has been implemented.  Not
e, Zeta(n,z) is the nth derivative of Zeta(z) and Zeta(n,z,q) is \+
the nth derivative of the generalized Zeta function Zeta(0,z,q). \+
 For Zeta(0,z,q), for Re(z)<0 the index q is limited to the range
 0<q \\le 1, and for Zeta(n,z,q), is only available for Re(z)>0. \+
 Examples"}}{INP_R 183 0 "> "{TEXT 0 16 "Zeta(3.5+4.5*I);"}}
{OUT_R 184 0 183{DAG +5e3j4x009241880340i2x0010j2x0001n3\`I`e3j4x
001456451995i2x0011}}{COM_R 185 0{TEXT 1 32 " The 1st non-trivial
 0 (approx):"}}{INP_R 186 0 "> "{TEXT 0 24 "Zeta(1/2+14.13472514*
I);"}}{OUT_R 187 0 186{DAG +5e3j4x002163160213i2x0019j2x0001n3\`I
`e3i4x001358779595i2x0018}}{COM_R 188 0{TEXT 1 13 " Derivatives:"
}}{INP_R 189 0 "> "{TEXT 0 20 "Zeta(7, -3.5+1.9*I);"}}{OUT_R 190 
0 189{DAG +5e3j4x001231658152i2x0011j2x0001n3\`I`e3j4x00121844517
4p6}}{COM_R 191 0{TEXT 1 77 " 2 argument Zeta (aka, Generalized z
eta function, aka Hurwitz zeta function):"}}{INP_R 192 0 "> "
{TEXT 0 21 "Zeta(0,3.5+4.5*I,.3);"}}{OUT_R 193 0 192{DAG +5e3j4x0
04396655549i2x0008j2x0001n3\`I`e3i4x005181043075p6}}{COM_R 194 0
{TEXT 1 13 " Derivatives:"}}{INP_R 195 0 "> "{TEXT 0 22 "Zeta(5,3
.5+2.7*I, .7);"}}{OUT_R 196 0 195{DAG +5e3i4x002070976852i2x0013j
2x0001n3\`I`e3i4x003085254975i2x0011}}{COM_R 197 0{TEXT 1 48 "\01
59: Polynomial factorization over finite fields\012"}}{COM_R 198 
0{TEXT 1 480 "Maple V Release 3 can factor univariate polynomials
 over GF(p^k).  Maple represents elements of GF(p^k) as polynomia
ls in alpha where alpha is a RootOf an irreducible polynomial.  I
n the following example, elements of GF(3^3) are represented as p
olynomials over GF(2) modulo the x^2+2*x+2.\012This polynomial re
presentation does not place any restriction on the size of the fi
eld, and it is quite feasible to compute large fields e.g. GF(2^\
{128\}). \012Here is a univariate factorization"}}{INP_R 199 0 ">
 "{TEXT 0 33 "alias( alpha=RootOf(x^2+2*x+2) ):"}}{INP_R 200 0 ">
 "{TEXT 0 47 "f := 2*alpha*x^3+(2+2*alpha)*x^2+(alpha+2)*x+1;"}}
{OUT_R 201 0 200{DAG :3n3\`f`+9*5n4\`alpha`j2x0001n3\`x`j2x0003j2
x0002*5+5pEp8p5pEp8pApEp8*5+5p5p8pEp8p8pAp8p8p8p8}}{INP_R 202 0 "
> "{TEXT 0 16 "Factor(f) mod 3;"}}{OUT_R 203 0 202{DAG +3*9n4\`al
pha`j2x0001+5n3\`x`p5p2p5p5+7p8p5p2p5j2x0002p5p5+7p8p5p5p5p2p13p5
p13}}{COM_R 204 0{TEXT 1 69 "Release 3 can now factor multivariat
e polynomials over finite fields."}}{INP_R 205 0 "> "{TEXT 0 47 "
f := x^3+alpha*x^2*y+alpha^2*x*y^2+alpha^3*y^3;"}}{OUT_R 206 0 
205{DAG :3n3\`f`+9*3n3\`x`j2x0003j2x0001*7n4\`alpha`p9p5j2x0002n3
\`y`p9p9*7pCp11p5p9p13p11p9*5pCp7p13p7p9}}{INP_R 207 0 "> "{TEXT 
0 16 "Factor(f) mod 3;"}}{OUT_R 208 0 207{DAG *7+5n3\`y`j2x0001*5
n4\`alpha`p4n3\`x`p4p4p4+5p2p4*5+5p7p4j2x0002p4p4pBp4p4p4+5p2p4p6
p17p4}}{COM_R 209 0{TEXT 1 58 "\01510: Manipulation of sums, prod
ucts, integrals and limits\012"}}{COM_R 210 0{TEXT 1 169 "We have
 provided more tools for manipulating unevaluated sums, integrals
, products and limits.  The expand and simplify commands will app
ly the following transformations"}}{COM_R 211 0{TEXT 1 146 "\012 \+
  expand( F( a * f(x), ... ) ) ==> normal(a) * F(expand(f(x)), ..
.)\012   simplify( F( a * f(x), ... ) ) ==> simplify(a) * F(simpl
ify(f(x)), ...))\012"}}{COM_R 212 0{TEXT 1 81 "where F is any of \+
sum, int, limit, product, Sum, Int, Limit, Product.\012For exampl
e"}}{INP_R 213 0 "> "{TEXT 0 42 "f := Int( sqrt(a)/Pi*exp(-u*x^2)
*x^2, x ):"}}{INP_R 214 0 "> "{TEXT 0 14 "f = expand(f);"}}{OUT_R
 215 0 214{DAG =3(3n3\`Int`,3*9n3\`a`/3j2x0001j2x0002n3\`Pi`i2x00
01(3n3\`exp`,2+3*5n3\`u`p9n3\`x`pBpFp9p1ApBp1A*7p6p8pDpF(3p2,3*5(
3p12,2p16pFp1ApBp1Ap9}}{INP_R 216 0 "> "{TEXT 0 31 "g := sum( a[i
]*i/2^n, i=1..n ):"}}{INP_R 217 0 "> "{TEXT 0 16 "g = simplify(g)
;"}}{OUT_R 218 0 217{DAG =3(3n3\`sum`,3*7b3n3\`a`,2n3\`i`j2x0001p
ApC^3j2x0002n3\`n`i2x0001=3pA~3pCp13*5^3p11+3p13p15pC(3p2,3*5p6pC
pApCp17pC}}{COM_R 219 0{TEXT 7 24 "\015Differential Equations\012
"}}{COM_R 220 0{TEXT 1 47 "1: DESol - Solutions of Differential E
quations\012"}}{COM_R 221 0{TEXT 1 136 "We have introduced a new \+
structure DESol for representing the solutions of differential eq
uations (DEs).  It has the following structure"}}{COM_R 222 0
{TEXT 1 73 "\012   DESol( differential equation(s), variable(s), \+
initial condition(s) )\012"}}{COM_R 223 0{TEXT 1 191 "The DEs can
 be described either functionally using the D operator, or as an \+
expression using the diff command.  For example, the following de
scribes the solutions to the equation y'' + y = 0."}}{INP_R 224 0
 "> "{TEXT 0 25 "DESol( D(D(y)) = -y, y );"}}{OUT_R 225 0 224{DAG
 (3n4\`DESol`,3%2,2+5(3(3n3\`@@`,3n3\`D`j2x0002,2n3\`y`j2x0001p12
p14%2p11}}{INP_R 226 0 "> "{TEXT 0 58 "DESol( diff(y(x),x,x) + y(
x), y(x), \{y(0)=0, D(y)(0)=1\} );"}}{OUT_R 227 0 226{DAG (3n4\`D
ESol`,4%2,2+5(3n4\`diff`,3(3p9,3(3n3\`y`,2n3\`x`p14p14j2x0001p10p
18%2,2p10%2,3=3(3(3n3\`D`,2p11,2j2x0000p18=3(3p11p28p29}}{COM_R 
228 0{TEXT 1 439 "The purpose of DESol is to allow Maple to repre
sent and manipulate the solution of a DE symbolically without fir
st computing it's solution in closed form -- which often is not p
ossible.  The DESol structure then is rather like the RootOf stru
cture in Maple which represents a solution to an algebraic equati
on.  Presently Maple knows how to differentiate, integrate, gener
ate a series expansion, and numerically evaluate a DESol.  Exampl
es"}}{INP_R 229 0 "> "{TEXT 0 30 "ode := DESol( D(y)-a*y=1, y );"
}}{OUT_R 230 0 229{DAG :3n3\`ode`(3n4\`DESol`,3%2,2+7(3n3\`D`,2n3
\`y`j2x0001*5n3\`a`p11pFp11i2x0001p19p11%2pE}}{INP_R 231 0 "> "
{TEXT 0 7 "D(ode);"}}{OUT_R 232 0 231{DAG +5*5n3\`a`j2x0001(3n4\`
DESol`,3%2,2+7(3n3\`D`,2n3\`y`p4*5p2p4p12p4i2x0001p1Ap4%2p11p4p4p
4p4}}{INP_R 233 0 "> "{TEXT 0 7 "ode(x);"}}{OUT_R 234 0 233{DAG (
3n4\`DESol`,3%2,2+7(3n4\`diff`,3(3n3\`y`,2n3\`x`p11j2x0001*5n3\`a
`p14pDp14i2x0001p1Cp14%2,2pD}}{INP_R 235 0 "> "{TEXT 0 19 "int( 1
/ode(x), x );"}}{OUT_R 236 0 235{DAG +5(3n3\`ln`,2(3n4\`DESol`,3%
2,2+7(3n4\`diff`,3(3n3\`y`,2n3\`x`p16j2x0001*5n3\`a`p19p12p19i2x0
001p21p19%2,2p12p19(3p2,2+5*5p1Cp19p5p19p19p19p19p21}}{COM_R 237 
0{TEXT 1 220 "Series of DESol (simple ones) are now handled.  By \+
simple we mean that a Taylor series can be computed using the der
ivatives of the DE.  This, together with the use of initial condi
tions, gives nice results.  For example"}}{INP_R 238 0 "> "{TEXT 
0 19 "series(ode(x),x=0);"}}{OUT_R 239 0 238{DAG _10n3\`x`(3n3\`y
`,2j2x0000x0+5j2x0001pB*5n3\`a`pBp3pBpBx1+3*5pFpBpApB/3pBj2x0002x
2+3*5pFp1EpApB/3pBj2x0006x3+3*5pFj2x0003pApB/3pBj2x0024x4+3*5pFj2
x0004pApB/3pBj2x0120x5(3n3\`O`,2pBx6}}{INP_R 240 0 "> "{TEXT 0 75
 "ode := DESol( diff(x(t),t,t) = u/l*sin(x(t)), x(t), \{x(0)=0, D
(x)(0)=v0\} ):"}}{INP_R 241 0 "> "{TEXT 0 16 "series(ode,t=0);"}}
{OUT_R 242 0 241{DAG _An3\`t`n3\`v0`x1+3*7n3\`u`j2x0001n3\`l`i2x0
001p3pA/3pAj2x0006x3+3*9p8pAp3pA+5*5p3j2x0002pCpApAp8pEpApCi2x000
2/3pEj2x0120x5(3n3\`O`,2pAx6}}{COM_R 243 0{TEXT 1 24 "\0152: The \+
use of RootOf's\012"}}{COM_R 244 0{TEXT 1 178 "For ODE's where th
e characteristic polynomial cannot be factored, Maple now express
es the solution in terms of the roots of the characteristic polyn
omial using a RootOf.  Example"}}{INP_R 245 0 "> "{TEXT 0 52 "ode
 := diff(y(x),x5 ) + 2*diff(y(x),x) + 2*y(x) = 0;"}}{OUT_R 246 0 
245{DAG :3n3\`ode`=3+5(3n4\`diff`,3(3n3\`y`,2n3\`x`pEj2x0002pAp11
j2x0000}}{INP_R 247 0 "> "{TEXT 0 17 "dsolve(ode,y(x));"}}{OUT_R 
248 0 247{DAG =3(3n3\`y`,2n3\`x`*5(3n3\`exp`,2+3p5i2x0001j2x0001n
3\`_C1`p10}}{INP_R 249 0 "> "{TEXT 0 44 "ode :=   diff(y(x),x$6) \+
+ 4*diff(y(x),x$4) +"}}{INP_R 250 0 "> "{TEXT 0 60 "       4*diff
(y(x),x$3) + 4*diff(y(x),x$2) + 8*diff(y(x),x);"}}{OUT_R 251 0 
250{DAG :3n3\`ode`+B(3n4\`diff`,3(3p5,3(3p5,3(3p5,3(3p5,3(3p5,3(3
n3\`y`,2n3\`x`p1Cp1Cp1Cp1Cp1Cp1Cj2x0001pCj2x0004pFp27p12p27p15j2x
0008}}{INP_R 252 0 "> "{TEXT 0 17 "dsolve(ode,y(x));"}}{OUT_R 253
 0 252{DAG =3(3n3\`y`,2n3\`x`+9n3\`_C1`j2x0001*5n3\`_C2`pA(3n3\`c
os`,2*5j2x0002/3pAp15p5pApApA*5n3\`_C3`pA(3n3\`sin`p13pApA*5n3\`_
C4`pA(3n3\`exp`,2*5(3n4\`RootOf`,2+7*3n3\`_Z`j2x0003pAp38p15j2x00
04pApAp5pApApA}}{COM_R 254 0{TEXT 1 22 "\0153: Bessel's Equation\
012"}}{COM_R 255 0{TEXT 1 60 "Maple now handles Bessel's equation
 shifted from the origin."}}{INP_R 256 0 "> "{TEXT 0 77 "ode := d
iff(y(x),x,x) + (4*k+1)/(x+2)*\\                                 \+
     "}}{INP_R 257 0 "> "{TEXT 0 44 "diff(y(x),x) + (4*(x+2)^6 + \+
3/(x+2)^2)*y(x);"}}{OUT_R 258 0 257{DAG :3n3\`ode`+7(3n4\`diff`,3
(3p5,3(3n3\`y`,2n3\`x`p10p10j2x0001*7+5n3\`k`j2x0004p14p14p14+5p1
0p14j2x0002p14i2x0001p9p14p14*5+5*3p1Fj2x0006p1A*3p1Fi2x0002j2x00
03p14pCp14p14}}{INP_R 259 0 "> "{TEXT 0 17 "dsolve(ode,y(x));"}}
{OUT_R 260 0 259{DAG =3(3n3\`y`,2n3\`x`+5*7n3\`_C1`j2x0001^3+7*3p
5j2x0002pBp5j2x0004p15pB+3n3\`k`i2x0001pB(3n4\`BesselJ`,3+3*3+5*3
p1Ap11p15i2x0003pB/3pBp11/3pBp15+3*3+5p5pBp11pBp15p2EpBpB*7n3\`_C
2`pBpDpB(3n4\`BesselY`p23pBpB}}{COM_R 261 0{TEXT 1 35 "\0154: Exp
onential solutions of ODE's\012"}}{COM_R 262 0{TEXT 1 440 "We hav
e implemented the exponential linear ODE algorithm of Manuel Bron
stein (Reference ``Linear Ordinary Differential Equations: Breaki
ng Through the Order 2 Barrier'', Manuel Bronstein, Proceedings o
f ISSAC '92, ACM Press.)  This algorithm finds solutions whose lo
garithmic derivative is in the coefficient field, i.e. y'(x)/y(x)
 is a rational function.  This includes solutions which themselve
s lie in the coefficient field.  For example"}}{INP_R 263 0 "> "
{TEXT 0 61 "ode := (-2*x^2+x+n^2)*y(x)+(4*x^2-2*x-n^2)*diff(y(x),
x)+     "}}{INP_R 264 0 "> "{TEXT 0 52 "       (-3*x^2+x)*diff(y(
x),x$2)+x^2*diff(y(x),x$3);"}}{OUT_R 265 0 264{DAG :3n3\`ode`+9*5
+7*3n3\`x`j2x0002i2x0002p7j2x0001*3n3\`n`p9pEpE(3n3\`y`,2p7pEpE*5
+7p6j2x0004p7pBp10i2x0001pE(3n4\`diff`,3p16p7pEpE*5+5p6i2x0003p7p
EpE(3p29,3p28p7pEpE*5p7p9(3p29,3p39p7pEpE}}{INP_R 266 0 "> "{TEXT
 0 17 "dsolve(ode,y(x));"}}{OUT_R 267 0 266{DAG =3(3n3\`y`,2n3\`x
`+7*5n3\`_C1`j2x0001(3n3\`exp`p4pBpB*7n3\`_C2`pBpDpB(3n3\`int`,3(
3n4\`BesselJ`,3n3\`n`p5p5pBpB*7n3\`_C3`pBpDpB(3p1A,3(3n4\`BesselY
`p21p5pBpB}}{INP_R 268 0 "> "{TEXT 0 14 "subs(n=1,ode);"}}{OUT_R 
269 0 268{DAG +9*5+7*3n3\`x`j2x0002i2x0002p4j2x0001pBpBpB(3n3\`y`
,2p4pBpB*5+7p3j2x0004p4p8i2x0001pBpB(3n4\`diff`,3p10p4pBpB*5+5p3i
2x0003p4pBpB(3p23,3p22p4pBpB*5p4p6(3p23,3p33p4pBpB}}{INP_R 270 0 
"> "{TEXT 0 15 "dsolve(\",y(x));"}}{OUT_R 271 0 270{DAG =3(3n3\`y
`,2n3\`x`+7*5n3\`_C1`j2x0001(3n3\`exp`p4pBpB*7n3\`_C2`pBpDpB(3n4\
`BesselJ`,3j2x0000p5pBpB*7n3\`_C3`pBpDpB(3n4\`BesselY`p1DpBpB}}
{INP_R 272 0 "> "{TEXT 0 66 "ode := diff(y(x),x$2) + 3/x*diff(y(x
),x) + (x^2-143)/x^2*y(x)-1/x;"}}{OUT_R 273 0 272{DAG :3n3\`ode`+
9(3n4\`diff`,3(3p5,3(3n3\`y`,2n3\`x`p10p10j2x0001*5p10i2x0001p9p1
4j2x0003*7+5*3p10j2x0002p14i2x0143p14p14p10i2x0002pCp14p14*3p10p1
8p18}}{INP_R 274 0 "> "{TEXT 0 17 "dsolve(ode,y(x));"}}{OUT_R 275
 0 274{DAG =3(3n3\`y`,2n3\`x`+7*5+Fj4x980995276800j2x0001*3p5j2x0
002j4x022295347200*3p5j2x0004j4x000278691840*3p5j2x0006j3x0258048
0*3p5j2x0008j3x00020160*3p5j2x0010j2x0144*3p5j2x0012pEpEp5i2x0013
pE*7n3\`_C1`pEp5i2x0001(3n4\`BesselJ`,3p36p5pEpE*7n3\`_C2`pEp5p43
(3n4\`BesselY`p49pEpE}}{COM_R 276 0{TEXT 1 32 "\0155: Solutions i
n terms of DESol\012"}}{COM_R 277 0{TEXT 1 109 "If the solution c
annot be computed in closed form, we can now return it in terms o
f the DESol data structure."}}{INP_R 278 0 "> "{TEXT 0 52 "ode :=
 diff(y(x),x,x) + diff(y(x),x)*x^2 + y(x)*x;  "}}{OUT_R 279 0 278
{DAG :3n3\`ode`+7(3n4\`diff`,3(3p5,3(3n3\`y`,2n3\`x`p10p10j2x0001
*5p9p14p10j2x0002p14*5pCp14p10p14p14}}{INP_R 280 0 "> "{TEXT 0 17
 "dsolve(ode,y(x));"}}{OUT_R 281 0 280{DAG =3(3n3\`y`,2n3\`x`(3n4
\`DESol`,3%2,2+7(3n4\`diff`,3(3p10,3(3n3\`_Y`p4p5p5j2x0001*5p5j2x
0002p14p1Dp1D*5p5p1Dp17p1Dp1D%2,2p17}}{COM_R 282 0{TEXT 1 98 "Thi
s example shows a case where a partial solution is obtained using
 Manuel Bronstein's algorithm."}}{INP_R 283 0 "> "{TEXT 0 70 "ode
 := diff(y(x),x$3) + 4*diff(y(x),x,x) + 4*diff(y(x),x) - 12*y(x)/
x;"}}{OUT_R 284 0 283{DAG :3n3\`ode`+9(3n4\`diff`,3(3p5,3(3p5,3(3
n3\`y`,2n3\`x`p13p13p13j2x0001p9j2x0004pCp1B*5pFp18p13i2x0001i2x0
012}}{INP_R 285 0 "> "{TEXT 0 17 "dsolve(ode,y(x));"}}{OUT_R 286 
0 285{DAG =3(3n3\`y`,2n3\`x`+5*5n3\`_C1`j2x0001+7p5j2x0027*3p5j2x
0002j2x0024*3p5j2x0003j2x0004pBpB*5pDpB(3n3\`Int`,3(3n4\`DESol`,3
%2,2+7*5pDpB(3n4\`diff`,3(3p32,3(3n3\`_Y`p4p5p5pBpB*5+9p5j2x0252p
11j2x0132p17j2x0016j2x0081pBpBp36pBpB*5+9p5j2x0564p11j2x0192p17p4
Aj2x0360pBpBp39pBpB%2,2p39p5pBpB}}{COM_R 287 0{TEXT 1 19 "\0156: \+
Solution Basis\012"}}{COM_R 288 0{TEXT 1 74 "An alternative outpu
t form is available in terms of a basis.  For example "}}{INP_R 
289 0 "> "{TEXT 0 60 "ode := 2*diff(y(x),x,x) + 3*diff(y(x),x) + \+
y(x) - exp(-3*x);"}}{OUT_R 290 0 289{DAG :3n3\`ode`+9(3n4\`diff`,
3(3p5,3(3n3\`y`,2n3\`x`p10p10j2x0002p9j2x0003pCj2x0001(3n3\`exp`,
2+3p10i2x0003i2x0001}}{INP_R 291 0 "> "{TEXT 0 30 "dsolve(ode,y(x
),output=basis);"}}{OUT_R 292 0 291{DAG [2,3[2,3(3n3\`exp`,2+3n3\
`x`i2x0001(3p5,2+3p9/3pBj2x0002+3(3p5,2+3p9i2x0003/3j2x0001j2x001
0}}{COM_R 293 0{TEXT 1 24 "\0157: Numerical Solutions\012"}}
{COM_R 294 0{TEXT 1 71 "The output form now returns a list for ev
ery point (rather than a set)."}}{INP_R 295 0 "> "{TEXT 0 62 "p :
= dsolve( \{diff(y(x),x) = -y(x),y(0)=1\},y(x),type=numeric);"}}
{OUT_R 296 0 295{DAG :3n3\`p`@8,2n4\`rkf45_x`,3n3\`i`n4\`rkf45_s`
,2nD\`Copyright~`1993~`by~`Waterloo~`Maple~`Software`,1;4:3b3n4\`
control`,2j2x0003(3n4\`evalf`,2a2x0001?4$3n4\`Digits`(3n4\`evalhf
`,2p2E;3:3l2x0002(3n5\`traperror`,2(3p32,2(3n8\`dsolve/numeric_so
lnall`,Bn3\`F`(3n3\`var`,2p1F(3p50,2n3\`y0`(3p50,2n3\`y1`(3p50,2n
3\`F1`(3p50,2n3\`F2`(3p50,2n3\`F3`(3p50,2n3\`F4`(3p50,2n3\`F5`(3p
50,2n4\`work`?3=3p39n5\`lasterror`?4<3j2x0002b3p1F,2j2x0006(3n4\`
ERROR`,2p39(3p45,Bp4Dp1Fp57p5Cp61p66p6Bp70p75p7Ap93[2,3=3n3\`x`p2
A(3n3\`seq`,3=3b3n3\`ord`,2+5l2x0001j2x0001pB3pB3b3p57,2pB1=3pB1~
3pB3pB3p1Bp52}{TEXT 2 28 "\012p := proc(rkf45_x) ... end\012"}}
{INP_R 297 0 "> "{TEXT 0 5 "p(1);"}}{OUT_R 298 0 297{DAG [2,3=3n3
\`x`j2x0001=3(3n3\`y`,2p3e3j5x3678794379225918i2x0016}}{COM_R 299
 0{TEXT 1 53 "Alternatively, the output can be a list of procedur
es"}}{INP_R 300 0 "> "{TEXT 0 69 "p := dsolve(\{diff(x(t),t)=y(t)
,diff(y(t),t)=x(t)+y(t),x(0)=2,y(0)=1\},"}}{INP_R 301 0 "> "{TEXT
 0 52 "   \{x(t),y(t)\}, type=numeric, output=listprocedure);"}}
{OUT_R 302 0 301{DAG :3n3\`p`[2,4=3n3\`t`@8,2p6,1,2nD\`Copyright~
`1993~`by~`Waterloo~`Maple~`Software`pBa2x0001pBpB=3(3n3\`x`p9@8p
9,2n4\`rkf45_s`pCpB;4:3b3n4\`control`,2j2x0003(3n4\`evalf`,2p1A?4
$3n4\`Digits`(3n4\`evalhf`,2p3C;3:3l2x0001(3n5\`traperror`,2(3p40
,2(3n8\`dsolve/numeric_solnall`,Bn3\`F`(3n3\`var`,2p2E(3p5E,2n3\`
y0`(3p5E,2n3\`y1`(3p5E,2n3\`F1`(3p5E,2n3\`F2`(3p5E,2n3\`F3`(3p5E,
2n3\`F4`(3p5E,2n3\`F5`(3p5E,2n4\`work`?3=3p47n5\`lasterror`?4<3j2
x0002b3p2E,2j2x0006(3n4\`ERROR`,2p47(3p53,Bp5Bp2Ep65p6Ap6Fp74p79p
7Ep83p88pA1b3p65,2j2x0001pBp60=3(3n3\`y`p9@8p9p25pCpB;4p2Cp3Ab3p6
5,2p94pBp60}{TEXT 2 80 "\012    p := [t = proc(t) ... end, x(t) =
 proc(t) ... end, y(t) = proc(t) ... end]\012"}}{COM_R 303 0{TEXT
 1 63 "Now pick off the desired procedures and make a parametric \+
plot."}}{INP_R 304 0 "> "{TEXT 0 37 "X := subs(p,x(t)): Y := subs
(p,y(t)):"}}{INP_R 305 0 "> "{TEXT 0 17 "plot([X,Y,0..3]);"}}
{COM_R 306 0{TEXT 1 127 "A new numerical algorithm called dverk78
 of W. Enright has been implemented\012which guarantees a preset \+
accuracy for the answer.\012"}}{COM_R 307 0{TEXT 1 21 "\0158: Ser
ies Solutions\012"}}{COM_R 308 0{TEXT 1 73 "The series option to \+
dsolve now accepts non-zero initial conditions, e.g."}}{INP_R 309
 0 "> "{TEXT 0 11 "Order := 3:"}}{INP_R 310 0 "> "{TEXT 0 47 "dso
lve(diff(y(x),x$2) - y(x) = 1, y(x),series);"}}{OUT_R 311 0 310
{DAG =3(3n3\`y`,2n3\`x`_Ap5(3p2,2j2x0000x0(3(3n3\`D`,2p2pBx1+5/3j
2x0001j2x0002p19p9p18x2(3n3\`O`,2p19x3}}{INP_R 312 0 "> "{TEXT 0 
58 "dsolve(\{diff(y(x),x$2) - y(x) = 1,y(1)=y(1)\},y(x),series);"
}}{OUT_R 313 0 312{DAG =3(3n3\`y`,2n3\`x`_A+5p5j2x0001i2x0001pA(3
p2,2pAx0(3(3n3\`D`,2p2p11x1+5/3pAj2x0002pApFp1Dx2(3n3\`O`p11x3}}
{COM_R 314 0{TEXT 8 34 "\015Sqrt and Radical Simplifications\012"
}}{COM_R 315 0{TEXT 1 37 "1: Automatic radical transformations\01
2"}}{COM_R 316 0{TEXT 1 70 "The following transformations that Ma
ple previously made automatically"}}{COM_R 317 0{TEXT 1 73 "\012 \+
  (x*y)^(n/d) ==> x^(n/d)*y^(n/d)  e.g. (x*y)^(1/2) ==> x^(1/2)*y
^(1/2)"}}{COM_R 318 0{TEXT 1 79 "   (x^r)^(n/d) ==> x^(r*n/d) e.g
. (x^2)^(1/2) ==> x, (1/x)^(1/2) ==> 1/x^(1/2)\012"}}{COM_R 319 0
{TEXT 1 153 "which are incorrect for negative x,y, are no longer \+
made automatically by the internal Maple simplifier.  The only tr
ansformations made automatically are"}}{COM_R 320 0{TEXT 1 54 "\0
12   (i) reduction of integer powers for integers n,a,b"}}{COM_R 
321 0{TEXT 1 74 "\012      n^(a/b) ==> n^(q+r/b) ==> (n^q)*n^(r/b
)  e.g. 2^(4/3) ==> 2*2^(1/3)"}}{COM_R 322 0{TEXT 1 71 "\012   (i
i) rational power simplification for integers n,d, and rational r
"}}{COM_R 323 0{TEXT 1 64 "\012      (n/d)^r ==> n^r/d^r  e.g. (2
/3)^(1/2) ==> 2^(1/2)/3^(1/2)"}}{COM_R 324 0{TEXT 1 63 "\012   (i
ii) combining radical powers for rational r, integers n,d"}}
{COM_R 325 0{TEXT 1 77 "\012      (x^r)^(n/d) ==> x^(r*n/d) iff -
1<r<1  e.g. (x^(1/2))^(3/2) ==> x^(3/4)"}}{COM_R 326 0{TEXT 1 71 
"\0152: Radical transformations made by sqrt, combine, simplify a
nd expand\012"}}{COM_R 327 0{TEXT 1 319 "The transformations made
 by the sqrt, simplify, and combine functions to square roots and
 radicals which are not correct for all values of the arguments a
re no longer made.  Only provably correct transformations are mad
e as determined by the signum, csgn, and Re and Im functions.  Fo
r example, because of the following"}}{INP_R 328 0 "> "{TEXT 0 13
 "signum(Pi-3);"}}{OUT_R 329 0 328{DAG j2x0001}}{COM_R 330 0{TEXT
 1 121 "i.e. Maple has proven this to be positive - it used inter
val arithmetic - then the following simplifications can be made."
}}{INP_R 331 0 "> "{TEXT 0 28 "f := ((Pi-3)^2*x^2*y)^(1/2);"}}
{OUT_R 332 0 331{DAG :3n3\`f`*3*7+5n3\`Pi`j2x0001i2x0003p8j2x0002
n3\`x`pDn3\`y`p8/3p8pD}}{INP_R 333 0 "> "{TEXT 0 12 "simplify(f);
"}}{OUT_R 334 0 333{DAG *5+5n3\`Pi`j2x0001i2x0003p4p4*5n3\`x`j2x0
002n3\`y`p4/3p4pD}}{COM_R 335 0{TEXT 1 110 "Because Maple does no
t know anything about x, it cannot simplify this to (Pi - 3) x sq
rt(y).  Another example,"}}{INP_R 336 0 "> "{TEXT 0 37 "f := 2^(1
/3)*(x+1)^(1/3)*(y+1)^(1/3);"}}{OUT_R 337 0 336{DAG :3n3\`f`*7j2x
0002/3j2x0001j2x0003+5n3\`x`p7p7p7p6+5n3\`y`p7p7p7p6}}{INP_R 338 
0 "> "{TEXT 0 19 "combine(f,radical);"}}{OUT_R 339 0 338{DAG *5+5
n3\`y`j2x0001p4p4/3p4j2x0003+5n3\`x`j2x0002pFp4p8}}{COM_R 340 0
{TEXT 1 362 "Now that transformations that might be incorrect are
 no longer made, there needs to be mechanisms for the user to mak
e these transformations when they are known to be correct.  The u
ser has two options.  Using the symbolic option, the user can for
ce Maple to make the transformation, i.e. effectively assuming th
at the sign of the expressions is positive.  Hence"}}{INP_R 341 0
 "> "{TEXT 0 31 "sqrt( (Pi-3)^2*x^2, symbolic );"}}{OUT_R 342 0 
341{DAG *5+5n3\`Pi`j2x0001i2x0003p4p4n3\`x`p4}}{INP_R 343 0 "> "
{TEXT 0 31 "sqrt( (3-Pi)^2*x^2, symbolic );"}}{OUT_R 344 0 343
{DAG *5+5n3\`Pi`j2x0001i2x0003p4p4n3\`x`p4}}{INP_R 345 0 "> "
{TEXT 0 29 "sqrt( -a^3*b^2*c, symbolic );"}}{OUT_R 346 0 345{DAG 
*7n3\`a`j2x0001n3\`b`p3+3*5p1p3n3\`c`p3i2x0001/3p3j2x0002}}{COM_R
 347 0{TEXT 1 156 "This is useful when you are solving an equatio
n and you just need one root, the simplest one, and you will cons
truct the other roots from this.  For example"}}{INP_R 348 0 "> "
{TEXT 0 23 "solve(x^2+a^3*b^2*c,x);"}}{OUT_R 349 0 348{DAG ,3*7n3
\`a`j2x0001n3\`b`p4+3*5p2p4n3\`c`p4i2x0001/3p4j2x0002+3p1p10}}
{COM_R 350 0{TEXT 1 166 "Alternatively, the user can use the assu
me facility to tell Maple that expressions such as a,b,c here are
 real, real and positive, real and negative etc.  For example"}}
{INP_R 351 0 "> "{TEXT 0 12 "assume(x>0);"}}{INP_R 352 0 "> "
{TEXT 0 12 "sqrt(x^2*y);"}}{OUT_R 353 0 352{DAG *5n3\`x~~`j2x0001
n3\`y`/3p3j2x0002}}{INP_R 354 0 "> "{TEXT 0 15 "assume(x,real);"}
}{INP_R 355 0 "> "{TEXT 0 10 "sqrt(x^6);"}}{OUT_R 356 0 355{DAG *
5n3\`x~~`j2x0002*3p1p3/3j2x0001p3}}{INP_R 357 0 "> "{TEXT 0 12 "s
implify(\");"}}{OUT_R 358 0 357{DAG *5n3\`x~~`j2x0003(3n4\`signum
`,2p1j2x0001}}{INP_R 359 0 "> "{TEXT 0 9 "x := 'x':"}}{COM_R 360 
0{TEXT 1 25 "\0153: The simplify command\012"}}{COM_R 361 0{TEXT 
1 185 "The code for simplifying expressions containing square roo
ts and general roots has been improved.  Each (square) root is fi
rst simplified.  The principal transformation made when a>0 is"}}
{COM_R 362 0{TEXT 1 72 "\012   (a^n*b)^(m/d) = (a^(q+r/d)*b)^(m/d
) ==> a^(m*q) * (a^(r/d)*b)^(m/d)\012"}}{COM_R 363 0{TEXT 1 11 "F
or example"}}{INP_R 364 0 "> "{TEXT 0 19 "f := (a^8*b)^(1/3);"}}
{OUT_R 365 0 364{DAG :3n3\`f`*3*5n3\`a`j2x0008n3\`b`j2x0001/3pBj2
x0003}}{INP_R 366 0 "> "{TEXT 0 12 "assume(a>0);"}}{INP_R 367 0 "
> "{TEXT 0 20 "simplify(f,radical);"}}{OUT_R 368 0 367{DAG *5n3\`
a~~`j2x0002*5p1p3n3\`b`j2x0001/3pAj2x0003}}{COM_R 369 0{TEXT 1 90
 "Then dependent integer roots are located in the expression.  Fo
r example in the expression"}}{INP_R 370 0 "> "{TEXT 0 31 "g := 6
^(1/2)-2^(1/2)*3^(1/2)+1;"}}{OUT_R 371 0 370{DAG :3n3\`g`+7*3j2x0
006/3j2x0001j2x0002p8*5pAp7j2x0003p7i2x0001p8p8}}{COM_R 372 0
{TEXT 1 101 "It is determined that sqrt(6) can be written as sqrt
(2) sqrt(3) hence the expression is simplified to"}}{INP_R 373 0 
"> "{TEXT 0 20 "simplify(g,radical);"}}{OUT_R 374 0 373{DAG j2x00
01}}{COM_R 375 0{TEXT 1 77 "Finally, the expression is rationaliz
ed.  For example, writing the expression"}}{INP_R 376 0 "> "{TEXT
 0 35 "h := (2*x+2)^(3/2)-2*(2*x+2)^(1/2);"}}{OUT_R 377 0 376{DAG
 :3n3\`h`+5*3+5n3\`x`j2x0002p8j2x0001/3j2x0003p8pB*3p5/3pBp8i2x00
02}}{COM_R 378 0{TEXT 1 79 "as (2 x + 2) S - 2 S, then simplifyin
g this as a rational expression, we obtain"}}{INP_R 379 0 "> "
{TEXT 0 20 "simplify(h,radical);"}}{OUT_R 380 0 379{DAG +3*5+5n3\
`x`j2x0002p5j2x0001/3p8p5p3p8p5}}{INP_R 381 0 "> "{TEXT 0 9 "a :=
 'a':"}}{COM_R 382 0{TEXT 1 24 "\0154: The combine command\012"}}
{COM_R 383 0{TEXT 1 38 "Radicals can be combined together with"}}
{COM_R 384 0{TEXT 1 26 "\012   combine(expr,radical);"}}{COM_R 
385 0{TEXT 1 35 "   combine(expr,radical,symbolic);\012"}}{COM_R 
386 0{TEXT 1 36 "The principal transformation made is"}}{COM_R 
387 0{TEXT 1 73 "\012   x^(m/d) * y^(n/d) ==> (x^m*y^n)^(1/d) iff
 signum(x)>0 or signum(y)>0\012"}}{COM_R 388 0{TEXT 1 11 "For exa
mple"}}{INP_R 389 0 "> "{TEXT 0 42 "e := 2^(1/2)*3^(1/2)*(x+1)^(3
/2)*y^(3/2); "}}{OUT_R 390 0 389{DAG :3n3\`e`*9j2x0002/3j2x0001p4
j2x0003p6+5n3\`x`p7p7p7/3pAp4n3\`y`p13}}{INP_R 391 0 "> "{TEXT 0 
19 "combine(e,radical);"}}{OUT_R 392 0 391{DAG *7+5n3\`x`j2x0001p
4p4p4n3\`y`/3j2x0003j2x0002+5p2j2x0006p12p4/3p4pE}}{INP_R 393 0 "
> "{TEXT 0 28 "combine(e,radical,symbolic);"}}{OUT_R 394 0 393
{DAG *7+5n3\`x`j2x0001p4p4p4n3\`y`p4+5*5p2p4p9p4j2x0006p9p12/3p4j
2x0002}}{COM_R 395 0{TEXT 1 52 "\0155: Denesting of radicals and \+
the radnormal command\012"}}{COM_R 396 0{TEXT 1 174 "Nested squar
e roots of the form  sqrt(r + s sqrt(n)) where n is an integer, r
 and s are rationals are denested where possible by the sqrt and \+
simplify functions.  For example"}}{INP_R 397 0 "> "{TEXT 0 51 "s
qrt(3+4*I), sqrt(4-sqrt(12)), sqrt(1/2+sqrt(3)/4);"}}{OUT_R 398 0
 397{DAG ,4+5j2x0002j2x0001n3\`I`p4+5*3j2x0003/3p4p2p4i2x0001p4+5
*3j2x0006pD/3p4j2x0004*3p2pDp19}}{COM_R 399 0{TEXT 1 201 "A more \+
powerful facility for denesting and simplifying radicals is avail
able with the radnormal command.  Presently this facility only wo
rks for algebraic numbers, not algebraic functions.  For example"
}}{INP_R 400 0 "> "{TEXT 0 43 "f := sqrt( 2*(3-sqrt(2)-sqrt(3)+sq
rt(6)) );"}}{OUT_R 401 0 400{DAG :3n3\`f`*3+9j2x0006j2x0001*3j2x0
002/3p7pAi2x0002*3j2x0003pCpF*3p5pCpApC}}{INP_R 402 0 "> "{TEXT 0
 22 "readlib(radnormal)(f);"}}{OUT_R 403 0 402{DAG +7i2x0001j2x00
01*3j2x0002/3p3p6p3*5j2x0006p8p6p8p8}}{COM_R 404 0{TEXT 1 28 "\01
56: The rationalize command\012"}}{COM_R 405 0{TEXT 1 227 "The co
mmand rationalize will rationalize an expression containing radic
als, i.e. given a rational expression of the form n/d, the result
 is a new expression n'/d' where no radicals appear in the new de
nominator d'.  For example"}}{INP_R 406 0 "> "{TEXT 0 25 "f := sq
rt(2)/(1+sqrt(3));"}}{OUT_R 407 0 406{DAG :3n3\`f`*5j2x0002/3j2x0
001p4+5p7p7*3j2x0003p6p7i2x0001}}{INP_R 408 0 "> "{TEXT 0 21 "rea
dlib(rationalize):"}}{INP_R 409 0 "> "{TEXT 0 15 "rationalize(f);
"}}{OUT_R 410 0 409{DAG +3*5j2x0002/3j2x0001p2+5*3j2x0003p4p5i2x0
001p5p5p4}}{INP_R 411 0 "> "{TEXT 0 25 "f := 1/(x^(1/3)+y^(3/2));
"}}{OUT_R 412 0 411{DAG :3n3\`f`*3+5*3n3\`x`/3j2x0001j2x0003p9*3n
3\`y`/3pBj2x0002p9i2x0001}}{INP_R 413 0 "> "{TEXT 0 15 "rationali
ze(f);"}}{OUT_R 414 0 413{DAG +3*7+5*3n3\`y`/3j2x0003j2x0002j2x00
01*3n3\`x`/3pBp7i2x0001pB+7*3p4j2x0006pB*5p4p7pE/3p9p7pB*3pE/3j2x
0004p7pBpB+5*3p4j2x0009p13*3pEp9pBp13p13}}{COM_R 415 0{TEXT 1 25 
"\0157: The simplify command\012"}}{COM_R 416 0{TEXT 1 152 "The c
ommand  simplify(expr,assume=t)  will simplify an expression assu
ming all variables are of type t where t is typically real, posit
ive.  For example"}}{INP_R 417 0 "> "{TEXT 0 48 "f := r^2 * sin (
t) / sqrt(x^2+r^2-2*x*r*cos(t));"}}{OUT_R 418 0 417{DAG :3n3\`f`*
7n3\`r`j2x0002(3n3\`sin`,2n3\`t`j2x0001+7*3n3\`x`p6pE*3p4p6pE*7p1
2pEp4pE(3n3\`cos`pBpEi2x0002/3i2x0001p6}}{INP_R 419 0 "> "{TEXT 0
 38 "g := int( int( f, t=0..Pi ), r=0..1 );"}}{OUT_R 420 0 419
{DAG :3n3\`g`+3*5+D*3*3+5n3\`x`j2x0001pBpBj2x0002/3j2x0003pFpF*5*
3+5p9pBi2x0001pBpF/3pBpFp9pFp12*5p7p1Fp9pFi2x0003*3p17p11i2x0002*
5p7p1Fp9pBp2A*5p17p1Fp9pBp2ApBp9p1B/3pBj2x0006}}{INP_R 421 0 "> "
{TEXT 0 24 "simplify(g,assume=real);"}}{OUT_R 422 0 421{DAG +3*5+
D*5(3n4\`signum`,2+5n3\`x`j2x0001pCpCpCpAj2x0003pC*5p4pCpApCi2x00
03p4i2x0002*5(3p5,2+5pApCi2x0001pCpCpAp12p26*5p20pCpApCp12p20p1Dp
CpAp26/3p26j2x0006}}{COM_R 423 0{TEXT 9 36 "\015New and Enhanced \+
System Facilities\012"}}{COM_R 424 0{TEXT 1 20 "1: Global stateme
nt\012"}}{COM_R 425 0{TEXT 1 134 "Procedures may now include an o
ptional global statement which follows the local statement in a p
rocedure.  For example, the procedure\015"}}{COM_R 426 0{TEXT 1 
26 "proc(n) local y; global A;"}}{COM_R 427 0{TEXT 1 11 "    y :=
 1;"}}{COM_R 428 0{TEXT 1 41 "    for i to n do y := x*y; A[i] :=
 y od;"}}{COM_R 429 0{TEXT 1 4 "end;"}}{COM_R 430 0{TEXT 1 416 "\
012has one parameter n, one local variable y, and one global vari
able A.  The variables i and x are not defined, and in the older \+
versions of Maple, would be assumed to be global variables.  In t
his case, one can guess that x is meant to be global and i should
 be local.  In the new version of Maple, in order to reduce the l
ikelihood of errors, if a variable is not defined, then Maple wil
l declare it to be local if\012"}}{COM_R 431 0{TEXT 1 69 "\012   \+
(i)  it appears on the left hand side of an assignment statement \+
"}}{COM_R 432 0{TEXT 1 67 "   (ii) it is used as an index of a fo
r statement or seq statement\012"}}{COM_R 433 0{TEXT 1 255 "other
wise Maple will declare it global.  Applying these rules to the a
bove procedure, the undeclared variable i will be declared to be \+
local, and the undeclared variable x will be assumed global.  Hen
ce the following action is taken on the above procedure"}}{COM_R 
434 0{TEXT 1 0 ""}}{INP_R 435 0 "> "{TEXT 0 28 "proc(n) local y,i
; global A;"}}{INP_R 436 0 "> "{TEXT 0 49 "    y := 1; for i to n
 do  y := x*y; A[i] := y od"}}{INP_R 437 0 "> "{TEXT 0 5 "end;\01
2"}}{OUT_R 438 0 437{DAG @8,2n3\`n`,3n3\`y`n3\`i`,1p9;3:3l2x0001j
2x0001f7l2x0002pFpFa2x0001n4\`true`;3:3pD*5n3\`x`pFpDpF:3b3n3\`A`
,2p12pDp9,2p26}{TEXT 2 80 "\012proc(n) local y,i; global A; y := \+
1; for i to n do  y := x*y; A[i] := y od end\012"}}{COM_R 439 0
{TEXT 1 73 "The warning serves as a useful reminder to the user t
o declare variables."}}{COM_R 440 0{TEXT 1 20 "\0152: Name protec
tion\012"}}{COM_R 441 0{TEXT 1 220 "A protection facility has bee
n added to prevent the user from accidentally assigning to Maple \+
system variables.  For example, the names ``list'' and ``lhs'' ar
e now protected.  Attempting to assign to them will result in"}}
{INP_R 442 0 "> "{TEXT 0 13 "lhs := x^2-1;"}}{OUT_R 443 0 442
{TEXT 2 56 "Error, attempting to assign to `lhs` which is protect
ed\012"}}{INP_R 444 0 "> "{TEXT 0 17 "list := [1,2,3]; "}}{OUT_R 
445 0 444{TEXT 2 57 "Error, attempting to assign to `list` which \+
is protected\012"}}{COM_R 446 0{TEXT 1 64 "A name can be protecte
d using the protect function.  For example"}}{INP_R 447 0 "> "
{TEXT 0 66 "height := proc(p,x) local t; max(seq(abs(t),t=[coeffs
(p,x)])) end:"}}{INP_R 448 0 "> "{TEXT 0 16 "protect(height);"}}
{INP_R 449 0 "> "{TEXT 0 12 "height := 1;"}}{OUT_R 450 0 449{TEXT
 2 59 "Error, attempting to assign to `height` which is protected
\012"}}{COM_R 451 0{TEXT 1 101 "Names can be unprotected either b
y unassigning them, or by using the unprotect function.  For exam
ple"}}{INP_R 452 0 "> "{TEXT 0 18 "unprotect(height);"}}{INP_R 
453 0 "> "{TEXT 0 12 "height := 1;"}}{OUT_R 454 0 453{DAG :3n4\`h
eight`j2x0001}}{COM_R 455 0{TEXT 1 36 "3: march the Maple library
 archiver\012"}}{COM_R 456 0{TEXT 1 527 "Maple versions now come \+
with a library archive facility called march.  This tool can be u
sed to create, insert and update ``.m'' files in a Maple library \+
archive.  A Maple library consists of two files, maple.lib and ma
ple.ind.  The maple.lib file contains the Maple code, a set of .m
 files, and the maple.ind file is a index into the file maple.lib
 for fast access. This facility yields faster access and is more \+
economical in file space. It also provides a convenient way to di
stribute a library of Maple codes.  \015The command"}}{COM_R 457 
0{TEXT 1 34 "\012   march -c archiveDir tableSize\012"}}{COM_R 
458 0{TEXT 1 150 "creates a Maple archive in the directory <archi
veDir> where <tableSize> is an estimate of the number of files to
 be put in the archive.  The commands "}}{COM_R 459 0{TEXT 1 43 "
\012   march -a archiveDir fileName indexName "}}{COM_R 460 0
{TEXT 1 42 "   march -u archiveDir fileName indexName\012"}}
{COM_R 461 0{TEXT 1 210 "adds, respectively updates, the archive \+
in the directory <archiveDir> with the file <fileName> to be call
ed <indexName> in the archive.  There are further options for pac
king, extracting, removing .m files etc."}}{COM_R 462 0{TEXT 1 13
 "\0154: makehelp\012"}}{COM_R 463 0{TEXT 1 289 "This utility rou
tine takes as input the name of a file which contains plain text \+
and makes a Maple TEXT object out of a file for use with the on-l
ine help command ? .  The resulting TEXT object can be saved into
 a file to be included as on-help within a package.  See ?makehel
p for details"}}{COM_R 464 0{TEXT 1 24 "\0155: The fortran comman
d\012"}}{COM_R 465 0{TEXT 1 231 "The fortran function now accepts
 an optional argument\015\015    mode = <modtype> \015\015where t
he mode type must be one of single (the default), double, complex
 or generic which\012specifies how function names are to be trans
lated.  For example"}}{INP_R 466 0 "> "{TEXT 0 24 "fortran( ln(x)
+sin(x) );"}}{OUT_R 467 0 466{TEXT 2 26 "      t0 = alog(x)+sin(x
)\012"}}{INP_R 468 0 "> "{TEXT 0 38 "fortran( ln(x)+sin(x), mode=
generic );"}}{OUT_R 469 0 468{TEXT 2 25 "      t0 = log(x)+sin(x)
\012"}}{COM_R 470 0{TEXT 1 195 "The handling of arrays has been i
mproved (also in the C function) to output subscripts in lexicogr
aphical order and if an array entry is not assigned, the string u
ndefined is output.  For example"}}{INP_R 471 0 "> "{TEXT 0 59 "A
 := array(symmetric,1..2,1..2,[(1,1)=ln(x),(2,1)=sin(x)]):"}}
{INP_R 472 0 "> "{TEXT 0 11 "fortran(A);"}}{OUT_R 473 0 472{TEXT 
2 92 "      A(1,1) = alog(x)\012      A(1,2) = sin(x)\012      A(
2,1) = sin(x)\012      A(2,2) = undefined\012"}}{COM_R 474 0{TEXT
 1 27 "\0156: The piecewise function\012"}}{COM_R 475 0{TEXT 1 
392 "The piecewise() function allows one to define a function wit
h different forms on different intervals.  One can also assert a \+
global smoothness at the joints.  At present, diff/max and diff/m
in produce answers in terms of piecewise.  For example, the quadr
atic B-spline is given by the following piecewise quadratic polyn
omial.  The first argument 1 states that the polynomial is C1 con
tinuous"}}{INP_R 476 0 "> "{TEXT 0 19 "b2 := piecewise( 1,"}}
{INP_R 477 0 "> "{TEXT 0 27 "                    x<0, 0,"}}{INP_R
 478 0 "> "{TEXT 0 31 "                    x<1, x^2/2,"}}{INP_R 
479 0 "> "{TEXT 0 38 "                    x<2, -3/2+x*(3-x),"}}
{INP_R 480 0 "> "{TEXT 0 37 "                    x<3, 9/2+x*(x-3)
,"}}{INP_R 481 0 "> "{TEXT 0 33 "                    0 # otherwis
e"}}{INP_R 482 0 "> "{TEXT 0 17 "               ):"}}{INP_R 483 0
 "> "{TEXT 0 11 "diff(b2,x);"}}{OUT_R 484 0 483{DAG (3n5\`piecewi
se`,Bj2x0000<3n3\`x`p6p6<3p9j2x0001p9<3p9j2x0002+5j2x0003pFp9i2x0
002<3p9p17+5i2x0003pFp9p14p6}}{COM_R 485 0{TEXT 1 9 "\0157: help\
012"}}{COM_R 486 0{TEXT 1 78 "The following commands have been ad
ded to display parts of on-line help files."}}{COM_R 487 0{TEXT 1
 94 "- The command info(foo) will display the first line of the h
elp file\012  i.e. the FUNCTION line."}}{COM_R 488 0{TEXT 1 78 "-
 The command usage(foo) or ??foo will display the CALLING SEQUENC
E\012  section."}}{COM_R 489 0{TEXT 1 71 "- The command example(f
oo) or ???foo will display the EXAMPLES section."}}{COM_R 490 0
{TEXT 1 62 "- The command related(foo) will display the SEE ALSO \+
section. "}}{COM_R 491 0{TEXT 1 70 "Note the old example function
 has been replaced by this functionality."}}{COM_R 492 0{TEXT 1 
44 "\0158: String and text processing capabilities\012"}}{COM_R 
493 0{TEXT 1 262 "Maple strings now have no limitation on their l
ength.  Previously the length limitation was 499 characters.  The
 SearchText and searchtext functions (case sensitive and insensit
ive respectively) can be used to search a string for a pattern.  \+
The functionality is"}}{COM_R 494 0{TEXT 1 20 "\012   searchtext(
t,s) "}}{COM_R 495 0{TEXT 1 25 "\012   searchtext(t,s,a..b)\012"}
}{COM_R 496 0{TEXT 1 125 "meaning search for the substring t in t
he string is (optionally starting at position a in the string s e
nding at position b)."}}{INP_R 497 0 "> "{TEXT 0 33 "s := `maple \+
and Maple and MAPLE`:"}}{INP_R 498 0 "> "{TEXT 0 22 "SearchText(`
Maple`,s);"}}{OUT_R 499 0 498{DAG j2x0011}}{INP_R 500 0 "> "{TEXT
 0 22 "searchtext(`Maple`,s);"}}{OUT_R 501 0 500{DAG j2x0001}}
{COM_R 502 0{TEXT 10 18 "\015Library Packages\012"}}{COM_R 503 0
{TEXT 1 144 "The package mechanism has been extended to support s
ubpackages.  This works in an obvious way and is illustrated by t
he new stats package below."}}{COM_R 504 0{TEXT 1 38 "\0151: numt
heory - number theory package\012"}}{COM_R 505 0{TEXT 1 97 "The f
unction factorEQ(m,d) factors the integer m in the Euclidean doma
in\012Z[sqrt(d)].  For example"}}{INP_R 506 0 "> "{TEXT 0 33 "num
theory[factorEQ](38477343,11);"}}{OUT_R 507 0 506{DAG *B(3n3\``,2
j2x0003j2x0001(3p2,2+5j2x0125p7*3j2x0011/3p7j2x0002j2x0034p7(3p2,
2+5pDp7p10i2x0034p7(3p2,2+5j2x0085p7p10j2x0016p7(3p2,2+5p28p7p10i
2x0016p7}}{COM_R 508 0{TEXT 1 164 "\015The isprime function now u
ses one strong pseudo primality test and one Lucas test (not know
n to fail).  numtheory[safeprime] has also been updated in the sa
me way."}}{COM_R 509 0{TEXT 1 125 "\015We have implemented a new \+
iterative algorithm for numtheory[jacobi]\012that yields a modest
 improvement of 15% in running time."}}{COM_R 510 0{TEXT 1 47 "\0
152: linalg - linear and vector algebra package\012"}}{COM_R 511 
0{TEXT 1 185 "The functions curl, diverge, grad, and laplacian ha
ve been extended to work in spherical, cylindrical, and in orthog
onally curvilinear coordinate systems in general (default cartesi
an)."}}{INP_R 512 0 "> "{TEXT 0 23 "with(linalg,curl,grad):"}}
{INP_R 513 0 "> "{TEXT 0 40 "g := [r,sin(theta),z]: v := [r,theta
,z]:"}}{INP_R 514 0 "> "{TEXT 0 29 "curl(g,v,coords=cylindrical);
"}}{OUT_R 515 0 514{DAG (3n4\`VECTOR`,2[2,4j2x0000p7*5n3\`r`i2x00
01(3n3\`sin`,2n4\`theta`j2x0001}}{INP_R 516 0 "> "{TEXT 0 49 "g :
= r^2*sin(theta)*cos(phi): v := [r,theta,phi]:"}}{INP_R 517 0 "> \+
"{TEXT 0 27 "grad(g,v,coords=spherical);"}}{OUT_R 518 0 517{DAG (
3n4\`VECTOR`,2[2,4+3*7n3\`r`j2x0001(3n3\`sin`,2n4\`theta`pB(3n3\`
cos`,2n3\`phi`pBj2x0002*7p9pB(3p16p10pBp15pB+3*5p9pB(3pEp18pBi2x0
001}}{COM_R 519 0{TEXT 1 124 "\015The functions ihermite, ismith,
 hermite and smith have been modified to optionally return the mu
ltiplier matrices.  That is"}}{COM_R 520 0{TEXT 1 56 "\012  H := \+
ihermite(A,'U');   and   H := hermite(A,x,'U');\012"}}{COM_R 521 
0{TEXT 1 218 "compute the Hermite normal form matrix H in the Euc
lidean domains Z and F[x] respectively and assigns U the multipli
er matrix such that H = U A.  (Hermite normal form is row reducti
on over a Euclidean ring).  Similarly"}}{COM_R 522 0{TEXT 1 58 "\
012  S := ismith(A,'U','V');  and  S := smith(A,x,'U','V');\012"}
}{COM_R 523 0{TEXT 1 204 "compute the Smith normal form S in the \+
Euclidean domains Z and F[x] and assigns U and V the multiplier m
atrices such that S = U S V.  (Smith normal form is row and colum
n reduction over a Euclidean ring)."}}{INP_R 524 0 "> "{TEXT 0 45
 "with(linalg,ismith,ihermite,inverse,hilbert):"}}{INP_R 525 0 ">
 "{TEXT 0 25 "A := inverse(hilbert(3));"}}{OUT_R 526 0 525{DAG :3
n3\`A`(3n4\`MATRIX`,2[2,4[2,4j2x0009i2x0036j2x0030[2,4pEj2x0192i2
x0180[2,4p10p17j2x0180}}{INP_R 527 0 "> "{TEXT 0 21 "H := ihermit
e(A,'U'):"}}{INP_R 528 0 "> "{TEXT 0 11 "print(H,U);"}}{OUT_R 529
 0 528{DAG ,3(3n4\`MATRIX`,2[2,4[2,4j2x0003j2x0000j2x0030[2,4pCj2
x0012pC[2,4pCpCj2x0060(3p2,2[2,4[2,4j2x0013j2x0009j2x0007[2,4j2x0
006j2x0004pA[2,4j2x0020j2x0015p13}}{INP_R 530 0 "> "{TEXT 0 20 "e
valm( H - U &* A );"}}{OUT_R 531 0 530{DAG (3n4\`MATRIX`,2[2,4[2,
4j2x0000p9p9p7p7}}{INP_R 532 0 "> "{TEXT 0 23 "S := ismith(A,'U',
'V'):"}}{INP_R 533 0 "> "{TEXT 0 13 "print(S,U,V);"}}{OUT_R 534 0
 533{DAG ,4(3n4\`MATRIX`,2[2,4[2,4j2x0003j2x0000pC[2,4pCj2x0012pC
[2,4pCpCj2x0060(3p2,2[2,4[2,4i2x0003pCj2x0001[2,4j2x0018j2x0004i2
x0001[2,4i2x0010i2x0005p22(3p2,2[2,4[2,4p33i2x0006i2x0030[2,4p25p
25pC[2,4p25p25p25}}{INP_R 535 0 "> "{TEXT 0 25 "evalm( S - U &* A
 &* V );"}}{OUT_R 536 0 535{DAG (3n4\`MATRIX`,2[2,4[2,4j2x0000p9p
9p7p7}}{COM_R 537 0{TEXT 1 171 "Note the new algorithm that is us
ed for Hermite normal forms is, unlike the old algorithm, a polyn
omial time algorithm, and is in practice much faster for larger m
atrices."}}{COM_R 538 0{TEXT 1 41 "\0124: GaussInt -- Gaussian in
teger package\012"}}{COM_R 539 0{TEXT 1 212 "The routines GIhermi
te and GIsmith similarly have been added to compute the Hermite a
nd Smith normal forms over the Euclidean domain Z[i]\012\012The r
outines GIchrem implements the Chinese Remainder Algorithm for Z[
i] "}}{INP_R 540 0 "> "{TEXT 0 50 "GaussInt[GIchrem]([5+13*I,15-9
*I],[3+4*I,7-11*I]);"}}{OUT_R 541 0 540{DAG +5i2x0017j2x0001n3\`I
`j2x0017}}{COM_R 542 0{TEXT 1 66 "The routine GInodiv computes th
e number of non-associated divisors"}}{INP_R 543 0 "> "{TEXT 0 25
 "GaussInt[GInodiv](2+3*I);"}}{OUT_R 544 0 543{DAG j2x0002}}
{COM_R 545 0{TEXT 11 32 "\012The Statistics Package `stats'\012"}
}{COM_R 546 0{TEXT 1 257 "The stats package has been completely r
edesigned. The data structure for the arguments to the functions \+
has changed.  This implies that programs using the previous versi
on of the stats package will need to be updated.  See ?stats[upda
tes] on how to do this."}}{COM_R 547 0{TEXT 1 60 "\015New types o
f data are now supported in addition to numbers."}}{COM_R 548 0
{TEXT 1 55 "- Missing data is represented by the keyword `missing
'."}}{COM_R 549 0{TEXT 1 108 "- Data classes are represented as r
anges a..b where the bound a is   inclusive and the bound b is ex
clusive."}}{COM_R 550 0{TEXT 1 185 "- Weighted data is represente
d by the function Weight(data, weight).\012  For example, the fol
lowing are all valid data:\012  3, 3..4, missing, Weight(4,6), We
ight(missing,7), Weight(3..4,9)."}}{COM_R 551 0{TEXT 1 63 "The st
ats package is subdivided into the following subpackages."}}
{COM_R 552 0{TEXT 1 39 "- describe: for descriptive statistics,"}
}{COM_R 553 0{TEXT 1 38 "- transform: for data transformations,"}
}{COM_R 554 0{TEXT 1 64 "- random: for generating numbers with a \+
particular distribution,"}}{COM_R 555 0{TEXT 1 64 "- statevalf: f
or numerical evaluations of statistical functions,"}}{COM_R 556 0
{TEXT 1 38 "- fit: for fitting data to a curve and"}}{COM_R 557 0
{TEXT 1 38 "- statplots: for statistical graphics."}}{COM_R 558 0
{TEXT 1 80 "\012and the function importdata\} which supplements M
aple's other input facilities.\012"}}{COM_R 559 0{TEXT 1 208 "Iss
uing with(stats); defines abbreviations for all the subpackages b
ut not the subfunctions belonging to them.  Then issuing with(des
cribe); defines abbreviations for the functions in the describe s
ubpackage."}}{INP_R 560 0 "> "{TEXT 0 12 "with(stats);"}}{OUT_R 
561 0 560{DAG [2,8n5\`describe`n3\`fit`n5\`importdata`n4\`random`
n5\`statevalf`n5\`statplots`n5\`transform`}}{INP_R 562 0 "> "
{TEXT 0 15 "with(describe):"}}{OUT_R 563 0 562{TEXT 2 39 "Warning
: new definition for   quantile\012"}}{COM_R 564 0{TEXT 1 75 "Now
 the following commands all refer to the same function on the dat
a [1,5]"}}{INP_R 565 0 "> "{TEXT 0 64 "mean([1,5]), describe[mean
]([1,5]), stats[describe,mean]([1,5]);"}}{OUT_R 566 0 565{DAG ,4j
2x0003p1p1}}{COM_R 567 0{TEXT 1 176 "Certain functions require (a
nd others allow) extra parameters. For example, describe[quartile
[1]] is a function that gives the first quartile of the data. Thi
s allows one to do"}}{INP_R 568 0 "> "{TEXT 0 35 "data:=[1,5,Weig
ht(6,3), 9, 10, 15];"}}{OUT_R 569 0 568{DAG :3n4\`data`[2,7j2x000
1j2x0005(3n4\`Weight`,3j2x0006j2x0003j2x0009j2x0010j2x0015}}
{INP_R 570 0 "> "{TEXT 0 28 "describe[quartile[1]](data);"}}
{OUT_R 571 0 570{DAG j2x0005}}{COM_R 572 0{TEXT 1 273 "Functions \+
like variance allow a parameter to specify if one is computing th
e sample variance or the population variance. (The parameter used
 the number to be subtracted from the item count, so variance[0] \+
is the population variance and variance[1] is the sample variance
). "}}{COM_R 573 0{TEXT 1 59 "\0151: The descriptive statistics s
ubspackage stats[describe]\012"}}{COM_R 574 0{TEXT 1 32 "Contains
 the following functions"}}{COM_R 575 0{TEXT 1 67 "\012  coeffici
entofvariation, count, countmissing, covariance, decile,"}}{COM_R
 576 0{TEXT 1 65 "  geometricmean, harmonicmean, kurtosis, linear
correlation, mean,"}}{COM_R 577 0{TEXT 1 65 "  meandeviation, med
ian, mode, moment, percentile, quadraticmean,"}}{COM_R 578 0{TEXT
 1 68 "  quantile, quartile, range, skewness, standarddeviation, \+
variance.\012"}}{COM_R 579 0{TEXT 1 45 "2: The transform subpacka
ge stats[transform]\012"}}{COM_R 580 0{TEXT 1 8 "Contains"}}
{COM_R 581 0{TEXT 1 178 "\012apply, classmark, cumulativefrequenc
y, deletemissing, divideby, frequency, moving, multiapply, remove
, scaleweight, split, standardscore, statsort, statvalue, tally, \+
tallyinto.\012"}}{COM_R 582 0{TEXT 1 471 "The function apply is u
sed to apply a transformation on each observation, whereas moving
 is to apply a function across a sliding window over the data (an
d some can be used to smooth data using, for example, a weighted \+
moving mean.) The function split is used to split a list of data \+
into multiple lists, which can be required to be of equal weight.
 Data are counted with tally and regrouped into a specified patte
rn (exceptions can be reported if desired) with tallyinto."}}
{COM_R 583 0{TEXT 1 30 "\0153: Statistical distributions\012"}}
{COM_R 584 0{TEXT 1 177 "The distributions are functions indexed \+
by their parameters.  For example, poisson[2] is a Poisson distri
bution with mean lambda = 2.  The following distributions are sup
ported:"}}{COM_R 585 0{TEXT 1 280 "\012beta, binomiald (binomial)
, cauchy, chisquare, discreteuniform, empirical, exponential, fra
tio (variance ratio, Fisher F), gamma, hypergeometric laplaced (L
aplace), logistic, lognormal, negativebinomial, normald (normal),
   poisson, studentst (T distribution), uniform, weibull.\012"}}
{COM_R 586 0{TEXT 1 215 "Given a distribution, random numbers wit
h that distribution can be obtained using the stats[random] subpa
ckage. One can specify the quantity of numbers to be generated at
 once, or that a generator is to be returned."}}{INP_R 587 0 "> "
{TEXT 0 30 "stats[random,normald[0,1]](5);"}}{OUT_R 588 0 587{DAG
 ,6e3j4x006707087107i2x0010e3j4x005872984199p6e3j4x003801888006i2
x0011e3i4x001238893314p6e3i4x001231563388p13}}{INP_R 589 0 "> "
{TEXT 0 43 "T:=stats[random,studentst[3]]('generator'):"}}{INP_R 
590 0 "> "{TEXT 0 16 "seq(T(),i=1..5);"}}{OUT_R 591 0 590{DAG ,6e
3i4x004084366098i2x0009e3j4x007361055452i2x0010e3j4x007923407422i
2x0011e3j4x001160948152pDe3i4x001026385340p6}}{COM_R 592 0{TEXT 1
 109 "Numerical evaluations of statistical functions are computed
 by the stats[statevalf] subpackage. For example, "}}{INP_R 593 0
 "> "{TEXT 0 29 "statevalf[pdf, normald](0.5);"}}{OUT_R 594 0 593
{DAG e3j4x003520653266i2x0010}}{COM_R 595 0{TEXT 1 74 "gives the \+
height of the standard normal curve at the value 0.5.  Similarly"
}}{INP_R 596 0 "> "{TEXT 0 34 "statevalf[cdf, chisquare[2]](0.6);
"}}{OUT_R 597 0 596{DAG e3j4x002591817793i2x0010}}{COM_R 598 0
{TEXT 1 208 "gives the area under the curve of the  Chi square wi
th 2 degrees of freedom lying  to the left of 0.6.  The inverse o
f this last function is obtained by using icdf -- inverse cumulit
ive distribution function "}}{INP_R 599 0 "> "{TEXT 0 33 "stateva
lf[icdf, chisquare[2]](\");"}}{OUT_R 600 0 599{DAG e3j4x006000000
000i2x0010}}{COM_R 601 0{TEXT 1 60 "Similar facilities are availa
ble for discrete distributions."}}{COM_R 602 0{TEXT 1 41 "\0124: \+
The regression subpackage stats[fit]\012"}}{COM_R 603 0{TEXT 1 
107 "Provides for regressions. At the present, weighted least squ
are fits of data to linear models is provided. "}}{COM_R 604 0
{TEXT 1 45 "\0125: The plotting subpackage stats[statplots]\012"}
}{COM_R 605 0{TEXT 1 154 "Contains various statistical plots and \+
plotting utilities.  The result of these functions can also be ma
nipulated via the plots[display] function.\012Example"}}{INP_R 
606 0 "> "{TEXT 0 16 "with(statplots);"}}{OUT_R 607 0 606{TEXT 2 
39 "Warning: new definition for   quantile\012"}}{OUT_R 608 0 606
{DAG [2,Cn4\`boxplot`n5\`histogram`n5\`notchedbox`n5\`quantile`n5
\`quantile2`n5\`scatter1d`n5\`scatter2d`n5\`symmetry`n4\`xscale`n
4\`xshift`n5\`xyexchange`}}{INP_R 609 0 "> "{TEXT 0 72 "Xdata := \+
[4.535, 4.029, 5.407, 1.605, 5.757, 3.527, 7.890, 8.159, 6.092,"}
}{INP_R 610 0 "> "{TEXT 0 72 "         13.442, 2.845, 5.172, 3.27
7, 8.810, 3.657, 7.226, 3.851, 2.162,"}}{INP_R 611 0 "> "{TEXT 0 
24 "          2.668, 4.692]:"}}{INP_R 612 0 "> "{TEXT 0 72 "Ydata
:=  [7.454, 4.476, 2.873, 5.476, 9.975,-1.476, 1.033, 1.140, 4.81
3,"}}{INP_R 613 0 "> "{TEXT 0 72 "           .450, -.788, 9.389, \+
4.811,-3.107, 4.407, 5.534, 1.691, -.789,"}}{INP_R 614 0 "> "
{TEXT 0 23 "         1.684, 1.605]:"}}{INP_R 615 0 "> "{TEXT 0 51
 "p1 := scatter2d(Xdata,Ydata):   p1;  # scatter plot"}}{INP_R 
616 0 "> "{TEXT 0 62 "p2 := boxplot[15](Ydata):       p2;  # boxp
lot in right margin"}}{INP_R 617 0 "> "{TEXT 0 57 "p3 := notchedb
ox[12](Xdata):    p3;  # notched box at top"}}{INP_R 618 0 "> "
{TEXT 0 23 "plots[display](\{ p1,p2,"}}{INP_R 619 0 "> "{TEXT 0 
69 "                 xyexchange(p3)\}, view =[0..17,-4..14], axes
=FRAME );"}}{COM_R 620 0{TEXT 12 16 " \015Share Library\012"}}
{COM_R 621 0{TEXT 1 241 "The Maple share library (or applications
 library) is a library of Maple routines (the Maple src code incl
uded), Maple worksheets, and accompanying documentation files whi
ch have been contributed by users of Maple to the Maple user comm
unity."}}{COM_R 622 0{TEXT 1 244 "The version of the share librar
y that comes with Maple V Release 3 contains about 25 Maple appli
cations packages, 50 Maple routines, 50 Maple worksheets and 25 a
dditional PostScript, LaTeX and TeX articles documenting the rout
ines and packages."}}{COM_R 623 0{TEXT 1 242 "In this version of \+
the share library we have divided the share library up into the f
ollowing subject areas to make it easier for the user to find wha
t s/he is looking for and provided a contents listing for each ar
ea with the given ? command\012"}}{COM_R 624 0{TEXT 1 60 "\012  A
lgebra                                    ?share,algebra"}}{COM_R
 625 0{TEXT 1 75 "  Analysis (Calculus)                  ?share,a
nalysis  or  ?share,calculus"}}{COM_R 626 0{TEXT 1 50 "  Automati
c Differentiation        ?share,autodiff"}}{COM_R 627 0{TEXT 1 56
 "  Combinatorics                          ?share,combinat"}}
{COM_R 628 0{TEXT 1 58 "  Engineering                            \+
  ?share,engineer"}}{COM_R 629 0{TEXT 1 71 "  Graphics and Geomet
ry            ?share,graphics  or  ?share,geometry"}}{COM_R 630 0
{TEXT 1 54 "  Linear Algebra                         ?share,linal
g"}}{COM_R 631 0{TEXT 1 55 "  Number Theory                      \+
  ?share,numtheory"}}{COM_R 632 0{TEXT 1 59 "  Numerics          \+
                        ?share,numerics"}}{COM_R 633 0{TEXT 1 59 
"  Programming                            ?share,programming"}}
{COM_R 634 0{TEXT 1 61 "  Science                                \+
      ?share,science"}}{COM_R 635 0{TEXT 1 64 "  Statistics      \+
                             ?share,statistics"}}{COM_R 636 0
{TEXT 1 56 "  System Tools                            ?share,syst
em\012"}}{COM_R 637 0{TEXT 1 241 "For each Maple routine and pack
age in the share library we have simplified the loading mechanism
 to make it easier to access the share library.  For example, to \+
access the gfun package in the calculus directory in the share li
brary, one does"}}{INP_R 638 0 "> "{TEXT 0 40 "with(share);  # lo
cate the share library"}}{OUT_R 639 0 638{TEXT 2 71 "See ?share a
nd ?share,contents for information about the share library\012"}}
{OUT_R 640 0 638{DAG [2,1}}{INP_R 641 0 "> "{TEXT 0 50 "readshare
(gfun,calculus);  # load the gfun package"}}{OUT_R 642 0 641{DAG 
n4t4,1n4\`false`h101\\\\#7x20313820@8p2p2p2p2;3?3>3b3a2x-001,2j2x
0001u2n4\`stamped`(3n4\`RETURN`,2(3b3p0,2n6\`seriestoratpoly`,2(3
n6\`gfun/typecheck`,3j2x0007p12(3p1C,2(3b3p0,2n6\`listtoratpoly`,
5p17(3b3p0,2n6\`seriestolist`,4p17b3p12,2j2x0002u2n3\`ogf`(3n3\`o
p`,3j2x0000p4Db3p12,2j2x0003p2p2x0\x0\\\\\#7x2030F848@8,4n4\`expr
`n4\`aofn`n3\`b`,9n3\`e`n4\`inits`n3\`a`n3\`n`n3\`l`n3\`U`n3\`N`n
4\`inho`p2p2;F?3!2(3n4\`type`,3[2,3a2x0002a2x0003[2,3(3n5\`functi
on`,2n4\`name`p9C(3n4\`ERROR`,2n7\`invalid~`arguments`:3l2x0003(3
p56,3p59p90:3l2x0004(3p56,2p90?3=3pACp92(3pA1,2n9\`names~`should~
`be~`different`?3(3p8A,3a2x0001(3n4\`diffeq`,3pACpB4;3:3l2x0005(3
b3p0,2n5\`rectodiffeq`,4(3a2x-002,4(3b3p0,2n5\`diffeqtorec`,4pCDp
90(3l2x0006,2l2x0007pF2n3\`V`(3pF9pF5(3p92,2pB6(3p1C,2(3n4\`subs`
,4(3n3\`map`,3@8,2n3\`x`p2p2p2=3(3p56,3p15pCD*5(3p56,3p50pCDp15(3
n5\`factorial`,2(3p56,2p116p15p2p2%2,2(3n3\`seq`,3=3l2x0001p136=3
p136(3n4\`indets`,3pD8(3pF9,2n4\`integer`=3pF9pF3pD8?4(3p8A,3pCDn
3\`set`;5:3p136(3n4\`select`,4n3\`has`pCDpB4?3>3(3n4\`nops`,2p136
p15(3pA1,2n9\`only~`one~`recurrence~`allowed`:3l2x0002(3n4\`minus
`,3pCDp136:3p136(3p56p164;3:3p136pCD:3p173%2p2?3(3p8A,3p136n5\`eq
uation`:3p136+5(3p56,3p50p136p15(3p56,3p15p136i2x0001:3l2x0008(3n
4\`eval`,2(3p106,3=3pACp59p136?3>3p1A3p59;3(3n5\`userinfo`,4p15u2
p0nD\`non~`homogeneous~`recurrence:~`homogenizing~`it`(3p1C,2(3pE
4,4(3n5\`gfun/intoho`,6p136p173pACpB4p1A3p90p92:3pD8(3p13C,3p136p
97:3p136(3p106,3pBB(3n4\`collect`,3(3n5\`primpart`,3(3p10B,5u2n7\
`gfun/ordtoexp_aux`(3n4\`expand`p164pACpB4pD8pD8:3p173(3n4\`union
`,3%2,2(3p132,3=3(3p106,3pBB(3p56,3p15pD8(3p56,3p50pD8=3pD8p173%2
,2(3p132,3=3(3p106,3pBBpD8pD8=3pD8(3p13C,3%2,2(3p132,3p21Fp224(3p
AC,2n5\`nonnegint`?3>3p173p187:3p136(3p20C,3%2p164(3p10B,3u2p10Ep
173(3p1Cp164p2p2x0\x0\\\#7x2030E060@8p2p10Fp2p2;4?3p10(3p1C,2(3b3
p0,2n5\`listtolist`,2(3p2B,3j2x0009p12?3=3p5Cp52(3p1C,2p4D(3p1C,2
(3p43,4p17(3b3p0,2n6\`listtoseries`,5p17p4Dp136p5Cp52p2p2x0\x0\\\
\\\\\\\\\\\\\\\\\\\\\\\#7x2030E930@8,4n3\`Eq1`n3\`Eq2`n4\`yofz`,1
0n3\`y`n3\`z`n3\`A`n3\`d1`n3\`d2`n3\`d`n3\`i`n3\`j`n3\`f`n3\`g`n3
\`h`pF9n3\`s`n3\`eq1`n3\`eq2`p2p2;12:3l2x0014(3n4\`convert`,3pCDn
3\`D`:3l2x0015(3p2CC,3p90p2D1:3p136(3p56,3p59p92:3p173(3p56,2p92:
3pB4(3n5\`gfun/dorder`,3p2C9p92:3pD8(3p2EB,3p2D4p92(3p1B7,7p50p0n
11\`computing~`the~`product~`of~`two~`holonomic~`functions~`of~`o
rder`pB4n3\`and`pD8:3pF3*5pB4p15pD8p15:3pAC(3b3n4\`linalg`,2n4\`m
atrix`,3+5pF3p15p15p15pF3:3l2x0012[2,2(3p132,3(3p132,3*5(3(3(3n3\
`@@`,3p2D1pF6,2l2x0009,2p173p15(3(3(3p33A,3p2D1p1A3,2l2x0010p342p
15=3pF6~3p59+5pB4p15p1A0p15=3p1A3~3p59+5pD8p15p1A0p15:3pF6(3(3(3p
33A,3p2D1pB4p164p342:3p1A3(3(3(3p33A,3p2D1pD8p164p342:3l2x0013,3(
3p106,3=3p136p340=3pF6+3*5(3n4\`coeff`,4p2C9pF6p59p15(3p388,3p2C9
pF6p1A0p1A0(3p106,3=3p136p34D=3p1A3+3*5(3p388,4p2D4p1A3p59p15(3p3
88,3p2D4p1A3p1A0p1A0:3l2x0011*5(3p340p342p15(3p34Dp342p15f7pF6p15
p15p325n4\`true`;4:3p3B0(3p201,2(3p106,3p37Ap3B0f7p1A3p15p15pF3p3
C0:3b3pAC,3pF6p1A3(3p388,3(3p388,3p3B0(3p56,3p15b3p32C,2p1A3(3p56
,3p50p3E5?3$3pF6pF3:3p3B0(3p2CC,3(3n4\`diff`,3p3B0p173p2D1:3p32C[
2,2(3p132,3(3(3p339p164p342=3pF6~3p59pF3(3p1EC,3(3n5\`gfun/lindep
`,3(3p56,2pACp32Cp32Cp2p2x0\x0\\\\\\\\\\#7x2030C180@8p2,7n4\`resu
lt`n4\`methods`n4\`method`p2BFn4\`unkn`p69p2p2;7?3p10(3p1C,2(3b3p
0,2n6\`listtohypergeom`,2(3p2B,3p5Fp12:3pF3p4D:3pD8p5C:3p173b3p12
,2j2x0004f5pACp173p3C0;5:3pB4(3p26C,4p17pF3pAC(3p1B7,6p5Fp1BDn5\`
Trying~`the~``pACpB4:3p136(3nC\`gfun/listtohypergeom/listtohyperg
eom`,3pB4pD8?3>3p136n4\`FAIL`;3(3p1B7,7p50p1BDu2n3\`The`pACu2n7\`
seems~`to~`satisfy`p136(3p1C,2[2,3p136pACp486p2p2x0\x0\\\#7x20313
998@8,3p7Bp110,2p2B4p2p2(3p1C,2(3n4\`series`,4*5(3p2CC,3[2,2(3p13
2,3*7p136p15(3p56,3+5p136p15p15p15pCDp15^3p90+5p136p15p1A0p15p15=
3p136~3p15+5(3p161,2pCDp15p1A0p15n3\`+`p15(3p2CC,3[2,2(3p132,3*5(
3p56,3p136pCDp15p4CFp15=3p136~3p15p4DCp4E3p1A0p90p4DBp2p2x0\x0\\\
\\\\\\\#7x203141EC@8p4AAp4ADp2p2(3p1C,2(3p4B5,4*5(3p2CC,3[2,2(3p1
32,3*7p4EFp15^3p90+5p136p15i2x0002p15p15(3p123,2p51Fp1A0=3p136~3p
50p4DCp4E3p15(3p2CC,3[2,2(3p132,3*7p4EFp15p4CFp15(3p123,2p4D1p1A0
p4F7p4E3p1A0p90p4DBp2p2x0\x0\\\\\\\\\\\\\\\\\\\\\\#7x2030729Cp50x
2030AA9C@8p29Fp2A7p2p2;13p2C8p2D3p2DBp2E2p2E8p2F2(3p1B7,7p50p0n10
\`computing~`the~`sum~`of~`two~`holonomic~`functions~`of~`order`p
B4p30FpD8:3pF3+5pB4p15pD8p15?3=3pF3p59(3p1C,2*5pCDp15p90p15p319:3
p32C[2,3(3p132,3p337p351(3p132,3(3(3p339p34Cp342=3pF6p35Cp363p36E
p379:3p3B0+5p3B3p15p3B7p15f7pF6p15p15p325p3C0;4p3C4f7p1A3p15p15pF
3p3C0:3p3D5(3p388,3p3B0p3E5p3EEp3FFp410p2p2x0\\\\\\\\#7x20314AD8@
8,3n3\`pol`p2A4,11p2A8p2AAp2B2p2B4n3\`Y`n3\`sys`n3\`unk`n3\`deq`p
74n3\`P`n3\`Dy`n3\`dP`n3\`dy`p2B6p7Bn3\`ord`p2p2;20?4(3p8A,3pCDp1
8E:3p34D+5p11Cp15p116p1A0:3p34DpCD?3!2(3p8A,3p90p96pA0:3p136pAE:3
p173pB6:3p37A(3p3F8,3(3p136p342p173?3!2(3p8A,3p34D(3n4\`polynom`,
3n5\`anything`[2,3p136p173pA0?3&3=3a2x0000p5F!2(3p8A,3p5Cp150(3pA
1,2n9\`3rd~`argument~`must~`be~`a~`set`?3!2(3n4\`irreduc`p34C;4:3
p2D4(3p10B,4pE4(3p156,4p15A[2,2(3p132,3(3p56,3p15pB4=3pB4(3p56,3p
50(3n4\`factors`p34Cp136p90f7p2p15p15p2<3p15(3p161,2p2D4:3p2D4(3n
4\`subsop`,4=3p15(3b3p0,2n5\`hproduct`,4b3p2D4p14b3p2D4p4Fp90=3p5
0n4\`NULL`p2D4(3p1C,2(3p56p669:3pAC(3n4\`degree`,3p34Dp136(3p1B7,
5p5Fp1BDn5\`degree~`is~``pAC?3$3pACp15(3p1C,2(3p201,2(3p106,3=3p1
36p90p34D?3!2(3p15A,3p34Dp173(3p1C,2+5p90p15(3n4\`RootOf`p696p1A0
:3pD8(3n4\`table`p2(3p1B7,7p15p1BDu2n5\`computing`(3p2D1p164n5\`i
n~`terms~`of`(3p132,3^3p136pB4=3pB4~3p15+5pACp15p1A0p15:3p32C(3p2
01,2(3p3F8,3p6ADp173:3b3pD8p14(3n5\`gfun/reduct`,5(3p106,3=3p90p1
36+3*5(3p388,4p32Cp37Ap59p15(3p388,4p32Cp37Ap15p1A0p1A0p34Dp136p1
73?3=3p6F9p59;3(3p1B7,5p15p1BDn8\`polynom~`is~`of~`the~`form`*5(3
u2p2B8p342p15(3u2p2BAp164p15(3p1C,2+5p90p15(3p6C2,2(3p1F1p696p1A0
(3p1B7,4p50p1BD=3p6D8p6F9:3pF3%2,2=3b3p3B0p14p6F9:3n6\`type/y^any
thing`(3p106,3=3n3\`_Y`p136@8p2p2p2p2(3p8A,3[2,2p12[2,2^3(3n5\`id
entical`,2p760p617p2p2:3pF6(3p20C,3p24F(3p13C,3pF3n5\`y^anything`
f7pB4p50p15p6E9<3p355(3p161pF5;7(3p1B7,7p5Fp1BDn8\`#equations~`co
mputed=`(3p161,2pF3n8\`#remaining~`unknowns=`p790(3p1B7,7p50p1BDp
6D3p366p6DB(3p132,3^3p136p2C9=3p2C9p6E7:3b3pD8,2pB4(3n3\`rem`,4(3
p106,4=3p37Ap6F9p705(3p3F8,3(3p106,3p6B0b3pD8,2p355p173p34Dp136(3
p1B7,4p50p1BD=3p366p7BE:3pF3%2,3(3p56p7A2=3b3p3B0p7C0p7BE:3pF6(3p
20C,3pF6(3p13C,3p7BEp785(3p1B7,5p50p1BDn9\`size~`of~`linear~`syst
em~`is`(3n4\`length`p7A2(3p1B7,4p458p1BDpF3:3p1A3(3p1EC,3(3p201,2
(3n4\`numer`,2(3n4\`normal`,2+5p90p15(3p106,3(3p132,3=3p7EB(3p3F8
,3p90(3n3\`$`,3p173pB4p6E5(3p56,3p50(3p56,2(3p156,4p8A(3n4\`solve
`,3pF3pF6=3(3p772p164p617p1A0[2,3(3p132,3(3p3F8,3p608(3p834,3p173
+5pACp15pB4p1A0p6E5p608(3p1B7,5p15p1BDn9\`differential~`equation~
`is`p1A3?3=3p623p50(3p1Cp3E7(3p1B7,4p15p1BDnA\`computing~`initial
~`conditions`:3l2x0016(3n6\`gfun/initorder`,4p1A3p136p173f7p2C9p8
8Ap15p2p3C0;8:3p2D4(3p4B5,4(3p106,3=3p136(3p4B5,4p608=3p173p59p2C
9p34Dp8ABp2C9:3pF3(3p20C,3%2,2(3p132,3(3p56,3+5pB4p50p1A0p15p2D4=
3pB4~3p15+5(3n4\`iquo`,3p667p50p15p1A0p15p5C:3p340%2,2(3p846,3pF3
(3p13C,3pF3(3n4\`initeq`p164?3=3p340p187(3pA1,3nA\`incompatible~`
initial~`conditions`pF3?3<3p15(3p161p33F(3pA1,3n7\`several~`solut
ions`(3p56p33F:3p340(3p156,3@8p10Fp2,3n5\`operator`n4\`arrow`p2>3
p116p11Cp2p2p906?3=3p8FAp88An4\`break`?4p8E7p1A3(3p20C,3%2p3E7p34
0p2,2p757x0\x0\\#7x20309AEC@8,4n3\`fct`p110p79,5n4\`decomp`p2B8p2
B4p2B6p2p2;5?3!2(3p8A,3pCD(3n4\`ratpoly`,3p617p90(3pA1,2nA\`a~`ra
tional~`function~`is~`expected`:3p173(3p820p4DE:3p136(3p2CC,5*5(3
p81Bp342p15(3nA\`gfun/ratpolytocoeff/pretreat`,3(3p2CC,3[2,2(3p13
2,3(3n4\`factor`,3pAC(3p6C2,3pACp90=3pAC(3p132,3p64E=3pB4(3p56,3p
50(3(3n4\`readlib`,2p65A,2(3n4\`denom`p342n3\`*`p90p1A0n4\`parfra
c`p90p3C0?4(3p8A,3p136p4E3(3p10B,5n9\`gfun/ratpolytocoeff/redfrac
`p136p90p92(3p9B8,4p136p90p92p2p2x0\x0\\\#7x20307304@8,3p69n4\`yo
fn`,Ep2A8n3\`rec`p74p79n3\`eq`n3\`T`n5\`newinits`n4\`zero`p2B4n5\
`difforder`n3\`mi`n4\`symb`n3\`m`p2p2;Fp5FDpB3?4p14C;5:3p173p155?
3>3(3p161p342p15p167:3pAC(3p176,3pCDp173:3p173(3p56p342;3:3p173pC
D:3pACp187?3(3p8A,3p173p18E:3p173+5(3p56,3p50p173p15(3p56,3p15p17
3p1A0:3pF3@8,2p7Fp2,2n5\`remember`p2;3?3!2(3p8A,3pCDp242pA0n4\`_R
EC`p2p2:3pF3(3p66E,3=3p458p686p7E7:3pF6(3n6\`gfun/rectoinits`,8p1
73p136pB4pACu2p1A3u2p3B0u2p34D:3p32C(3p176,3%2,2(3p132,3(3p136p33
F=3p340~3p59+9p1A3p15p3B0p15p34Dp15p1A0p15%2,2(3p132,3(3p56,3p15p
340=3p340pF6:3p37A(3n6\`gfun/maxindex`,4p173p136pB4:3p173(3p820,2
(3p106,3=3pB4+5pB4p15p37Ap1A0(3p846,3p173(3p136,2+5pB4p15p37Ap15:
3pF3(3p106,5=3pA41p173=3p136.3n4\`proc`p9C=3u2p7FpB4p7E7f5pD8pF6p
3C0:3(3pF3,2(3p56,2p21Ap21Ff5pD8p32Cp3C0:3(3pF3,2(3p56,2pD8pD8p7E
7p2p2x0\x0\\\\\\\\\#7x20300B48p50x0\x0\\#7x2030C35C@8p2,Ap428n3\`
ex`p42Bp42Ep2A8p110p2BFp432p69p2p2;A?3p10(3p1C,2(3b3p0,2n6\`listt
odiffeq`,2(3p2B,3p50p12:3p340p4D:3p1A3p5C:3pACp455:3pD8(3p56,3p59
p1A3:3pF3(3p56p3E7:3p173p340f5pB4pACp3C0;5:3pF6(3p28A,5p17p173pF3
pB4(3p1B7,6p5Fp1BDp46CpB4pF6:3p136(3nB\`gfun/seriestodiffeq/serie
stodiffeq`,4pF6pF3pD8?3p484;3(3p1B7,7p50p1BDp48FpB4p493p136(3p1C,
2[2,3(3n6\`gfun/inicond`,5pF6p136pD8pF3pB4p486p2p2x0\x0\\\\\#7x20
309384@8p2p2p2p2;3?3p10(3p1C,2(3p28A,2(3p2B,3p15p12(3p1C,2(3b3p0,
2(3n3\`cat`,3n6\`listtoseries/`p455,3p4Dp5Cp2p2x0\x0\\\\\\\#7x203
00BB8@8,4p69p6Cn4\`foft`,Ap72p77p79p9EBp9E3p2B8n3\`t`p74p9DFp2p2;
10p5F5:3p173pAE:3pACpB6?4p14C;5:3p136(3p156,4p15ApCDpACp15E:3p1A3
p175p17C;3p182:3p1A3p187p189?3!2(3p8A,3p92p96pA0:3pF3p2DD:3pF6p2E
4?3=3pF3p173(3pA1,2nD\`choose~`a~`different~`name~`for~`the~`func
tion`:3p340(3pA52,7p136p173pACp1A3u2pD8u2pB4:3p136(3p201,2(3p106,
3p340(3p10B,8n8\`gfun/rectodiffeq_aux`p200p173pACpD8pF3pF6?3p8E7p
257:3p340(3n7\`gfun/recinittoeq`,4p340p173pF3:3p136(3p20C,3p24F(3
p156,3p90E(3p846,3p340(3p13C,3p340(3p8E2p7A2?4=3p160p15(3p1C,2p17
Ep257p2p2x0\x0\\#7x2030A3CC@8p2p2p2p2;3?3p10(3p1C,2(3b3p0,2n6\`se
riestoalgeq`,2(3p2B,3j2x0006p12(3p1C,2(3b3p0,2n5\`listtoalgeq`,5p
17p42p5Cp455p2p2x0\x0\\\\#7x2030E3EC@8p4AAp4ADp2p2(3p1C,2(3p4B5,4
(3p2CC,3[2,3p537(3n3\`O`,2^3p90p4DCp4E3p90p4DCp2p2x0\x0\\\\\\\\\\
\\\\\\\\\\\\\\\\\\\\\\#7x2030CCEC@8,4p69p2A4n4\`uofk`,Ep2A8p7Bp2A
An3\`u`n3\`k`p9DBp74p81p2B4p9D7n4\`debut`p2BFp2B6p2p2;1Bp5F5p5FDp
BB7(3n7\`gfun/verifyinits`,3pCDpAC?4p14C;5:3pF3pBBF?5=3p7A0p59(3p
A1,3n8\`found~`no~`equation~`in`p90<3p15p7A0(3pA1,2n9\`only~`one~
`equation~`allowed`:3pF6(3p176,3pCDpF3:3pF3p7E7;3:3pF3pCD:3pF6p18
7?3(3p8A,3pF3p18E:3pF3+5(3p56,3p50pF3p15(3p56,3p15pF3p1A0pBD0:3pB
4p2DD:3pD8p2E4?3(3p15A,3pF3pD8pA0f7p2p15p15p2(3p15A,3pF3p2D1:3pF3
(3p2CC,4pF3p3F8pAC:3pF3(3p201,2(3p81B,2(3p820p7A2:3p1A3(3p1A6,2(3
p106,3=3(3p136p41Bp59pF3:3p34D(3n6\`gfun/sg2coeff`,6pF3p136pACpB4
pD8(3p1B7,5p15p1BDn7\`the~`recurrence~`is`p34D:3pF6(3p20C,3pF6(3p
56,3p50(3n6\`gfun/initeqs`,4pF3p136pAC:3pF6(3n7\`gfun/eqinittorec
`,4(3n5\`gfun/solve`,3pF6(3p13C,3pF6p8E1p136pB4?4=3p1A3p59:3p3B0+
3(3n6\`gfun/minindex`,4p34DpB4pD8p1A0:3p3B0(3n3\`max`,3+5(3p693,3
p1A3pACp15p15p15pD94:3p32C%2,2(3p132,3+5(3p106,3=3pD8p340p34Dp15(
3p388,4p1A3pACp340p15=3p340~3p59+5p3B0p15p1A0p15:3pF6(3p20C,3pF6(
3p106,3(3p132,3=3p340p59=3p340(3p13C,3p32C(3pB4,2n4\`negint`p32C:
3p34D(3p1EC,3(3p201p34C(3p13C,3p34D(3pB4,2p617:3p173pF6:3pF6(3p15
6,3p90E(3pD81,3pF6(3p13C,3pF6(3pB4p143?3=3pF6p686(3pA1,3p8EDp173:
3p34D(3p20C,3(3p20C,3%2p34CpF6%2,2(3p132,3=3(3pB4p33F*5(3(3(3p33A
,3p2D1p340p164,2p59p15(3p123p33Fp1A0=3p340(3p10B,3p56(3p176,3%2,2
(3p132,3(3pB4,2p37A=3p37A~3p59+5(3n6\`gfun/difforder`pD9Bp15p1A0p
15(3p13C,3pF6pDF8?4=3(3p161p34Cp15(3p56p34Cp34Dp2p2x0\x0\#7x20318
CF0pC63x0\x0\\#7x2030BD04@8p2,7n5\`interres`p2A8p428p7Bp110p42Bp2
p2;12?3p10(3p1C,2(3b3p0,2n4\`guessgf`p447:3pB4p4Dp450:3pF3p455(3p
1B7,4p15p1BDnE\`Trying~`to~`find~`a~`rational~`generating~`functi
on`:3pAC(3p38,5p17pB4pD8pF3?3>3pACp486(3p1Cp41B(3p1B7,4p15p1BDn10
\`Trying~`to~`find~`an~`hypergeometric~`generating~`function`:3pA
C(3p43FpEB1pEB6(3p1B7,4p15p1BDnE\`Trying~`to~`find~`a~`linear~`di
fferential~`equation`:3p136(3pB00,5p17pB4(3p173pADBpF3?3=3p136p48
6(3p1C,2p486(3p1B7,4p15p1BDn7\`Trying~`to~`solve~`it`:3pAC(3n4\`d
solve`,3p19BpEF0?3pEB7(3p1C,2[2,3pACp195p486p2p2x0\x0\#7x2030F508
@8p4AA,3p2B4pBACp2p2;3:3n4\`Order`+5p4DCp15p15p15(3p1C,2(3p846,3=
3(3p4B5,3(3p2CC,3[2,3(3p132,3*7p4EFp15^3p173p136p15(3p123p164p1A0
p4F7^3p173pF29p4E3p173p90p173p2p2x0\x0\\\\\\\\\#7x20308D54@8p2,7p
428pAEEp42Bp42Ep2BFp110p2p2;5?4=3p11p17;4:3p173p4D:3pF3p5CpB14(3p
1C,2(3p38p447:3pF29p9FFf5pB4pACp3C0;5:3pD8pB2D(3p1B7,6p5Fp1BDp46C
pB4pD8:3p136(3p820,2(3p983,2(3p2CC,3pD8p94E?3&3<3+5(3p693,3(3p81B
p164pF3p15(3p693,3(3p9A2p164pF3p15pF29<3(3p808p164+5(3p808p342p15
j2x0020p15;3(3p1B7,7p50p1BDp48FpB4u2n5\`seems~`to~`be`p136(3p1C,2
[2,3p136pB4p486p2p2x0\x0\\\\\\\\\\\\\\\\\\\#7x2030C5EC@8p2p2p2p2;
3?3p10(3p1C,2(3b3p0,2n5\`seriestorec`pC5F(3p1C,2(3b3p0,2n5\`listt
orec`pC71p2p2x0\x0\#7x20313DF0@8p4AAp4ADp2p2(3p1C,2(3p4B5,4(3p2CC
,3[2,3p4EBpC8Dp4E3p90p4DCp2p2x0\x0\\\\#7x2030A614@8p2pAECp2p2;A?3
p10(3p1C,2(3pC6ApB08pB0EpB11pB14pB17pB1EpB23f5pB4pACp3C0;5pB2BpB3
4:3p136(3nB\`gfun/seriestoalgeq/seriestoalgeq`pB49?3p484;3pB50pFC
9p486p2p2x0\x0\\\\\\\\\#7x20314658p15x0\x0\\\\\\#7x20314688p5Fx0\
x0\\\\\\\\\\\\#7x20311EEC@8p2p2p2p2;3?3p10(3p1C,2(3b3p0,2n6\`seri
estodiffeq`pC5F(3p1C,2(3pB00pC71p2p2x0\x0\\\\\\#7x2030EF18@8p2p2p
2p2;3?3p10(3p1C,2(3b3p0,2n7\`seriestohypergeom`p29(3p1C,2(3p43Fp4
0p2p2x0\x0\\\#7x2030A730@8p2,6p2BFn4\`meth`p7Bp110p2B4p2p2;7?3p10
(3p1C,2(3p43,2(3p2B,3j2x0008p12:3p136p4D:3p173p5C:3pB4(3p56,3p59p
136?4=3(3p56,3+5p160p15p1A0p15p136(3pC8Ep14:3pAC[2,2(3p132,3(3p38
8,4p136pB4pD8=3pD8~3p59+5(3p56,3p160p136p15p1A0p15:3pAC[2,2(3p132
,3p10D7=3pD8~3p59p10E2?4=3p173p52pEBA(3p1C,2(3p43,4p17(3p28A,5p17
pACpB4p173p52p2p2x0\x0\\\\\\#7x20314764p59x0\x0\\\\\#7x2030C788@8
p2,9p428p42Bp42EpCA8p79p2BFp432p69p2p2;9?3p10(3p1C,2(3pFEFpB08:3p
1A3p4D:3pF6p5Cp453:3pB4(3p56,3p59pF6:3pD8(3p56pF5f5pACp173p3C0;5:
3pF3(3p26C,4p17p1A3pAC(3p1B7,6p5Fp1BDp46CpACpF3:3p136(3n9\`gfun/l
isttorec/listtorec`,4pF3pD8pB4p483p486p2p2x0\x0\#7x20314794@8p4AA
pF22p2p2;3pF28(3p1C,2(3p846,3=3(3p4B5,3(3p2CC,3[2,3(3p132,3*5p4EF
p15pF46p15p4F7pF4Fp4E3p173p90p173p2p2x0\x0\\\\\#7x2030C7B8@8p68p7
1p2p2;Fp87pABpB3pBA?3pCA;3pD7(3p1C,2(3p106,4(3p10B,3@8p10Fp2p2p2=
3p116*5p11Cp15p122p1A0p2p2p12Fp147pD8p14Bp189p1A2p1B1p1DE:3p136(3
p106,3pBB(3p1EC,3(3p1F1,3(3p10B,5u2n7\`gfun/exptoord_aux`p200pACp
B4pD8pD8p209?3p247:3p136(3p20C,3p24F(3p10B,3u2p11ACp173p257p2p2x0
\x0\\\\\\\\\`gfun`}}{INP_R 643 0 "> "{TEXT 0 5 "?gfun"}}{COM_R 
644 0{TEXT 1 106 "In addition to Maple code, the share library al
so contains other files.  The files ending with the suffix\012"}}
{COM_R 645 0{TEXT 1 42 "\012- .tex      -- are LaTeX or TeX src f
iles"}}{COM_R 646 0{TEXT 1 69 "- .dvi      -- are device independ
ent file (output from latex or tex)"}}{COM_R 647 0{TEXT 1 35 "- .
ps       -- are PostScript files"}}{COM_R 648 0{TEXT 1 35 "- .ms \+
      -- are Maple worksheets"}}{COM_R 649 0{TEXT 1 70 "- .in    \+
   -- are (plain text) Maple input files containing examples\012"
}}{COM_R 650 0{TEXT 1 276 "Files with no suffix are Maple src cod
e files.  The original Maple src code is there and available to t
he user should s/he wish to study it or modify it. Users who woul
d like to contribute Maple code or worksheets to the share librar
y are encouraged to do so.  Please contact\012"}}{COM_R 651 0
{TEXT 1 41 "\012Dr. Michael Monagan\012monagan@inf.ethz.ch\012"}}
{COM_R 652 0{TEXT 1 83 "Here is a brief summary of some of the ne
w routines/packages in the share library.\015"}}{COM_R 653 0{TEXT
 1 67 "- perm: a package of routines for computing with permutati
on groups"}}{COM_R 654 0{TEXT 1 58 "- guesss: A routine to guess \+
the next values in a sequence"}}{COM_R 655 0{TEXT 1 137 "- invar:
 a package of routines mainly for computing the invariant ring of
   permutation groups or finite linear groups over Q or Q(alpha)"
}}{COM_R 656 0{TEXT 1 56 "- macroC: a Maple package for generatin
g C language code"}}{COM_R 657 0{TEXT 1 77 "- BesselH: Implementa
tion of Hankel Functions in terms of BesselJ and BesselY"}}{COM_R
 658 0{TEXT 1 12 "- algcurve: "}}{COM_R 659 0{TEXT 1 76 "- pade2:
 computes a generalised Pade approximation of functions f1,f2,...
,fn"}}{COM_R 660 0{TEXT 1 54 "- intpak: an experimental interval \+
arithmetic package."}}{COM_R 661 0{TEXT 1 47 "- fft, fht: fast Fo
urier and Hartley transforms"}}{COM_R 662 0{TEXT 1 118 "- surface
s: a set of procedures to calculate basic differential-geometric \+
  quantities of parametric surfaces in space"}}{COM_R 663 0{TEXT 
1 56 "- sffge: row reduction of a sparse matrix of polynomials"}}
{COM_R 664 0{TEXT 1 71 "- genus: the genus of an algebraic curve \+
given by the polynomial f(x,y)"}}{COM_R 665 0{TEXT 1 131 "- normf
orm: a package of routines for computing matrix normal forms   Co
ntains: ismithex, smithex, frobenius, jordan, and ratjordan"}}
{COM_R 666 0{TEXT 1 62 "- puiseux: a Puiseux series expansion of \+
an algebraic function"}}{COM_R 667 0{TEXT 1 75 "- ratlode: the ra
tional solutions to a linear n'th order ODE in y(x) over Q"}}
{COM_R 668 0{TEXT 1 57 "- coxpoly: the coxeter polynomial of the \+
rooted cycletree"}}{COM_R 669 0{TEXT 1 50 "- relpoly: the reliabi
lity polynomial of a network"}}{COM_R 670 0{TEXT 1 61 "- GB: Buch
berger's Grobner bases algorithm over finite fields"}}{COM_R 671 
0{TEXT 1 52 "- integral_basis: of an algebraic number or function
"}}{COM_R 672 0{TEXT 1 76 "- FPS: tries to find a formula for the
 coefficients of a formal power series"}}{COM_R 673 0{TEXT 1 124 
"- fields: uses Grobner bases methods to answer questions about d
egrees of   algebraic field extensions and related questions"}}
{COM_R 674 0{TEXT 1 76 "- polycon: a package for analysis of poly
nomial and rational control systems"}}{COM_R 675 0{TEXT 1 63 "- f
jeforms: a new package for computing with differential forms"}}
{COM_R 676 0{TEXT 1 39 "- IntSolve: an integral equation solver"}
}{COM_R 677 0{TEXT 1 74 "- coxeter: procedures for studying roots
 systems and finite Coxeter groups"}}{COM_R 678 0{TEXT 1 127 "- w
eyl: for manipulating weight vectors and computing multiplicities
 for irreducible representations of semisimple Lie algebras"}}
{COM_R 679 0{TEXT 1 44 "- ratinterp: rational function interpolat
ion"}}{COM_R 680 0{TEXT 1 132 "- elliptic: determines the order o
f the group of points on a non-singular elliptic curve y^2 = x^3+
A*x+B over a finite field Z mod p"}}{COM_R 681 0{TEXT 1 182 "\012
In addition, new in this version of the share library are a selec
tion of approximately 60 worksheets showing applications of Maple
 in various disciplines, in education and research."}}{COM_R 682 
0{TEXT 1 15 "\012Miscellaneous\012"}}{COM_R 683 0{TEXT 1 101 "- C
onvert/binomial converts expressions involving factorials and GAM
MAs   into binomials, for example"}}{INP_R 684 0 "> "{TEXT 0 36 "
f := (n+1)!/k!/(n+1-k)!*(2*n)!/n!^2:"}}{INP_R 685 0 "> "{TEXT 0 
24 "f = convert(f,binomial);"}}{OUT_R 686 0 685{DAG =3*B(3n5\`fac
torial`,2+5n3\`n`j2x0001pBpBpB(3p3,2n3\`k`i2x0001(3p3,2+7p9pBpBpB
p13p15p15(3p3,2+3p9j2x0002pB(3p3,2p9i2x0002*5(3n5\`binomial`,3p8p
13pB(3p32,3p25p9pB}}{COM_R 687 0{TEXT 1 136 "- The combine/ln fun
ction takes an optional argument t to specify which type   (defau
lt type rational) of logs you want to combine, e.g."}}{INP_R 688 
0 "> "{TEXT 0 39 "f := a*ln(x)+3*ln(x)-ln(1-x)+ln(1+x)/2:"}}
{INP_R 689 0 "> "{TEXT 0 14 "combine(f,ln);"}}{OUT_R 690 0 689
{DAG +5*5n3\`a`j2x0001(3n3\`ln`,2n3\`x`p4p4(3p7,2*7pAj2x0003+5p4p
4pAi2x0001p19+5pAp4p4p4/3p4j2x0002p4}}{INP_R 691 0 "> "{TEXT 0 22
 "combine(f,ln,integer);"}}{OUT_R 692 0 691{DAG +7*5n3\`a`j2x0001
(3n3\`ln`,2n3\`x`p4p4(3p7,2+5pAp4p4p4/3p4j2x0002(3p7,2*5pAj2x0003
+5p4p4pAi2x0001p25p4}}{INP_R 693 0 "> "{TEXT 0 23 "combine(f,ln,a
nything);"}}{OUT_R 694 0 693{DAG (3n3\`ln`,2*9^3n3\`x`n3\`a`j2x00
01p6j2x0003+5pApAp6i2x0001p13+5p6pApApA/3pAj2x0002}}{COM_R 695 0
{TEXT 1 70 "- numerical comparisons against infinity and -infinit
y are now allowed"}}{INP_R 696 0 "> "{TEXT 0 22 "evalb( 5 < infin
ity );"}}{OUT_R 697 0 696{DAG n4\`true`}}{COM_R 698 0{TEXT 1 72 "
- new function: numboccur(a,b) count the number of occurrences of
 b in a"}}{INP_R 699 0 "> "{TEXT 0 34 "numboccur( expand(sin(20*x
)), x );"}}{OUT_R 700 0 699{DAG j2x0020}}{COM_R 701 0{TEXT 1 165 
"- The system function lprint has changed a little so that it's o
utput can be read back into Maple.  The lprint form of series has
 changed to output a series command."}}}{END}
