Le lundi 11 mars 2019 19:05:04 UTC+1, Michael Beeson a écrit :
>
> I appreciate Eric's post, and I do use subs sometimes, but it makes me
> nervous since
> it will happily substitute any old thing you tell it to, even an
> incorrect thing. So, if your idea
> is to check a computation, it is a dangerous thing.
>
In order to minimize the error risk in the substitution, note that you can
use the Python variable b defined as
b = sqrt(1-a^2)
in the argument of subs(), thereby avoiding any duplicate code. The whole
code becomes then
sage: var('p,q,r,a') # note: no b at this stage
(p, q, r, a)
sage: b = sqrt(1-a^2)
sage: eq = (p*a+r*b+q)^2
sage: eq = eq.expand(); eq
a^2*p^2 - a^2*r^2 + 2*sqrt(-a^2 + 1)*a*p*r + 2*a*p*q + 2*sqrt(-a^2 + 1)*q*r
+ q^2 + r^2
sage: eq.subs({b: SR.var('b')})
a^2*p^2 + 2*a*b*p*r - a^2*r^2 + 2*a*p*q + 2*b*q*r + q^2 + r^2
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.