expand and simplify are not reverse?

16 Ansichten (letzte 30 Tage)
Niklas Kurz
Niklas Kurz am 9 Jul. 2021
Beantwortet: Walter Roberson am 9 Jul. 2021
I thought any symbolic function that I expand I can simplify getting same results in both direction. But it seems to be just oneway, because:
syms z; simplify(expand(1/((z-1)*(z-i))))
does not give back
1/((z-1)*(z-i)) %?
  1 Kommentar
Rik
Rik am 9 Jul. 2021
There is even a remark in the documentation suggesting to use expand first under some circumstances.
I'm not aware of any explicit requirements that suggest the factorized form is simpler. I think you can make a case for both forms.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 9 Jul. 2021
syms x t
simplify(sin(x)^2 + cos(x)^2)
simplify(2*(sin(t)^2 + cos(t)^2))
The first sin formula in x and the sin formula in t both simplify to 1 and the overall second expression simplifies to 2.
If it were true that expand() is the reverse of simplify then it follows that if you were to
expand(sym(3))
then the result should be
sin(x)^2 + cos(x)^2 + 2 * (sin(t)^2 + cos(t)^2)
except that it should also be the same thing with several different variables instead. And, clearly, numerous other expressions.
We must arrive at the conclusion that expand() and simplify() are not inverse of each other.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by