This reduction takes as input a DGP problem and returns an equivalent DCP problem. Because every (generalized) geometric program is a DGP problem, this reduction can be used to convert geometric programs into convex form.
A Dgp2Dcp object.
A Problem object.
An Expression object corresponding to the DGP problem.
A list of values corresponding to the DGP expression
A Solution object to invert.
A InverseData object containing data necessary for the inversion.
accepts(object = Dgp2Dcp, problem = Problem)
: Is the problem DGP?
perform(object = Dgp2Dcp, problem = Problem)
: Converts the DGP problem to a DCP problem.
canonicalize_expr(Dgp2Dcp)
: Canonicalizes each atom within an Dgp2Dcp expression.
invert(object = Dgp2Dcp, solution = Solution, inverse_data = InverseData)
: Returns the solution to the original problem given the inverse_data.