+
+4. Instead of storing a basis multiplication matrix, just make
+ product_on_basis() a cached method and manually cache its
+ entries. The cython cached method lookup should be faster than a
+ python-based matrix lookup anyway. NOTE: we should still be able
+ to recompute the table somehow. Is this worth it?
+
+5. What the ever-loving fuck is this shit?
+
+ sage: O = Octonions(QQ)
+ sage: e0 = O.monomial(0)
+ sage: e0*[[[[]]]]
+ [[[[]]]]*e0
+
+6. Can we convert the complex/quaternion algebras to avoid real-
+ (un)embeddings? Quaternions would need their own
+ QuaternionMatrixAlgebra, since Sage matrices have to have entries
+ in a commutative ring.
+
+7. Every once in a long while, the test
+
+ sage: set_random_seed()
+ sage: x = random_eja().random_element()
+ sage: x.is_invertible() == (x.det() != 0)
+
+ in eja_element.py returns False.