       Re: Simplify and Abs

• To: mathgroup at smc.vnet.net
• Subject: [mg54678] Re: Simplify and Abs
• From: Peter Pein <petsie at arcor.de>
• Date: Fri, 25 Feb 2005 01:20:13 -0500 (EST)
• References: <cvk3fu\$d6j\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```Simon Anders wrote:
> Hi,
>
> can it really be that this is already beyond Mathematica?
>
>     In :=  FullSimplify[Abs[p - 1], p < 1 && p > 1/2]
>
>     Out := Abs[-1 + p]
>
> How do I make Matheamtica notice, that the assumptions constrain the
> argument of Abs[] to positive values?
>
> Any suggestions how to treat these kinds of problems? Specifically, I
> have a list of products of absolute values of simple polynomials in p
> and I know that p is in the interval [0,1].
>
> I would like to know whether the polynomials have constant sign over the
> interval so that the Abs[] can be removed. Can this be done automatically?
>
> TIA
>    Simon
>

Hi Simon,

In:=
TableForm[({#1, FullForm[#1]} & ) /@ {Abs[p - 1], 1 - p}]

Out//TableForm=
Abs[-1 + p]   Abs[Plus[-1, p]]
1 - p    Plus[1, Times[-1, p]]

as the internal representation of 1-p is slightly more complicated, than
the one of Abs[p-1], FunctionExpand[Abs[p - 1], 1/2 < p < 1] is more
appropriate, than (Full)Simplify.

But you can lead Simplify[] to the desired result by means of the
option ComplexityFunction:

Simplify[Abs[p-1],1/2<p<1,