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/scip.h"

Go to the source code of this file.

Functions

SCIP_RETCODE SCIPincludePresolImplics (SCIP *scip)
 

Function Documentation

SCIP_RETCODE SCIPincludePresolImplics ( SCIP scip)

creates the implics presolver and includes it in SCIP

Parameters
scipSCIP data structure

Definition at line 336 of file presol_implics.c.

References NULL, PRESOL_DESC, PRESOL_MAXROUNDS, PRESOL_NAME, PRESOL_PRIORITY, PRESOL_TIMING, SCIP_CALL, SCIP_OKAY, SCIPincludePresolBasic(), and SCIPsetPresolCopy().

Referenced by SCIP_DECL_PRESOLCOPY(), and SCIPincludeDefaultPlugins().