Hi there, it's Aries here ;-)

I was checking some exponential function inequalities: solve(3root(2^(4*x-1))>=(2^(x-5))/(4root(16^x))), the calculator reboots.

Typing solve(2^((4*x-1)/3)>=(2^(x-5))/(16^(x/4))), all is ok, the calculator returns the correct answer (x>=(-7/2)).

Another example: solve(2^(3*x-1)+2^(6*x-2)-2^(3*x+3)<(4^(3*x-2))), the calculator gives the advise "Warning, solving parametric inequation requires assumption on parameters otherwise solutions may be missed. The solutions are UNABLE TO ISOLATE x IN.....

Why happens this ?

Is it due to some sort of complexity or what ?

Is there a "workaround" to solve this kind of inequations ?

Thanks all for the explanations,

Aries ;-)

Hello Aries,

For your first example 16^x is positive for all x so it has no roots. The calculator should just tell you that though, not reboot??!!??!??.

For your third example if you turn off exact mode in the cas you get:

{(x≥−115.653167402) AND (x≤−60.6140567646),(x≥−60.6140567646) AND (x≤−41.0658420633),(x≥−41.0658420633) AND (x≤−31.0487108669),(x≥−31.0487108669) AND (x≤−24.9577290453),(x≥−24.9577290453) AND (x≤−20.8624598973),(x≥−20.8624598973) AND (x≤−17.9198156801),(x≥−17.9198156801) AND (x≤−15.7029740933),(x≥−15.7029740933) AND (x<1.77397603163)}

The last inequality in the list is correct, but the prime should be able to get an exact result. Maybe it's a bug that will be fixed in the next software update.

Best regards,

Road

The solver can solve polynomial-like equations/inequations. Unfortunately there is no easy way to reduce all equations/inequations to a polynomial. But most of the time, you can help the CAS by calling the right pre-simplification command. Here you can do

a:=tsimplify(2^(3*x-1)+2^(6*x-2)-2^(3*x+3)-(4^(3*x-2))

This will express the inequation in terms of the minimum possible independant "variables", here 1, hence the inequation becomes polynomial-like, then

solve(a<0)

will return the exact answer.

The approx answer is partially wrong because the floats are too small for x negative.

Remember: the calc computes very fast but it is stupid, humans do not compute fast but humans know what to do, a typical situation where both can cooperate!

(10-09-2015 10:54 AM)Aries Wrote: [ -> ]I was checking some exponential function inequalities: solve(3root(2^(4*x-1))>=(2^(x-5))/(4root(16^x))), the calculator reboots.

Is that "root" == nthroot? 3rd root of (2^4*x-1) ?

Now it all makes sense because:

(2^(x-5))/(4 NTHROOT (16^x)) = 1/32 for all x

and

solve(simplify(3 NTHROOT(2^(4*x-1)))>=1/32) gives the correct answer x>=-7/2

(10-10-2015 01:54 PM)Tim Wessman Wrote: [ -> ] (10-09-2015 10:54 AM)Aries Wrote: [ -> ]I was checking some exponential function inequalities: solve(3root(2^(4*x-1))>=(2^(x-5))/(4root(16^x))), the calculator reboots.

Is that "root" == nthroot? 3rd root of (2^4*x-1) ?

Yes, Tim, it is.

This reboots.

(10-10-2015 11:58 AM)parisse Wrote: [ -> ]The solver can solve polynomial-like equations/inequations. Unfortunately there is no easy way to reduce all equations/inequations to a polynomial. But most of the time, you can help the CAS by calling the right pre-simplification command. Here you can do

a:=tsimplify(2^(3*x-1)+2^(6*x-2)-2^(3*x+3)-(4^(3*x-2))

This will express the inequation in terms of the minimum possible independant "variables", here 1, hence the inequation becomes polynomial-like, then

solve(a<0)

will return the exact answer.

The approx answer is partially wrong because the floats are too small for x negative.

Remember: the calc computes very fast but it is stupid, humans do not compute fast but humans know what to do, a typical situation where both can cooperate!

Thank you, parisse, calling "tsimplify" does really work fine:

However, why that "equal" sign in the solution ? O_o

(10-10-2015 11:03 PM)roadrunner Wrote: [ -> ]Now it all makes sense because:

(2^(x-5))/(4 NTHROOT (16^x)) = 1/32 for all x

and

solve(simplify(3 NTHROOT(2^(4*x-1)))>=1/32) gives the correct answer x>=-7/2

Indeed, nice finding, thank you roadrunner ;-)

(10-11-2015 10:20 AM)Aries Wrote: [ -> ] (10-10-2015 11:58 AM)parisse Wrote: [ -> ]The solver can solve polynomial-like equations/inequations. Unfortunately there is no easy way to reduce all equations/inequations to a polynomial. But most of the time, you can help the CAS by calling the right pre-simplification command. Here you can do

a:=tsimplify(2^(3*x-1)+2^(6*x-2)-2^(3*x+3)-(4^(3*x-2))

This will express the inequation in terms of the minimum possible independant "variables", here 1, hence the inequation becomes polynomial-like, then

solve(a<0)

will return the exact answer.

The approx answer is partially wrong because the floats are too small for x negative.

Remember: the calc computes very fast but it is stupid, humans do not compute fast but humans know what to do, a typical situation where both can cooperate!

Thank you, parisse, calling "tsimplify" does really work fine:

However, why that "equal" sign in the solution ? O_o

(2^(3*x))/2+(2^(6+x))/4-2^(3*x)*8-(2^(6*x))/16<0; ((2^(6*x)*(4-1))/16)+((2^(3*x)*(1-16))/2)<0; setting (2^(3*x))=u, we've got (3/16)*(u^2)-(15/2)*u<0.

Doing lcm, we've got (u^2)-40*u<0, then u*(u-40)<0.

u<0 is never verified (2^(3*x)<0).

Doing u<40, we've got ln(2^(3*x))<ln(40) and finally x<(ln(5)+ln(8))/ln(8).

I'm wondering why that "equal" sign in the Prime result *_*

Best,

Aries ;-)

Checking is sometimes done with approx value because exact check would be too costly.

(10-17-2015 04:15 PM)parisse Wrote: [ -> ]Checking is sometimes done with approx value because exact check would be too costly.

I see the logic, thanks for the explanation.

Best,

Aries ;-)