MathGroup Archive 2013

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Replacing spurious Abs

  • To: mathgroup at
  • Subject: [mg130858] Re: Replacing spurious Abs
  • From: Bill Rowe <readnews at>
  • Date: Tue, 21 May 2013 04:21:06 -0400 (EDT)
  • Delivered-to:
  • Delivered-to:
  • Delivered-to:
  • Delivered-to:

On 5/21/13 at 12:02 AM, at

>Sometimes I get Abs[exp] from Simplify or Integrate, when it should
>be simply exp. Is there a simple way to get rid of the Abs, when exp
>may be an arbitrarily complex expression?  Something like
>/.Abs[#]->#?  Thanks.

In[1]:= Abs[exp] /. Abs[a_] -> a

Out[1]= exp

But keep in mind this is a literal syntax replacement which may
not be mathematically valid. That is you can do something like

In[2]:= Sqrt[2] /. Sqrt[a_] -> a

Out[2]= 2

Turning Sqrt[2] into 2 which is clearly not mathematically valid.

Another approach would be

In[3]:= Assuming[exp > 0, Simplify@Abs[exp]]

Out[3]= exp

which is a mathematically valid operation given the assumption
exp>0 is true. And this last can be done as:

In[4]:= Abs[exp] // Assuming[exp > 0, Simplify@#] &

Out[4]= exp

which is often handy

  • Prev by Date: Can't get FindMinimum[] to quit using value specified by
  • Next by Date: Re: Replacing spurious Abs
  • Previous by thread: Re: Replacing spurious Abs
  • Next by thread: NSolve Question