MATLAB: Is the symbolic trig expression is not fully simplifying

Symbolic Math Toolbox

When I run the following,
syms x
y = sqrt(1-sin(x)^2)
y = simplify(y)
the "simplify" function is not working as expected, i.e. I am not getting an output of "cos(x)" or "abs(cos(x))". Instead, "y" is simply left unchanged.

Best Answer

By default, "simplify" only performs one simplification step, and that is why some expressions, like the one in the question, are not fully reduced. However, you can get a better answer by forcing "simplify" to perform more steps:
In your example, I began getting the right answer after raising "Steps" to 15:
syms x
y = sqrt(1-sin(x)^2)
y = simplify(y,'Steps',15);
Now the output of "simplify" is "abs(cos(x))" as expected.