1 | initial version |

Looking at the source of `desolve`

the difference is in how the variable `tempic`

is set, namely the offending expression is `(dvar==ics[1])._maxima_()`

:

```
sage: (y == e)._maxima_()
%e='y(_SAGE_VAR_t)
```

versus

```
sage: (y == 1*e)._maxima_()
'y(_SAGE_VAR_t)=%e
```

So it seems that the interface to Maxima cannot be trusted to preserve the ordering LHS = RHS of an equation. This looks like a bug to me, which should be reported.

2 | No.2 Revision |

Looking at the source of `desolve`

the difference is in how the variable `tempic`

is set, namely the offending expression is `(dvar==ics[1])._maxima_()`

:

`sage: `~~(y ~~y == ~~e)._maxima_()
%e='y(_SAGE_VAR_t)
~~e
e == y(t)

versus

`sage: `~~(y ~~y == ~~1*e)._maxima_()
'y(_SAGE_VAR_t)=%e
~~1*e
y(t) == e

So it seems that ~~the interface to Maxima ~~Sage cannot be trusted to preserve the ordering LHS = RHS of an equation. This ~~looks like ~~is definitely a bug ~~to me, ~~which should be reported.

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.