Re: Hold and Equal
- To: mathgroup at smc.vnet.net
- Subject: [mg73735] Re: Hold and Equal
- From: Peter Pein <petsie at dordos.net>
- Date: Tue, 27 Feb 2007 05:42:23 -0500 (EST)
- References: <erufqm$s7j$1@smc.vnet.net>
Murray Eisenberg schrieb:
> How can I produce in an Output cell (under program control) an
> expression like the following,
>
> (a+b)^2 = a^2+ 2 a b + b^2
>
> where instead of the usual Equal (==) I get a Set (=), as in traditional
> math notation? I want to input the unexpanded (a+b)^2 and have the
> expansion done automatically.
>
> Of course, I can try something like the following:
>
> (a+b)^2 == Expand[(a+b)^2])
>
> So how do I convert the == to =? Of course
>
> ((a + b)^2 == Expand[(a + b)^2]) /. Equal -> Set
>
> gives a Set::write error. And
>
> (Hold[(a + b)^2 == Expand[(a + b)^2]]) /. Equal -> Set
>
> doesn't actually evaluate the Expand part and leaves the "Hold" wrapper.
>
>
After trying a while, I found
HoldForm[#1 = #2] & @@ Through[{Identity, Expand}[(a + b)^2]]
but I guess there is an easier way.
Peter