From b1b092cce87d2478915c7ea2f9b3184571fb0f1b Mon Sep 17 00:00:00 2001 From: Michael Orlitzky Date: Fri, 20 Nov 2020 00:16:12 -0500 Subject: [PATCH] eja: add is_zero() method for operators. --- mjo/eja/eja_operator.py | 43 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/mjo/eja/eja_operator.py b/mjo/eja/eja_operator.py index 468a921..3133eb9 100644 --- a/mjo/eja/eja_operator.py +++ b/mjo/eja/eja_operator.py @@ -419,6 +419,49 @@ class FiniteDimensionalEuclideanJordanAlgebraOperator(Map): return (self + (-other)) + def is_zero(self): + r""" + Return whether or not this map is the zero operator. + + SETUP:: + + sage: from mjo.eja.eja_operator import FiniteDimensionalEuclideanJordanAlgebraOperator + sage: from mjo.eja.eja_algebra import (random_eja, + ....: JordanSpinEJA, + ....: RealSymmetricEJA) + + EXAMPLES:: + + sage: J1 = JordanSpinEJA(2) + sage: J2 = RealSymmetricEJA(2) + sage: R = J1.base_ring() + sage: M = matrix(R, [ [0, 0], + ....: [0, 0], + ....: [0, 0] ]) + sage: L = FiniteDimensionalEuclideanJordanAlgebraOperator(J1,J2,M) + sage: L.is_zero() + True + sage: M = matrix(R, [ [0, 0], + ....: [0, 1], + ....: [0, 0] ]) + sage: L = FiniteDimensionalEuclideanJordanAlgebraOperator(J1,J2,M) + sage: L.is_zero() + False + + TESTS: + + The left-multiplication-by-zero operation on a given algebra + is its zero map:: + + sage: set_random_seed() + sage: J = random_eja() + sage: J.zero().operator().is_zero() + True + + """ + return self.matrix().is_zero() + + def inverse(self): """ Return the inverse of this operator, if it exists. -- 2.44.2