P = sdp(C,A,b)
P = sdp(var,M,objFun)
A semidefinite program (SDP) is defined by a some symmetric matrices $C, A_i$ and a vector $b$. The SDP has a primal and a dual problem. The primal problem is
$$min_{X} \, C \bullet X \,\,\, s.t. \,\,\, A_i \bullet X = b_i \, and \, X \geq 0$$
and the dual problem is
$$max_{y,Z} \, \sum_i b_i y_i \,\,\, s.t. \,\,\, Z = C  \sum_i y_i A_i \, and \, Z \geq 0$$
The type SDP stores semidefinite programs. There are two ways to construct an SDP. The first option is to provide the matrices $C,A_i,b$.

The second option is to provide a matrix $M(v)$, with affine entries, and a linear function $f(v)$. This constructs an SDP in dual form: minimize $f(v)$ subject to $M(v)\geq 0$.




Semidefinite programs can be solved numerically using the method optimize, and in small cases also symbolically with the method criticalIdeal.