Re: Hold and Equal
- To: mathgroup at smc.vnet.net
- Subject: [mg73745] Re: Hold and Equal
- From: David Bailey <dave at Remove_Thisdbailey.co.uk>
- Date: Tue, 27 Feb 2007 05:47:49 -0500 (EST)
- References: <erufqm$s7j$1@smc.vnet.net>
Murray Eisenberg wrote:
> 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.
>
>
>
>
Murray,
Here is one way - creating the expression at the box level:
x=(a+b)^2
RowBox[{ToBoxes[x],"=",ToBoxes[Expand[x]]}]//DisplayForm
David Bailey
http://www.dbaileyconsultancy.co.uk