Scippy

SCIP

Solving Constraint Integer Programs

Detailed Description

methods and datastructures for propagators

Author
Tobias Achterberg
Timo Berthold

Definition in file prop.c.

#include <assert.h>
#include <string.h>
#include "scip/def.h"
#include "scip/set.h"
#include "scip/stat.h"
#include "scip/clock.h"
#include "scip/paramset.h"
#include "scip/var.h"
#include "scip/scip.h"
#include "scip/prop.h"
#include "scip/pub_message.h"
#include "scip/pub_misc.h"
#include "scip/struct_prop.h"

Go to the source code of this file.

Functions

 SCIP_DECL_SORTPTRCOMP (SCIPpropComp)
 
 SCIP_DECL_SORTPTRCOMP (SCIPpropCompPresol)
 
 SCIP_DECL_SORTPTRCOMP (SCIPpropCompName)
 
static SCIP_DECL_PARAMCHGD (paramChgdPropPriority)
 
static SCIP_DECL_PARAMCHGD (paramChgdPropPresolPriority)
 
SCIP_RETCODE SCIPpropCopyInclude (SCIP_PROP *prop, SCIP_SET *set)
 
static SCIP_RETCODE doPropCreate (SCIP_PROP **prop, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, int priority, int freq, SCIP_Bool delay, SCIP_PROPTIMING timingmask, int presolpriority, int presolmaxrounds, SCIP_PRESOLTIMING presoltiming, SCIP_DECL_PROPCOPY((*propcopy)), SCIP_DECL_PROPFREE((*propfree)), SCIP_DECL_PROPINIT((*propinit)), SCIP_DECL_PROPEXIT((*propexit)), SCIP_DECL_PROPINITPRE((*propinitpre)), SCIP_DECL_PROPEXITPRE((*propexitpre)), SCIP_DECL_PROPINITSOL((*propinitsol)), SCIP_DECL_PROPEXITSOL((*propexitsol)), SCIP_DECL_PROPPRESOL((*proppresol)), SCIP_DECL_PROPEXEC((*propexec)), SCIP_DECL_PROPRESPROP((*propresprop)), SCIP_PROPDATA *propdata)
 
SCIP_RETCODE SCIPpropCreate (SCIP_PROP **prop, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, int priority, int freq, SCIP_Bool delay, SCIP_PROPTIMING timingmask, int presolpriority, int presolmaxrounds, SCIP_PRESOLTIMING presoltiming, SCIP_DECL_PROPCOPY((*propcopy)), SCIP_DECL_PROPFREE((*propfree)), SCIP_DECL_PROPINIT((*propinit)), SCIP_DECL_PROPEXIT((*propexit)), SCIP_DECL_PROPINITPRE((*propinitpre)), SCIP_DECL_PROPEXITPRE((*propexitpre)), SCIP_DECL_PROPINITSOL((*propinitsol)), SCIP_DECL_PROPEXITSOL((*propexitsol)), SCIP_DECL_PROPPRESOL((*proppresol)), SCIP_DECL_PROPEXEC((*propexec)), SCIP_DECL_PROPRESPROP((*propresprop)), SCIP_PROPDATA *propdata)
 
SCIP_RETCODE SCIPpropFree (SCIP_PROP **prop, SCIP_SET *set)
 
SCIP_RETCODE SCIPpropInit (SCIP_PROP *prop, SCIP_SET *set)
 
SCIP_RETCODE SCIPpropExit (SCIP_PROP *prop, SCIP_SET *set)
 
SCIP_RETCODE SCIPpropInitpre (SCIP_PROP *prop, SCIP_SET *set)
 
SCIP_RETCODE SCIPpropExitpre (SCIP_PROP *prop, SCIP_SET *set)
 
SCIP_RETCODE SCIPpropInitsol (SCIP_PROP *prop, SCIP_SET *set)
 
SCIP_RETCODE SCIPpropExitsol (SCIP_PROP *prop, SCIP_SET *set, SCIP_Bool restart)
 
SCIP_RETCODE SCIPpropPresol (SCIP_PROP *prop, SCIP_SET *set, SCIP_PRESOLTIMING timing, int nrounds, int *nfixedvars, int *naggrvars, int *nchgvartypes, int *nchgbds, int *naddholes, int *ndelconss, int *naddconss, int *nupgdconss, int *nchgcoefs, int *nchgsides, SCIP_RESULT *result)
 
