]> gitweb.michael.orlitzky.com - sage.d.git/blobdiff - mjo/eja/eja_algebra.py
Revert "eja: store the multiplication table as a matrix."
[sage.d.git] / mjo / eja / eja_algebra.py
index 76a8ce624d526b8c3bd67de6d3b169b4b866d73b..28e86c25e3a3d315cf8fefb325fc05ef4b03b427 100644 (file)
@@ -389,6 +389,11 @@ class FiniteDimensionalEuclideanJordanAlgebra(CombinatorialFreeModule):
         method that would otherwise just crash and complain about the
         algebra being infinite.
 
+        SETUP::
+
+            sage: from mjo.eja.eja_algebra import (JordanSpinEJA,
+            ....:                                  RealCartesianProductEJA)
+
         EXAMPLES::
 
             sage: J = RealCartesianProductEJA(3)
@@ -472,7 +477,7 @@ class FiniteDimensionalEuclideanJordanAlgebra(CombinatorialFreeModule):
             sage: J.one()
             e0 + e1 + e2 + e3 + e4
 
-        TESTS::
+        TESTS:
 
         The identity element acts like the identity::
 
@@ -633,8 +638,8 @@ class RealCartesianProductEJA(FiniteDimensionalEuclideanJordanAlgebra):
     """
     def __init__(self, n, field=QQ):
         V = VectorSpace(field, n)
-        mult_table = [ [ V.basis()[i]*(i == j) for i in range(n) ]
-                       for j in range(n) ]
+        mult_table = [ [ V.gen(i)*(i == j) for j in range(n) ]
+                       for i in range(n) ]
 
         fdeja = super(RealCartesianProductEJA, self)
         return fdeja.__init__(field, mult_table, rank=n)
@@ -821,7 +826,7 @@ def _multiplication_table_from_matrix_basis(basis):
     V = VectorSpace(field, dimension**2)
     W = V.span_of_basis( _mat2vec(s) for s in basis )
     n = len(basis)
-    mult_table = [[W.zero() for i in range(n)] for j in range(n)]
+    mult_table = [[W.zero() for j in range(n)] for i in range(n)]
     for i in range(n):
         for j in range(n):
             mat_entry = (basis[i]*basis[j] + basis[j]*basis[i])/2
@@ -1287,11 +1292,11 @@ class JordanSpinEJA(FiniteDimensionalEuclideanJordanAlgebra):
     """
     def __init__(self, n, field=QQ):
         V = VectorSpace(field, n)
-        mult_table = [[V.zero() for i in range(n)] for j in range(n)]
+        mult_table = [[V.zero() for j in range(n)] for i in range(n)]
         for i in range(n):
             for j in range(n):
-                x = V.basis()[i]
-                y = V.basis()[j]
+                x = V.gen(i)
+                y = V.gen(j)
                 x0 = x[0]
                 xbar = x[1:]
                 y0 = y[0]