MATLAB: Is this happening? Symbolic

symbolic

I calculate the caracteristic polinomial of a matrix in two different ways and the result is not the same, it is opposite.
I have a matrix M:
syms v w x y z lambda
M=[v+w 8 x*3;
y-z 1 4*x;
z 3 4];
First I calculate the caracterisc polinomial by:
I=eye(size(M));
Pcaratt=det(M-lambda*I);
Then I do it by:
polinomio=poly(M,lambda);
Finally, if I do:
aux=Pcaratt-polinomio;
the result is not zero. Insted of that, doing:
aux=-Pcaratt-polinomio;
I get zero. Why Pcaratt and polinomio are opposite?
Thank you very much.

Best Answer

The definition of characteristic polynomial seems to vary. For example, Wolfram World defines it the way you did, but Wikipedia would define it as
Pcaratt = det(lambda*I-M);
Then you would get Pcaratt=polinomio. Either way, the equations have the same roots, so the choice of sign is not very important.