posible bug - clashing variable names in integrals




On Sat, 3 Oct 2009, Nathaniel Virgo wrote:

< Ok, sorry, yes, I think I understand this now.  So it's not a bug per se
< that 'is' returns 'false' in that situation.
< 
< It is, however, still annoying that it doesn't treat integrate(f(x),x,a,b)
< in exactly the same way as integrate(f(y),y,a,b).  It should do because x
< and y are bound variables in those expressions, so their name should not
< make any difference in any situation.  This difference in the way it treats
< these two expressions is likely to be a problem for a lot of the things I
< wanted to use Maxima for.
 
Again, in integrate, there is no such thing as a bound variable, because
Maxima integrates an expression. What you are calling a bound variable
may already appear elsewhere in your expression (as in the example I
gave).

Incidentally, for the same reason, I believe that the behaviours that
Barton described with sum and lambda are incorrect. 

Would 'changevar' be of any help for you? e.g.

(%i85) A: integrate(f(x),x,a,b);
(%o85) 'integrate(f(x),x,a,b)
(%i86) B: integrate(f(y),y,a,b);
(%o86) 'integrate(f(y),y,a,b)
(%i87) B: changevar(B,part(B,2)-part(A,2),part(A,2),part(B,2));
(%o87) 'integrate(f(x),x,a,b)
(%i88) is(equal(A,B));

Maybe 'equal' sh/could be extended by adding an option that allows the user
to say that variables of integration/summation, etc. should be
treated as bound variables.

Leo

-- 
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.