Re: Canceling square roots with Simplify
- To: mathgroup at smc.vnet.net
- Subject: [mg18467] Re: [mg18211] Canceling square roots with Simplify
- From: Lars Hohmuth <larsh at wolfram.com>
- Date: Wed, 7 Jul 1999 23:08:35 -0400
- Organization: Wolfram Research, Inc.
- References: <7l3n9l$ggj@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
"Ersek, Ted R" wrote:
> Earlier I replied to a message where Everett Farr asked why
> Simplify[ Sqrt[b^2]*Sqrt[1/b^2] ]
> doesn't simplify to 1.
>
> As already noted by Adam Strzebonski the expression above isn't equal to 1
> for all values of (b). One counter example is when (b=I).
>
> For basically the same reason the rule I thought is missing from the
> Simplify routine isn't true in general and shouldn't be included.
>
> The rule that isn't true in general is:
> ----------------
> MyRules= {
> ((zb_^(-1*z1_))^(z2_)):>((zb^z1)^(-z2)),
> ((zb_^p_?Negative)^z2_):>(zb^(-p))^(-z2) };
> ----------------
>
> As Adam Strzebonski noted one can use PowerExpand get the expected result.
> Also using version 4 one can use Simplify/FullSimplify and indicate certain
> variables are part of a specific domain to get the expected result.
>
> Regards,
> Ted Ersek
>
As Ted pointed out already, Mathematica 4 also accepts assumptions in Simplify.
For example:
In[110]:=
Simplify[Sqrt[b^2]*Sqrt[1/b^2]]
Out[110]=
Sqrt[1/b^2]*Sqrt[b^2]
In[111]:=
Simplify[Sqrt[b^2]*Sqrt[1/b^2], b > 0]
Out[111]=
1
Lars Hohmuth
Wolfram Research, Inc.