Imaginary parts are zero, it's just a complicated expression (you would have to simplify somehow): trigsimp( imagpart(eigenvalues(x))); gives (%o13) [[0,0,0],[0,0,0]] Regards, Ziga