SCIP_RETCODE SCIPpropExec (SCIP_PROP *prop, SCIP_SET *set, SCIP_STAT *stat, int depth, SCIP_Bool execdelayed, SCIP_Bool instrongbranching, SCIP_PROPTIMING proptiming, SCIP_RESULT *result)
 
SCIP_RETCODE SCIPpropResolvePropagation (SCIP_PROP *prop, SCIP_SET *set, SCIP_VAR *infervar, int inferinfo, SCIP_BOUNDTYPE inferboundtype, SCIP_BDCHGIDX *bdchgidx, SCIP_Real relaxedbd, SCIP_RESULT *result)
 
SCIP_PROPDATASCIPpropGetData (SCIP_PROP *prop)
 
void SCIPpropSetData (SCIP_PROP *prop, SCIP_PROPDATA *propdata)
 
void SCIPpropSetCopy (SCIP_PROP *prop, SCIP_DECL_PROPCOPY((*propcopy)))
 
void SCIPpropSetFree (SCIP_PROP *prop, SCIP_DECL_PROPFREE((*propfree)))
 
void SCIPpropSetInit (SCIP_PROP *prop, SCIP_DECL_PROPINIT((*propinit)))
 
void SCIPpropSetExit (SCIP_PROP *prop, SCIP_DECL_PROPEXIT((*propexit)))
 
void SCIPpropSetInitsol (SCIP_PROP *prop, SCIP_DECL_PROPINITSOL((*propinitsol)))
 
void SCIPpropSetExitsol (SCIP_PROP *prop, SCIP_DECL_PROPEXITSOL((*propexitsol)))
 
void SCIPpropSetInitpre (SCIP_PROP *prop, SCIP_DECL_PROPINITPRE((*propinitpre)))
 
void SCIPpropSetExitpre (SCIP_PROP *prop, SCIP_DECL_PROPEXITPRE((*propexitpre)))
 
SCIP_RETCODE SCIPpropSetPresol (SCIP_PROP *prop, SCIP_DECL_PROPPRESOL((*proppresol)), int presolpriority, int presolmaxrounds, SCIP_PRESOLTIMING presoltiming)
 
void SCIPpropSetResprop (SCIP_PROP *prop, SCIP_DECL_PROPRESPROP((*propresprop)))
 
const char * SCIPpropGetName (SCIP_PROP *prop)
 
const char * SCIPpropGetDesc (SCIP_PROP *prop)
 
int SCIPpropGetPriority (SCIP_PROP *prop)
 
int SCIPpropGetPresolPriority (SCIP_PROP *prop)
 
void SCIPpropSetPriority (SCIP_PROP *prop, SCIP_SET *set, int priority)
 
void SCIPpropSetPresolPriority (SCIP_PROP *prop, SCIP_SET *set, int presolpriority)
 
int SCIPpropGetFreq (SCIP_PROP *prop)
 
void SCIPpropEnableOrDisableClocks (SCIP_PROP *prop, SCIP_Bool enable)
 
SCIP_Real SCIPpropGetSetupTime (SCIP_PROP *prop)
 
void SCIPpropSetFreq (SCIP_PROP *prop, int freq)
 
SCIP_Real SCIPpropGetTime (SCIP_PROP *prop)
 
SCIP_Real SCIPpropGetStrongBranchPropTime (SCIP_PROP *prop)
 
SCIP_Real SCIPpropGetRespropTime (SCIP_PROP *prop)
 
SCIP_Real SCIPpropGetPresolTime (SCIP_PROP *prop)
 
SCIP_Longint SCIPpropGetNCalls (SCIP_PROP *prop)
 
SCIP_Longint SCIPpropGetNRespropCalls (SCIP_PROP *prop)
 
SCIP_Longint SCIPpropGetNCutoffs (SCIP_PROP *prop)
 
SCIP_Longint SCIPpropGetNDomredsFound (SCIP_PROP *prop)
 
SCIP_Bool SCIPpropIsDelayed (SCIP_PROP *prop)
 
SCIP_Bool SCIPpropWasDelayed (SCIP_PROP *prop)
 
SCIP_Bool SCIPpropIsInitialized (SCIP_PROP *prop)
 
