MathGroup Archive 2002

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

Search the Archive

Re: Re: parameter restrictions

  • To: mathgroup at smc.vnet.net
  • Subject: [mg32460] Re: [mg32442] Re: [mg32428] parameter restrictions
  • From: Andrzej Kozlowski <andrzej at tuins.ac.jp>
  • Date: Tue, 22 Jan 2002 03:19:25 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

The way to do this sort of thing is completely different. The usage of 
parameters for pattern matching  has nothing to do with deduction of one 
condition form another. The latter is done with Simplify and 
FullSimplify. Unfortunately your conclusion involves symbolic exponents 
the methods used by Simplify and FullSimplify do not work at present 
with symbolic exponents. In other words Mathematica can't answer this:

In[1]:=
Simplify[x^a>0,{x>0,a>0}]

Out[1]=
x^a > 0

So this will not work:

In[2]:=
f[x_,a_,b_]:=-x^(a+b)

In[3]:=
Simplify[D[f[x,a,b],{x,2}]>0,{x>0,a>0,b>0, (a+b)<1}]

Out[3]=
0 > (-1 + a + b)*(a + b)*x^(-2 + a + b)

One way to deal with this is to replace the symbolic power of x by some 
other variable, say t, and tell Mathematica that t is >0:

In[4]:=
Simplify[(D[f[x,a,b],{x,2}]/.x^a_:>t)>0,{(a+b)<1,a>0,b>0,z>0,t>0}]

Out[4]=
True

Of course if the exponent of x is a number Mathematica has no problem 
with this sort of thing:

In[5]:=
Simplify[0>(-1+a+b)*(a+b)*x^53,{x>0,a>0,b>0, (a+b)<1}]

Out[5]=
True


Andrzej Kozlowski
Toyama International University
JAPAN
http://platon.c.u-tokyo.ac.jp/andrzej/




On Monday, January 21, 2002, at 04:54  PM, soso lala wrote:

> Hi
>
> Thanks for your answer. Unfortunately, it does not work like this. 
> Consider
> the following example:
>
> Clear[f,x,a,b]
> f[x_,a_,b_]:= -x^(a+b)
>
> The second derivation with respect to x is:
> D[f[x,a,b],{x,2}]
> -(-1+a+b)(a+b)x^(-2+a+b)
>
> Given that x>0,a>0,b>0 and (a+b)<1 this derivation is unambiguously
> positive. I have tried to show this with Mathematica in the manner 
> proposed:
>
> Clear[f,x,a,b]
> f[x_?Positive,a_?Positive,b_?Positive]:= -x^(a+b) /; (a+b)<1
>
> Now, if I write
>
> D[f[x,a,b],{x,2}]>0
>
> I would expect the output
>
> TRUE
>
> but I receive
>
> f^(2,0,0)[x,a,b]>0
>
> Can somebody tell me where the mistake is or how I must define parameter
> restrictions?
>
> Thanks for your efforts
>
> Jack
>
>
>> From: BobHanlon at aol.com
To: mathgroup at smc.vnet.net
> To: mathgroup at smc.vnet.net
>> Subject: [mg32460] [mg32442] Re: [mg32428] parameter restrictions
>> Date: Sat, 19 Jan 2002 20:47:10 EST
>>
>>
>> In a message dated 1/19/02 8:05:36 PM, sosolala at hotmail.com writes:
>>
>>> I am using Mathematica 4.0 and have a question about parameter
>> restrictions.
>>>
>>> How can I define the range of values of a parameter, e.g. that alpha 
>>> must
>>> be
>>> positive or that (alpha + beta) must be less than unity?
>>>
>>> Although it may be a very simple question (and/or answer) I would be
>>> delighted if I get an answer.
>>>
>>
>> f[x_, a_?Positive] := a*x;
>>
>> f[x_, a_?Positive, b_?NonNegative] := a^x*b  /; (a+b) < 1;
>>
>>
>> Bob Hanlon
>> Chantilly, VA  USA
>
>
>
>
> _________________________________________________________________
> Downloaden Sie MSN Explorer kostenlos unter 
> http://explorer.msn.de/intl.asp.
>
>
>
>



  • Prev by Date: Re: Re: parameter restrictions
  • Next by Date: Re: Units
  • Previous by thread: Re: Re: parameter restrictions
  • Next by thread: combining lists