from sage.all import *
from mjo.cone.symmetric_psd import (factor_psd,
- is_symmetric_psd,
random_symmetric_psd)
-from mjo.matrix_vector import basis_representation
+from mjo.basis_repr import basis_repr
def is_doubly_nonnegative(A):
# It's nonnegative, so all we need to do is check that it's
# symmetric positive-semidefinite.
- return is_symmetric_psd(A)
+ return A.is_positive_semidefinite()
# Short circuit, we know the zero matrix is extreme.
return True
- if not is_symmetric_psd(A):
+ if not A.is_positive_semidefinite():
return False
# Step 1.5, appeal to Theorem 3.1 in reference #1 to short
# can't compute the dimension of a set of matrices anyway, so we
# convert them all to vectors and just ask for the dimension of the
# resulting vector space.
- (phi, phi_inverse) = basis_representation(A.matrix_space())
+ (phi, phi_inverse) = basis_repr(A.matrix_space())
vectors = map(phi,spanning_set)
V = span(vectors, A.base_ring())