X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=check%2Fexam_paranoia.cpp;h=52d261c8b46712962084e373de2de19ae28603c2;hp=5fdfb350dab6165fda50c0a7558535010ebbaee8;hb=798d53ebb4da4e8e3865ed7bd7f31412fe2be3a7;hpb=f9afb6aca6a971650dff63b11ca8c2ef18506690 diff --git a/check/exam_paranoia.cpp b/check/exam_paranoia.cpp index 5fdfb350..52d261c8 100644 --- a/check/exam_paranoia.cpp +++ b/check/exam_paranoia.cpp @@ -494,6 +494,24 @@ static unsigned exam_paranoia19() return 0; } +// Bug in expairseq::is_polynomial (fixed 2011-05-20). +static unsigned exam_paranoia20() +{ + unsigned result = 0; + symbol x("x"); + ex e1 = sqrt(x*x+1)*sqrt(x+1); + if (e1.is_polynomial(x)) { + clog << "sqrt(x*x+1)*sqrt(x+1) is wrongly reported to be a polynomial in x\n"; + ++result; + } + ex e2 = sqrt(Pi)*x; + if (!e2.is_polynomial(x)) { + clog << "sqrt(Pi)*x is wrongly reported to be no polynomial in x\n"; + ++result; + } + return result; +} + unsigned exam_paranoia() { unsigned result = 0; @@ -519,6 +537,7 @@ unsigned exam_paranoia() result += exam_paranoia17(); cout << '.' << flush; result += exam_paranoia18(); cout << '.' << flush; result += exam_paranoia19(); cout << '.' << flush; + result += exam_paranoia20(); cout << '.' << flush; return result; }