| 1 | initial version |
No this is not a bug. It's just a name clash. It's documented that the notation
u(t)= ...
binds t to a symbolic variable as well as binds u to the right hand side.
As far as sage is concerned you could have a symbolic function with print name u as well as a symbolic variable with print name u. However, maxima does not support that, so you'd run into problems pretty quickly. It also doesn't add to clarity for the human reader:
sage: function('g')
g
sage: G=SR.var('g')
sage: g(G)
g(g)
sage: diff(g(G),G)
D[0](g)(g)
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.