Simplify not working, or ignoring assumption?

I'm trying to take a (-1) from a power to 3/2 as this:

Simplify[(-(a))^(3/2) - ((-1)^(3/2) (a)^(3/2)), a > 0]


I get as a result as expected 0. But when I try to do exactly the same with the actual functions that I need:

Simplify[(-(4 b^2 E^(2 Sqrt[b^2 - a c] h) - a c (1 + E^(2 Sqrt[b^2 - a c] h))^2))^(3/2) - ((-1)^(3/2) (4 b^2 E^(2 Sqrt[b^2 - a c] h) -
a c (1 + E^(2 Sqrt[b^2 - a c] h))^2)^(3/2)), (4 b^2 E^(2 Sqrt[b^2 - a c]h) - a c (1 + E^(2 Sqrt[b^2 - a c] h))^2) > 0]


I don't get zero, I get something else... I also don't get zero using FullSimplify. I wonder if Simplify is not actually using my assumption or if there may be another reason why this is not working?

Thank you!

• MMA Version 8.0 gives zero to your second Simplify  without problems. Commented Apr 10, 2018 at 16:35

$Version (* "11.3.0 for Mac OS X x86 (64-bit) (March 7, 2018)" *)  Use ComplexExpand which will assume that all variables are real Simplify[(-(4 b^2 E^(2 Sqrt[b^2 - a c] h) - a c (1 + E^(2 Sqrt[b^2 - a c] h))^2))^(3/ 2) - ((-1)^(3/2) (4 b^2 E^(2 Sqrt[b^2 - a c] h) - a c (1 + E^(2 Sqrt[b^2 - a c] h))^2)^(3/2)) // ComplexExpand, (4 b^2 E^(2 Sqrt[b^2 - a c] h) - a c (1 + E^(2 Sqrt[b^2 - a c] h))^2) > 0] (* 0 *)  You can help Mathematica as follows. Let us replace the subexpression in question by x. This is done by the rule: rule = a c (1 + E^(2 Sqrt[b^2 - a c] h))^2 ->x + 4 b^2 E^(2 Sqrt[b^2 - a c] h)  Here is your expression: expr = (-(4 b^2 E^(2 Sqrt[b^2 - a c] h) - a c (1 + E^(2 Sqrt[b^2 - a c] h))^2))^(3/ 2) - ((-1)^(3/2) (4 b^2 E^(2 Sqrt[b^2 - a c] h) - a c (1 + E^(2 Sqrt[b^2 - a c] h))^2)^(3/2)) /. rule (* I (-x)^(3/2) + x^(3/2) *)  Let us now simplify and replace back: Simplify[expr, x > 0] /.x -> a c (1 + E^(2 Sqrt[b^2 - a c] h))^2 - 4 b^2 E^(2 Sqrt[b^2 - a c] h) (* 2 (-4 b^2 E^(2 Sqrt[b^2 - a c] h) + a c (1 + E^(2 Sqrt[b^2 - a c] h))^2)^(3/2) *)  Done. Have fun! • Ok, so my problem is that I would like to obtain zero after using simplify, as here: Commented Apr 10, 2018 at 19:14 • Simplify[(-(a))^(3/2) - ((-1)^(3/2) (a)^(3/2)), a > 0] Commented Apr 10, 2018 at 19:15 • The result is zero, but not when I use the other expression. I don't understand why Simplify doesn't work in that case... Commented Apr 10, 2018 at 19:15 FullSimplify gives the expected result: ClearAll[a, b, c, h] FullSimplify[(-(4 b^2 E^(2 Sqrt[b^2 - a c] h) - a c (1 + E^(2 Sqrt[b^2 - a c] h))^2))^(3/2) - ((-1)^(3/2) (4 b^2 E^(2 Sqrt[b^2 - a c] h) - a c (1 + E^(2 Sqrt[b^2 - a c] h))^2)^(3/2)), (4 b^2 E^(2 Sqrt[b^2 - a c] h) - a c (1 + E^(2 Sqrt[b^2 - a c] h))^2) > 0]  0 $Version