int SCIPpropGetNFixedVars (SCIP_PROP *prop)
 
int SCIPpropGetNAggrVars (SCIP_PROP *prop)
 
int SCIPpropGetNChgVarTypes (SCIP_PROP *prop)
 
int SCIPpropGetNChgBds (SCIP_PROP *prop)
 
int SCIPpropGetNAddHoles (SCIP_PROP *prop)
 
int SCIPpropGetNDelConss (SCIP_PROP *prop)
 
int SCIPpropGetNAddConss (SCIP_PROP *prop)
 
int SCIPpropGetNUpgdConss (SCIP_PROP *prop)
 
int SCIPpropGetNChgCoefs (SCIP_PROP *prop)
 
int SCIPpropGetNChgSides (SCIP_PROP *prop)
 
int SCIPpropGetNPresolCalls (SCIP_PROP *prop)
 
SCIP_PROPTIMING SCIPpropGetTimingmask (SCIP_PROP *prop)
 
SCIP_Bool SCIPpropDoesPresolve (SCIP_PROP *prop)
 
SCIP_PRESOLTIMING SCIPpropGetPresolTiming (SCIP_PROP *prop)
 
void SCIPpropSetPresolTiming (SCIP_PROP *prop, SCIP_PRESOLTIMING presoltiming)
 

Function Documentation

◆ SCIP_DECL_PARAMCHGD() [1/2]

static SCIP_DECL_PARAMCHGD ( paramChgdPropPriority  )
static

method to call, when the priority of a propagator was changed

Definition at line 71 of file prop.c.

References NULL, SCIP_CALL, SCIP_OKAY, SCIPparamGetData(), SCIPparamGetInt(), and SCIPsetPropPriority().

◆ SCIP_DECL_PARAMCHGD() [2/2]

static SCIP_DECL_PARAMCHGD ( paramChgdPropPresolPriority  )
static

method to call, when the presolving priority of a propagator was changed

Definition at line 86 of file prop.c.

References NULL, SCIP_CALL, SCIP_OKAY, SCIPparamGetData(), SCIPparamGetInt(), and SCIPsetPropPresolPriority().

◆ SCIPpropCopyInclude()

SCIP_RETCODE SCIPpropCopyInclude ( SCIP_PROP prop,
SCIP_SET set 
)

copies the given propagator to a new scip

Parameters
proppropagator
setSCIP_SET of SCIP to copy to

Definition at line 100 of file prop.c.

References NULL, SCIP_CALL, SCIP_OKAY, SCIPpropGetName(), and SCIPsetDebugMsg.

Referenced by SCIPsetCopyPlugins().

◆ doPropCreate()

static SCIP_RETCODE doPropCreate ( SCIP_PROP **  prop,
SCIP_SET set,
SCIP_MESSAGEHDLR messagehdlr,
BMS_BLKMEM blkmem,
const char *  name,
const char *  desc,
int  priority,
int  freq,
SCIP_Bool  delay,
SCIP_PROPTIMING  timingmask,
int  presolpriority,
int  presolmaxrounds,
SCIP_PRESOLTIMING  presoltiming,
SCIP_DECL_PROPCOPY((*propcopy))  ,
SCIP_DECL_PROPFREE((*propfree))  ,
SCIP_DECL_PROPINIT((*propinit))  ,
SCIP_DECL_PROPEXIT((*propexit))  ,
SCIP_DECL_PROPINITPRE((*propinitpre))  ,
SCIP_DECL_PROPEXITPRE((*propexitpre))  ,
SCIP_DECL_PROPINITSOL((*propinitsol))  ,
SCIP_DECL_PROPEXITSOL((*propexitsol))  ,
SCIP_DECL_PROPPRESOL((*proppresol))  ,
SCIP_DECL_PROPEXEC((*propexec))  ,
SCIP_DECL_PROPRESPROP((*propresprop))  ,
SCIP_PROPDATA propdata 
)
static

internal method for creating a propagator

