The following example has been a cornerstone in the computer lab exercises for Calculus II:

a := n -> (-1)^n*arctan(n):

Limit( a(n), n=infinity ):

% = value( % );

/ n \ 1 1 1 1

lim \(-1) arctan(n)/ = - - Pi - - I Pi .. - Pi + - I Pi

n -> infinity 2 2 2 2

In Maple 13 the result is -Pi/2 .. Pi/2. This is understandable, acceptable, and explained in a "learning moment" for the students.

The complex valued result in Maple 16 is understandable to me but the students are not in a position where they know about complex valued functions of a complex variable. I do not see how I can use realistically take advantage of Maple's response.

Other examples that illustrate similar behavior include:

b := n -> (1+(-1)^n*n)/(1+n):

Limit( b(n), n=infinity ):

% = value( % );

/ n \

|1 + (-1) n|

lim |-----------| = -1 - I .. 1 + I

n -> infinity \ n + 1 /

c := n -> (-1)^n*cos(1/n):

Limit( c(n), n=infinity ):

% = value( % );

/ n /1\\

lim |(-1) cos|-|| = -1 - I .. 1 + I

n -> infinity \ \n//

If I use the RealDomain package, the results are exactly what we might expect:

restart;

with( RealDomain );

[Im, Re, ^, arccos, arccosh, arccot, arccoth, arccsc, arccsch,

arcsec, arcsech, arcsin, arcsinh, arctan, arctanh, cos, cosh,

cot, coth, csc, csch, eval, exp, expand, limit, ln, log, sec,

sech, signum, simplify, sin, sinh, solve, sqrt, surd, tan, tanh

]

a := n -> (-1)^n*arctan(n):

Limit( a(n), n=infinity ):

% = value( % );

/ n \

lim \(-1) arctan(n)/ = undefined

n -> infinity

b := n -> (1+(-1)^n*n)/(1+n):

Limit( b(n), n=infinity ):

% = value( % );

/ n \

|1 + (-1) n|

lim |-----------| = undefined

n -> infinity \ n + 1 /

c := n -> (-1)^n*cos(1/n):

Limit( c(n), n=infinity ):

% = value( % );

/ n /1\\

lim |(-1) cos|-|| = undefined

n -> infinity \ \n//

From prior experience, the RealDomain package has some real drawbacks. Has it been improved to the point where it is something that can (should) regularly be used by and with students?

Does anyone have any good ways to get around this problem?

I'll close with a request to Maplesoft that the system can be improved so that problems like this do not arise. A huge step forward for the limit of a sequence of numbers (such as these) would be a limit function that realizes that the index of the terms is an integer - and use this in computations such as these limits to yield a result that is easily understood by the students.

Doug

---------------------------------------------------------------------
Douglas B. Meade <><
Math, USC, Columbia, SC 29208 E-mail: mailto:meade@math.sc.edu
Phone: (803) 777-6183 URL: http://www.math.sc.edu