Hi guys,

I am having an issue writing the Schur complement in CVX that keeps telling me “Disciplined convex programming error”. Here is my problem, I have the following matrix [X x; x’ 1] which is positive semidefinite. Note that X is a K \times K matrix and x column vector of size K. If I write

[[X x];[x’ 1]] == semidefinite(K+1), it works fine. For some reasons, I need to write it as

two constraints, i.e. X positive semidefinite and X-x*x’ positive semidefinite. So when I write
X== semidefinite(K) and X-x*x’ == semidefinite(K)

CVX says that “Disciplined convex programming error”. I am almost certain that the problem is with the product "x

*x’ ". Does someone have a solution to write "x*x’ " in CVX?