qics.cones.OpPerspecTr

class qics.cones.OpPerspecTr(n, func, iscomplex=False)[source]

A class representing a trace operator perspective epigraph cone

\[\mathcal{OPT}_{n, g} = \text{cl}\{ (t, X, Y) \in \mathbb{R} \times \mathbb{H}^n_{++} \times \mathbb{H}^n_{++} : t \geq \text{tr}[P_g(X, Y)] \},\]

for an operator concave function \(g:(0, \infty)\rightarrow\mathbb{R}\), where

\[P_g(X, Y) = X^{1/2} g(X^{-1/2} Y X^{-1/2}) X^{1/2},\]

is the operator perspective of \(g\).

Parameters:
nint

Dimension of the matrices \(X\) and \(Y\).

funcstring or float

Choice for the function \(g\). Can be defined in the following ways.

  • \(g(x) = -\log(x)\) if func="log"

  • \(g(x) = -x^p\) if func=p is a float where \(p\in(0, 1)\)

  • \(g(x) = x^p\) if func=p is a float where \(p\in[-1, 0)\cup(1, 2)\)

iscomplexbool

Whether the matrices \(X\) and \(Y\) are defined over \(\mathbb{H}^n\) (True), or restricted to \(\mathbb{S}^n\) (False). The default is False.

See also

OpPerspecEpi

Operator perspective epigraph

Notes

We do not support operator perspectives for p=0, p=1, and p=2 as these functions are more efficiently modelled using just the positive semidefinite cone.

  • When \(g(x)=x^0\), \(P_g(X, Y)=X\).

  • When \(g(x)=x^1\), \(P_g(X, Y)=Y\).

  • When \(g(x)=x^2\), \(P_g(X, Y)=YX^{-1}Y\), which can be modelled using the Schur complement lemma, i.e., if \(X\succ 0\), then

    \[\begin{split}\begin{bmatrix} X & Y \\ Y & T \end{bmatrix} \succeq 0 \qquad \Longleftrightarrow \qquad T \succeq YX^{-1}Y.\end{split}\]