# Perspective of log-sum-exp as exponential cone

According to the Mosek documentation, Geometric Programming constraints of form log-sum-exp can be formulated with exponential cones. If the constraint is of form $$t \geq \log(\exp(x_1)+\ldots + \exp(x_n)),$$

we can write the constraint as $$\begin{cases} \sum_{i=1}^n u_i \leq 1 \\ (u_i,1,x_i-t) \in \mathcal{K}_{\exp} \ \forall i \end{cases}$$ where $$\mathcal{K}_{\exp}$$ stands for the exponential cone, defined as: $$\mathcal{K}_{\exp} = \{(a_1,a_2,a_3):a_1 \geq a_2 e^{a_3 / a_2}, a_2>0 \}\cup \{(a_1,0,a_3): a_1 \geq 0, a_3 \leq 0 \}$$ So, to be able to use it in the above re-formulation we can show that this cone consists of points which satisfy $$a_3 \leq a_2\log (a_1/a_2), a_1,a_2 > 0.$$

My case is slightly different. Let $$f:\mathbb{R}^n \mapsto \mathbb{R}$$ be defined as $$f(\mathbf{x}) = \log(\exp(x_1)+\ldots + \exp(x_n))$$. The perspective of $$f$$ can be shown as $$x_0f(\frac{x}{x_0})$$ where $$x_0 > 0$$. The constraint I have is: $$t \geq x_0 f\left(\frac{x}{x_0}\right).$$ So I have the same constraint with the perspective function. How can I formulate this constraint with exponential cones (and linear constraints in the variables)? Note that in my constraint $$t$$ is a variable, too.

• Can you please include the definition of $\mathcal{K}_\text{exp}$ in your question? This is both a legitimate request... and a hint :-) – Michael Grant Feb 4 at 5:15
• Also, note that $x_0>0$ is required if the perspective is to preserve convexity. – Michael Grant Feb 4 at 5:17
• Added both. Thank you so much! Are there any leads for the next? I am planning to use Mosek Exponential Cone solver (version 9). So, I need to re-formulate this constraint. – independentvariable Feb 4 at 19:41
• Why not just define new variables with the linear constraints $s=\frac{t}{x_0}$ and $\omega=\frac{x}{x_0}$? Then your constraint is $s\geq f(\omega)$, as required. – nathan.j.mcdougall Feb 5 at 2:21
• Thank you @nathan.j.mcdougall . I think I solved it with a similar idea! – independentvariable Feb 5 at 3:13