Why simple expression is not simplified (Symbolic Toolbox)?

2 views (last 30 days)
Quite simple code
syms a b
assume(a,'real');
assume(b,'real');
simplify((-1)^a*(b-1)^a)
The answer is obviously (1-b)^a, but Matlab does not simplify it? Why? How to make it work?
Thank you!

Accepted Answer

Walter Roberson
Walter Roberson on 15 Jun 2018
That is not a correct solution.
Let b = -31, let a = 3/5
simplify((1-(-31))^(3/5));
8
simplify((-1)^(3/5)*((-31)-1)^(3/5));
(1/5)
-8 (-1)
evalf(%);
-6.472135955 - 4.702282018 I
  2 Comments
Alex
Alex on 15 Jun 2018
But what assumption should I provide to Matlab to make this simplified to (1-b)^a?

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!