Detailed Description
data structure for certifying MIR cut (splitcoefs, rhs, fractionality f, 1/1-f, scaling factor, which bounds to use)
Definition at line 77 of file struct_certificate.h.
#include <struct_certificate.h>
Data Fields | |
| SCIP_Real * | splitcoefficients |
| SCIP_Real * | slackcoefficients |
| SCIP_Real * | slackweight |
| SCIP_Bool * | slackroundeddown |
| SCIP_Real * | slackscale |
| SCIP_Real * | slackusedcoef |
| SCIP_ROW ** | slackrows |
| int * | varinds |
| int * | slacksign |
| SCIP_Bool * | upperused |
| SCIP_Bool * | localbdused |
| int | nsplitvars |
| int | nlocalvars |
| int | nslacks |
| int | nrounddownslacks |
| SCIP_RATIONAL * | rhs |
| SCIP_RATIONAL * | frac |
| SCIP_Longint | arpos |
| SCIP_INTERVAL | onedivoneminusf0 |
| SCIP_Real | scale |
| SCIP_Real | unroundedrhs |
Field Documentation
◆ splitcoefficients
| SCIP_Real* SCIP_MirInfo::splitcoefficients |
coefficients in the split, saved in the complemented variable space
Definition at line 79 of file struct_certificate.h.
Referenced by certificatePrintMirSplit(), cutsRoundMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPfreeCertificateActiveMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ slackcoefficients
| SCIP_Real* SCIP_MirInfo::slackcoefficients |
coefficients for integer slacks that enter the split
Definition at line 80 of file struct_certificate.h.
Referenced by certificatePrintMirSplit(), cutsSubstituteMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPcertificatePrintMirCut(), SCIPfreeCertificateActiveMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ slackweight
| SCIP_Real* SCIP_MirInfo::slackweight |
continuous part of integer slack that needs to be accounted for
Definition at line 81 of file struct_certificate.h.
Referenced by cutsSubstituteMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPcertificatePrintMirCut(), SCIPfreeCertificateActiveMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ slackroundeddown
| SCIP_Bool* SCIP_MirInfo::slackroundeddown |
original part of integer slack that needs to be accounted for
Definition at line 82 of file struct_certificate.h.
Referenced by cutsSubstituteMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPcertificatePrintMirCut(), SCIPfreeCertificateActiveMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ slackscale
| SCIP_Real* SCIP_MirInfo::slackscale |
original part of integer slack that needs to be accounted for
Definition at line 83 of file struct_certificate.h.
Referenced by cutsSubstituteMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPcertificatePrintMirCut(), SCIPfreeCertificateActiveMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ slackusedcoef
| SCIP_Real* SCIP_MirInfo::slackusedcoef |
coef that was actually used in the slack subsititution
Definition at line 84 of file struct_certificate.h.
Referenced by cutsSubstituteMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPcertificatePrintMirCut(), SCIPfreeCertificateActiveMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ slackrows
| SCIP_ROW** SCIP_MirInfo::slackrows |
rows whos integer slack is in the split
Definition at line 85 of file struct_certificate.h.
Referenced by certificatePrintMirSplit(), cutsSubstituteMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPcertificatePrintMirCut(), SCIPfreeCertificateActiveMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ varinds
| int* SCIP_MirInfo::varinds |
indices of variables in split
Definition at line 86 of file struct_certificate.h.
Referenced by certificatePrintMirSplit(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPfreeCertificateActiveMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ slacksign
| int* SCIP_MirInfo::slacksign |
was rhs or lhs used for integer slacks? +1 -> rhs, -1 -> lhs
Definition at line 87 of file struct_certificate.h.
Referenced by certificatePrintMirSplit(), cutsSubstituteMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPcertificatePrintMirCut(), SCIPfreeCertificateActiveMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ upperused
| SCIP_Bool* SCIP_MirInfo::upperused |
TRUE if ub was used to complement variable, FALSE if lb was used
Definition at line 88 of file struct_certificate.h.
Referenced by cutsRoundMIRSafely(), cutsTransformMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPfreeCertificateActiveMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ localbdused
| SCIP_Bool* SCIP_MirInfo::localbdused |
TRUE if local bound was used to complement variable, FALSE if global was used
Definition at line 89 of file struct_certificate.h.
Referenced by cutsRoundMIRSafely(), cutsTransformMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPfreeCertificateActiveMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ nsplitvars
| int SCIP_MirInfo::nsplitvars |
number of variables in the split
Definition at line 90 of file struct_certificate.h.
Referenced by certificatePrintMirSplit(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ nlocalvars
| int SCIP_MirInfo::nlocalvars |
number of local bounds used in transformation
Definition at line 91 of file struct_certificate.h.
Referenced by cutsTransformMIRSafely(), and SCIPcertificateNewMirInfo().
◆ nslacks
| int SCIP_MirInfo::nslacks |
number of integer slacks in the split
Definition at line 92 of file struct_certificate.h.
Referenced by certificatePrintMirSplit(), cutsSubstituteMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPcertificatePrintMirCut(), SCIPfreeCertificateActiveMirInfo(), and SCIPstoreCertificateActiveMirInfo().
◆ nrounddownslacks
| int SCIP_MirInfo::nrounddownslacks |
Definition at line 93 of file struct_certificate.h.
Referenced by cutsSubstituteMIRSafely(), SCIPcertificateNewMirInfo(), and SCIPcertificatePrintMirCut().
◆ rhs
| SCIP_RATIONAL* SCIP_MirInfo::rhs |
rhs of the split disjunction
Definition at line 94 of file struct_certificate.h.
Referenced by calcMIRSafely(), certificatePrintMirSplit(), cutsRoundMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), and SCIPfreeCertificateActiveMirInfo().
◆ frac
| SCIP_RATIONAL* SCIP_MirInfo::frac |
fractionality of the rhs in the mir cut
Definition at line 95 of file struct_certificate.h.
Referenced by calcMIRSafely(), SCIPcertificateClearMirinfo(), SCIPcertificateFreeMirInfo(), SCIPcertificateNewMirInfo(), SCIPcertificatePrintMirCut(), and SCIPfreeCertificateActiveMirInfo().
◆ arpos
| SCIP_Longint SCIP_MirInfo::arpos |
position in the mirinfo array, so we can access it from the hashmap
Definition at line 96 of file struct_certificate.h.
Referenced by SCIPcertificateFreeMirInfo(), and SCIPcertificateNewMirInfo().
◆ onedivoneminusf0
| SCIP_INTERVAL SCIP_MirInfo::onedivoneminusf0 |
rounded value of 1/(1-f0) that was used in MIR procedure
Definition at line 97 of file struct_certificate.h.
◆ scale
| SCIP_Real SCIP_MirInfo::scale |
scaling factor that was used in cut-postprocessing
Definition at line 98 of file struct_certificate.h.
Referenced by cutTightenCoefsSafely(), SCIPcertificateNewMirInfo(), and SCIPcertificatePrintMirCut().
◆ unroundedrhs
| SCIP_Real SCIP_MirInfo::unroundedrhs |
we need to save the rhs if we round down integral cuts for certification
Definition at line 99 of file struct_certificate.h.
Referenced by cutTightenCoefsSafely(), SCIPcertificateNewMirInfo(), and SCIPcertificatePrintMirCut().