]> gitweb.michael.orlitzky.com - sage.d.git/blobdiff - mjo/eja/eja_element_subalgebra.py
eja: don't compute an unused vector space for the element subalgebra.
[sage.d.git] / mjo / eja / eja_element_subalgebra.py
index a4d7d1f3de4c43347b43451be15cc38b5e1c9556..a26381b12dbe649d5dad9bc0cd056adbb1606f62 100644 (file)
@@ -28,10 +28,6 @@ class FiniteDimensionalEuclideanJordanElementSubalgebra(FiniteDimensionalEuclide
 
             # Pick those out of the list of all powers.
             superalgebra_basis = tuple(map(powers.__getitem__, ind_rows))
-
-            # If our superalgebra is a subalgebra of something else, then
-            # these vectors won't have the right coordinates for
-            # V.span_of_basis() unless we use V.from_vector() on them.
             basis_vectors = map(power_vectors.__getitem__, ind_rows)
         else:
             # If we're going to orthonormalize the basis anyway, we
@@ -47,13 +43,11 @@ class FiniteDimensionalEuclideanJordanElementSubalgebra(FiniteDimensionalEuclide
             superalgebra_basis = [ self._superalgebra.from_vector(b)
                                    for b in basis_vectors ]
 
-        W = V.span_of_basis( V.from_vector(v) for v in basis_vectors )
-
         fdeja = super(FiniteDimensionalEuclideanJordanElementSubalgebra, self)
         fdeja.__init__(self._superalgebra,
                        superalgebra_basis,
                        category=category,
-                       check=False)
+                       check_axioms=False)
 
         # The rank is the highest possible degree of a minimal
         # polynomial, and is bounded above by the dimension. We know
@@ -61,31 +55,7 @@ class FiniteDimensionalEuclideanJordanElementSubalgebra(FiniteDimensionalEuclide
         # polynomial has the same degree as the space's dimension
         # (remember how we constructed the space?), so that must be
         # its rank too.
-        self.rank.set_cache(W.dimension())
-
-
-    def _a_regular_element(self):
-        """
-        Override the superalgebra method to return the one
-        regular element that is sure to exist in this
-        subalgebra, namely the element that generated it.
-
-        SETUP::
-
-            sage: from mjo.eja.eja_algebra import random_eja
-
-        TESTS::
-
-            sage: set_random_seed()
-            sage: J = random_eja().random_element().subalgebra_generated_by()
-            sage: J._a_regular_element().is_regular()
-            True
-
-        """
-        if self.dimension() == 0:
-            return self.zero()
-        else:
-            return self.monomial(1)
+        self.rank.set_cache(self.dimension())
 
 
     def one(self):