*sos-convexity*, which can be checked with semidefinite programming and provides a sufficient condition for convexity.

\[def:sos-convex\] A polynomial $p\mathrel{\mathop:}=p(x)$ is *sos-convex* if its Hessian $\nabla^2p(x)$ can be factored as $$\nabla^2p(x)=M^T(x)M(x),$$ where $M(x)$ is a polynomial matrix; i.e., a matrix with polynomial entries.

Polynomial matrices which admit a decomposition as above are called *sos matrices*. The term *sos-convex* was coined in a seminal paper of Helton and Nie [@Helton_Nie_SDP_repres_2]. The following theorem is an algebraic analogue of a classical theorem in convex analysis and provides equivalent characterizations of sos-convexity.

\[Ahmadi and Parrilo [@AAA_PP_table_sos-convexity]\] \[thm:sos.convexity.3.equivalent.defs\] Let $p\mathrel{\mathop:}=p(x)$ be a polynomial of degree $d$ in $n$ variables with its gradient and Hessian denoted respectively by $\nabla p\mathrel{\mathop:}=\nabla p(x) $ and $\nabla^2p\mathrel{\mathop:}=\nabla^2 p(x)$. Let $g_{\lambda}$, $g_\nabla$, and $g_{\nabla^2}$ be defined as $$\label{eq:defn.g_lambda.g_grad.g_grad2}
\begin{array}{lll}
g_{\lambda}(x,y)&=&(1-\lambda)p(x)+\lambda p(y)-p((1-\lambda)
x+\lambda y),\\
g_\nabla(x,y)&=&p(y)-p(x)-\nabla p(x)^T(y-x), \\
g_{\nabla^2}(x,y)&=&y^{T}\nabla^2p(x)y.
\end{array}$$ Then the following are equivalent to sos-convexity of $p$:

**(a)**   $g_{\frac{1}{2}}(x,y)$ is sos[^4].

**(b)**   $g_\nabla(x,y)$ is sos.

**(c)**   $g_{\nabla^2}(x,y)$ is sos.

The above theorem is reassuring in the sense that it demonstrates the invariance of the definition of sos-convexity with respect to the characterization of convexity that one may choose to apply the sos relaxation to. Since existence of an sos decomposition 