]> gitweb.michael.orlitzky.com - sage.d.git/commitdiff
mjo/eja/eja_operator.py: permutation test for is_isomorphism()
authorMichael Orlitzky <michael@orlitzky.com>
Fri, 29 Nov 2024 00:26:55 +0000 (19:26 -0500)
committerMichael Orlitzky <michael@orlitzky.com>
Fri, 29 Nov 2024 00:26:55 +0000 (19:26 -0500)
mjo/eja/eja_operator.py

index 7b40b90d889538288584d71d7902b1963a240659..19bcf9673ee304bd78b349d3497dc8261899c3ad 100644 (file)
@@ -896,6 +896,28 @@ class EJAOperator(Map):
 
         TESTS:
 
+        Permuting factors is always a Jordan isomorphism::
+
+            sage: J1 = random_eja(field=QQ, orthonormalize=False)
+            sage: J2 = random_eja(field=QQ, orthonormalize=False)
+            sage: J3 = random_eja(field=QQ, orthonormalize=False)
+            sage: J = cartesian_product([J1,J1,J3,J2,J2])
+            sage: I1 = J1.one().operator().matrix()
+            sage: I2 = J2.one().operator().matrix()
+            sage: I3 = J3.one().operator().matrix()
+            sage: M = block_matrix(5, 5, [[ 0,  0,  0,  0, I2 ],
+            ....:                         [ 0, I1,  0,  0,  0 ],
+            ....:                         [ 0,  0,  0, I2,  0 ],
+            ....:                         [I1,  0,  0,  0,  0 ],
+            ....:                         [ 0,  0, I3,  0,  0 ]])
+            sage: L = EJAOperator(J,J,M)
+            sage: L.is_isomorphism()
+            True
+            sage: L.inverse().is_isomorphism()
+            True
+            sage: (L^2).is_isomorphism()
+            True
+
         The identity operator is always a Jordan isomorphism::
 
             sage: J = random_eja()