Hi! It is time to open the discussion in this mailing list, since all developers seem to be subscribed. I found a problem with normal() which did not exist in older versions of GiNaC, but I have not found out yet when exactly it broke: symbol z("z"); symbol a("a"); ex e=-(z+1)/(2*a-1)+2*(z+1)*a/(2*a-1); cout << "e=" << e << endl; //e.printtree(cout); cout << "e.normal()=" << e.normal() << endl; //e.normal().printtree(cout); cout << "e.normal().normal()=" << e.normal().normal() << endl; //e.normal().normal().printtree(cout); gives e=(2*a-1)^(-1)*(-z-1)+(2*a-1)^(-1)*(2*z+2)*a e.normal()=(2*a-1)^(-1)*(2*a*z-z+2*a-1) e.normal().normal()=z+1 The printtree() output looks reasonable. -- Alexander Frink E-Mail: Alexander.Frink@Uni-Mainz.DE Institut fuer Physik Phone: +49-6131-393391 Johannes-Gutenberg-Universitaet D-55099 Mainz, Germany
On Thu, 9 Sep 1999, Alexander Frink wrote:
I found a problem with normal() which did not exist in older versions of GiNaC, but I have not found out yet when exactly it broke:
I tried several old versions, and it seems that this bug has been present for quite a long time, since end of May. On May 28, it still worked. On May 29, 30 and 31, the test produces a division by zero error Beginning with Jun 01, normal() does not work as expected. The division by zero problem was probably introduced by a change in numeric.cpp, checked in May 28 18:59, and fixed May 31 18:24, the only other files which changed were normal.h and normal.cpp, checked in May 31 18:24 and 19:00 resp. -- Alexander Frink E-Mail: Alexander.Frink@Uni-Mainz.DE Institut fuer Physik Phone: +49-6131-393391 Johannes-Gutenberg-Universitaet D-55099 Mainz, Germany
On Fri, 10 Sep 1999, Alexander Frink wrote: [...]
I tried several old versions, and it seems that this bug has been present for quite a long time, since end of May.
On May 28, it still worked. On May 29, 30 and 31, the test produces a division by zero error Beginning with Jun 01, normal() does not work as expected.
The division by zero problem was probably introduced by a change in numeric.cpp, checked in May 28 18:59, and fixed May 31 18:24, the only other files which changed were normal.h and normal.cpp, checked in May 31 18:24 and 19:00 resp.
Just coming back from Linux-congress I won't be abe to work on this till monday, but it may all have to do still with that now fixed CLN-bug if you consider the timely coincidence. Please have a look at the comment before the procedure numeric_consist2() in file check/numeric_consist.cpp and you'll see what I mean! To be cont'd next week... -richy. -- Richard Kreckel <Richard.Kreckel@Uni-Mainz.DE> <http://wwwthep.physik.uni-mainz.de/~kreckel/>
participants (2)
-
Alexander Frink
-
Richard B. Kreckel