```markdown
### Geometric Program in Convex Form

- **Variable Change**: Convert variables to \( y_i = \log x_i \), and take the logarithm of cost and constraints.

- **Monomial Transformation**:
  - Original: \( f(x) = c x_1^{a_1} \cdots x_n^{a_n} \)
  - Transformed: \( \log f(e^{y_1}, \ldots, e^{y_n}) = a^T y + b \) where \( b = \log c \)

- **Posynomial Transformation**:
  - Original: \( f(x) = \sum_{k=1}^K c_k x_1^{a_{1k}} x_2^{a_{2k}} \cdots x_n^{a_{nk}} \)
  - Transformed: \( \log f(e^{y_1}, \ldots, e^{y_n}) = \log \left( \sum_{k=1}^K e^{a_k^T y + b_k} \right) \) where \( b_k = \log c_k \)

- **Convex Problem Formulation**:
  - Minimize: 
    \[
    \log \left( \sum_{k=1}^K \exp(a_{0k}^T y + b_{0k}) \right)
    \]
  - Subject to:
    \[
    \log \left( \sum_{k=1}^K \exp(a_{ik}^T y + b_{ik}) \right) \leq 0, \quad i = 1, \ldots, m
    \]
    \[
    Gy + d = 0
    \]

- **Source**: A. d’Aspremont, Convex Optimization M2.
```
