....: TrivialEJA,
....: random_eja)
sage: from mjo.eja.eja_operator import EJAOperator
- sage: from mjo.random import random_unitary_matrix
EXAMPLES:
sage: J1 = ComplexHermitianEJA(2)
sage: J2 = JordanSpinEJA(4)
- sage: M = random_unitary_matrix(J1.base_ring(), J1.dimension())
+ sage: M = matrix.random(J1.base_ring(),
+ ....: J1.dimension(),
+ ....: algorithm="unitary")
sage: L = EJAOperator(J1,J2,M)
sage: L.is_isometry()
True
....: TrivialEJA,
....: random_eja)
sage: from mjo.eja.eja_operator import EJAOperator
- sage: from mjo.random import random_unitary_matrix
EXAMPLES:
sage: I = identity_matrix(J.base_ring(), 1)
sage: M = I
sage: if n >= 1:
- ....: U = random_unitary_matrix(J.base_ring(), n-1)
+ ....: U = matrix.random(J.base_ring(),
+ ....: n-1,
+ ....: algorithm="unitary")
....: M = block_matrix(2, [I,0,0,U])
sage: L = EJAOperator(J,J,M)
sage: L.is_isomorphism()
....: orthonormalize=False,
....: max_dimension=15)
sage: n = J.one().to_matrix().nrows()
- sage: U = random_unitary_matrix(J.base_ring(), n)
+ sage: U = matrix.random(J.base_ring(), n, algorithm="unitary")
sage: L = lambda X: J(U.conjugate_transpose()*X*U)
sage: columns = ( L(b).to_vector() for b in J.matrix_basis() )
sage: MS = MatrixSpace(J.base_ring(), J.dimension(), J.dimension())
checkable in a reasonable amount of time::
sage: J = RealSymmetricEJA(3)
- sage: U = random_unitary_matrix(J.base_ring(), 3)
+ sage: U = matrix.random(J.base_ring(), 3, algorithm="unitary")
sage: L = lambda X: J(U.conjugate_transpose()*X*U)
sage: columns = ( L(b).to_vector() for b in J.matrix_basis() )
sage: MS = MatrixSpace(J.base_ring(), J.dimension(), J.dimension())
....: max_dimension=16)
sage: n = J.one().to_matrix().nrows()
sage: F = QuadraticField(-1, 'I')
- sage: U = random_unitary_matrix(F, n)
+ sage: U = matrix.random(F, n, algorithm="unitary")
sage: UU = J.matrix_space().from_list(U.rows())
sage: L = lambda X: J((UU.conjugate_transpose()*X*UU))
unlucky::
sage: J = ComplexHermitianEJA(2)
- sage: U = random_unitary_matrix(QQbar, 2)
+ sage: U = matrix.random(QQbar, 2, algorithm="unitary")
sage: UU = J.matrix_space().from_list(U.rows())
sage: L = lambda X: J((UU.conjugate_transpose()*X*UU))