Parameters
proppointer to propagator data structure
setglobal SCIP settings
messagehdlrmessage handler
blkmemblock memory for parameter settings
namename of propagator
descdescription of propagator
prioritypriority of the propagator (>= 0: before, < 0: after constraint handlers)
freqfrequency for calling propagator
delayshould propagator be delayed, if other propagators found reductions?
timingmaskpositions in the node solving loop where propagator should be executed
presolprioritypriority of the propagator (>= 0: before, < 0: after constraint handlers)
presolmaxroundsmaximal number of presolving rounds the propagator participates in (-1: no limit)
presoltimingtiming mask of the propagator's presolving method
propdatapropagator data

Definition at line 119 of file prop.c.

References BMSallocMemory, BMSclearMemory, BMSduplicateMemoryArray, FALSE, NULL, paramname, SCIP_ALLOC, SCIP_CALL, SCIP_CLOCKTYPE_DEFAULT, SCIP_MAXSTRLEN, SCIP_MAXTREEDEPTH, SCIP_OKAY, SCIP_PARAMETERWRONGVAL, SCIP_PRESOLTIMING_EXHAUSTIVE, SCIP_PRESOLTIMING_FAST, SCIP_PRESOLTIMING_FINAL, SCIP_PRESOLTIMING_MAX, SCIP_PRESOLTIMING_MEDIUM, SCIP_PRESOLTIMING_NONE, SCIP_PROPTIMING_AFTERLPLOOP, SCIP_PROPTIMING_ALWAYS, SCIP_PROPTIMING_BEFORELP, SCIP_PROPTIMING_DURINGLPLOOP, SCIPclockCreate(), SCIPmessagePrintError(), SCIPsetAddBoolParam(), SCIPsetAddIntParam(), SCIPsnprintf(), and TRUE.

Referenced by SCIPpropCreate().

◆ SCIPpropCreate()

SCIP_RETCODE SCIPpropCreate ( SCIP_PROP **  prop,
SCIP_SET set,
SCIP_MESSAGEHDLR messagehdlr,
BMS_BLKMEM blkmem,
const char *  name,
const char *  desc,
int  priority,
int  freq,
SCIP_Bool  delay,
SCIP_PROPTIMING  timingmask,
int  presolpriority,
int  presolmaxrounds,
SCIP_PRESOLTIMING  presoltiming,
SCIP_DECL_PROPCOPY((*propcopy))  ,
SCIP_DECL_PROPFREE((*propfree))  ,
SCIP_DECL_PROPINIT((*propinit))  ,
SCIP_DECL_PROPEXIT((*propexit))  ,
SCIP_DECL_PROPINITPRE((*propinitpre))  ,
SCIP_DECL_PROPEXITPRE((*propexitpre))  ,
SCIP_DECL_PROPINITSOL((*propinitsol))  ,
SCIP_DECL_PROPEXITSOL((*propexitsol))  ,
SCIP_DECL_PROPPRESOL((*proppresol))  ,
SCIP_DECL_PROPEXEC((*propexec))  ,
SCIP_DECL_PROPRESPROP((*propresprop))  ,
SCIP_PROPDATA propdata 
)

creates a propagator

Parameters
proppointer to propagator data structure
setglobal SCIP settings
messagehdlrmessage handler
blkmemblock memory for parameter settings
namename of propagator
descdescription of propagator
prioritypriority of the propagator (>= 0: before, < 0: after constraint handlers)
freqfrequency for calling propagator
delayshould propagator be delayed, if other propagators found reductions?
timingmaskpositions in the node solving loop where propagator should be executed
presolprioritypriority of the propagator (>= 0: before, < 0: after constraint handlers)
presolmaxroundsmaximal number of presolving rounds the propagator participates in (-1: no limit)
presoltimingtiming mask of the propagator's presolving method
propdatapropagator data

Definition at line 242 of file prop.c.

References doPropCreate(), NULL, SCIP_CALL_FINALLY, SCIP_OKAY, and SCIPpropFree().

Referenced by SCIPincludeProp(), and SCIPincludePropBasic().

◆ SCIPpropFree()

SCIP_RETCODE SCIPpropFree ( SCIP_PROP **  prop,
SCIP_SET set 
)

calls destructor and frees memory of propagator

Parameters
proppointer to propagator data structure
setglobal SCIP settings

Definition at line 284 of file prop.c.

References BMSfreeMemory, BMSfreeMemoryArrayNull, NULL, SCIP_CALL, SCIP_OKAY, and SCIPclockFree().

Referenced by SCIPpropCreate().

◆ SCIPpropInit()

