strange behavior or bug on ode2



On Fri, Nov 12, 2004 at 05:34:49PM +0200, Alexander Vidybida wrote:
> On Wed, Nov 10, 2004 at 10:06:42AM -0600, Barton Willis wrote:
> > Illustration of what I mean by "work too hard to try to apply the 
> > even / odd function simplifications"
> > 
> > (%i1) assume(x<0);
> > (%o1)                               [x < 0]
> > (%i2) sin(x);
> > (%o2)                             - SIN(- x)
> > 
> > It seems gratuitous to apply the odd function rule in this case.  We need
> > a reasonable heuristic for deciding when to apply the even / odd
> ...
> 
> The above transformation seems methodologically wrong. 
> In a symbolic system, the '-' sign presence should trigger simplification,
> but not the argument's positivity/negativity. Thus, after the odd function rule
>  application, we should have:
> 
>  sin(-x) goes to -sin(x) independently of what is known about the x sign,
>  and, of course,
>  sin(x) goes to sin(x), again independently of what is known about the x sign.

Just have observed more unnecessary work:

(%i20) ieq2;

                                 1 - x
                 q - q x        /
               %E        f(x)   [                  - q x     - q
(%o20)         -------------- - I      f(y) dy = %E      - %E
                     q          ]
                                /
                                 0
(%i21) ieq3:subst(1-x,x,%);

          0
         /                       q - q (1 - x)
         [            f(1 - x) %E                  - q (1 - x)     - q
(%o21)   I  f(y) dy + ------------------------ = %E            - %E
         ]                       q
         /
          x


Here, swapping of neither terms, nor integration limits was expected.
I would prefer to have both unswapped.


(%i23) SOLVE(ieq3,f(1-x)),expand;

                                  0
                                 /
                           - q x [                - q x - q       - q
(%o23)   [f(1 - x) = - q %E      I  f(y) dy - q %E          + q %E   ]
                                 ]
                                 /
                                  x
 
If the integration limits were swapped in order to hide the 'minus' sighn, 
than it would be normal to swap them back here.
 
 Best wishes,
 --
 Alexander