Given a multivariate polynomial $p(x_1, ..., x_n)$ on $\mathbb{R}^n$, can we always decompose it into the difference of two convex polynomials? i.e., is there a pair of convex polynomials $f$ and $g$, such that: $\forall (x_1, ..., x_n) \in \mathbb{R}^n$, $p(x_1, ..., x_n) = f(x_1, ..., x_n) - g(x_1, ..., x_n)$?

If given a bounded region $\mathbb{N}$ which is a convex subset of $\mathbb{R}^n$, can we then decompose polynomial $p(x_1, ..., x_n)$ such that in $\forall (x_1, ..., x_n) \in \mathbb{N}$ , $p(x_1, ..., x_n) = f(x_1, ..., x_n) - g(x_1, ..., x_n)$ where $f$ and $g$ are convex polynomials.

If we can (no matter under the unbounded or bounded case), is there any constructive method to find such a pair of $f$ and $g$ for a given $p$?