◆ SCIPpropExit()

SCIP_RETCODE SCIPpropExit ( SCIP_PROP prop,
SCIP_SET set 
)

calls exit method of propagator

Parameters
proppropagator
setglobal SCIP settings

Definition at line 380 of file prop.c.

References FALSE, SCIP_Prop::initialized, SCIP_Prop::name, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, and SCIP_Prop::setuptime.

Referenced by SCIPsetInitPlugins().

◆ SCIPpropInitpre()

◆ SCIPpropExitpre()

SCIP_RETCODE SCIPpropExitpre ( SCIP_PROP prop,
SCIP_SET set 
)

informs propagator that the presolving process is finished

Parameters
proppropagator
setglobal SCIP settings

Definition at line 446 of file prop.c.

References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Prop::setuptime.

Referenced by SCIPsetExitPlugins().

◆ SCIPpropInitsol()

SCIP_RETCODE SCIPpropInitsol ( SCIP_PROP prop,
SCIP_SET set 
)

informs propagator that the prop and bound process is being started

Parameters
proppropagator
setglobal SCIP settings

Definition at line 470 of file prop.c.

References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Prop::setuptime.

Referenced by SCIPsetExitprePlugins().

◆ SCIPpropExitsol()

SCIP_RETCODE SCIPpropExitsol ( SCIP_PROP prop,
SCIP_SET set,
SCIP_Bool  restart 
)

informs propagator that the prop and bound process data is being freed

Parameters
proppropagator
setglobal SCIP settings
restartwas this exit solve call triggered by a restart?

Definition at line 494 of file prop.c.

References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Prop::setuptime.

Referenced by SCIPsetInitsolPlugins().

◆ SCIPpropPresol()

SCIP_RETCODE SCIPpropPresol ( SCIP_PROP prop,
SCIP_SET set,
SCIP_PRESOLTIMING  timing,
int  nrounds,
int *  nfixedvars,
int *  naggrvars,
int *  nchgvartypes,
int *  nchgbds,
int *  naddholes,
int *  ndelconss,
int *  naddconss,
int *  nupgdconss,
int *  nchgcoefs,
int *  nchgsides,
SCIP_RESULT result 
)

executes presolving method of propagator

Parameters
proppropagator
setglobal SCIP settings
timingcurrent presolving timing
nroundsnumber of presolving rounds already done
nfixedvarspointer to total number of variables fixed of all presolvers
naggrvarspointer to total number of variables aggregated of all presolvers
nchgvartypespointer to total number of variable type changes of all presolvers
nchgbdspointer to total number of variable bounds tightened of all presolvers
naddholespointer to total number of domain holes added of all presolvers
ndelconsspointer to total number of deleted constraints of all presolvers
naddconsspointer to total number of added constraints of all presolvers
nupgdconsspointer to total number of upgraded constraints of all presolvers
nchgcoefspointer to total number of changed coefficients of all presolvers
nchgsidespointer to total number of changed left/right hand sides of all presolvers
resultpointer to store the result of the callback method

Definition at line 519 of file prop.c.

References SCIP_Prop::lastnaddconss, SCIP_Prop::lastnaddholes, SCIP_Prop::lastnaggrvars, SCIP_Prop::lastnchgbds, SCIP_Prop::lastnchgcoefs, SCIP_Prop::lastnchgsides, SCIP_Prop::lastnchgvartypes, SCIP_Prop::lastndelconss, SCIP_Prop::lastnfixedvars, SCIP_Prop::lastnupgdconss, SCIP_Prop::maxprerounds, SCIP_Prop::naddconss, SCIP_Prop::naddholes, SCIP_Prop::naggrvars, SCIP_Prop::name, SCIP_Prop::nchgbds, SCIP_Prop::nchgcoefs, SCIP_Prop::nchgsides, SCIP_Prop::nchgvartypes, SCIP_Prop::ndelconss, SCIP_Prop::nfixedvars, SCIP_Prop::npresolcalls, NULL, SCIP_Prop::nupgdconss, SCIP_Prop::presoltime, SCIP_Prop::presoltiming, SCIP_CALL, SCIP_CUTOFF, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_SUCCESS, SCIP_UNBOUNDED, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, and SCIPsetDebugMsg.

Referenced by presolveRound().

