From ddeec50e00df46e4d794a0583369cf506af0a83f Mon Sep 17 00:00:00 2001 From: Michael Orlitzky Date: Fri, 26 Jul 2019 12:44:15 -0400 Subject: [PATCH] eja: improve tests for morphism addition. --- mjo/eja/euclidean_jordan_algebra.py | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/mjo/eja/euclidean_jordan_algebra.py b/mjo/eja/euclidean_jordan_algebra.py index b239dc7..fa11aed 100644 --- a/mjo/eja/euclidean_jordan_algebra.py +++ b/mjo/eja/euclidean_jordan_algebra.py @@ -30,31 +30,42 @@ class FiniteDimensionalEuclideanJordanAlgebraMorphism(FiniteDimensionalAlgebraMo 3. Allows us to add morphisms in the obvious way. + 4. Allows us to invert morphisms. + If this seems a bit heavyweight, it is. I would have been happy to use a the ring morphism that underlies the finite-dimensional algebra morphism, but they don't seem to be callable on elements of - our EJA, and you can't add them. + our EJA, and you can't add/invert them. """ def __add__(self, other): """ Add two EJA morphisms in the obvious way. - EXAMPLES: + EXAMPLES:: sage: J = RealSymmetricEJA(3) sage: x = J.zero() - sage: y = J.zero() + sage: y = J.one() sage: x.operator() + y.operator() Morphism from Euclidean Jordan algebra of degree 6 over Rational Field to Euclidean Jordan algebra of degree 6 over Rational Field given by matrix - [0 0 0 0 0 0] - [0 0 0 0 0 0] - [0 0 0 0 0 0] - [0 0 0 0 0 0] - [0 0 0 0 0 0] - [0 0 0 0 0 0] + [1 0 0 0 0 0] + [0 1 0 0 0 0] + [0 0 1 0 0 0] + [0 0 0 1 0 0] + [0 0 0 0 1 0] + [0 0 0 0 0 1] + + TESTS:: + + sage: set_random_seed() + sage: J = random_eja() + sage: x = J.random_element() + sage: y = J.random_element() + sage: (x.operator() + y.operator()) in J.Hom(J) + True """ P = self.parent() -- 2.44.2