Why simple expression is not simplified (Symbolic Toolbox)?

2 visualizzazioni (ultimi 30 giorni)
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!

Risposta accettata

Walter Roberson
Walter Roberson il 15 Giu 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 Commenti
Alex
Alex il 15 Giu 2018
But what assumption should I provide to Matlab to make this simplified to (1-b)^a?
Walter Roberson
Walter Roberson il 15 Giu 2018
I am not sure. The obvious ones do not work.

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by