◆ SCIPpropExec()

SCIP_RETCODE SCIPpropExec ( SCIP_PROP prop,
SCIP_SET set,
SCIP_STAT stat,
int  depth,
SCIP_Bool  execdelayed,
SCIP_Bool  instrongbranching,
SCIP_PROPTIMING  proptiming,
SCIP_RESULT result 
)

calls execution method of propagator

Parameters
proppropagator
setglobal SCIP settings
statdynamic problem statistics
depthdepth of current node
execdelayedexecute propagator even if it is marked to be delayed
instrongbranchingare we currently doing strong branching?
proptimingcurrent point in the node solving process
resultpointer to store the result of the callback method

Definition at line 645 of file prop.c.

References SCIP_Prop::delay, SCIP_Prop::freq, SCIP_Prop::name, SCIP_Stat::nboundchgs, SCIP_Prop::ncalls, SCIP_Prop::ncutoffs, SCIP_Prop::ndomredsfound, SCIP_Stat::nholechgs, SCIP_Stat::nprobboundchgs, SCIP_Stat::nprobholechgs, NULL, SCIP_Prop::proptime, SCIP_Prop::sbproptime, SCIP_CALL, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DELAYNODE, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_Longint, SCIP_OKAY, SCIP_REDUCEDDOM, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIPsetDebugMsg, and SCIP_Prop::wasdelayed.

Referenced by propagationRound().

◆ SCIPpropResolvePropagation()

SCIP_RETCODE SCIPpropResolvePropagation ( SCIP_PROP prop,
SCIP_SET set,
SCIP_VAR infervar,
int  inferinfo,
SCIP_BOUNDTYPE  inferboundtype,
SCIP_BDCHGIDX bdchgidx,
SCIP_Real  relaxedbd,
SCIP_RESULT result 
)

resolves the given conflicting bound, that was deduced by the given propagator, by putting all "reason" bounds leading to the deduction into the conflict queue with calls to SCIPaddConflictLb(), SCIPaddConflictUb(), SCIPaddConflictBd(), SCIPaddConflictRelaxedLb(), SCIPaddConflictRelaxedUb(), SCIPaddConflictRelaxedBd(), or SCIPaddConflictBinvar();

Note
it is sufficient to explain the relaxed bound change
Parameters
proppropagator
setglobal SCIP settings
infervarvariable whose bound was deduced by the constraint
inferinfouser inference information attached to the bound change
inferboundtypebound that was deduced (lower or upper bound)
bdchgidxbound change index, representing the point of time where change took place
relaxedbdthe relaxed bound
resultpointer to store the result of the callback method

Definition at line 737 of file prop.c.

References SCIP_Prop::name, SCIP_Prop::nrespropcalls, NULL, SCIP_Prop::resproptime, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIP_SUCCESS, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIPgetVarLbAtIndex(), SCIPgetVarUbAtIndex(), SCIPvarGetLbGlobal(), SCIPvarGetUbGlobal(), and TRUE.

Referenced by conflictResolveBound().

◆ SCIPpropSetCopy()

void SCIPpropSetCopy ( SCIP_PROP prop,
SCIP_DECL_PROPCOPY((*propcopy))   
)

sets copy method of propagator

Parameters
proppropagator

Definition at line 810 of file prop.c.

References NULL.

Referenced by SCIPsetPropCopy().

◆ SCIPpropSetFree()

void SCIPpropSetFree ( SCIP_PROP prop,
SCIP_DECL_PROPFREE((*propfree))   
)

sets destructor method of propagator

Parameters
proppropagator

Definition at line 821 of file prop.c.

References NULL.

Referenced by SCIPsetPropFree().

◆ SCIPpropSetInit()

void SCIPpropSetInit ( SCIP_PROP prop,
SCIP_DECL_PROPINIT((*propinit))   
)

sets initialization method of propagator

Parameters
proppropagator

Definition at line 832 of file prop.c.

References NULL.

Referenced by SCIPsetPropInit().

◆ SCIPpropSetExit()

void SCIPpropSetExit ( SCIP_PROP prop,
SCIP_DECL_PROPEXIT((*propexit))   
)

sets deinitialization method of propagator

Parameters
proppropagator

Definition at line 843 of file prop.c.

References NULL.

Referenced by SCIPsetPropExit().

