+ if self.is_zero():
+ # We would generate a zero-dimensional subalgebra
+ # where the minimal polynomial would be constant.
+ # That might be correct, but only if *this* algebra
+ # is trivial too.
+ if not self.parent().is_trivial():
+ # Pretty sure we know what the minimal polynomial of
+ # the zero operator is going to be. This ensures
+ # consistency of e.g. the polynomial variable returned
+ # in the "normal" case without us having to think about it.
+ return self.operator().minimal_polynomial()
+