All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
cons_xor.h
Go to the documentation of this file.
18 * @brief Constraint handler for "xor" constraints, \f$rhs = x_1 \oplus x_2 \oplus \dots \oplus x_n\f$
29 * where \f$x_i\f$ is a binary variable for all \f$i\f$ and \f$rhs\f$ is bool. The variables \f$x\f$'s are called
30 * operators. This constraint is satisfied if \f$rhs\f$ is TRUE and an odd number of the operators are TRUE or if the
31 * \f$rhs\f$ is FALSE and a even number of operators are TRUE. Hence, if the sum of \f$rhs\f$ and operators is even.
34 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
54 * @note the constraint gets captured, hence at one point you have to release it using the method SCIPreleaseCons()
84 SCIP_Bool stickingatnode /**< should the constraint always be kept at the node where it was added, even
90 * in its most basic version, i. e., all constraint flags are set to their basic value as explained for the
95 * @note the constraint gets captured, hence at one point you have to release it using the method SCIPreleaseCons()
SCIP_Bool SCIPgetRhsXor(SCIP *scip, SCIP_CONS *cons) SCIP_RETCODE SCIPcreateConsXor(SCIP *scip, SCIP_CONS **cons, const char *name, SCIP_Bool rhs, int nvars, SCIP_VAR **vars, SCIP_Bool initial, SCIP_Bool separate, SCIP_Bool enforce, SCIP_Bool check, SCIP_Bool propagate, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool dynamic, SCIP_Bool removable, SCIP_Bool stickingatnode) SCIP_RETCODE SCIPincludeConshdlrXor(SCIP *scip) int SCIPgetNVarsXor(SCIP *scip, SCIP_CONS *cons) SCIP_VAR ** SCIPgetVarsXor(SCIP *scip, SCIP_CONS *cons) SCIP_RETCODE SCIPcreateConsBasicXor(SCIP *scip, SCIP_CONS **cons, const char *name, SCIP_Bool rhs, int nvars, SCIP_VAR **vars) SCIP callable library. |