Scippy

SCIP

Solving Constraint Integer Programs

presol_implics.h File Reference

Detailed Description

implication graph presolver which checks for aggregations

Author
Tobias Achterberg

This presolver looks for variable implications in \(x == 0\) and \(x == 1\) with the same implied variable. There are four possible cases:

\[ x = 0 \Rightarrow y = lb,\; \mathrm{and}\; x = 1 \Rightarrow y = lb:\; \mathrm{fix}\; y\; \mathrm{to}\; lb \]

\[ x = 0 \Rightarrow y = lb,\; \mathrm{and}\; x = 1 \Rightarrow y = ub:\; \mathrm{aggregate}\; y == lb + (ub-lb)x \]

\[ x = 0 \Rightarrow y = ub,\; \mathrm{and}\; x = 1 \Rightarrow y = lb:\; \mathrm{aggregate}\; y == ub - (ub-lb)x \]

\[ x = 0 \Rightarrow y = ub,\; \mathrm{and}\; x = 1 \Rightarrow y = ub:\; \mathrm{fix}\; y\; \mathrm{to}\; ub \]

Definition in file presol_implics.h.

#include "scip/def.h"
#include "scip/type_retcode.h"
#include "scip/type_scip.h"

Go to the source code of this file.

Functions

SCIP_RETCODE SCIPincludePresolImplics (SCIP *scip)