result |= all( check(x, y) for x in xs for y in ys )
return result
+
+ def _test_leftreg_eigenvalues(self):
+ r"""
+ Check the leftreg-eigenvalues-are-real axiom of this clan.
+
+ SETUP::
+
+ sage: from mjo.clan.random import random_clan
+
+ EXAMPLES::
+
+ sage: C = random_clan() # long time
+ sage: C._test_leftreg_eigenvalues() # long time
+ True
+
+ """
+ def check(x):
+ return all( ev in self.base_ring()
+ for ev in x.leftreg().eigenvalues() )
+
+ # Check the basis...
+ b = self.basis()
+ result = all( check(b[i]) for i in b.keys() )
+
+ # And some random elements for good measure
+ xs = ( self.random_element() for _ in range(100) )
+ result |= all( check(x) for x in xs )
+
+ return result