I am pretty sure this is a bug.
(%i1) load(noninteractive)$
(%i2) declare(m,integer,n,integer)$
(%i3) assume(n>0,m>0);
(%o3) [n>0,m>0]
(%i4) integrate(sin(m*x)*sin(n*x),x,0,2*%pi);
(%o4) if n-m<0 then 0 elseif equal(n-m,0) then 0 else 0
Rich
----- Original Message -----
From: "Edwin Woollett" <woollett at charter.net>
To: "maxima mailing list" <maxima at math.utexas.edu>
Sent: Tuesday, September 09, 2008 3:15 PM
Subject: integrate returns undefined
> integrate(..) returns undefined when it
> should know the answer.
>
> (%i1) declare( [ m, n ], integer )$
> (%i2) assume ( m > 0, n > 0 )$
> (%i3) integrate( cos(m*x)^2, x, 0, 2*%pi );
> (%o3) %pi
> (%i4) integrate( cos(m*x)*cos(n*x), x, 0, 2*%pi );
> Is n - m positive, negative, or zero?
>
> zero;
> (%o4) undefined
>
> Is this a known bug?
>
> Ted Woollett
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima