2
$\begingroup$

Reduce[y <= x^(1/4) && y >= x^2, {x, y}, Reals] outputs (x == 0 && y == 0) || (0 < x < 1 && x^2 <= y <= Root[-x + #1^4 &, 2]) || (x == 1 && y == 1)

When I try to rewrite the root, I want the answer seems to be incorrect: Reduce[y <= x^(1/4) && y >= x^2, {x, y}, Reals] // ToRadicals outputs (x == 0 && y == 0) || (0 < x < 1 && x^2 <= y <= -x^(1/4)) || (x == 1 && y == 1), but the correct answer is x^2 <= y <= x^(1/4).

$\endgroup$
1
  • $\begingroup$ Read the last entry in documentation of ToRadicals. If the root contains parameter "The result may not be equal to the Root object for some values of the parameter". But what is strange is why Reduce produced cumbersome result y <= Root[-x + #1^4 &, 2] instead of y <= x^(1/4). $\endgroup$ Commented 14 hours ago

1 Answer 1

3
$\begingroup$

As I explained in the comment - with ToRadicals "The result may not be equal to the Root object for some values of the parameter".

I do not know why but if you omit the variables in Reduce then the output is different (without the cumbersome Root). Or the same if you reverse the order of variables from {x, y} to {y, x}.

Reduce[y <= x^(1/4) && y >= x^2, {x, y}, Reals]

Reduce[y <= x^(1/4) && y >= x^2, {y, x}, Reals]
Reduce[y <= x^(1/4) && y >= x^2, Reals]

(x == 0 && y == 0) || (0 < x < 1 && 
   x^2 <= y <= Root[-x + #1^4 &, 2]) || (x == 1 && y == 1)

(y == 0 && x == 0) || (0 < y < 1 && y^4 <= x <= Sqrt[y]) || (y == 1 &&
    x == 1)

(y == 0 && x == 0) || (0 < y < 1 && y^4 <= x <= Sqrt[y]) || (y == 1 &&
    x == 1)
$\endgroup$
4
  • $\begingroup$ As explained in the documentation for Reduce, the order of variables matter: Reduce[expr, {x1, x2, ...}] effectively writes expr as a combination of conditions on x1, x2, … where each condition involves only the earlier xi. $\endgroup$
    – Domen
    Commented 3 hours ago
  • $\begingroup$ @Domen I know about that. What I was referring to was that I do not know why Reduce produces unnecessary complicated expression y <= Root[-x + #1^4 &, 2] instead of straightforward expression y <= x^(1/4) while for another order of variables this does not happen. It could produce x <= Root[-y + #^2 &, 1] instead of x <= Sqrt[y] similarly like with original ordering of variables. $\endgroup$ Commented 2 hours ago
  • $\begingroup$ Root[-x + #1^4 &, 2] // ToRadicals gives -x^(1/4) and Root[-x + #1^4 &, 4] // ToRadicals gives x^(1/4). Possibly the problem is that Reduce gives an incorrect root. $\endgroup$
    – Paul R
    Commented 2 hours ago
  • $\begingroup$ @PaulR Reduce gives the correct root, which can be verified by plotting. It is ToRadicals that select a different root but it cannot be taken as a bug because it is mentioned in the documentation of possible issue of ToRadicals. $\endgroup$ Commented 1 hour ago

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.