Why simple expression is not simplified (Symbolic Toolbox)?

1 visualización (últimos 30 días)
Alex
Alex el 15 de Jun. de 2018
Comentada: Walter Roberson el 15 de Jun. de 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!

Respuesta aceptada

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

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Symbolic Math Toolbox en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by