◆ SCIPpropSetInitsol()

void SCIPpropSetInitsol ( SCIP_PROP prop,
SCIP_DECL_PROPINITSOL((*propinitsol))   
)

sets solving process initialization method of propagator

Parameters
proppropagator

Definition at line 854 of file prop.c.

References NULL.

Referenced by SCIPsetPropInitsol().

◆ SCIPpropSetExitsol()

void SCIPpropSetExitsol ( SCIP_PROP prop,
SCIP_DECL_PROPEXITSOL((*propexitsol))   
)

sets solving process deinitialization method of propagator

Parameters
proppropagator

Definition at line 865 of file prop.c.

References NULL.

Referenced by SCIPsetPropExitsol().

◆ SCIPpropSetInitpre()

void SCIPpropSetInitpre ( SCIP_PROP prop,
SCIP_DECL_PROPINITPRE((*propinitpre))   
)

sets preprocessing initialization method of propagator

Parameters
proppropagator

Definition at line 876 of file prop.c.

References NULL.

Referenced by SCIPsetPropInitpre().

◆ SCIPpropSetExitpre()

void SCIPpropSetExitpre ( SCIP_PROP prop,
SCIP_DECL_PROPEXITPRE((*propexitpre))   
)

sets preprocessing deinitialization method of propagator

Parameters
proppropagator

Definition at line 889 of file prop.c.

References NULL.

Referenced by SCIPsetPropExitpre().

◆ SCIPpropSetPresol()

SCIP_RETCODE SCIPpropSetPresol ( SCIP_PROP prop,
SCIP_DECL_PROPPRESOL((*proppresol))  ,
int  presolpriority,
int  presolmaxrounds,
SCIP_PRESOLTIMING  presoltiming 
)

sets presolving method of propagator

Parameters
proppropagator
presolprioritypresolving priority of the propagator (>= 0: before, < 0: after constraint handlers)
presolmaxroundsmaximal number of presolving rounds the propagator participates in (-1: no limit)
presoltimingtiming mask of the propagator's presolving method

Definition at line 900 of file prop.c.

References SCIP_Prop::maxprerounds, SCIP_Prop::name, NULL, SCIP_Prop::presolpriority, SCIP_Prop::presoltiming, SCIP_OKAY, SCIP_PARAMETERWRONGVAL, SCIP_PRESOLTIMING_MAX, and SCIPmessagePrintError().

Referenced by SCIPsetPropPresol().

◆ SCIPpropSetResprop()

void SCIPpropSetResprop ( SCIP_PROP prop,
SCIP_DECL_PROPRESPROP((*propresprop))   
)

sets propagation conflict resolving callback of propagator

Parameters
proppropagator

Definition at line 930 of file prop.c.

References NULL.

Referenced by SCIPsetPropResprop().

◆ SCIPpropSetPriority()

void SCIPpropSetPriority ( SCIP_PROP prop,
SCIP_SET set,
int  priority 
)

sets priority of propagator

Parameters
proppropagator
setglobal SCIP settings
prioritynew priority of the propagator

Definition at line 981 of file prop.c.

References FALSE, NULL, and SCIP_Prop::priority.

Referenced by SCIPsetPropPriority().

◆ SCIPpropSetPresolPriority()

void SCIPpropSetPresolPriority ( SCIP_PROP prop,
SCIP_SET set,
int  presolpriority 
)

sets presolving priority of propagator

Parameters
proppropagator
setglobal SCIP settings
presolprioritynew priority of the propagator

Definition at line 995 of file prop.c.

References FALSE, NULL, and SCIP_Prop::presolpriority.

Referenced by SCIPsetPropPresolPriority().

◆ SCIPpropEnableOrDisableClocks()

void SCIPpropEnableOrDisableClocks ( SCIP_PROP prop,
SCIP_Bool  enable 
)

enables or disables all clocks of prop, depending on the value of the flag

Parameters
propthe propagator for which all clocks should be enabled or disabled
enableshould the clocks of the propagator be enabled?

Definition at line 1019 of file prop.c.

References NULL, SCIP_Prop::presoltime, SCIP_Prop::proptime, SCIP_Prop::resproptime, SCIP_Prop::sbproptime, SCIPclockEnableOrDisable(), and SCIP_Prop::setuptime.