       Simplify, SetDelayed and Condition ... again

• To: mathgroup at smc.vnet.net
• Subject: [mg52476] Simplify, SetDelayed and Condition ... again
• From: alvaro diaz <alvarodiazfalconi at yahoo.com>
• Date: Sun, 28 Nov 2004 01:07:19 -0500 (EST)
• Sender: owner-wri-mathgroup at wolfram.com

```This is True

>ClearAll[f,x]
>Assuming[x>0,Simplify[3x>0]]
--- True

Now define a function f[x] that f[x]:=3x/;x>0

1st try

>ClearAll[f]
>f[x_]:=3x/;x>0
>FullSimplify[f[x]>0,x>0]
>Assuming[x>0,FullSimplify[f[x]>0]]

--- f[x]>0
--- f[x]>0
--- f[x]>0

2nd try

>ClearAll[f]
>f[x_]:=3x/;Assuming[\$Assumptions,x>0]
>FullSimplify[f[x]>0,x>0]
>Assuming[x>0,FullSimplify[f[x]>0]]

--- f[x]>0
--- f[x]>0

3st try

>ClearAll[f]
>f[x_]:=3x/;FullSimplify[x>0]
>FullSimplify[f[x]>0,x>0] (* 1 *)

--- f[x]>0
--- f[x]>0

but ...

>Assuming[x>0,Simplify[f[x]>0]]

--- True

FullSimplify is not hold. Why do not work (* 1 *)?

>Attributes/@{Condition,Function,FullSimplify}
---{{HoldAll,Protected},{HoldAll,Protected},{Protected}}

And the really question ... I need to modify Condition
to work better? Or there are another way without
FullSimplify in Condition?

For example, define a norm that

>norm[z_]:=Abs[z]/;FullSimplify[Element[z,Complexes]]

then

>Assuming[Element[z,Complexes],Simplify@norm[z]]

--- Abs[z]

but fail

>FullSimplify[norm[z],Element[z,Complexes]]

--- norm[z]

Alvaro.

__________________________________
Do you Yahoo!?
Read only the mail you want - Yahoo! Mail SpamGuard.
http://promotions.yahoo.com/new_mail

```

• Prev by Date: Re: On constants and D's behaviour
• Next by Date: a bug in many variables integration ?
• Previous by thread: Re: Integration of piecewise function
• Next by thread: a bug in many variables integration ?