Since such a transformation is not generally valid, it is disallowed (e.g.
if a = -1 then your expression would give 1 while the "simplified" version
would give -1). The transformation *is* valid if 'a' is positive, so you
can either create a with a positive assumption

>>> a = Symbol('a', positive=True)
>>> (a**2)**.5
a

or let posify handle the conversion:

>>> eq
(a**2)**0.5
>>> posify(eq)
(_a**1.0, {_a: a})
>>> p, r = posify(eq);     p.subs(r)
a

Chris

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to