Convert Quadratic to Conic Constraint

constraintsconvex optimizationoptimizationqcqpsecond-order-cone-programming

Per Wikipedia, a quadratic constraint of the below form

$$x^TA^TAx+b^Tx+c\leq0\tag{1}$$

can be written as the following equivalent conic formulation

$$\left \|[(1+b^Tx+c)/2,~Ax ]\right \|_2\leq(1-b^Tx-c)/2\tag{2}$$

I tried my hand at proving the above, and seem to be getting a different expression. Starting with equation (1)-

$$||Ax||_2^2+b^Tx+c\leq0\implies||Ax||_2^2+(1+b^Tx+c)/2\leq(1-b^Tx-c)/2$$

This seems to be going nowhere. I could try completing a square, but would end up with a square root on the affine $x$ expression. Then I tried to manipulate equation (2)-

$$||Ax||_2^2+\{(1+b^Tx+c)/2\}^2+x^TA^T(1+b^Tx+c)\leq\{(1-b^Tx-c)/2\}^2$$

$$\Leftrightarrow||Ax||_2^2+(b^Tx+c)(I+x^TA^T)+x^TA^T\leq0$$

This doesn't look like a condition that should hold in general. Am I missing something here?

Best Answer

You have an extra term in your expansion of the left-hand side of the square of (2). A simple dimension check will tell you that the last term doesn’t belong—the other two terms are scalars, but the third is a row vector. $[(1+b^Tx+c)/2,(Ax)^T]^T$ is just $Ax$ with an extra scalar component prepended to it. The correct expansion of the square of its norm is $\|Ax\|_2^2+(1+b^Tx+c)^2/4$. Expand both terms and pull out the quadratic constraint to get $x^TA^TAx+b^Tx+c+\dots$. The elided terms factor nicely into something relevant.

Related Question