From: Heike Koch-Beuttenmueller Subject: Re: Bug in Maple's normal function? Date: Fri, 28 May 1999 10:37:14 +0200 Newsgroups: sci.math.symbolic Keywords: Symbolic algebra problems cannot all compute this limit Helmut Kahovec wrote: > > Serguei Miridonov wrote: > > > I've traced the execution of the statement "limit(expr,limpoint);" and > > have not found that it called 'series'. It tries the function 'normal' for > > the original expression at the limit point and since 'normal' returned > > zero without error (see my first posting in this thread), the calling > > function 'limit' considers that the initial expression can be calculated > > directly at this point. > > Well, I have to apologize. Inspection of the source code shows that in > Release 4 limit() calls `limit/limit`(), `limit/series`(), and series(), > respectively. In Release 5 the source code that is executed in this case > has been changed completely: apparently, limit() does not call either of > those procedures. By the way, with Release 4 you get the correct result, > anyway: > > > restart; > > expr:=xi*R*(exp(xi*R+xi-1)-1)/(xi*R+xi-1); > > xi R (exp(xi R + xi - 1) - 1) > expr := ----------------------------- > xi R + xi - 1 > > > limpoint:=xi=1/(R+1); > > 1 > limpoint := xi = ----- > R + 1 > > > limit(expr,limpoint); > > R > ----- > R + 1 > > > limit(eval(subs(O=0,series(expr,limpoint))),limpoint); > > R > ----- > R + 1 > > > limit(simplify(eval(subs(O=0,series(expr,limpoint)))),limpoint); > > R > ----- > R + 1 > > Helmut Because there are such a lot of discussions I got interested how other CAS can handle this limit: Axiom: (3) -> a1 (R + 1)xi - 1 R xi %e - R xi (3) --------------------------- (R + 1)xi - 1 Type: Expression Integer (4) -> limit(a1,xi=1/(R+1)) R (4) ----- R + 1 Reduce: REDUCE 3.6, 15-Jul-95, patched to 9 Apr 97 ... 1: xi*R*(exp(xi*R+xi-1)-1)/(xi*R+xi-1); r*xi + xi r*xi*(e - e) ----------------------- e*(r*xi + xi - 1) 2: limit(ws(1),xi,1/(R+1)); r ------- r + 1 Mathematica: In[1]:= expr=xi*R*(Exp[xi*R+xi-1]-1)/(xi*R+xi-1) -1 + xi + R xi (-1 + E ) R xi Out[1]= --------------------------- -1 + xi + R xi In[2]:= Limit[expr,xi->1/(R+1)] 1 Power::infy: Infinite expression - encountered. 0 Out[2]= ComplexInfinity Macsyma: (c1) xi*R*(exp(xi*R+xi-1)-1)/(xi*R+xi-1); r xi + xi - 1 r xi (%e - 1) (d1) -------------------------- r xi + xi - 1 (c2) limit(d1,xi,1/(R+1)); Is r positive, negative, or zero? positive; r 1 r xi + xi + ----- + ----- - 1 r + 1 r + 1 r xi %e (d2) limit (------------------------------------ xi -> 0 r 1 r xi + xi + ----- + ----- - 1 r + 1 r + 1 r 1 r xi + xi + ----- + ----- - 1 r + 1 r + 1 r %e r xi + --------------------------------------- - ----------------------------- r 1 r 1 (r + 1) (r xi + xi + ----- + ----- - 1) r xi + xi + ----- + ----- - 1 r + 1 r + 1 r + 1 r + 1 r - ---------------------------------------) r 1 (r + 1) (r xi + xi + ----- + ----- - 1) r + 1 r + 1 and this was Maple V r 5.0: expr:=xi*R*(exp(xi*R+xi-1)-1)/(xi*R+xi-1); xi R (exp(xi R + xi - 1) - 1) expr := ----------------------------- xi R + xi - 1 > limit(expr,xi=1/(R+1)); 0 It seems to be a difficult limit. Mit freundlichen Grüßen Heike Koch-Beuttenmüller ======================================================= Dr. Heike Koch-Beuttenmüller Universität Ulm Universitätsrechenzentrum Albert-Einstein-Allee 11 D-89081 Ulm Germany e-mail: Heike.Koch-Beuttenmueller@rz.uni-ulm.de Telefon: 0731 5022465 =======================================================