Why simple expression is not simplified (Symbolic Toolbox)?

2 vues (au cours des 30 derniers jours)
Alex
Alex le 15 Juin 2018
Commenté : Walter Roberson le 15 Juin 2018
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!

Réponse acceptée

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

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by