X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=mjo%2Feja%2FTODO;h=1def3d2e9fd8cf381ae743344ce670a13f226438;hb=9550136d8a78dbc1d1aa891e31a66eb993d4be3e;hp=dd671c5fd7ab847a4c635748923bf0cba12a63ad;hpb=ba5ac5253ad25bf78e7655699d6d05630d91c1a5;p=sage.d.git diff --git a/mjo/eja/TODO b/mjo/eja/TODO index dd671c5..1def3d2 100644 --- a/mjo/eja/TODO +++ b/mjo/eja/TODO @@ -1,44 +1,20 @@ -Trace inner product tests: +1. Add references and start citing them. - TESTS: +2. Profile (and fix?) any remaining slow operations. - The trace inner product is commutative:: +3. Every once in a long while, the test - sage: set_random_seed() - sage: J = random_eja() - sage: x = J.random_element(); y = J.random_element() - sage: x.trace_inner_product(y) == y.trace_inner_product(x) - True + sage: set_random_seed() + sage: x = random_eja().random_element() + sage: x.is_invertible() == (x.det() != 0) - The trace inner product is bilinear:: + in eja_element.py returns False. Example: - sage: set_random_seed() - sage: J = random_eja() - sage: x = J.random_element() - sage: y = J.random_element() - sage: z = J.random_element() - sage: a = QQ.random_element(); - sage: actual = (a*(x+z)).trace_inner_product(y) - sage: expected = a*x.trace_inner_product(y) + a*z.trace_inner_product(y) - sage: actual == expected - True - sage: actual = x.trace_inner_product(a*(y+z)) - sage: expected = a*x.trace_inner_product(y) + a*x.trace_inner_product(z) - sage: actual == expected - True - - The trace inner product is associative:: - - sage: pass - - The trace inner product satisfies the compatibility - condition in the definition of a Euclidean Jordan algebra: - - sage: set_random_seed() - sage: J = random_eja() - sage: x = J.random_element() - sage: y = J.random_element() - sage: z = J.random_element() - sage: (x*y).trace_inner_product(z) == y.trace_inner_product(x*z) - True - \ No newline at end of file + sage: J1 = ComplexHermitianEJA(2) + sage: J2 = TrivialEJA() + sage: J = cartesian_product([J1,J2]) + sage: x = J.from_vector(vector(QQ, [-1, -1/2, -1/2, -1/2])) + sage: x.is_invertible() + True + sage: x.det() + 0