Karim BELABAS on Thu, 2 Mar 2000 19:04:50 +0100 (MET) |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: bug in gsincos? |
> ? sin(x+x*y) > [ result ok ] > ? sin(x+y) > *** incorrect type in gsincos. > > I think the latter result is a bug. Do not we allow power series with > coefficients being power series? The general workhorse for transcendental functions (in charge of adjusting the "non-transcendental" arguments), assumes the prototype is f(x, prec). This didn't apply to gsincos (which computes sine and cosine simultaneously), so the initial adjustment was skipped. That was not always a good idea.... Karim. P/S: CVS archive updated. Index: src/basemath/trans1.c =================================================================== RCS file: /home/megrez/cvsroot/pari/src/basemath/trans1.c,v retrieving revision 1.14 diff -c -r1.14 trans1.c *** src/basemath/trans1.c 2000/02/15 17:09:11 1.14 --- src/basemath/trans1.c 2000/03/02 17:57:10 *************** *** 1571,1576 **** --- 1571,1590 ---- } } return; + /* transc doesn't work for this prototype */ + case t_QUAD: + av = avma; p1=gmul(x,realun(prec)); tetpil = avma; + gsincos(p1,s,c,prec); + gptr[0]=s; gptr[1]=c; + gerepilemanysp(av,tetpil,gptr,2); + return; + + case t_POL: case t_RFRAC: case t_RFRACN: + av = avma; p1=tayl(x,gvar(x),precdl); tetpil=avma; + gsincos(p1,s,c,prec); + gptr[0]=s; gptr[1]=c; + gerepilemanysp(av,tetpil,gptr,2); + return; } err(typeer,"gsincos"); } __ Karim Belabas email: Karim.Belabas@math.u-psud.fr Dep. de Mathematiques, Bat. 425 Universite Paris-Sud Tel: (00 33) 1 69 15 57 48 F-91405 Orsay (France) Fax: (00 33) 1 69 15 60 19 -- PARI/GP Home Page: http://www.parigp-home.de/