-
Notifications
You must be signed in to change notification settings - Fork 92
Open
Description
SeDuMi fails to converge for this problem. Code using CVX is attached; this data file contains the actual inputs to SeDuMi for testing without CVX.
e0 = [1;0];
e1 = [0;1];
ep = [1;1]/sqrt(2);
em = [1;-1]/sqrt(2);
R00 = e0 * e0';
R01 = e1 * e1';
R10 = ep * ep';
R11 = em * em';
R00 = (R00 + R00')/2;
R01 = (R01 + R01')/2;
R10 = (R10 + R10')/2;
R11 = (R11 + R11')/2;
dim = 2;
cvx_solver sedumi
cvx_begin sdp
%#ok<*VUNUS> % suppress MATLAB warnings for equality checks in CVX
%#ok<*EQEFF> % suppress MATLAB warnings for inequality checks in CVX
%cvx_precision best
variable X000(dim,dim) symmetric
variable X001(dim,dim) symmetric
variable X010(dim,dim) symmetric
variable X011(dim,dim) symmetric
variable X100(dim,dim) symmetric
variable X101(dim,dim) symmetric
variable X110(dim,dim) symmetric
variable X111(dim,dim) symmetric
variable W0(dim,dim) symmetric
variable W1(dim,dim) symmetric
variable lambda
minimize lambda
X000 + X000 == R00/2;
X001 + X001 == R01/2;
X110 + X110 == R10/2;
X111 + X111 == R11/2;
X000 + X001 >= 0;
X001 + X000 >= 0;
X110 + X111 >= 0;
X111 + X110 >= 0;
X010 + X100 >= 0;
X010 + X101 >= 0;
X011 + X100 >= 0;
X011 + X101 >= 0;
X100 + X010 >= 0;
X100 + X011 >= 0;
X101 + X010 >= 0;
X101 + X011 >= 0;
W0 >= X000 + X010;
W0 >= X001 + X011;
W1 >= X100 + X110;
W1 >= X101 + X111;
W0 >= 0;
W1 >= 0;
lambda * eye(dim) >= W0 + W1 + W0 + W1;
cvx_end
Metadata
Metadata
Assignees
Labels
No labels