In [2]:
import sympy as sp
sp.init_printing()
In [3]:
eps = sp.Symbol("epsilon")
lam = sp.Symbol("lambda")
In [4]:
m = sp.Matrix([[1, eps], [eps, 1]])
m
Out[4]:
$$\left[\begin{matrix}1 & \epsilon\\\epsilon & 1\end{matrix}\right]$$
In [5]:
m.charpoly(lam)
Out[5]:
$$\operatorname{PurePoly}{\left( - \epsilon^{2} + \lambda^{2} - 2 \lambda + 1, \lambda, domain=\mathbb{Z}\left[\epsilon\right] \right)}$$

Observe the occurrence of $(1-\epsilon^2)$ above.