Should return 1 but returns 0 if cos(x) is declared
Strange enough, if cos(x) is declared zero, maxima
returns the correct result.
Logged In: YES
The hint that the result is correct if cos(x) is declared
zero is key.
It seems the problem is in sin-cos-intsubs1 in defint.lisp.
There's a clause there:
\(\(not \(equal \($asksign denom\) '$zero\)\)
This seems bizarre. If the denom is not zero, why should it
return 0? My limited understanding is that sin-cos-intsubs1
is supposed to substitute the limits of the integral into
the indefinite integral. (Which, by the way is correctly
computed by antideriv.)
Changing it to read (equal ($asksign denom) '$zero)) makes
more sense, but I don't know about returning zero as the
result. Undefined or infinity seems better, if a choice
must be made.
Fixed as described, but we return '$undefined instead of 0,
for want of a better solution. Seems better than 0 anyway.
Log in to post a comment.
Sign up for the SourceForge newsletter:
You seem to have CSS turned off.
Please don't fill out this field.