# Simplify complex expressions

How can I simplify this expression? I tried the functions simplify and FullSimplify. Also the expand function didn't help me. I would like to know about solving such problems in more detail

((x^9 - x^6*y^3)^(1/3) - y^2*(8*x^6/y^3 - 8*x^3)^(1/3) + x*y*(y^3 - y^6/x^3)^(1/3))*(x + y)/(((x^8)^(1/3)*(x^2 - 2*y^2) + (x^2*y^12)^(1/3))*(1 + y/x + (y/x)^2)^(1/3))

• (x^3 - y^3)^(1/3)/((x + y) (x^2 + x y + y^2)^(1/3)) but it’s not until the end – Искандар А Jun 23 '20 at 14:41
• What do you expect to get? Note that (-1.)^(1/3) (-8.)^(1/3) is not equal to (8.)^(1/3) (that is, $a^{1/3}b^{1/3}$ is not equivalent to $(ab)^{1/3}$). – Michael E2 Jun 23 '20 at 14:59
• Try Simplify[expr, 0 < y && 0 < x] and consider whether the assumption 0 < y && 0 < x is valid in your case. – Michael E2 Jun 23 '20 at 15:00

## 1 Answer

The best way to simplify an expression like this is to add all the relevant assumptions to FullSimplify. For instance, if we use your expression, and assume that both x and y are positive, then you get a dramatically simplified result:

expr = ((x^9 - x^6*y^3)^(1/3) - y^2*(8*x^6/y^3 - 8*x^3)^(1/3) +
x*y*(y^3 - y^6/x^3)^(1/3))*(x +
y)/(((x^8)^(1/3)*(x^2 - 2*y^2) + (x^2*y^12)^(1/3))*(1 +
y/x + (y/x)^2)^(1/3));

FullSimplify[expr, {Positive[x], Positive[y]}]
(* (x - y)^(1/3)/(x + y) *)


Oftentimes, if you are experimenting with other functions to help in your quest to find a simpler form for an expression, you can check the language which assumptions they make about the expression and use those with FullSimplify. For example, the documentation for PowerExpand says the following:

The transformations made by PowerExpand are correct in general only if $$c$$ is an integer or $$a$$ and $$b$$ are positive real numbers.

Obviously it would be very silly to assume that 1/3 is an integer, but it may be reasonable to assume that x and y are positive.

• And how did you understand that these conditions are necessary, and not the actions described above? – Искандар А Jun 23 '20 at 16:33
• Educated guessing. But if you look at the documentation for the functions above you'll see that they make implicit assumptions about the expressions that they're transforming. – Pillsy Jun 23 '20 at 17:35
• And how can I find out these assumptions? – Искандар А Jun 23 '20 at 19:50
• @ИскандарА See my first comment and consider that Mathematica treats variables as complex. Some of the laws of exponents, such as $(ab)^p = a^pb^p$, apply only when the bases are positive real numbers. – Michael E2 Jun 23 '20 at 19:51
• You want to say that sometimes algebraic transformations can occur only under the condition that all numbers are positive? – Искандар А Jun 23 '20 at 19:56