Documentation


FarkasDual

Type: double
Modifiable: No

Together, attributes FarkasDual and FarkasProof provide a certificate of infeasibility for the given problem. Specifically, they can be used to form the following inequality from the original constraints that is trivially infeasible:


\begin{displaymath}\bar{a}x = \lambda^tAx \leq \lambda^tb = -\beta + \sum\limits...
...{a}_j<0}\bar{a}_jU_j + \sum\limits_{j:\bar{a}_j>0}\bar{a}_jL_j,\end{displaymath}

where $\beta>0$, $L_j$ is the lower bound of variable $x_j$, $U_j$ is the upper bound of variable $x_j$, $\lambda_i \geq 0$ if the $i$-th constraint has a $\leq$ sense, $\lambda_i \leq 0$ if the $i$-th constraint has a $\geq$ sense, $\bar{a}_j \geq 0$ if $U_j = \infty$, and $\bar{a}_j
\leq 0$ if $L_j = -\infty$. This constraint can not be satisfied for any $\beta>0$. The FarkasProof attribute provides $\beta$, and the FarkasDual attributes provide $\lambda$ multipliers for the original constraints.

This attribute is only available when parameter InfUnbdInfo is set to 1.

For examples of how to query or modify attributes, refer to our Attribute Examples.