Re: Problems with SIMPLIFY and SOLVE
- To: mathgroup at smc.vnet.net
- Subject: [mg34132] Re: [mg34111] Problems with SIMPLIFY and SOLVE
- From: Andrzej Kozlowski <andrzej at tuins.ac.jp>
- Date: Sun, 5 May 2002 04:48:38 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Actually Mathematica will in fact manage simple cases like this: In[4]:= Simplify[Sign[(-m^(a + b + n - 2))*(a + b + n - 1)*(a/(a + b + n))^a* ((b + n)/(a + b + n))^(b + n)*(a + b + n)], {a > 0, b > 0, n > 0, m > 0, a + b + n > 1}] Out[4]= -1 In more complicated cases you may have have to combine Mathematica's computing power and your own intelligence. Andrzej On Saturday, May 4, 2002, at 10:09 PM, Hannes Egli wrote: > Thank you very much for your detailed answer. > > Of course you are right that the first equation need not to be negative > given my conditions. Unfortunately, I have forgotten to write that "m" > must > be positive too: > > In[1]:= > Simplify[-m^(-2 + a + b + n)*(-1 + a + b + n)*(a/(a + b + n))^a*((b + > n)/(a > + b + n))^(b + n)*(a + b + n) < 0, > {a > 0, b > 0, n > 0, m > 0, a + b + n > 1}] > > Out[1]:= > 0 < m^(-2 + a + b + n)*(-1 + a + b + n)*(a/(a + b + n))^a*((b + n)/(a + > b + > n))^(b + n)*(a + b + n) > > Still, Mathematica does not give the output TRUE or FALSE. But, as you > write, this may depend on the fact that my equation contains symbolic > exponents. So it seems that I have to determine the signs of my > equations > without the help of Mathematica. > > Thanks > > Hannes > > > > > > Andrzej Kozlowski schrieb: > >> A lot. >> First of all, as it stands the first statement is just wrong. Lets try >> to substitute {m -> -1, a -> 1, b -> 1, n -> 3} >> Your conditions are satisfied: >> >> In[1]:= >> And @@ ({a > 0, b > 0, n > 0, a + b + n > 1} /. {m -> -1, a -> 1, b -> >> 1, n -> 3}) >> >> Out[1]= >> True >> >> But as for the the conclusion: >> >> In[2]:= >> (-m^(-2 + a + b + n))*(-1 + a + b + n)*(a/(a + b + n))^a*((b + n)/(a + >> b + n))^(b + n)* >> (a + b + n) < 0 /. {m -> -1, a -> 1, b -> 1, n -> 3} >> >> Out[2]= >> False >> >> One might say "so much for the first problem". But actually there are a >> few other things that can be added: >> (1) You have to use the domain information inside Simplify, otherwise >> it does nothing at all. >> (2) Just having the assumption a>b tells Mathematica that a and b are >> real, so you need not add any other information to that effect. >> (3) Your expressions contain symbolic exponents and Simplify can do >> (almost) nothing with that. Basically that is because the technology of >> Assumptions relies on algebraic methods and will not work with >> transcendental expressions. >> >> As for the second part, again Element etc does nothing at all. In any >> case giving Mathematica any information about the parameters will not >> help in solving equations, in fact when it can be used it only makes it >> harder, not easier, to find solutions. >> Still this case is different from the first one. We are indeed dealing >> with a situation where Solve misjudges the nature of the equation. In >> general Solve is meant for solving algebraic equations only (that is >> polynomials, rational functions etc) while your equation has a symbolic >> exponent. But actually Mathematica can also solve some equations of >> this >> kind, provided they can be reduced to first solving an algebraic >> equation (or equations) and then applying the inverse of a >> transcendental function. In fact your equation is of this type, but >> Mathematica for some reason fails to see that. However one can easily >> make it notice that it cna actually do it, provided you convert the >> equation to a system of two simpler looking equations: >> >> In[3]:= >> Solve[{a/(a + b + n) - w == 0, z^(a + b + n - 1)*(a/(a + b + n))^a* >> ((b + n)/(a + b + n))^(b + n)*(a + b + n) == w}, z] >> >> From In[3]:= >> Solve::ifun:Inverse functions are being used by Solve, so some >> solutions >> may \ >> not be found. >> >> Out[3]= >> {{z -> (((a/(a + b + n))^a*((b + n)/(a + b + n))^(b + n)*(a^2 + 2*a*b + >> b^2 + 2*a*n + >> 2*b*n + n^2))/a)^(1/(1 - a - b - n))}} >> >> >> On Saturday, May 4, 2002, at 05:28 PM, Hannes Egli wrote: >> >>> Hello >>> >>> 1) >>> After the following input, I would expect the output TRUE, since after >>> my mathematical understanding, the expression is unambiguously >>> negative. Mathematica, however, only restates the expression. >>> >>> Element[{a, b, n, m}, Reals] >>> >>> Simplify[-m^(-2 + a + b + n)*(-1 + a + b + n)*(a/(a + b + n))^a >>> *((b + n)/(a + b + n))^(b + n)*(a + b + n) < 0, {a > 0, b > 0, n > 0, >>> a + b + n > 1}] >>> >>> >>> 2) >>> The second problem may be similar. Given the restriction on the >>> parameter values, the following equation should can be solved for m: >>> >>> Element[{a, b, n, m}, Reals] >>> >>> Solve[a/(a + b + n) - m^(-1 + a + b + n)*(a/(a + b + n))^a >>> *((b + n)/(a + b + n))^(b + n)*(a + b + n) == 0, m] >>> >>> Does somebody see what I am doing wrong? >>> >>> Thanks >>> >>> Hannes >>> >>> >>> > >