# Dual Values¶

Picos typically reformulates optimization problems as conic programs of the form where each is a linear map from to a linear space containing the cone , and the generalized conic inequality means for a cone . For the sake of compactness, we allow generalized inequalities over the trivial cone , such that represents an equality constraint .

The dual conic problem can be written as follows: where denotes the adjoint operator of and denotes the the dual cone of (see the note below for a list of cones that are supported in PICOS, together with their dual).

After an optimization problem has been solved, we can query the optimal dual variable of a conic constraint con over the cone with its dual attribute, i.e., con.dual.

When an optimization problem P can be reformulated to a conic program C of the above form by PICOS, we can use its dual attribute to return a Problem object D=P.dual which contains the dual conic program of C. It is also possible to solve P via its dual by using the dualize option: This passes problem D to the solver, and the optimal primal and dual variables of P will be retrieved from the optimal solution of D.

## Supported cones and their dual¶

PICOS can provide dual information for problems involving the following cones:

Trivial cone

The trivial cone , whose dual cone is the entire space . This means that the dual variable for an equality constraint is unconstrained.

Nonnegative Orthant

The nonnegative orthant is self dual: . Therefore the dual variable for a set of linear inequalities is a vector .

Lorentz Cone

The Lorentz cone  , which is used to model second-order cone inequalities, is self-dual: . This means that the dual variable for a second order cone inequality of the form is a vector of the form such that .

Rotated Second-order Cone

The (widened or narrowed) rotated second order cone is for some , and its dual cone is . In particular, is self-dual for . For example, the dual variable for the constraint with and , i.e., is a vector of the form such that ;

Positive Semi-definite Cone

The positive semidefinite cone is self dual: . This means that the dual variable for a linear matrix inequality is a positive semidefinite matrix ;

Exponential Cone

PICOS can also reformulate several constraints using the exponential cone ExponentialCone, as it is the case for example for KullbackLeiblerConstraint. PICOS provides dual values for ExpConeConstraint, as computed by the solver, but dualization of those constraints is not yet supported.