]> gitweb.michael.orlitzky.com - sage.d.git/commitdiff
eja: remove the cached product_on_basis() TODO.
authorMichael Orlitzky <michael@orlitzky.com>
Wed, 10 Mar 2021 00:08:47 +0000 (19:08 -0500)
committerMichael Orlitzky <michael@orlitzky.com>
Wed, 10 Mar 2021 00:08:47 +0000 (19:08 -0500)
Storing the multiplication table in a list is actually faster than the
@cached_method dict lookup. I tried it. In general, l[i][j] is about
twice as fast as d[(i,j)] for a nested list "l" and dict "d".

mjo/eja/TODO

index 07c85b536fd8631ecd35fad3e6a161c84459d2cf..26ff1e9e7db77b22f3d749056121d094a08f2d8b 100644 (file)
@@ -11,20 +11,14 @@ sage: a0 = (1/4)*X[4]**2*X[6]**2 - (1/2)*X[2]*X[5]*X[6]**2 - (1/2)*X[3]*X[4]*X[6
    15-dimensional QuaternionHermitianAlgebra(3)) to find out why
    they're so slow.
 
-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?
+4. What the ever-loving fuck is this shit?
 
        sage: O = Octonions(QQ)
        sage: e0 = O.monomial(0)
        sage: e0*[[[[]]]]
        [[[[]]]]*e0
 
-7. Every once in a long while, the test
+5. Every once in a long while, the test
 
        sage: set_random_seed()
        sage: x = random_eja().random_element()