A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://scip.zib.de/doc/html/cons_8c_source.php below:

SCIP Doxygen Documentation: cons.c Source File

55#define AGERESETAVG_INIT 1000.0 56#define AGERESETAVG_MIN 100.0 57#define AGERESETAVG_DECAY 0.0005 58#define AGERESETAVG_AGELIMIT 2.0 60#define AGERESETAVG_OBSOLETEAGE 1.8 80

assert(conshdlr !=

NULL

);

91

assert(num <= conshdlr->consssize);

104

assert(conshdlr !=

NULL

);

115

assert(num <= conshdlr->initconsssize);

128

assert(conshdlr !=

NULL

);

139

assert(num <= conshdlr->sepaconsssize);

152

assert(conshdlr !=

NULL

);

163

assert(num <= conshdlr->enfoconsssize);

176

assert(conshdlr !=

NULL

);

187

assert(num <= conshdlr->checkconsssize);

200

assert(conshdlr !=

NULL

);

211

assert(num <= conshdlr->propconsssize);

224

assert(conshdlr !=

NULL

);

235

assert(num <= conshdlr->updateconsssize);

247#define checkConssArrays(conshdlr) 249#ifdef CHECKCONSARRAYS 250#undef checkConssArrays 259

assert(conshdlr !=

NULL

);

262 for

( c = 0; c < conshdlr->

nconss

; ++c )

266

assert(conshdlr->

conss

[c]->

active

== (c < conshdlr->nactiveconss));

270 for

( c = 0; c < conshdlr->

ninitconss

; ++c )

274

assert(c < conshdlr->ninitconsskept || conshdlr->

initconss

[c]->

active

);

278 for

( c = 0; c < conshdlr->

nsepaconss

; ++c )

288 for

( c = 0; c < conshdlr->

nenfoconss

; ++c )

306 for

( c = 0; c < conshdlr->

npropconss

; ++c )

336

assert(conshdlr !=

NULL

);

348

assert(conshdlr !=

NULL

);

361

assert(cons !=

NULL

);

365

&& ((

set

->cons_agelimit > 0 && cons->

age

>

set

->cons_agelimit)

376

assert(cons !=

NULL

);

380

&& ((

set

->cons_obsoleteage > 0 && cons->

age

>

set

->cons_obsoleteage)

395

assert(conshdlr !=

NULL

);

400

assert(cons !=

NULL

);

525

assert(conshdlr !=

NULL

);

530

assert(cons !=

NULL

);

630

assert(conshdlr !=

NULL

);

633

assert(cons !=

NULL

);

705

assert(conshdlr !=

NULL

);

708

assert(cons !=

NULL

);

776

assert(conshdlr !=

NULL

);

777

assert(cons !=

NULL

);

778

assert(cons->

conshdlr

== conshdlr);

783

assert(cons->

scip

==

set

->scip);

801

assert(conshdlr !=

NULL

);

802

assert(cons !=

NULL

);

803

assert(cons->

conshdlr

== conshdlr);

825

assert(conshdlr !=

NULL

);

826

assert(cons !=

NULL

);

827

assert(cons->

conshdlr

== conshdlr);

859

assert(conshdlr !=

NULL

);

860

assert(cons !=

NULL

);

861

assert(cons->

conshdlr

== conshdlr);

866 if

( delpos < conshdlr->ninitconsskept )

874 if

( delpos < conshdlr->ninitconss-1 )

895

assert(conshdlr !=

NULL

);

897

assert(cons !=

NULL

);

898

assert(cons->

conshdlr

== conshdlr);

905

assert(cons->

scip

==

set

->scip);

938

assert(conshdlr !=

NULL

);

940

assert(cons !=

NULL

);

941

assert(cons->

conshdlr

== conshdlr);

951

assert(0 <= delpos && delpos < conshdlr->nusefulsepaconss);

953 if

( delpos < conshdlr->lastnusefulsepaconss )

963

assert(conshdlr->

nusefulsepaconss

<= delpos && delpos < conshdlr->nsepaconss);

964 if

( delpos < conshdlr->nsepaconss-1 )

985

assert(conshdlr !=

NULL

);

987

assert(cons !=

NULL

);

988

assert(cons->

conshdlr

== conshdlr);

994

assert(cons->

scip

==

set

->scip);

1023

conshdlr->

enfoconss

[insertpos] = cons;

1041

assert(conshdlr !=

NULL

);

1043

assert(cons !=

NULL

);

1044

assert(cons->

conshdlr

== conshdlr);

1052

assert(0 <= delpos && delpos < conshdlr->nusefulenfoconss);

1054 if

( delpos < conshdlr->lastnusefulenfoconss )

1072

assert(conshdlr->

nusefulenfoconss

<= delpos && delpos < conshdlr->nenfoconss);

1073 if

( delpos < conshdlr->nenfoconss-1 )

1094

assert(conshdlr !=

NULL

);

1096

assert(cons !=

NULL

);

1097

assert(cons->

conshdlr

== conshdlr);

1100

assert(cons->

check

);

1103

assert(cons->

scip

==

set

->scip);

1118

assert(0 <= insertpos && insertpos <= conshdlr->ncheckconss);

1137

assert(conshdlr !=

NULL

);

1139

assert(cons !=

NULL

);

1140

assert(cons->

conshdlr

== conshdlr);

1143

assert(cons->

check

);

1149

assert(0 <= delpos && delpos < conshdlr->nusefulcheckconss);

1155

assert(conshdlr->

nusefulcheckconss

<= delpos && delpos < conshdlr->ncheckconss);

1156 if

( delpos < conshdlr->ncheckconss-1 )

1177

assert(conshdlr !=

NULL

);

1179

assert(cons !=

NULL

);

1180

assert(cons->

conshdlr

== conshdlr);

1188

assert(cons->

scip

==

set

->scip);

1204

conshdlr->

propconss

[insertpos] = cons;

1232

assert(conshdlr !=

NULL

);

1234

assert(cons !=

NULL

);

1235

assert(cons->

conshdlr

== conshdlr);

1256

assert(0 <= delpos && delpos < conshdlr->nusefulpropconss);

1258 if

( delpos < conshdlr->lastnusefulpropconss )

1268

assert(conshdlr->

nusefulpropconss

<= delpos && delpos < conshdlr->npropconss);

1270 if

( delpos < conshdlr->npropconss-1 )

1290

assert(conshdlr !=

NULL

);

1292

assert(cons !=

NULL

);

1293

assert(cons->

conshdlr

== conshdlr);

1297

assert(cons->

scip

==

set

->scip);

1299 SCIPsetDebugMsg

(

set

,

"enable separation of constraint <%s> in constraint handler <%s>\n"

, cons->

name

, conshdlr->

name

);

1320

assert(conshdlr !=

NULL

);

1322

assert(cons !=

NULL

);

1323

assert(cons->

conshdlr

== conshdlr);

1327 SCIPdebugMessage

(

"disable separation of constraint <%s> in constraint handler <%s>\n"

, cons->

name

, conshdlr->

name

);

1350

assert(conshdlr !=

NULL

);

1352

assert(cons !=

NULL

);

1353

assert(cons->

conshdlr

== conshdlr);

1357

assert(cons->

scip

==

set

->scip);

1359 SCIPsetDebugMsg

(

set

,

"enable propagation of constraint <%s> in constraint handler <%s>\n"

, cons->

name

, conshdlr->

name

);

1380

assert(conshdlr !=

NULL

);

1382

assert(cons !=

NULL

);

1383

assert(cons->

conshdlr

== conshdlr);

1387 SCIPdebugMessage

(

"disable propagation of constraint <%s> in constraint handler <%s>\n"

, cons->

name

, conshdlr->

name

);

1411

assert(conshdlr !=

NULL

);

1417

assert(stat !=

NULL

);

1418

assert(cons !=

NULL

);

1419

assert(cons->

scip

==

set

->scip);

1420

assert(cons->

conshdlr

== conshdlr);

1454 if

( conshdlr->consenable !=

NULL

)

1456 SCIP_CALL

( conshdlr->consenable(

set

->scip, conshdlr, cons) );

1473

assert(conshdlr !=

NULL

);

1479

assert(stat !=

NULL

);

1480

assert(cons !=

NULL

);

1481

assert(cons->

scip

==

set

->scip);

1482

assert(cons->

conshdlr

== conshdlr);

1493 if

( conshdlr->consdisable !=

NULL

)

1495 SCIP_CALL

( conshdlr->consdisable(

set

->scip, conshdlr, cons) );

1541

assert(conshdlr !=

NULL

);

1547

assert(stat !=

NULL

);

1548

assert(cons !=

NULL

);

1549

assert(cons->

scip

==

set

->scip);

1550

assert(cons->

conshdlr

== conshdlr);

1561

assert(depth >= -1);

1563 SCIPsetDebugMsg

(

set

,

"activate constraint <%s> in constraint handler <%s> (depth %d, focus=%u)\n"

,

1564

cons->

name

, conshdlr->

name

, depth, focusnode);

1590 if

( conshdlr->consactive !=

NULL

)

1592 SCIP_CALL

( conshdlr->consactive(

set

->scip, conshdlr, cons) );

1614

assert(conshdlr !=

NULL

);

1620

assert(stat !=

NULL

);

1621

assert(cons !=

NULL

);

1622

assert(cons->

scip

==

set

->scip);

1623

assert(cons->

conshdlr

== conshdlr);

1640 if

( conshdlr->consdeactive !=

NULL

)

1642 SCIP_CALL

( conshdlr->consdeactive(

set

->scip, conshdlr, cons) );

1699

assert(conshdlr !=

NULL

);

1706 SCIPsetDebugMsg

(

set

,

"processing %d constraints that have to be updated in constraint handler <%s>\n"

,

1712

assert(cons !=

NULL

);

1713

assert(cons->

conshdlr

== conshdlr);

1722 SCIPsetDebugMsg

(

set

,

" -> constraint <%s>: insert=%u, activate=%u, deactivate=%u, enable=%u, disable=%u, sepaenable=%u, sepadisable=%u, propenable=%u, propdisable=%u, obsolete=%u, free=%u (consdata=%p)\n"

,

1822

assert(cons->

nuses

== 1);

1887

assert(conshdlr !=

NULL

);

1889 SCIPdebugMessage

(

"constraint updates of constraint handler <%s> will be delayed (count:%d)\n"

,

1906

assert(conshdlr !=

NULL

);

1909 SCIPsetDebugMsg

(

set

,

"constraint updates of constraint handler <%s> will be processed immediately (count:%d)\n"

,

1931

assert(conshdlr !=

NULL

);

1933

assert(cons !=

NULL

);

1934

assert(cons->

conshdlr

== conshdlr);

1938 SCIPsetDebugMsg

(

set

,

"constraint <%s> of age %g has to be updated in constraint handler <%s> (consdata=%p)\n"

,

1976 return

((

SCIP_CONS

*)elem2)->conshdlr->checkpriority - ((

SCIP_CONS

*)elem1)->conshdlr->checkpriority;

1986

assert(conshdlr !=

NULL

);

1988

assert(valid !=

NULL

);

1991 if

( conshdlr->conshdlrcopy !=

NULL

)

1994 SCIP_CALL

( conshdlr->conshdlrcopy(

set

->scip, conshdlr, valid) );

2064

assert(conshdlr !=

NULL

);

2065

assert(name !=

NULL

);

2066

assert(desc !=

NULL

);

2067

assert(conssepalp !=

NULL

|| conssepasol !=

NULL

|| sepafreq == -1);

2068

assert(consprop !=

NULL

|| propfreq == -1);

2069

assert(eagerfreq >= -1);

2070

assert(!needscons || ((conshdlrcopy ==

NULL

) == (conscopy ==

NULL

)));

2077 SCIPmessagePrintError

(

"ERROR: 'PRESOLDELAY'-flag no longer available since SCIP 3.2, use an appropriate " 2078 "'SCIP_PRESOLTIMING' for <%s> constraint handler instead.\n"

, name);

2084

assert((consgetvars !=

NULL

) == (consgetnvars !=

NULL

));

2091

(*conshdlr)->sepapriority = sepapriority;

2092

(*conshdlr)->enfopriority = enfopriority;

2093

(*conshdlr)->checkpriority = checkpriority;

2094

(*conshdlr)->sepafreq = sepafreq;

2095

(*conshdlr)->propfreq = propfreq;

2096

(*conshdlr)->eagerfreq = eagerfreq;

2097

(*conshdlr)->maxprerounds = maxprerounds;

2098

(*conshdlr)->conshdlrcopy = conshdlrcopy;

2099

(*conshdlr)->consfree = consfree;

2100

(*conshdlr)->consinit = consinit;

2101

(*conshdlr)->consexit = consexit;

2102

(*conshdlr)->consinitpre = consinitpre;

2103

(*conshdlr)->consexitpre = consexitpre;

2104

(*conshdlr)->consinitsol = consinitsol;

2105

(*conshdlr)->consexitsol = consexitsol;

2106

(*conshdlr)->consdelete = consdelete;

2107

(*conshdlr)->constrans = constrans;

2108

(*conshdlr)->consinitlp = consinitlp;

2109

(*conshdlr)->conssepalp = conssepalp;

2110

(*conshdlr)->conssepasol = conssepasol;

2111

(*conshdlr)->consenfolp = consenfolp;

2112

(*conshdlr)->consenforelax = consenforelax;

2113

(*conshdlr)->consenfops = consenfops;

2114

(*conshdlr)->conscheck = conscheck;

2115

(*conshdlr)->consprop = consprop;

2116

(*conshdlr)->conspresol = conspresol;

2117

(*conshdlr)->consresprop = consresprop;

2118

(*conshdlr)->conslock = conslock;

2119

(*conshdlr)->consactive = consactive;

2120

(*conshdlr)->consdeactive = consdeactive;

2121

(*conshdlr)->consenable = consenable;

2122

(*conshdlr)->consdisable = consdisable;

2123

(*conshdlr)->consprint = consprint;

2124

(*conshdlr)->consdelvars = consdelvars;

2125

(*conshdlr)->conscopy = conscopy;

2126

(*conshdlr)->consparse = consparse;

2127

(*conshdlr)->consgetvars = consgetvars;

2128

(*conshdlr)->consgetnvars = consgetnvars;

2129

(*conshdlr)->conshdlrdata = conshdlrdata;

2130

(*conshdlr)->consgetdivebdchgs = consgetdivebdchgs;

2131

(*conshdlr)->consgetpermsymgraph = consgetpermsymgraph;

2132

(*conshdlr)->consgetsignedpermsymgraph = consgetsignedpermsymgraph;

2133

(*conshdlr)->conss =

NULL

;

2134

(*conshdlr)->consssize = 0;

2135

(*conshdlr)->nconss = 0;

2136

(*conshdlr)->nactiveconss = 0;

2137

(*conshdlr)->maxnactiveconss = 0;

2138

(*conshdlr)->startnactiveconss = 0;

2139

(*conshdlr)->initconss =

NULL

;

2140

(*conshdlr)->initconsssize = 0;

2141

(*conshdlr)->ninitconss = 0;

2142

(*conshdlr)->ninitconsskept = 0;

2143

(*conshdlr)->sepaconss =

NULL

;

2144

(*conshdlr)->sepaconsssize = 0;

2145

(*conshdlr)->nsepaconss = 0;

2146

(*conshdlr)->nusefulsepaconss = 0;

2147

(*conshdlr)->enfoconss =

NULL

;

2148

(*conshdlr)->enfoconsssize = 0;

2149

(*conshdlr)->nenfoconss = 0;

2150

(*conshdlr)->nusefulenfoconss = 0;

2151

(*conshdlr)->checkconss =

NULL

;

2152

(*conshdlr)->checkconsssize = 0;

2153

(*conshdlr)->ncheckconss = 0;

2154

(*conshdlr)->nusefulcheckconss = 0;

2155

(*conshdlr)->propconss =

NULL

;

2156

(*conshdlr)->propconsssize = 0;

2157

(*conshdlr)->npropconss = 0;

2158

(*conshdlr)->nusefulpropconss = 0;

2159

(*conshdlr)->nmarkedpropconss = 0;

2160

(*conshdlr)->updateconss =

NULL

;

2161

(*conshdlr)->updateconsssize = 0;

2162

(*conshdlr)->nupdateconss = 0;

2163

(*conshdlr)->nenabledconss = 0;

2164

(*conshdlr)->lastnusefulpropconss = 0;

2165

(*conshdlr)->lastnusefulsepaconss = 0;

2166

(*conshdlr)->lastnusefulenfoconss = 0;

2168

(*conshdlr)->storedpropconss =

NULL

;

2169

(*conshdlr)->storedpropconsssize = 0;

2170

(*conshdlr)->storednmarkedpropconss = 0;

2171

(*conshdlr)->storedpropdomchgcount = 0;

2184

(*conshdlr)->nsepacalls = 0;

2185

(*conshdlr)->nenfolpcalls = 0;

2186

(*conshdlr)->nenfopscalls = 0;

2187

(*conshdlr)->nenforelaxcalls = 0;

2188

(*conshdlr)->npropcalls = 0;

2189

(*conshdlr)->ncheckcalls = 0;

2190

(*conshdlr)->nrespropcalls = 0;

2191

(*conshdlr)->ncutoffs = 0;

2192

(*conshdlr)->ncutsfound = 0;

2193

(*conshdlr)->ncutsapplied = 0;

2194

(*conshdlr)->nconssfound = 0;

2195

(*conshdlr)->ndomredsfound = 0;

2196

(*conshdlr)->nchildren = 0;

2197

(*conshdlr)->lastpropdomchgcount = -1;

2198

(*conshdlr)->lastsepalpcount = -1;

2199

(*conshdlr)->lastenfolplpcount = -1;

2200

(*conshdlr)->lastenfolpdomchgcount = -1;

2201

(*conshdlr)->lastenfopsdomchgcount = -1;

2202

(*conshdlr)->lastenforelaxdomchgcount = -1;

2203

(*conshdlr)->lastenforelaxrelaxcount = -1;

2204

(*conshdlr)->lastenfolpnode = -1;

2205

(*conshdlr)->lastenfopsnode = -1;

2209

(*conshdlr)->lastnfixedvars = 0;

2210

(*conshdlr)->lastnaggrvars = 0;

2211

(*conshdlr)->lastnchgvartypes = 0;

2212

(*conshdlr)->lastnchgbds = 0;

2213

(*conshdlr)->lastnaddholes = 0;

2214

(*conshdlr)->lastndelconss = 0;

2215

(*conshdlr)->lastnaddconss = 0;

2216

(*conshdlr)->lastnupgdconss = 0;

2217

(*conshdlr)->lastnchgcoefs = 0;

2218

(*conshdlr)->lastnchgsides = 0;

2219

(*conshdlr)->nfixedvars = 0;

2220

(*conshdlr)->naggrvars = 0;

2221

(*conshdlr)->nchgvartypes = 0;

2222

(*conshdlr)->nchgbds = 0;

2223

(*conshdlr)->naddholes = 0;

2224

(*conshdlr)->ndelconss = 0;

2225

(*conshdlr)->naddconss = 0;

2226

(*conshdlr)->nupgdconss = 0;

2227

(*conshdlr)->nchgcoefs = 0;

2228

(*conshdlr)->nchgsides = 0;

2229

(*conshdlr)->npresolcalls = 0;

2230

(*conshdlr)->delayupdatecount = 0;

2232

(*conshdlr)->needscons = needscons;

2233

(*conshdlr)->sepalpwasdelayed =

FALSE

;

2234

(*conshdlr)->sepasolwasdelayed =

FALSE

;

2235

(*conshdlr)->propwasdelayed =

FALSE

;

2236

(*conshdlr)->duringsepa =

FALSE

;

2237

(*conshdlr)->duringprop =

FALSE

;

2238

(*conshdlr)->initialized =

FALSE

;

2243 "frequency for separating cuts (-1: never, 0: only in root node)"

,

2248 "frequency for propagating domains (-1: never, 0: only in root node)"

,

2258 "frequency for using all instead of only the useful constraints in separation, propagation and enforcement (-1: never, 0: only in first evaluation)"

,

2263 "maximal number of presolving rounds the constraint handler participates in (-1: no limit)"

,

2264

&(*conshdlr)->maxprerounds,

TRUE

, maxprerounds, -1, INT_MAX,

NULL

,

NULL

) );

2268 "should separation method be delayed, if other separators found cuts?"

,

2269

&(*conshdlr)->delaysepa,

TRUE

, delaysepa,

NULL

,

NULL

) );

2273 "should propagation method be delayed, if other propagators found reductions?"

,

2274

&(*conshdlr)->delayprop,

TRUE

, delayprop,

NULL

,

NULL

) );

2277

(void)

SCIPsnprintf

(paramdesc,

SCIP_MAXSTRLEN

,

"timing mask of the constraint handler's presolving method (%u:FAST, %u:MEDIUM, %u:EXHAUSTIVE, %u:FINAL)"

,

2345

assert(conshdlr !=

NULL

);

2346

assert(name !=

NULL

);

2347

assert(desc !=

NULL

);

2348

assert(conssepalp !=

NULL

|| conssepasol !=

NULL

|| sepafreq == -1);

2349

assert(consprop !=

NULL

|| propfreq == -1);

2350

assert(eagerfreq >= -1);

2351

assert(!needscons || ((conshdlrcopy ==

NULL

) == (conscopy ==

NULL

)));

2354

checkpriority, sepafreq, propfreq, eagerfreq, maxprerounds, delaysepa, delayprop, needscons, proptiming,

2355

presoltiming, conshdlrcopy, consfree, consinit, consexit, consinitpre, consexitpre, consinitsol, consexitsol,

2356

consdelete, constrans, consinitlp, conssepalp, conssepasol, consenfolp, consenforelax, consenfops, conscheck,

2357

consprop, conspresol, consresprop, conslock, consactive, consdeactive, consenable, consdisable, consdelvars,

2358

consprint, conscopy, consparse, consgetvars, consgetnvars, consgetdivebdchgs, consgetpermsymgraph,

2359

consgetsignedpermsymgraph, conshdlrdata),

2371

assert(conshdlr !=

NULL

);

2372 if

( *conshdlr ==

NULL

)

2374

assert(!(*conshdlr)->initialized);

2375

assert((*conshdlr)->nconss == 0);

2379 if

( (*conshdlr)->consfree !=

NULL

)

2381 SCIP_CALL

( (*conshdlr)->consfree(

set

->scip, *conshdlr) );

2418

assert(conshdlr !=

NULL

);

2427 if

(

set

->misc_resetstat )

2497 if

( conshdlr->consinit !=

NULL

)

2531

assert(conshdlr !=

NULL

);

2541 if

( conshdlr->consexit !=

NULL

)

2574

assert(conshdlr !=

NULL

);

2608 if

( conshdlr->consinitpre !=

NULL

)

2632 if

( stat->

nruns

>= 2 )

2636 for

( c = 0; c < conshdlr->

nconss

; ++c )

2660

assert(conshdlr !=

NULL

);

2664 if

( conshdlr->consexitpre !=

NULL

)

2700

assert(conshdlr !=

NULL

);

2702

assert(stat !=

NULL

);

2708 if

( conshdlr->consinitsol !=

NULL

)

2741

assert(conshdlr !=

NULL

);

2745 if

( conshdlr->consexitsol !=

NULL

)

2782

assert(conshdlr !=

NULL

);

2783

assert(cutoff !=

NULL

);

2790 if

( conshdlr->consinitlp !=

NULL

)

2796 SCIPsetDebugMsg

(

set

,

"initializing LP with %d initial constraints of handler <%s> (ninitconss=%d, kept=%d, initkept=%u)\n"

,

2815 if

( initkeptconss )

2841

assert(currentdepth >= 0);

2888

assert(conshdlr !=

NULL

);

2893

assert(stat !=

NULL

);

2897

assert(result !=

NULL

);

2901 if

( conshdlr->conssepalp !=

NULL 2902

&& ((depth == 0 && conshdlr->

sepafreq

== 0)

2907 if

( !conshdlr->

delaysepa

|| execdelayed )

2920

nusefulconss = nconss;

2930

assert(firstcons >= 0);

2931

assert(firstcons + nconss <= conshdlr->nsepaconss);

2932

assert(nusefulconss <= nconss);

2942 int

oldnactiveconss;

2943 int

lastnusefulsepaconss;

2945 SCIPsetDebugMsg

(

set

,

"separating constraints %d to %d of %d constraints of handler <%s> (%s LP solution)\n"

,

2946

firstcons, firstcons + nconss - 1, conshdlr->

nsepaconss

, conshdlr->

name

,

2950

lastsepalpcount = stat->

lpcount

;

2954

conss = &(conshdlr->

sepaconss

[firstcons]);

2964

nusefulconss = nconss;

2977 SCIP_CALL

( conshdlr->conssepalp(

set

->scip, conshdlr, conss, nconss, nusefulconss, result) );

3014 SCIPerrorMessage

(

"LP separation method of constraint handler <%s> returned invalid result <%d>\n"

,

3015

conshdlr->

name

, *result);

3022 SCIPsetDebugMsg

(

set

,

"LP separation method of constraint handler <%s> was delayed\n"

, conshdlr->

name

);

3046

assert(conshdlr !=

NULL

);

3052

assert(stat !=

NULL

);

3053

assert(result !=

NULL

);

3057 if

( conshdlr->conssepasol !=

NULL 3058

&& ((depth == 0 && conshdlr->

sepafreq

== 0)

3063 if

( !conshdlr->

delaysepa

|| execdelayed )

3071

assert(nusefulconss <= nconss);

3073 if

( nconss > 0 || !conshdlr->

needscons

)

3079 int

oldnactiveconss;

3081 SCIPsetDebugMsg

(

set

,

"separating %d constraints of handler <%s> (primal solution %p)\n"

,

3082

nconss, conshdlr->

name

, (

void

*)sol);

3095

nusefulconss = nconss;

3108 SCIP_CALL

( conshdlr->conssepasol(

set

->scip, conshdlr, conss, nconss, nusefulconss, sol, result) );

3141 SCIPerrorMessage

(

"SOL separation method of constraint handler <%s> returned invalid result <%d>\n"

,

3142

conshdlr->

name

, *result);

3149 SCIPsetDebugMsg

(

set

,

"SOL separation method of constraint handler <%s> was delayed\n"

, conshdlr->

name

);

3181

assert(conshdlr !=

NULL

);

3186

assert(stat !=

NULL

);

3191

assert(tree !=

NULL

);

3193

assert(relaxsol !=

NULL

);

3194

assert(result !=

NULL

);

3207

&& ( strcmp(conshdlr->

name

,

"integral"

) != 0 )

3222

lastinfeasible =

TRUE

;

3225

lastinfeasible =

FALSE

;

3231

nusefulconss = nconss;

3233

relaxchanged =

FALSE

;

3241

relaxchanged =

TRUE

;

3242

lastinfeasible =

FALSE

;

3244

assert(firstcons >= 0);

3245

assert(firstcons + nconss <= conshdlr->nenfoconss);

3246

assert(nusefulconss <= nconss);

3249 if

( nconss > 0 || (!conshdlr->

needscons

&& relaxchanged) )

3255 int

oldnactiveconss;

3257

assert(conshdlr->consenforelax !=

NULL

);

3259 SCIPdebugMessage

(

"enforcing constraints %d to %d of %d constraints of handler <%s> (%s relaxation solution)\n"

,

3260

firstcons, firstcons + nconss - 1, conshdlr->

nenfoconss

, conshdlr->

name

, relaxchanged ?

"new"

:

"old"

);

3272

conss = conshdlr->

enfoconss

+ firstcons;

3283

nusefulconss = nconss;

3295 SCIP_CALL

( conshdlr->consenforelax(

set

->scip, relaxsol, conshdlr, conss, nconss, nusefulconss, solinfeasible, result) );

3336 SCIPerrorMessage

(

"enforcing method of constraint handler <%s> for relaxation solutions returned invalid result <%d>\n"

,

3337

conshdlr->

name

, *result);

3366

assert(conshdlr !=

NULL

);

3371

assert(stat !=

NULL

);

3377

assert(tree !=

NULL

);

3379

assert(result !=

NULL

);

3383 if

( conshdlr->consenfolp !=

NULL

)

3405

lastinfeasible =

FALSE

;

3410

lastinfeasible =

TRUE

;

3417

nusefulconss = nconss;

3428

lastinfeasible =

FALSE

;

3430

assert(firstcons >= 0);

3431

assert(firstcons + nconss <= conshdlr->nenfoconss);

3432

assert(nusefulconss <= nconss);

3435 if

( nconss > 0 || (!conshdlr->

needscons

&& lpchanged) )

3441 int

oldnactiveconss;

3443 SCIPsetDebugMsg

(

set

,

"enforcing constraints %d to %d of %d constraints of handler <%s> (%s LP solution)\n"

,

3444

firstcons, firstcons + nconss - 1, conshdlr->

nenfoconss

, conshdlr->

name

, lpchanged ?

"new"

:

"old"

);

3453

conss = nconss > 0 ? conshdlr->

enfoconss

+ firstcons :

NULL

;

3463

nusefulconss = nconss;

3475 SCIP_CALL

( conshdlr->consenfolp(

set

->scip, conshdlr, conss, nconss, nusefulconss, solinfeasible, result) );

3515 SCIPerrorMessage

(

"enforcing method of constraint handler <%s> for LP solutions returned invalid result <%d>\n"

,

3516

conshdlr->

name

, *result);

3542

assert(conshdlr !=

NULL

);

3544

assert(diveset !=

NULL

);

3545

assert(sol !=

NULL

);

3546

assert(success !=

NULL

);

3547

assert(infeasible !=

NULL

);

3549 if

( conshdlr->consgetdivebdchgs !=

NULL

)

3551 SCIP_CALL

( conshdlr->consgetdivebdchgs(

set

->scip, conshdlr, diveset, sol, success, infeasible) );

3573

assert(conshdlr !=

NULL

);

3578

assert(stat !=

NULL

);

3583

assert(tree !=

NULL

);

3585

assert(result !=

NULL

);

3595 if

( conshdlr->consenfops !=

NULL

)

3622

lastinfeasible =

TRUE

;

3625

lastinfeasible =

FALSE

;

3631

nusefulconss = nconss;

3642

lastinfeasible =

FALSE

;

3644

assert(firstcons >= 0);

3645

assert(firstcons + nconss <= conshdlr->nenfoconss);

3646

assert(nusefulconss <= nconss);

3649 if

( nconss > 0 || (!conshdlr->

needscons

&& pschanged) )

3655 SCIPsetDebugMsg

(

set

,

"enforcing constraints %d to %d of %d constraints of handler <%s> (%s pseudo solution, objinfeasible=%u)\n"

,

3656

firstcons, firstcons + nconss - 1, conshdlr->

nenfoconss

, conshdlr->

name

, pschanged ?

"new"

:

"old"

, objinfeasible);

3667

conss = conshdlr->

enfoconss

+ firstcons;

3676

nusefulconss = nconss;

3688 SCIP_CALL

( conshdlr->consenfops(

set

->scip, conshdlr, conss, nconss, nusefulconss, solinfeasible, objinfeasible, result) );

3700 else if

( !objinfeasible )

3702 SCIPerrorMessage

(

"enforcing method of constraint handler <%s> for pseudo solutions was skipped, even though the solution was not objective-infeasible\n"

,

3742 SCIPerrorMessage

(

"enforcing method of constraint handler <%s> for pseudo solutions returned invalid result <%d>\n"

,

3743

conshdlr->

name

, *result);

3754 else if

( objinfeasible )

3781

assert(conshdlr !=

NULL

);

3787

assert(result !=

NULL

);

3806

sol, checkintegrality, checklprows, printreason, completely, result) );

3821 SCIPerrorMessage

(

"feasibility check of constraint handler <%s> returned invalid result <%d>\n"

, conshdlr->

name

, *result);

3843

assert(conshdlr !=

NULL

);

3848

assert(stat !=

NULL

);

3853

assert(result !=

NULL

);

3857 if

( conshdlr->consprop !=

NULL 3859

&& ((depth == 0 && conshdlr->

propfreq

== 0)

3864 if

( !conshdlr->

delayprop

|| execdelayed )

3868 int

nmarkedpropconss;

3878

nusefulconss = nconss;

3888

assert(firstcons >= 0);

3889

assert(firstcons + nconss <= conshdlr->npropconss);

3890

assert(nusefulconss <= nconss);

3895 if

( nconss > 0 || fullpropagation

3902 int

lastnusefulpropconss;

3904 SCIPsetDebugMsg

(

set

,

"propagating constraints %d to %d of %d constraints of handler <%s> (%s pseudo solution, %d useful)\n"

,

3905

firstcons, firstcons + nconss - 1, conshdlr->

npropconss

, conshdlr->

name

,

3913

conss = nconss > 0 ? (conshdlr->

propconss

+ firstcons) :

NULL

;

3921

nusefulconss = nconss;

3931 if

( instrongbranching )

3936

assert(nusefulconss <= nconss);

3937

assert(nmarkedpropconss <= nconss);

3940 SCIP_CALL

( conshdlr->consprop(

set

->scip, conshdlr, conss, nconss, nusefulconss, nmarkedpropconss, proptiming, result) );

3944 if

( instrongbranching )

3962

assert(lastpropdomchgcount == stat->

domchgcount

);

3981 SCIPerrorMessage

(

"propagation method of constraint handler <%s> returned invalid result <%d>\n"

,

3982

conshdlr->

name

, *result);

3989 SCIPsetDebugMsg

(

set

,

"propagation method of constraint handler <%s> was delayed\n"

, conshdlr->

name

);

4021

assert(conshdlr !=

NULL

);

4027

assert(nfixedvars !=

NULL

);

4028

assert(naggrvars !=

NULL

);

4029

assert(nchgvartypes !=

NULL

);

4030

assert(nchgbds !=

NULL

);

4031

assert(naddholes !=

NULL

);

4032

assert(ndelconss !=

NULL

);

4033

assert(naddconss !=

NULL

);

4034

assert(nupgdconss !=

NULL

);

4035

assert(nchgcoefs !=

NULL

);

4036

assert(nchgsides !=

NULL

);

4037

assert(result !=

NULL

);

4041 if

( conshdlr->conspresol !=

NULL 4052 int

nnewchgvartypes;

4096

nnewfixedvars, nnewaggrvars, nnewchgvartypes, nnewchgbds, nnewholes,

4097

nnewdelconss, nnewaddconss, nnewupgdconss, nnewchgcoefs, nnewchgsides,

4098

nfixedvars, naggrvars, nchgvartypes, nchgbds, naddholes,

4099

ndelconss, naddconss, nupgdconss, nchgcoefs, nchgsides, result) );

4127 SCIPerrorMessage

(

"presolving method of constraint handler <%s> returned invalid result <%d>\n"

,

4128

conshdlr->

name

, *result);

4151

assert(conshdlr !=

NULL

);

4154 if

( conshdlr->consdelvars !=

NULL

)

4180

assert(conshdlr !=

NULL

);

4181

assert(conshdlr->conslock !=

NULL

);

4195

assert(conshdlr !=

NULL

);

4196

assert(conshdlr->conslock !=

NULL

);

4209

assert(conshdlr !=

NULL

);

4211 return

conshdlr->

name

;

4219

assert(conshdlr !=

NULL

);

4221 return

conshdlr->

desc

;

4229

assert(conshdlr !=

NULL

);

4240

assert(conshdlr !=

NULL

);

4255

assert(conshdlr !=

NULL

);

4257

assert(conssepalp !=

NULL

|| conssepasol !=

NULL

|| sepafreq == -1);

4259

conshdlr->conssepalp = conssepalp;

4260

conshdlr->conssepasol = conssepasol;

4275

assert(conshdlr !=

NULL

);

4277

assert(consprop !=

NULL

|| propfreq == -1);

4279

conshdlr->consprop = consprop;

4291

assert(conshdlr !=

NULL

);

4293

conshdlr->consenforelax = consenforelax;

4303

assert(conshdlr !=

NULL

);

4305

assert(!conshdlr->

needscons

|| (conshdlrcopy ==

NULL

) == (conscopy ==

NULL

));

4307

conshdlr->conshdlrcopy = conshdlrcopy;

4308

conshdlr->conscopy = conscopy;

4317

assert(conshdlr !=

NULL

);

4319

conshdlr->consfree = consfree;

4328

assert(conshdlr !=

NULL

);

4330

conshdlr->consinit = consinit;

4339

assert(conshdlr !=

NULL

);

4341

conshdlr->consexit = consexit;

4350

assert(conshdlr !=

NULL

);

4352

conshdlr->consinitsol = consinitsol;

4361

assert(conshdlr !=

NULL

);

4363

conshdlr->consexitsol = consexitsol;

4372

assert(conshdlr !=

NULL

);

4374

conshdlr->consinitpre = consinitpre;

4383

assert(conshdlr !=

NULL

);

4385

conshdlr->consexitpre = consexitpre;

4396

assert(conshdlr !=

NULL

);

4398

conshdlr->conspresol = conspresol;

4406 SCIPmessagePrintError

(

"ERROR: 'PRESOLDELAY'-flag no longer available since SCIP 3.2, use an appropriate " 4407 "'SCIP_PRESOLTIMING' for <%s> constraint handler instead.\n"

, conshdlr->

name

);

4423

assert(conshdlr !=

NULL

);

4425

conshdlr->consdelete = consdelete;

4434

assert(conshdlr !=

NULL

);

4436

conshdlr->constrans = constrans;

4445

assert(conshdlr !=

NULL

);

4447

conshdlr->consinitlp = consinitlp;

4456

assert(conshdlr !=

NULL

);

4458

conshdlr->consresprop = consresprop;

4467

assert(conshdlr !=

NULL

);

4469

conshdlr->consactive = consactive;

4478

assert(conshdlr !=

NULL

);

4480

conshdlr->consdeactive = consdeactive;

4489

assert(conshdlr !=

NULL

);

4491

conshdlr->consenable = consenable;

4500

assert(conshdlr !=

NULL

);

4502

conshdlr->consdisable = consdisable;

4511

assert(conshdlr !=

NULL

);

4513

conshdlr->consdelvars = consdelvars;

4522

assert(conshdlr !=

NULL

);

4524

conshdlr->consprint = consprint;

4533

assert(conshdlr !=

NULL

);

4535

conshdlr->consparse = consparse;

4544

assert(conshdlr !=

NULL

);

4546

conshdlr->consgetvars = consgetvars;

4555

assert(conshdlr !=

NULL

);

4557

conshdlr->consgetnvars = consgetnvars;

4566

assert(conshdlr !=

NULL

);

4568

conshdlr->consgetdivebdchgs = consgetdivebdchgs;

4578

assert(conshdlr !=

NULL

);

4580

conshdlr->consgetpermsymgraph = consgetpermsymgraph;

4590

assert(conshdlr !=

NULL

);

4592

conshdlr->consgetsignedpermsymgraph = consgetsignedpermsymgraph;

4605

assert(conshdlr !=

NULL

);

4607 return

conshdlr->

conss

;

4615

assert(conshdlr !=

NULL

);

4625

assert(conshdlr !=

NULL

);

4638

assert(conshdlr !=

NULL

);

4648

assert(conshdlr !=

NULL

);

4650 return

conshdlr->

nconss

;

4658

assert(conshdlr !=

NULL

);

4668

assert(conshdlr !=

NULL

);

4682

assert(conshdlr !=

NULL

);

4692

assert(conshdlr !=

NULL

);

4702

assert(conshdlr !=

NULL

);

4713

assert(conshdlr !=

NULL

);

4732

assert(conshdlr !=

NULL

);

4742

assert(conshdlr !=

NULL

);

4752

assert(conshdlr !=

NULL

);

4762

assert(conshdlr !=

NULL

);

4772

assert(conshdlr !=

NULL

);

4782

assert(conshdlr !=

NULL

);

4792

assert(conshdlr !=

NULL

);

4802

assert(conshdlr !=

NULL

);

4812

assert(conshdlr !=

NULL

);

4822

assert(conshdlr !=

NULL

);

4832

assert(conshdlr !=

NULL

);

4842

assert(conshdlr !=

NULL

);

4852

assert(conshdlr !=

NULL

);

4862

assert(conshdlr !=

NULL

);

4872

assert(conshdlr !=

NULL

);

4882

assert(conshdlr !=

NULL

);

4892

assert(conshdlr !=

NULL

);

4902

assert(conshdlr !=

NULL

);

4912

assert(conshdlr !=

NULL

);

4922

assert(conshdlr !=

NULL

);

4932

assert(conshdlr !=

NULL

);

4942

assert(conshdlr !=

NULL

);

4952

assert(conshdlr !=

NULL

);

4962

assert(conshdlr !=

NULL

);

4972

assert(conshdlr !=

NULL

);

4982

assert(conshdlr !=

NULL

);

4992

assert(conshdlr !=

NULL

);

5002

assert(conshdlr !=

NULL

);

5012

assert(conshdlr !=

NULL

);

5022

assert(conshdlr !=

NULL

);

5032

assert(conshdlr !=

NULL

);

5042

assert(conshdlr !=

NULL

);

5052

assert(conshdlr !=

NULL

);

5062

assert(conshdlr !=

NULL

);

5072

assert(conshdlr !=

NULL

);

5082

assert(conshdlr !=

NULL

);

5092

assert(conshdlr !=

NULL

);

5102

assert(conshdlr !=

NULL

);

5112

assert(conshdlr !=

NULL

);

5122

assert(conshdlr !=

NULL

);

5132

assert(conshdlr !=

NULL

);

5142

assert(conshdlr !=

NULL

);

5152

assert(conshdlr !=

NULL

);

5162

assert(conshdlr !=

NULL

);

5172

assert(conshdlr !=

NULL

);

5182

assert(conshdlr !=

NULL

);

5184 return

(conshdlr->conspresol !=

NULL

);

5192

assert(conshdlr !=

NULL

);

5202

assert(conshdlr !=

NULL

);

5212

assert(conshdlr !=

NULL

);

5222

assert(conshdlr !=

NULL

);

5232

assert(conshdlr !=

NULL

);

5242

assert(conshdlr !=

NULL

);

5252

assert(conshdlr !=

NULL

);

5254 return

(conshdlr->conshdlrcopy !=

NULL

);

5262

assert(conshdlr !=

NULL

);

5273

assert(conshdlr !=

NULL

);

5284

assert(conshdlr !=

NULL

);

5295

assert(conshdlr !=

NULL

);

5305

assert(conshdlr !=

NULL

);

5307 return

conshdlr->consgetpermsymgraph !=

NULL

;

5315

assert(conshdlr !=

NULL

);

5317 return

conshdlr->consgetsignedpermsymgraph !=

NULL

;

5331

assert(conssetchg !=

NULL

);

5332

assert(blkmem !=

NULL

);

5335

(*conssetchg)->addedconss =

NULL

;

5336

(*conssetchg)->disabledconss =

NULL

;

5337

(*conssetchg)->addedconsssize = 0;

5338

(*conssetchg)->naddedconss = 0;

5339

(*conssetchg)->disabledconsssize = 0;

5340

(*conssetchg)->ndisabledconss = 0;

5355

assert(conssetchg !=

NULL

);

5383

assert(conssetchg !=

NULL

);

5384

assert(blkmem !=

NULL

);

5386 if

( *conssetchg !=

NULL

)

5409

assert(conssetchg !=

NULL

);

5419

assert(num <= conssetchg->addedconsssize);

5433

assert(conssetchg !=

NULL

);

5443

assert(num <= conssetchg->disabledconsssize);

5462

assert(conssetchg !=

NULL

);

5463

assert(cons !=

NULL

);

5466 if

( *conssetchg ==

NULL

)

5473

(*conssetchg)->addedconss[(*conssetchg)->naddedconss] = cons;

5474

(*conssetchg)->naddedconss++;

5490

cons->

addarraypos

= (*conssetchg)->naddedconss-1;

5504

assert(conssetchg !=

NULL

);

5505

assert(cons !=

NULL

);

5508 if

( *conssetchg ==

NULL

)

5515

(*conssetchg)->disabledconss[(*conssetchg)->ndisabledconss] = cons;

5516

(*conssetchg)->ndisabledconss++;

5535

assert(conssetchg !=

NULL

);

5537

assert(0 <= arraypos && arraypos < conssetchg->naddedconss);

5540

assert(cons !=

NULL

);

5542 SCIPsetDebugMsg

(

set

,

"delete added constraint <%s> at position %d from constraint set change data\n"

, cons->

name

, arraypos);

5555 for

( ; arraypos < conssetchg->

naddedconss

-1; ++arraypos )

5579

assert(conssetchg !=

NULL

);

5580

assert(0 <= arraypos && arraypos < conssetchg->ndisabledconss);

5583 SCIPsetDebugMsg

(

set

,

"delete disabled constraint <%s> at position %d from constraint set change data\n"

,

5607

assert(conssetchg !=

NULL

);

5608 if

( conss !=

NULL

)

5610 if

( nconss !=

NULL

)

5627 if

( conssetchg ==

NULL

)

5630 SCIPsetDebugMsg

(

set

,

"applying constraint set changes at %p: %d constraint additions, %d constraint disablings\n"

,

5635 while

( i < conssetchg->naddedconss )

5638

assert(cons !=

NULL

);

5669 while

( i < conssetchg->ndisabledconss )

5672

assert(cons !=

NULL

);

5678 SCIPsetDebugMsg

(

set

,

"constraint <%s> of handler <%s> was deactivated -> remove it from disabledconss array\n"

,

5712 if

( conssetchg ==

NULL

)

5715 SCIPsetDebugMsg

(

set

,

"undoing constraint set changes at %p: %d constraint additions, %d constraint disablings\n"

,

5722

assert(cons !=

NULL

);

5738 SCIPsetDebugMsg

(

set

,

"constraint <%s> of handler <%s> was deactivated -> remove it from disabledconss array\n"

,

5755 for

( i = conssetchg->

naddedconss

-1; i >= 0; --i )

5758

assert(cons !=

NULL

);

5800

assert(conssetchg !=

NULL

);

5803 if

( *conssetchg ==

NULL

)

5806 SCIPsetDebugMsg

(

set

,

"moving constraint set changes at %p to global problem: %d constraint additions, %d constraint disablings\n"

,

5807

(

void

*)*conssetchg, (*conssetchg)->

naddedconss

, (*conssetchg)->ndisabledconss);

5812 for

( i = (*conssetchg)->naddedconss-1; i >= 0; --i )

5814

cons = (*conssetchg)->addedconss[i];

5815

assert(cons !=

NULL

);

5841 for

( i = (*conssetchg)->ndisabledconss-1; i >= 0; --i )

5843

cons = (*conssetchg)->disabledconss[i];

5844

assert(cons !=

NULL

);

5861 if

( (*conssetchg)->naddedconss == 0 && (*conssetchg)->ndisabledconss == 0 )

5920

assert(cons !=

NULL

);

5921

assert(blkmem !=

NULL

);

5923

assert(name !=

NULL

);

5924

assert(conshdlr !=

NULL

);

5925

assert(!original || deleteconsdata);

5931

(*cons)->scip =

set

->scip;

5933

(*cons)->conshdlr = conshdlr;

5934

(*cons)->consdata = consdata;

5935

(*cons)->transorigcons =

NULL

;

5936

(*cons)->addconssetchg =

NULL

;

5937

(*cons)->addarraypos = -1;

5938

(*cons)->consspos = -1;

5939

(*cons)->initconsspos = -1;

5940

(*cons)->sepaconsspos = -1;

5941

(*cons)->enfoconsspos = -1;

5942

(*cons)->checkconsspos = -1;

5943

(*cons)->propconsspos = -1;

5944

(*cons)->activedepth = -2;

5945

(*cons)->validdepth = (local ? -1 : 0);

5948

(*cons)->nupgradelocks = 0;

5949

(*cons)->initial = initial;

5950

(*cons)->separate = separate;

5951

(*cons)->enforce = enforce;

5952

(*cons)->check = check;

5953

(*cons)->propagate = propagate;

5954

(*cons)->sepaenabled = separate;

5955

(*cons)->propenabled = propagate;

5956

(*cons)->local = local;

5957

(*cons)->modifiable = modifiable;

5958

(*cons)->dynamic = dynamic;

5959

(*cons)->removable = removable;

5960

(*cons)->stickingatnode = stickingatnode;

5961

(*cons)->original = original;

5962

(*cons)->deleteconsdata = deleteconsdata;

5963

(*cons)->active =

FALSE

;

5964

(*cons)->conflict =

FALSE

;

5965

(*cons)->enabled =

FALSE

;

5966

(*cons)->obsolete =

FALSE

;

5967

(*cons)->markpropagate =

TRUE

;

5968

(*cons)->deleted =

FALSE

;

5969

(*cons)->update =

FALSE

;

5970

(*cons)->updateinsert =

FALSE

;

5971

(*cons)->updateactivate =

FALSE

;

5972

(*cons)->updatedeactivate =

FALSE

;

5973

(*cons)->updateenable =

FALSE

;

5974

(*cons)->updatedisable =

FALSE

;

5975

(*cons)->updatesepaenable =

FALSE

;

5976

(*cons)->updatesepadisable =

FALSE

;

5977

(*cons)->updatepropenable =

FALSE

;

5978

(*cons)->updatepropdisable =

FALSE

;

5979

(*cons)->updateobsolete =

FALSE

;

5980

(*cons)->updatemarkpropagate =

FALSE

;

5981

(*cons)->updateunmarkpropagate =

FALSE

;

5982

(*cons)->updatefree =

FALSE

;

5983

(*cons)->updateactfocus =

FALSE

;

5987

(*cons)->nlockspos[i] = 0;

5988

(*cons)->nlocksneg[i] = 0;

6000 SCIPsetDebugMsg

(

set

,

" -> delaying insertion of constraint <%s>\n"

, (*cons)->name);

6001

(*cons)->updateinsert =

TRUE

;

6003

assert((*cons)->update);

6004

assert((*cons)->nuses == 2);

6052

assert(cons !=

NULL

);

6054

assert(sourcescip !=

NULL

);

6055

assert(sourceconshdlr !=

NULL

);

6056

assert(sourcecons !=

NULL

);

6057

assert(varmap !=

NULL

);

6058

assert(consmap !=

NULL

);

6059

assert(valid !=

NULL

);

6064 if

( sourceconshdlr->conscopy !=

NULL

)

6066 SCIP_CALL

( sourceconshdlr->conscopy(

set

->scip, cons, name, sourcescip, sourceconshdlr, sourcecons, varmap, consmap,

6067

initial, separate, enforce, check, propagate, local, modifiable, dynamic, removable, stickingatnode, global, valid) );

6118

assert(cons !=

NULL

);

6121

(*success) =

FALSE

;

6124

assert(str !=

NULL

);

6126 if

( endptr ==

NULL

|| endptr == str )

6131

assert(endptr !=

NULL

);

6136 if

( endptr ==

NULL

|| endptr == str )

6141

assert(endptr !=

NULL

);

6165 if

( conshdlr ==

NULL

)

6167 SCIPmessagePrintWarning

(messagehdlr,

"constraint handler <%s> doesn't exist in SCIP data structure\n"

, conshdlrname);

6171

assert( conshdlr !=

NULL

);

6172 if

( conshdlr->consparse ==

NULL

)

6174 SCIPmessagePrintWarning

(messagehdlr,

"constraint handler <%s> does not support parsing constraints\n"

, conshdlrname);

6178 SCIP_CALL

( conshdlr->consparse(

set

->scip, conshdlr, cons, consname, str,

6179

initial, separate, enforce, check, propagate, local, modifiable, dynamic, removable, stickingatnode, success) );

6193

assert(cons !=

NULL

);

6213

assert(cons !=

NULL

);

6214

assert(*cons !=

NULL

);

6215

assert((*cons)->conshdlr !=

NULL

);

6216

assert((*cons)->nuses == 0);

6217

assert(!(*cons)->active);

6218

assert(!(*cons)->update);

6219

assert(!(*cons)->original || (*cons)->transorigcons ==

NULL

);

6220

assert(blkmem !=

NULL

);

6222

assert((*cons)->scip ==

set

->scip);

6224 SCIPsetDebugMsg

(

set

,

"freeing constraint <%s> at conss pos %d of handler <%s>\n"

,

6225

(*cons)->name, (*cons)->consspos, (*cons)->conshdlr->name);

6228 if

( (*cons)->conshdlr->consdelete !=

NULL

&& (*cons)->consdata !=

NULL

&& (*cons)->deleteconsdata )

6230 SCIP_CALL

( (*cons)->conshdlr->consdelete(

set

->scip, (*cons)->conshdlr, *cons, &(*cons)->

consdata

) );

6232 else if

( !(*cons)->deleteconsdata )

6233

(*cons)->consdata =

NULL

;

6234

assert((*cons)->consdata ==

NULL

);

6237 if

( (*cons)->transorigcons !=

NULL

)

6239

assert(!(*cons)->original);

6240

assert((*cons)->transorigcons->original);

6241

assert((*cons)->transorigcons->transorigcons == *cons);

6243

(*cons)->transorigcons->transorigcons =

NULL

;

6247 if

( !(*cons)->original )

6252

assert((*cons)->consspos == -1);

6266

assert(cons !=

NULL

);

6267

assert(cons->

nuses

>= 0);

6269 SCIPdebugMessage

(

"capture constraint <%s> with nuses=%d, cons pointer %p\n"

, cons->

name

, cons->

nuses

, (

void

*)cons);

6280

assert(blkmem !=

NULL

);

6281

assert(cons !=

NULL

);

6282

assert(*cons !=

NULL

);

6283

assert((*cons)->conshdlr !=

NULL

);

6284

assert((*cons)->nuses >= 1);

6286

assert((*cons)->scip ==

set

->scip);

6288 SCIPsetDebugMsg

(

set

,

"release constraint <%s> with nuses=%d, cons pointer %p\n"

, (*cons)->name, (*cons)->nuses, (

void

*)(*cons));

6290 if

( (*cons)->nuses == 0 )

6292

assert(!(*cons)->active || (*cons)->updatedeactivate);

6298

(*cons)->updatefree =

TRUE

;

6300

assert((*cons)->update);

6301

assert((*cons)->nuses == 1);

6323

assert(cons !=

NULL

);

6325

assert(cons->

scip

==

set

->scip);

6328

assert(conshdlr !=

NULL

);

6332 if

( conshdlr->consprint !=

NULL

)

6334 SCIP_CALL

( conshdlr->consprint(

set

->scip, conshdlr, cons, file) );

6337 SCIPmessageFPrintInfo

(messagehdlr, file,

"constraint handler <%s> doesn't support printing constraint"

, conshdlr->

name

);

6363

assert(cons !=

NULL

);

6365

assert(cons->

scip

==

set

->scip);

6368

assert(conshdlr !=

NULL

);

6370 if

( conshdlr->consgetvars !=

NULL

)

6372 SCIP_CALL

( conshdlr->consgetvars(

set

->scip, conshdlr, cons, vars, varssize, success) );

6376

(*success) =

FALSE

;

6398

assert(cons !=

NULL

);

6400

assert(cons->

scip

==

set

->scip);

6403

assert(conshdlr !=

NULL

);

6405 if

( conshdlr->consgetnvars !=

NULL

)

6407 SCIP_CALL

( conshdlr->consgetnvars(

set

->scip, conshdlr, cons, nvars, success) );

6412

(*success) =

FALSE

;

6433

assert(cons !=

NULL

);

6435

assert(cons->

scip

==

set

->scip);

6436

assert(success !=

NULL

);

6439

assert(conshdlr !=

NULL

);

6441 if

( conshdlr->consgetpermsymgraph !=

NULL

)

6443 SCIP_CALL

( conshdlr->consgetpermsymgraph(

set

->scip, conshdlr, cons, graph, success) );

6466

assert(cons !=

NULL

);

6468

assert(cons->

scip

==

set

->scip);

6469

assert(success !=

NULL

);

6472

assert(conshdlr !=

NULL

);

6474 if

( conshdlr->consgetsignedpermsymgraph !=

NULL

)

6476 SCIP_CALL

( conshdlr->consgetsignedpermsymgraph(

set

->scip, conshdlr, cons, graph, success) );

6496

assert(cons !=

NULL

);

6500

assert(cons->

scip

==

set

->scip);

6554

assert(origcons !=

NULL

);

6556

assert(origcons->

scip

==

set

->scip);

6559

assert(transcons !=

NULL

);

6591

assert(*transcons !=

NULL

);

6604

assert(cons !=

NULL

);

6606

assert(cons->

scip

==

set

->scip);

6608 if

( cons->

initial

!= initial )

6637

assert(cons !=

NULL

);

6639

assert(cons->

scip

==

set

->scip);

6672

assert(cons !=

NULL

);

6674

assert(cons->

scip

==

set

->scip);

6676 if

( cons->

enforce

!= enforce )

6707

assert(cons !=

NULL

);

6709

assert(cons->

scip

==

set

->scip);

6711 if

( cons->

check

!= check )

6713

cons->

check

= check;

6755

assert(cons !=

NULL

);

6757

assert(cons->

scip

==

set

->scip);

6789

assert(cons !=

NULL

);

6791

cons->

local

= local;

6802

assert(cons !=

NULL

);

6813

assert(cons !=

NULL

);

6824

assert(cons !=

NULL

);

6835

assert(cons !=

NULL

);

6847

assert( cons !=

NULL

);

6848

assert( name !=

NULL

);

6850

cons->

name

= (

char

*)name;

6874

assert(cons !=

NULL

);

6886

assert(cons->

scip

==

set

->scip);

6890 SCIPsetDebugMsg

(

set

,

"delayed activation of constraint <%s> in constraint handler <%s> (depth %d)\n"

,

6914

assert(cons !=

NULL

);

6922

assert(cons->

scip

==

set

->scip);

6926 SCIPsetDebugMsg

(

set

,

"delayed deactivation of constraint <%s> in constraint handler <%s>\n"

,

6949

assert(cons !=

NULL

);

6953

assert(cons->

scip

==

set

->scip);

6982

assert(cons !=

NULL

);

6986

assert(cons->

scip

==

set

->scip);

7015

assert(cons !=

NULL

);

7018

assert(cons->

scip

==

set

->scip);

7045

assert(cons !=

NULL

);

7073

assert(cons !=

NULL

);

7076

assert(cons->

scip

==

set

->scip);

7103

assert(cons !=

NULL

);

7106

assert(cons->

scip

==

set

->scip);

7132

assert(cons !=

NULL

);

7143

assert(cons !=

NULL

);

7146

assert(cons->

scip

==

set

->scip);

7173

assert(cons !=

NULL

);

7176

assert(cons->

scip

==

set

->scip);

7215

assert(cons !=

NULL

);

7219

assert(cons->

scip

==

set

->scip);

7225 SCIPsetDebugMsg

(

set

,

"adding %g to age (%g) of constraint <%s> of handler <%s>\n"

,

7228

cons->

age

+= deltaage;

7290

assert(cons !=

NULL

);

7294

assert(cons->

scip

==

set

->scip);

7340

assert(cons !=

NULL

);

7345

assert(result !=

NULL

);

7346

assert(cons->

scip

==

set

->scip);

7351

assert(conshdlr !=

NULL

);

7353 if

( conshdlr->consresprop !=

NULL

)

7358 SCIP_CALL

( conshdlr->consresprop(

set

->scip, conshdlr, cons, infervar, inferinfo, inferboundtype, bdchgidx,

7359

relaxedbd, result) );

7370 SCIPerrorMessage

(

"propagation conflict resolving method of constraint handler <%s> returned invalid result <%d>\n"

,

7371

conshdlr->

name

, *result);

7377 SCIPerrorMessage

(

"propagation conflict resolving method of constraint handler <%s> is not implemented\n"

,

7399

assert(cons !=

NULL

);

7402

assert((

int

)locktype >= 0 && (

int

)locktype < (

int

)

NLOCKTYPES

);

7403

assert(cons->

nlockspos

[locktype] >= 0);

7404

assert(cons->

nlocksneg

[locktype] >= 0);

7405

assert(-2 <= nlockspos && nlockspos <= 2);

7406

assert(-2 <= nlocksneg && nlocksneg <= 2);

7408

assert(cons->

scip

==

set

->scip);

7411

oldnlockspos = cons->

nlockspos

[locktype];

7412

oldnlocksneg = cons->

nlocksneg

[locktype];

7413

cons->

nlockspos

[locktype] += nlockspos;

7414

cons->

nlocksneg

[locktype] += nlocksneg;

7415

assert(cons->

nlockspos

[locktype] >= 0);

7416

assert(cons->

nlocksneg

[locktype] >= 0);

7419

updlockpos = (int)(cons->

nlockspos

[locktype] > 0) - (int)(oldnlockspos > 0);

7420

updlockneg = (int)(cons->

nlocksneg

[locktype] > 0) - (int)(oldnlocksneg > 0);

7423 if

( updlockpos != 0 || updlockneg != 0 )

7444

assert(cons !=

NULL

);

7446

assert(cons->

scip

==

set

->scip);

7447

assert(result !=

NULL

);

7450

assert(conshdlr !=

NULL

);

7453

assert(conshdlr->conscheck !=

NULL

);

7455 SCIP_CALL

( conshdlr->conscheck(

set

->scip, conshdlr, &cons, 1, sol, checkintegrality, checklprows, printreason,

7461 SCIPerrorMessage

(

"feasibility check of constraint handler <%s> on constraint <%s> returned invalid result <%d>\n"

,

7462

conshdlr->

name

, cons->

name

, *result);

7480

assert(cons !=

NULL

);

7482

assert(cons->

scip

==

set

->scip);

7483

assert(result !=

NULL

);

7486

assert(conshdlr !=

NULL

);

7489

assert(conshdlr->consenfops !=

NULL

);

7491 SCIP_CALL

( conshdlr->consenfops(

set

->scip, conshdlr, &cons, 1, 1, solinfeasible, objinfeasible, result) );

7503 SCIPerrorMessage

(

"enforcing method of constraint handler <%s> for pseudo solutions returned invalid result <%d>\n"

,

7504

conshdlr->

name

, *result);

7523

assert(cons !=

NULL

);

7525

assert(cons->

scip

==

set

->scip);

7526

assert(result !=

NULL

);

7529

assert(conshdlr !=

NULL

);

7532

assert(conshdlr->consenfolp !=

NULL

);

7534 SCIP_CALL

( conshdlr->consenfolp(

set

->scip, conshdlr, &cons, 1, 1, solinfeasible, result) );

7545 SCIPerrorMessage

(

"enforcing method of constraint handler <%s> for LP returned invalid result <%d>\n"

,

7546

conshdlr->

name

, *result);

7566

assert(cons !=

NULL

);

7568

assert(cons->

scip

==

set

->scip);

7569

assert(sol !=

NULL

);

7570

assert(result !=

NULL

);

7573

assert(conshdlr !=

NULL

);

7576

assert(conshdlr->consenfolp !=

NULL

);

7578 SCIP_CALL

( conshdlr->consenforelax(

set

->scip, sol, conshdlr, &cons, 1, 1, solinfeasible, result) );

7589 SCIPerrorMessage

(

"enforcing method of constraint handler <%s> for relaxation returned invalid result <%d>\n"

,

7590

conshdlr->

name

, *result);

7608

assert(cons !=

NULL

);

7610

assert(infeasible !=

NULL

);

7611

assert(cons->

scip

==

set

->scip);

7614

assert(conshdlr !=

NULL

);

7617 if

( conshdlr->consinitlp !=

NULL

)

7619 SCIP_CALL

( conshdlr->consinitlp(

set

->scip, conshdlr, &cons, 1, infeasible) );

7634

assert(cons !=

NULL

);

7636

assert(cons->

scip

==

set

->scip);

7637

assert(result !=

NULL

);

7640

assert(conshdlr !=

NULL

);

7643 if

( conshdlr->conssepalp !=

NULL

)

7645 SCIP_CALL

( conshdlr->conssepalp(

set

->scip, conshdlr, &cons, 1, 1, result) );

7657 SCIPerrorMessage

(

"separation method of constraint handler <%s> returned invalid result <%d>\n"

, conshdlr->

name

,

7676

assert(cons !=

NULL

);

7678

assert(cons->

scip

==

set

->scip);

7679

assert(sol !=

NULL

);

7680

assert(result !=

NULL

);

7683

assert(conshdlr !=

NULL

);

7686 if

( conshdlr->conssepasol !=

NULL

)

7688 SCIP_CALL

( conshdlr->conssepasol(

set

->scip, conshdlr, &cons, 1, 1, sol, result) );

7700 SCIPerrorMessage

(

"separation method of constraint handler for arbitrary primal solution <%s> returned invalid result <%d>\n"

,

7701

conshdlr->

name

, *result);

7719

assert(cons !=

NULL

);

7721

assert(cons->

scip

==

set

->scip);

7722

assert(result !=

NULL

);

7725

assert(conshdlr !=

NULL

);

7728 if

( conshdlr->consprop !=

NULL

)

7730 SCIP_CALL

( conshdlr->consprop(

set

->scip, conshdlr, &cons, 1, 1, 1, proptiming, result) );

7740 SCIPerrorMessage

(

"propagation method of constraint handler <%s> returned invalid result <%d>\n"

,

7741

conshdlr->

name

, *result);

7763

assert(cons !=

NULL

);

7765

assert(cons->

scip

==

set

->scip);

7766

assert(result !=

NULL

);

7767

assert(infervar !=

NULL

);

7768

assert(bdchgidx !=

NULL

);

7771

assert(conshdlr !=

NULL

);

7774 if

( conshdlr->consresprop !=

NULL

)

7776 SCIP_CALL

( conshdlr->consresprop(

set

->scip, conshdlr, cons, infervar, inferinfo, boundtype, bdchgidx, relaxedbd, result) );

7782 SCIPerrorMessage

(

"propagation conflict resolving method of constraint handler <%s> returned invalid result <%d>\n"

,

7783

conshdlr->

name

, *result);

7799 int

nnewchgvartypes,

7822

assert(cons !=

NULL

);

7824

assert(cons->

scip

==

set

->scip);

7825

assert(nfixedvars !=

NULL

);

7826

assert(naggrvars !=

NULL

);

7827

assert(nchgvartypes !=

NULL

);

7828

assert(nchgbds !=

NULL

);

7829

assert(naddholes !=

NULL

);

7830

assert(ndelconss !=

NULL

);

7831

assert(naddconss !=

NULL

);

7832

assert(nupgdconss !=

NULL

);

7833

assert(nchgcoefs !=

NULL

);

7834

assert(nchgsides !=

NULL

);

7835

assert(result !=

NULL

);

7838

assert(conshdlr !=

NULL

);

7841 if

( conshdlr->conspresol !=

NULL

)

7843 SCIP_CALL

( conshdlr->conspresol(

set

->scip, conshdlr, &cons, 1, nrounds, timing,

7844

nnewfixedvars, nnewaggrvars, nnewchgvartypes, nnewchgbds, nnewholes, nnewdelconss, nnewaddconss,

7845

nnewupgdconss, nnewchgcoefs, nnewchgsides, nfixedvars, naggrvars, nchgvartypes,

7846

nchgbds, naddholes, ndelconss, naddconss, nupgdconss, nchgcoefs, nchgsides, result) );

7856 SCIPerrorMessage

(

"presolving method of constraint handler <%s> returned invalid result <%d>\n"

,

7857

conshdlr->

name

, *result);

7873

assert(cons !=

NULL

);

7875

assert(cons->

scip

==

set

->scip);

7878

assert(conshdlr !=

NULL

);

7881 if

( conshdlr->consactive !=

NULL

)

7883 SCIP_CALL

( conshdlr->consactive(

set

->scip, conshdlr, cons) );

7897

assert(cons !=

NULL

);

7899

assert(cons->

scip

==

set

->scip);

7902

assert(conshdlr !=

NULL

);

7905 if

( conshdlr->consdeactive !=

NULL

)

7907 SCIP_CALL

( conshdlr->consdeactive(

set

->scip, conshdlr, cons) );

7924

assert(cons !=

NULL

);

7925 return

cons->

name

;

7942

assert(conshdlr !=

NULL

);

7953

assert(num <= conshdlr->storedpropconsssize);

7969

assert(conshdlrs !=

NULL

|| nconshdlrs == 0);

7971 for

( c = nconshdlrs - 1; c >= 0; --c )

7973

conshdlr = conshdlrs[c];

7974

assert(conshdlr !=

NULL

);

8010

assert(blkmem !=

NULL

);

8011

assert(conshdlrs !=

NULL

|| nconshdlrs == 0);

8013 for

( c = nconshdlrs - 1; c >= 0; --c )

8015

conshdlr = conshdlrs[c];

8016

assert(conshdlr !=

NULL

);

8034

assert(cons !=

NULL

);

8064

assert(linconsstats !=

NULL

);

8077

assert(linconsstats !=

NULL

);

8078

assert(*linconsstats !=

NULL

);

8089

linconsstats->

sum

= 0;

8098

assert(linconsstats !=

NULL

);

8102 return

linconsstats->

counter

[(int)linconstype];

8110

assert(linconsstats !=

NULL

);

8112 return

linconsstats->

sum

;

8122

assert(linconsstats !=

NULL

);

8123

assert(increment >= 1);

8127

linconsstats->

counter

[(int)linconstype] += increment;

8128

linconsstats->

sum

+= increment;

8139

assert(linconsstats !=

NULL

);

8175#undef SCIPconsGetName 8176#undef SCIPconsGetPos 8177#undef SCIPconsGetHdlr 8178#undef SCIPconsGetData 8179#undef SCIPconsGetNUses 8180#undef SCIPconsGetActiveDepth 8181#undef SCIPconsGetValidDepth 8182#undef SCIPconsIsActive 8183#undef SCIPconsIsEnabled 8184#undef SCIPconsIsSeparationEnabled 8185#undef SCIPconsIsPropagationEnabled 8186#undef SCIPconsIsDeleted 8187#undef SCIPconsIsObsolete 8188#undef SCIPconsIsConflict 8189#undef SCIPconsGetAge 8190#undef SCIPconsIsInitial 8191#undef SCIPconsIsSeparated 8192#undef SCIPconsIsEnforced 8193#undef SCIPconsIsChecked 8194#undef SCIPconsIsMarkedPropagate 8195#undef SCIPconsIsPropagated 8196#undef SCIPconsIsGlobal 8197#undef SCIPconsIsLocal 8198#undef SCIPconsIsModifiable 8199#undef SCIPconsIsDynamic 8200#undef SCIPconsIsRemovable 8201#undef SCIPconsIsStickingAtNode 8202#undef SCIPconsIsInProb 8203#undef SCIPconsIsOriginal 8204#undef SCIPconsIsTransformed 8205#undef SCIPconsIsLockedPos 8206#undef SCIPconsIsLockedNeg 8207#undef SCIPconsIsLocked 8208#undef SCIPconsGetNLocksPos 8209#undef SCIPconsGetNLocksNeg 8210#undef SCIPconsIsLockedTypePos 8211#undef SCIPconsIsLockedTypeNeg 8212#undef SCIPconsIsLockedType 8213#undef SCIPconsGetNLocksTypePos 8214#undef SCIPconsGetNLocksTypeNeg 8215#undef SCIPconsIsAdded 8216#undef SCIPconsGetNUpgradeLocks 8226

assert(cons !=

NULL

);

8228 return

cons->

name

;

8236

assert(cons !=

NULL

);

8246

assert(cons !=

NULL

);

8256

assert(cons !=

NULL

);

8266

assert(cons !=

NULL

);

8268 return

cons->

nuses

;

8276

assert(cons !=

NULL

);

8287

assert(cons !=

NULL

);

8297

assert(cons !=

NULL

);

8309

assert(cons !=

NULL

);

8312 return

(!cons->

local

? 0

8323

assert(cons !=

NULL

);

8333

assert(cons !=

NULL

);

8344

assert(cons !=

NULL

);

8355

assert(cons !=

NULL

);

8365

assert(cons !=

NULL

);

8375

assert(cons !=

NULL

);

8385

assert(cons !=

NULL

);

8395

assert(cons !=

NULL

);

8405

assert(cons !=

NULL

);

8415

assert(cons !=

NULL

);

8425

assert(cons !=

NULL

);

8427 return

cons->

check

;

8435

assert(cons !=

NULL

);

8445

assert(cons !=

NULL

);

8455

assert(cons !=

NULL

);

8457 return

!cons->

local

;

8465

assert(cons !=

NULL

);

8467 return

cons->

local

;

8475

assert(cons !=

NULL

);

8485

assert(cons !=

NULL

);

8495

assert(cons !=

NULL

);

8505

assert(cons !=

NULL

);

8515

assert(cons !=

NULL

);

8525

assert(cons !=

NULL

);

8535

assert(cons !=

NULL

);

8545

assert(cons !=

NULL

);

8555

assert(cons !=

NULL

);

8565

assert(cons !=

NULL

);

8575

assert(cons !=

NULL

);

8585

assert(cons !=

NULL

);

8596

assert(cons !=

NULL

);

8597

assert((

int

)locktype >= 0 && (

int

)locktype < (

int

)

NLOCKTYPES

);

8599 return

(cons->

nlockspos

[locktype] > 0);

8608

assert(cons !=

NULL

);

8609

assert((

int

)locktype >= 0 && (

int

)locktype < (

int

)

NLOCKTYPES

);

8611 return

(cons->

nlocksneg

[locktype] > 0);

8620

assert(cons !=

NULL

);

8621

assert((

int

)locktype >= 0 && (

int

)locktype < (

int

)

NLOCKTYPES

);

8632

assert(cons !=

NULL

);

8633

assert((

int

)locktype >= 0 && (

int

)locktype < (

int

)

NLOCKTYPES

);

8644

assert(cons !=

NULL

);

8645

assert((

int

)locktype >= 0 && (

int

)locktype < (

int

)

NLOCKTYPES

);

8655

assert(cons !=

NULL

);

8666

assert(cons !=

NULL

);

8677

assert(cons !=

NULL

);

SCIP_DECL_CONSENFOPS(ConshdlrSubtour::scip_enfops)

SCIP_DECL_CONSSEPASOL(ConshdlrSubtour::scip_sepasol)

SCIP_DECL_CONSLOCK(ConshdlrSubtour::scip_lock)

SCIP_DECL_CONSDELETE(ConshdlrSubtour::scip_delete)

SCIP_DECL_CONSCOPY(ConshdlrSubtour::scip_copy)

SCIP_DECL_CONSSEPALP(ConshdlrSubtour::scip_sepalp)

SCIP_DECL_CONSTRANS(ConshdlrSubtour::scip_trans)

SCIP_DECL_CONSDELVARS(ConshdlrSubtour::scip_delvars)

SCIP_DECL_CONSPRINT(ConshdlrSubtour::scip_print)

SCIP_DECL_CONSCHECK(ConshdlrSubtour::scip_check)

SCIP_DECL_CONSPROP(ConshdlrSubtour::scip_prop)

SCIP_DECL_CONSENFOLP(ConshdlrSubtour::scip_enfolp)

static GRAPHNODE ** active

int SCIPbranchcandGetNPseudoCands(SCIP_BRANCHCAND *branchcand)

internal methods for branching rules and branching candidate storage

void SCIPclockStop(SCIP_CLOCK *clck, SCIP_SET *set)

void SCIPclockEnableOrDisable(SCIP_CLOCK *clck, SCIP_Bool enable)

void SCIPclockStart(SCIP_CLOCK *clck, SCIP_SET *set)

SCIP_Real SCIPclockGetTime(SCIP_CLOCK *clck)

void SCIPclockReset(SCIP_CLOCK *clck)

void SCIPclockFree(SCIP_CLOCK **clck)

SCIP_RETCODE SCIPclockCreate(SCIP_CLOCK **clck, SCIP_CLOCKTYPE clocktype)

internal methods for clocks and timing issues

SCIP_RETCODE SCIPconshdlrsStorePropagationStatus(SCIP_SET *set, SCIP_CONSHDLR **conshdlrs, int nconshdlrs)

static SCIP_RETCODE conshdlrAddInitcons(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons)

void SCIPconshdlrSetFree(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSFREE((*consfree)))

SCIP_RETCODE SCIPconsAddLocks(SCIP_CONS *cons, SCIP_SET *set, SCIP_LOCKTYPE locktype, int nlockspos, int nlocksneg)

SCIP_RETCODE SCIPconshdlrSeparateLP(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_SEPASTORE *sepastore, int depth, SCIP_Bool execdelayed, SCIP_RESULT *result)

void SCIPconshdlrSetInitsol(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSINITSOL((*consinitsol)))

SCIP_RETCODE SCIPconsParse(SCIP_CONS **cons, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, const char *str, 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_Bool *success)

SCIP_RETCODE SCIPconssetchgUndo(SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)

SCIP_RETCODE SCIPconsEnableSeparation(SCIP_CONS *cons, SCIP_SET *set)

static SCIP_RETCODE conssetchgEnsureAddedconssSize(SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, int num)

void SCIPconshdlrSetTrans(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSTRANS((*constrans)))

SCIP_RETCODE SCIPconshdlrSetPresol(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSPRESOL((*conspresol)), int maxprerounds, SCIP_PRESOLTIMING presoltiming)

void SCIPconshdlrIncNCutsFound(SCIP_CONSHDLR *conshdlr)

SCIP_RETCODE SCIPconshdlrInit(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)

static SCIP_RETCODE conssetchgDelAddedCons(SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, int arraypos)

static SCIP_RETCODE conshdlrEnableCons(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons)

void SCIPconsMarkConflict(SCIP_CONS *cons)

SCIP_RETCODE SCIPconsEnable(SCIP_CONS *cons, SCIP_SET *set, SCIP_STAT *stat)

void SCIPconsCapture(SCIP_CONS *cons)

SCIP_RETCODE SCIPconsProp(SCIP_CONS *cons, SCIP_SET *set, SCIP_PROPTIMING proptiming, SCIP_RESULT *result)

static SCIP_RETCODE conssetchgCreate(SCIP_CONSSETCHG **conssetchg, BMS_BLKMEM *blkmem)

SCIP_RETCODE SCIPconsPrint(SCIP_CONS *cons, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, FILE *file)

SCIP_RETCODE SCIPconsCreate(SCIP_CONS **cons, BMS_BLKMEM *blkmem, SCIP_SET *set, const char *name, SCIP_CONSHDLR *conshdlr, SCIP_CONSDATA *consdata, 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_Bool original, SCIP_Bool deleteconsdata)

void SCIPconshdlrIncNAppliedCuts(SCIP_CONSHDLR *conshdlr)

static SCIP_RETCODE conshdlrEnsureCheckconssMem(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)

static void conshdlrDelPropcons(SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)

static SCIP_Bool conshdlrAreUpdatesDelayed(SCIP_CONSHDLR *conshdlr)

void SCIPconsSetLocal(SCIP_CONS *cons, SCIP_Bool local)

SCIP_RETCODE SCIPconsMarkPropagate(SCIP_CONS *cons, SCIP_SET *set)

void SCIPconshdlrSetInit(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSINIT((*consinit)))

void SCIPconshdlrSetDelete(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSDELETE((*consdelete)))

SCIP_RETCODE SCIPconshdlrEnforceRelaxSol(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_SEPASTORE *sepastore, SCIP_SOL *relaxsol, SCIP_Bool solinfeasible, SCIP_RESULT *result)

static SCIP_RETCODE conshdlrDisableConsSeparation(SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)

static SCIP_Real conshdlrGetAgeresetavg(SCIP_CONSHDLR *conshdlr)

static SCIP_RETCODE conssetchgEnsureDisabledconssSize(SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, int num)

SCIP_RETCODE SCIPconsDeactivate(SCIP_CONS *cons, SCIP_SET *set, SCIP_STAT *stat)

void SCIPconshdlrSetParse(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSPARSE((*consparse)))

static SCIP_RETCODE conshdlrEnsurePropconssMem(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)

SCIP_RETCODE SCIPconshdlrExitsol(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_Bool restart)

void SCIPconshdlrSetGetPermsymGraph(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSGETPERMSYMGRAPH((*consgetpermsymgraph)))

SCIP_RETCODE SCIPconshdlrSeparateSol(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_SEPASTORE *sepastore, SCIP_SOL *sol, int depth, SCIP_Bool execdelayed, SCIP_RESULT *result)

void SCIPconshdlrSetGetNVars(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSGETNVARS((*consgetnvars)))

SCIP_RETCODE SCIPconsDisable(SCIP_CONS *cons, SCIP_SET *set, SCIP_STAT *stat)

SCIP_RETCODE SCIPconsDeactive(SCIP_CONS *cons, SCIP_SET *set)

static SCIP_RETCODE conshdlrMarkConsObsolete(SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)

SCIP_RETCODE SCIPconshdlrLockVars(SCIP_CONSHDLR *conshdlr, SCIP_SET *set)

void SCIPconshdlrSetActive(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSACTIVE((*consactive)))

SCIP_RETCODE SCIPconshdlrEnforceLPSol(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_SEPASTORE *sepastore, SCIP_Bool solinfeasible, SCIP_RESULT *result)

SCIP_RETCODE SCIPconsGetPermsymGraph(SCIP_CONS *cons, SCIP_SET *set, SYM_GRAPH *graph, SCIP_Bool *success)

SCIP_RETCODE SCIPconsGetNVars(SCIP_CONS *cons, SCIP_SET *set, int *nvars, SCIP_Bool *success)

static SCIP_RETCODE conshdlrEnsureUpdateconssMem(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)

void SCIPconshdlrSetInitpre(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSINITPRE((*consinitpre)))

void SCIPconsSetStickingAtNode(SCIP_CONS *cons, SCIP_Bool stickingatnode)

SCIP_RETCODE SCIPconsSetSeparated(SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool separate)

#define checkConssArrays(conshdlr)

SCIP_RETCODE SCIPconsSepalp(SCIP_CONS *cons, SCIP_SET *set, SCIP_RESULT *result)

static SCIP_RETCODE conssetchgRelease(SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set)

static SCIP_RETCODE conshdlrProcessUpdates(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)

SCIP_RETCODE SCIPconsEnfops(SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool solinfeasible, SCIP_Bool objinfeasible, SCIP_RESULT *result)

SCIP_RETCODE SCIPconsActive(SCIP_CONS *cons, SCIP_SET *set)

#define AGERESETAVG_AGELIMIT

SCIP_RETCODE SCIPconsResetAge(SCIP_CONS *cons, SCIP_SET *set)

static SCIP_RETCODE conshdlrEnsureInitconssMem(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)

static SCIP_RETCODE conshdlrAddCheckcons(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)

static SCIP_RETCODE ensurePropagationStorage(SCIP_SET *set, SCIP_CONSHDLR *conshdlr, int num)

SCIP_RETCODE SCIPconsResprop(SCIP_CONS *cons, SCIP_SET *set, SCIP_VAR *infervar, int inferinfo, SCIP_BOUNDTYPE boundtype, SCIP_BDCHGIDX *bdchgidx, SCIP_Real relaxedbd, SCIP_RESULT *result)

void SCIPconsSetRemovable(SCIP_CONS *cons, SCIP_Bool removable)

SCIP_RETCODE SCIPconshdlrCreate(SCIP_CONSHDLR **conshdlr, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, int sepapriority, int enfopriority, int checkpriority, int sepafreq, int propfreq, int eagerfreq, int maxprerounds, SCIP_Bool delaysepa, SCIP_Bool delayprop, SCIP_Bool needscons, SCIP_PROPTIMING proptiming, SCIP_PRESOLTIMING presoltiming, SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)), SCIP_DECL_CONSFREE((*consfree)), SCIP_DECL_CONSINIT((*consinit)), SCIP_DECL_CONSEXIT((*consexit)), SCIP_DECL_CONSINITPRE((*consinitpre)), SCIP_DECL_CONSEXITPRE((*consexitpre)), SCIP_DECL_CONSINITSOL((*consinitsol)), SCIP_DECL_CONSEXITSOL((*consexitsol)), SCIP_DECL_CONSDELETE((*consdelete)), SCIP_DECL_CONSTRANS((*constrans)), SCIP_DECL_CONSINITLP((*consinitlp)), SCIP_DECL_CONSSEPALP((*conssepalp)), SCIP_DECL_CONSSEPASOL((*conssepasol)), SCIP_DECL_CONSENFOLP((*consenfolp)), SCIP_DECL_CONSENFORELAX((*consenforelax)), SCIP_DECL_CONSENFOPS((*consenfops)), SCIP_DECL_CONSCHECK((*conscheck)), SCIP_DECL_CONSPROP((*consprop)), SCIP_DECL_CONSPRESOL((*conspresol)), SCIP_DECL_CONSRESPROP((*consresprop)), SCIP_DECL_CONSLOCK((*conslock)), SCIP_DECL_CONSACTIVE((*consactive)), SCIP_DECL_CONSDEACTIVE((*consdeactive)), SCIP_DECL_CONSENABLE((*consenable)), SCIP_DECL_CONSDISABLE((*consdisable)), SCIP_DECL_CONSDELVARS((*consdelvars)), SCIP_DECL_CONSPRINT((*consprint)), SCIP_DECL_CONSCOPY((*conscopy)), SCIP_DECL_CONSPARSE((*consparse)), SCIP_DECL_CONSGETVARS((*consgetvars)), SCIP_DECL_CONSGETNVARS((*consgetnvars)), SCIP_DECL_CONSGETDIVEBDCHGS((*consgetdivebdchgs)), SCIP_DECL_CONSGETPERMSYMGRAPH((*consgetpermsymgraph)), SCIP_DECL_CONSGETSIGNEDPERMSYMGRAPH((*consgetsignedpermsymgraph)), SCIP_CONSHDLRDATA *conshdlrdata)

void SCIPconshdlrEnableOrDisableClocks(SCIP_CONSHDLR *conshdlr, SCIP_Bool enable)

static SCIP_RETCODE conssetchgDelDisabledCons(SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, int arraypos)

SCIP_RETCODE SCIPconsTransform(SCIP_CONS *origcons, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_CONS **transcons)

static SCIP_Bool consExceedsAgelimit(SCIP_CONS *cons, SCIP_SET *set)

static SCIP_RETCODE conshdlrAddSepacons(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)

SCIP_RETCODE SCIPconsCheck(SCIP_CONS *cons, SCIP_SET *set, SCIP_SOL *sol, SCIP_Bool checkintegrality, SCIP_Bool checklprows, SCIP_Bool printreason, SCIP_RESULT *result)

#define AGERESETAVG_OBSOLETEAGE

static void conshdlrDelEnfocons(SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)

SCIP_RETCODE SCIPconssetchgAddAddedCons(SCIP_CONSSETCHG **conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons, int depth, SCIP_Bool focusnode, SCIP_Bool active)

SCIP_RETCODE SCIPconshdlrInitLP(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_Bool initkeptconss, SCIP_Bool *cutoff)

static SCIP_RETCODE conshdlrDisableConsPropagation(SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)

static SCIP_RETCODE conshdlrEnsureConssMem(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)

void SCIPconshdlrSetDisable(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSDISABLE((*consdisable)))

static void conshdlrUnmarkConsPropagate(SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)

static void conshdlrMarkConsPropagate(SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)

SCIP_RETCODE SCIPconsAddAge(SCIP_CONS *cons, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_PROB *prob, SCIP_Real deltaage, SCIP_REOPT *reopt)

void SCIPconshdlrSetGetSignedPermsymGraph(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSGETSIGNEDPERMSYMGRAPH((*consgetsignedpermsymgraph)))

SCIP_RETCODE SCIPconsEnablePropagation(SCIP_CONS *cons, SCIP_SET *set)

static void conshdlrDelCheckcons(SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)

static void conshdlrDelayUpdates(SCIP_CONSHDLR *conshdlr)

SCIP_DECL_HASHGETKEY(SCIPhashGetKeyCons)

static void conshdlrDelInitcons(SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)

static SCIP_RETCODE conshdlrForceUpdates(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)

SCIP_RETCODE SCIPconsEnfolp(SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool solinfeasible, SCIP_RESULT *result)

static SCIP_RETCODE conshdlrAddCons(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)

SCIP_RETCODE SCIPconsSetInitial(SCIP_CONS *cons, SCIP_SET *set, SCIP_STAT *stat, SCIP_Bool initial)

SCIP_RETCODE SCIPconssetchgFree(SCIP_CONSSETCHG **conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set)

static SCIP_RETCODE conshdlrEnsureEnfoconssMem(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)

SCIP_RETCODE SCIPconsChgName(SCIP_CONS *cons, BMS_BLKMEM *blkmem, const char *name)

static SCIP_RETCODE conshdlrDisableCons(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons)

SCIP_RETCODE SCIPconsIncAge(SCIP_CONS *cons, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_PROB *prob, SCIP_REOPT *reopt)

void SCIPconshdlrSetExitsol(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSEXITSOL((*consexitsol)))

static SCIP_Bool consExceedsObsoleteage(SCIP_CONS *cons, SCIP_SET *set)

SCIP_RETCODE SCIPconshdlrInitpre(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)

void SCIPconsSetDynamic(SCIP_CONS *cons, SCIP_Bool dynamic)

SCIP_RETCODE SCIPconsSepasol(SCIP_CONS *cons, SCIP_SET *set, SCIP_SOL *sol, SCIP_RESULT *result)

SCIP_RETCODE SCIPconsFree(SCIP_CONS **cons, BMS_BLKMEM *blkmem, SCIP_SET *set)

static SCIP_RETCODE conshdlrMarkConsUseful(SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)

static SCIP_RETCODE conshdlrEnableConsPropagation(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)

SCIP_RETCODE SCIPconssetchgAddDisabledCons(SCIP_CONSSETCHG **conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_CONS *cons)

SCIP_RETCODE SCIPconsDelete(SCIP_CONS *cons, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_PROB *prob, SCIP_REOPT *reopt)

SCIP_RETCODE SCIPconsPresol(SCIP_CONS *cons, SCIP_SET *set, int nrounds, SCIP_PRESOLTIMING timing, int nnewfixedvars, int nnewaggrvars, int nnewchgvartypes, int nnewchgbds, int nnewholes, int nnewdelconss, int nnewaddconss, int nnewupgdconss, int nnewchgcoefs, int nnewchgsides, 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 SCIPconsDisablePropagation(SCIP_CONS *cons, SCIP_SET *set)

void SCIPconshdlrSetResprop(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSRESPROP((*consresprop)))

SCIP_RETCODE SCIPconsCopy(SCIP_CONS **cons, SCIP_SET *set, const char *name, SCIP *sourcescip, SCIP_CONSHDLR *sourceconshdlr, SCIP_CONS *sourcecons, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, 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_Bool global, SCIP_Bool *valid)

static void conshdlrDelCons(SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)

SCIP_RETCODE SCIPconsRelease(SCIP_CONS **cons, BMS_BLKMEM *blkmem, SCIP_SET *set)

void SCIPconshdlrSetInitlp(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSINITLP((*consinitlp)))

SCIP_RETCODE SCIPconsResolvePropagation(SCIP_CONS *cons, SCIP_SET *set, SCIP_VAR *infervar, int inferinfo, SCIP_BOUNDTYPE inferboundtype, SCIP_BDCHGIDX *bdchgidx, SCIP_Real relaxedbd, SCIP_RESULT *result)

SCIP_RETCODE SCIPconsSetPropagated(SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool propagate)

SCIP_RETCODE SCIPconsDisableSeparation(SCIP_CONS *cons, SCIP_SET *set)

void SCIPconshdlrSetGetDiveBdChgs(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSGETDIVEBDCHGS((*consgetdivebdchgs)))

static SCIP_RETCODE conshdlrEnsureSepaconssMem(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)

SCIP_RETCODE SCIPconsGetSignedPermsymGraph(SCIP_CONS *cons, SCIP_SET *set, SYM_GRAPH *graph, SCIP_Bool *success)

SCIP_RETCODE SCIPconshdlrUnlockVars(SCIP_CONSHDLR *conshdlr, SCIP_SET *set)

SCIP_RETCODE SCIPconsSetChecked(SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool check)

SCIP_RETCODE SCIPconsInitlp(SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool *infeasible)

SCIP_RETCODE SCIPconsEnforelax(SCIP_CONS *cons, SCIP_SET *set, SCIP_SOL *sol, SCIP_Bool solinfeasible, SCIP_RESULT *result)

static SCIP_RETCODE conshdlrAddUpdateCons(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)

static SCIP_RETCODE doConshdlrCreate(SCIP_CONSHDLR **conshdlr, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, int sepapriority, int enfopriority, int checkpriority, int sepafreq, int propfreq, int eagerfreq, int maxprerounds, SCIP_Bool delaysepa, SCIP_Bool delayprop, SCIP_Bool needscons, SCIP_PROPTIMING proptiming, SCIP_PRESOLTIMING presoltiming, SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)), SCIP_DECL_CONSFREE((*consfree)), SCIP_DECL_CONSINIT((*consinit)), SCIP_DECL_CONSEXIT((*consexit)), SCIP_DECL_CONSINITPRE((*consinitpre)), SCIP_DECL_CONSEXITPRE((*consexitpre)), SCIP_DECL_CONSINITSOL((*consinitsol)), SCIP_DECL_CONSEXITSOL((*consexitsol)), SCIP_DECL_CONSDELETE((*consdelete)), SCIP_DECL_CONSTRANS((*constrans)), SCIP_DECL_CONSINITLP((*consinitlp)), SCIP_DECL_CONSSEPALP((*conssepalp)), SCIP_DECL_CONSSEPASOL((*conssepasol)), SCIP_DECL_CONSENFOLP((*consenfolp)), SCIP_DECL_CONSENFORELAX((*consenforelax)), SCIP_DECL_CONSENFOPS((*consenfops)), SCIP_DECL_CONSCHECK((*conscheck)), SCIP_DECL_CONSPROP((*consprop)), SCIP_DECL_CONSPRESOL((*conspresol)), SCIP_DECL_CONSRESPROP((*consresprop)), SCIP_DECL_CONSLOCK((*conslock)), SCIP_DECL_CONSACTIVE((*consactive)), SCIP_DECL_CONSDEACTIVE((*consdeactive)), SCIP_DECL_CONSENABLE((*consenable)), SCIP_DECL_CONSDISABLE((*consdisable)), SCIP_DECL_CONSDELVARS((*consdelvars)), SCIP_DECL_CONSPRINT((*consprint)), SCIP_DECL_CONSCOPY((*conscopy)), SCIP_DECL_CONSPARSE((*consparse)), SCIP_DECL_CONSGETVARS((*consgetvars)), SCIP_DECL_CONSGETNVARS((*consgetnvars)), SCIP_DECL_CONSGETDIVEBDCHGS((*consgetdivebdchgs)), SCIP_DECL_CONSGETPERMSYMGRAPH((*consgetpermsymgraph)), SCIP_DECL_CONSGETSIGNEDPERMSYMGRAPH((*consgetsignedpermsymgraph)), SCIP_CONSHDLRDATA *conshdlrdata)

SCIP_RETCODE SCIPconshdlrsResetPropagationStatus(SCIP_SET *set, BMS_BLKMEM *blkmem, SCIP_CONSHDLR **conshdlrs, int nconshdlrs)

void SCIPconshdlrSetExit(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSEXIT((*consexit)))

SCIP_RETCODE SCIPconshdlrCopyInclude(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_Bool *valid)

SCIP_RETCODE SCIPconsActivate(SCIP_CONS *cons, SCIP_SET *set, SCIP_STAT *stat, int depth, SCIP_Bool focusnode)

static SCIP_RETCODE conshdlrAddEnfocons(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)

static SCIP_RETCODE conshdlrEnableConsSeparation(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)

void SCIPconshdlrSetCopy(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)), SCIP_DECL_CONSCOPY((*conscopy)))

void SCIPconshdlrSetDelvars(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSDELVARS((*consdelvars)))

static void conshdlrDelSepacons(SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)

void SCIPconshdlrSetEnable(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSENABLE((*consenable)))

SCIP_CONS * SCIPconsGetTransformed(SCIP_CONS *cons)

#define AGERESETAVG_DECAY

void SCIPconshdlrSetPrint(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSPRINT((*consprint)))

SCIP_RETCODE SCIPconshdlrPropagate(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, int depth, SCIP_Bool fullpropagation, SCIP_Bool execdelayed, SCIP_Bool instrongbranching, SCIP_PROPTIMING proptiming, SCIP_RESULT *result)

SCIP_RETCODE SCIPconsUnmarkPropagate(SCIP_CONS *cons, SCIP_SET *set)

SCIP_RETCODE SCIPconshdlrGetDiveBoundChanges(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_DIVESET *diveset, SCIP_SOL *sol, SCIP_Bool *success, SCIP_Bool *infeasible)

static void conshdlrUpdateAgeresetavg(SCIP_CONSHDLR *conshdlr, SCIP_Real age)

void SCIPconshdlrSetDeactive(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSDEACTIVE((*consdeactive)))

static SCIP_RETCODE conshdlrAddPropcons(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)

SCIP_RETCODE SCIPconshdlrPresolve(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, 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 SCIPconsGetVars(SCIP_CONS *cons, SCIP_SET *set, SCIP_VAR **vars, int varssize, SCIP_Bool *success)

void SCIPconsSetNamePointer(SCIP_CONS *cons, const char *name)

SCIP_RETCODE SCIPconshdlrEnforcePseudoSol(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_BRANCHCAND *branchcand, SCIP_Bool solinfeasible, SCIP_Bool objinfeasible, SCIP_Bool forced, SCIP_RESULT *result)

SCIP_RETCODE SCIPconssetchgApply(SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, int depth, SCIP_Bool focusnode)

SCIP_RETCODE SCIPconshdlrDelVars(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)

SCIP_RETCODE SCIPconsSetEnforced(SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool enforce)

void SCIPconsSetModifiable(SCIP_CONS *cons, SCIP_Bool modifiable)

void SCIPconshdlrSetGetVars(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSGETVARS((*consgetvars)))

static SCIP_RETCODE conshdlrDeactivateCons(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons)

void SCIPconshdlrSetExitpre(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSEXITPRE((*consexitpre)))

SCIP_RETCODE SCIPconshdlrExitpre(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)

SCIP_RETCODE SCIPconshdlrInitsol(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)

SCIP_RETCODE SCIPconssetchgMakeGlobal(SCIP_CONSSETCHG **conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_PROB *prob, SCIP_REOPT *reopt)

SCIP_RETCODE SCIPconshdlrCheck(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_SOL *sol, SCIP_Bool checkintegrality, SCIP_Bool checklprows, SCIP_Bool printreason, SCIP_Bool completely, SCIP_RESULT *result)

SCIP_RETCODE SCIPconshdlrExit(SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)

static SCIP_RETCODE conshdlrActivateCons(SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons, int depth, SCIP_Bool focusnode)

SCIP_RETCODE SCIPconshdlrFree(SCIP_CONSHDLR **conshdlr, SCIP_SET *set)

internal methods for constraints and constraint handlers

common defines and data types used in all packages of SCIP

#define SCIP_MAXTREEDEPTH

#define SCIP_CALL_FINALLY(x, y)

void SCIPinfoMessage(SCIP *scip, FILE *file, const char *formatstr,...)

int SCIPconshdlrGetNCheckConss(SCIP_CONSHDLR *conshdlr)

void SCIPconshdlrSetData(SCIP_CONSHDLR *conshdlr, SCIP_CONSHDLRDATA *conshdlrdata)

int SCIPconshdlrGetMaxNActiveConss(SCIP_CONSHDLR *conshdlr)

SCIP_Real SCIPconshdlrGetCheckTime(SCIP_CONSHDLR *conshdlr)

SCIP_PROPTIMING SCIPconshdlrGetPropTiming(SCIP_CONSHDLR *conshdlr)

SCIP_Bool SCIPconshdlrWasSolSeparationDelayed(SCIP_CONSHDLR *conshdlr)

SCIP_Longint SCIPconshdlrGetNCheckCalls(SCIP_CONSHDLR *conshdlr)

SCIP_CONS ** SCIPconshdlrGetCheckConss(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNChgSides(SCIP_CONSHDLR *conshdlr)

SCIP_Real SCIPconshdlrGetPresolTime(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetEagerFreq(SCIP_CONSHDLR *conshdlr)

SCIP_Bool SCIPconshdlrDoesPresolve(SCIP_CONSHDLR *conshdlr)

void SCIPconshdlrSetProp(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSPROP((*consprop)), int propfreq, SCIP_Bool delayprop, SCIP_PROPTIMING timingmask)

int SCIPconshdlrGetNFixedVars(SCIP_CONSHDLR *conshdlr)

SCIP_PRESOLTIMING SCIPconshdlrGetPresolTiming(SCIP_CONSHDLR *conshdlr)

SCIP_Real SCIPconshdlrGetEnfoLPTime(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNPresolCalls(SCIP_CONSHDLR *conshdlr)

SCIP_Longint SCIPconshdlrGetNDomredsFound(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetSepaPriority(SCIP_CONSHDLR *conshdlr)

SCIP_Longint SCIPconshdlrGetNCutsApplied(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNChgCoefs(SCIP_CONSHDLR *conshdlr)

void SCIPconshdlrSetPresolTiming(SCIP_CONSHDLR *conshdlr, SCIP_PRESOLTIMING presoltiming)

int SCIPconshdlrGetNUpdateConss(SCIP_CONSHDLR *conshdlr)

SCIP_CONS ** SCIPconshdlrGetEnfoConss(SCIP_CONSHDLR *conshdlr)

void SCIPconshdlrSetSepa(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSSEPALP((*conssepalp)), SCIP_DECL_CONSSEPASOL((*conssepasol)), int sepafreq, int sepapriority, SCIP_Bool delaysepa)

SCIP_Real SCIPconshdlrGetStrongBranchPropTime(SCIP_CONSHDLR *conshdlr)

void SCIPconshdlrSetEnforelax(SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSENFORELAX((*consenforelax)))

SCIP_Longint SCIPconshdlrGetNCutsFound(SCIP_CONSHDLR *conshdlr)

SCIP_Bool SCIPconshdlrSupportsSignedPermsymDetection(SCIP_CONSHDLR *conshdlr)

SCIP_Bool SCIPconshdlrIsPropagationDelayed(SCIP_CONSHDLR *conshdlr)

SCIP_Real SCIPconshdlrGetPropTime(SCIP_CONSHDLR *conshdlr)

void SCIPconssetchgGetAddedConsData(SCIP_CONSSETCHG *conssetchg, SCIP_CONS ***conss, int *nconss)

SCIP_Real SCIPconshdlrGetEnfoPSTime(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetPropFreq(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNConss(SCIP_CONSHDLR *conshdlr)

SCIP_Longint SCIPconshdlrGetNCutoffs(SCIP_CONSHDLR *conshdlr)

const char * SCIPconshdlrGetName(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNEnabledConss(SCIP_CONSHDLR *conshdlr)

SCIP_CONS ** SCIPconshdlrGetUpdateConss(SCIP_CONSHDLR *conshdlr)

SCIP_Bool SCIPconshdlrIsSeparationDelayed(SCIP_CONSHDLR *conshdlr)

SCIP_Longint SCIPconshdlrGetNSepaCalls(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNDelConss(SCIP_CONSHDLR *conshdlr)

SCIP_DECL_SORTPTRCOMP(SCIPconshdlrCompSepa)

SCIP_Bool SCIPconshdlrWasLPSeparationDelayed(SCIP_CONSHDLR *conshdlr)

SCIP_Longint SCIPconshdlrGetNChildren(SCIP_CONSHDLR *conshdlr)

SCIP_Real SCIPconshdlrGetEnfoRelaxTime(SCIP_CONSHDLR *conshdlr)

void SCIPconshdlrSetPropTiming(SCIP_CONSHDLR *conshdlr, SCIP_PROPTIMING proptiming)

SCIP_Bool SCIPconshdlrNeedsCons(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNAggrVars(SCIP_CONSHDLR *conshdlr)

SCIP_Longint SCIPconshdlrGetNEnfoPSCalls(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNAddHoles(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNEnfoConss(SCIP_CONSHDLR *conshdlr)

SCIP_Bool SCIPconshdlrIsInitialized(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNUpgdConss(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetStartNActiveConss(SCIP_CONSHDLR *conshdlr)

SCIP_Bool SCIPconshdlrWasPropagationDelayed(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNAddConss(SCIP_CONSHDLR *conshdlr)

SCIP_Bool SCIPconshdlrSupportsPermsymDetection(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNChgBds(SCIP_CONSHDLR *conshdlr)

const char * SCIPconshdlrGetDesc(SCIP_CONSHDLR *conshdlr)

SCIP_CONSHDLRDATA * SCIPconshdlrGetData(SCIP_CONSHDLR *conshdlr)

SCIP_Longint SCIPconshdlrGetNConssFound(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNActiveConss(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetCheckPriority(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetSepaFreq(SCIP_CONSHDLR *conshdlr)

SCIP_Longint SCIPconshdlrGetNPropCalls(SCIP_CONSHDLR *conshdlr)

SCIP_Longint SCIPconshdlrGetNEnfoLPCalls(SCIP_CONSHDLR *conshdlr)

SCIP_CONS ** SCIPconshdlrGetConss(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetEnfoPriority(SCIP_CONSHDLR *conshdlr)

SCIP_Real SCIPconshdlrGetSetupTime(SCIP_CONSHDLR *conshdlr)

SCIP_Longint SCIPconshdlrGetNRespropCalls(SCIP_CONSHDLR *conshdlr)

SCIP_Real SCIPconshdlrGetSepaTime(SCIP_CONSHDLR *conshdlr)

SCIP_Bool SCIPconshdlrIsClonable(SCIP_CONSHDLR *conshdlr)

int SCIPconshdlrGetNChgVarTypes(SCIP_CONSHDLR *conshdlr)

SCIP_Real SCIPconshdlrGetRespropTime(SCIP_CONSHDLR *conshdlr)

SCIP_Longint SCIPconshdlrGetNEnfoRelaxCalls(SCIP_CONSHDLR *conshdlr)

SCIP_Bool SCIPconsIsLockedNeg(SCIP_CONS *cons)

SCIP_CONSDATA * SCIPconsGetData(SCIP_CONS *cons)

void SCIPconsAddUpgradeLocks(SCIP_CONS *cons, int nlocks)

int SCIPconsGetPos(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsConflict(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsDynamic(SCIP_CONS *cons)

SCIP_Real SCIPconsGetAge(SCIP_CONS *cons)

SCIP_CONSHDLR * SCIPconsGetHdlr(SCIP_CONS *cons)

int SCIPconsGetActiveDepth(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsLockedPos(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsPropagationEnabled(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsInitial(SCIP_CONS *cons)

int SCIPconsGetNUpgradeLocks(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsMarkedPropagate(SCIP_CONS *cons)

int SCIPconsGetNLocksTypeNeg(SCIP_CONS *cons, SCIP_LOCKTYPE locktype)

int SCIPconsGetValidDepth(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsOriginal(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsChecked(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsDeleted(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsUpdatedeactivate(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsTransformed(SCIP_CONS *cons)

int SCIPconsGetNLocksPos(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsLockedType(SCIP_CONS *cons, SCIP_LOCKTYPE locktype)

SCIP_Bool SCIPconsIsEnforced(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsInProb(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsGlobal(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsActive(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsPropagated(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsLocal(SCIP_CONS *cons)

int SCIPconsGetNLocksNeg(SCIP_CONS *cons)

int SCIPconsGetNUses(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsLockedTypePos(SCIP_CONS *cons, SCIP_LOCKTYPE locktype)

SCIP_Bool SCIPconsIsEnabled(SCIP_CONS *cons)

const char * SCIPconsGetName(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsLocked(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsSeparationEnabled(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsLockedTypeNeg(SCIP_CONS *cons, SCIP_LOCKTYPE locktype)

SCIP_Bool SCIPconsIsModifiable(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsAdded(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsObsolete(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsStickingAtNode(SCIP_CONS *cons)

int SCIPconsGetNLocksTypePos(SCIP_CONS *cons, SCIP_LOCKTYPE locktype)

SCIP_Bool SCIPconsIsSeparated(SCIP_CONS *cons)

SCIP_Bool SCIPconsIsRemovable(SCIP_CONS *cons)

#define SCIPfreeBlockMemory(scip, ptr)

#define SCIPallocBlockMemory(scip, ptr)

int SCIPlinConsStatsGetSum(SCIP_LINCONSSTATS *linconsstats)

void SCIPlinConsStatsIncTypeCount(SCIP_LINCONSSTATS *linconsstats, SCIP_LINCONSTYPE linconstype, int increment)

int SCIPlinConsStatsGetTypeCount(SCIP_LINCONSSTATS *linconsstats, SCIP_LINCONSTYPE linconstype)

void SCIPlinConsStatsFree(SCIP *scip, SCIP_LINCONSSTATS **linconsstats)

void SCIPlinConsStatsReset(SCIP_LINCONSSTATS *linconsstats)

void SCIPprintLinConsStats(SCIP *scip, FILE *file, SCIP_LINCONSSTATS *linconsstats)

SCIP_RETCODE SCIPlinConsStatsCreate(SCIP *scip, SCIP_LINCONSSTATS **linconsstats)

SCIP_Real SCIPvarGetUbGlobal(SCIP_VAR *var)

SCIP_Real SCIPgetVarUbAtIndex(SCIP *scip, SCIP_VAR *var, SCIP_BDCHGIDX *bdchgidx, SCIP_Bool after)

SCIP_Real SCIPvarGetLbGlobal(SCIP_VAR *var)

SCIP_Real SCIPgetVarLbAtIndex(SCIP *scip, SCIP_VAR *var, SCIP_BDCHGIDX *bdchgidx, SCIP_Bool after)

int SCIPsnprintf(char *t, int len, const char *s,...)

void SCIPstrCopySection(const char *str, char startchar, char endchar, char *token, int size, char **endptr)

SCIP_RETCODE SCIPskipSpace(char **s)

static const char * paramname[]

#define BMSduplicateBlockMemoryArray(mem, ptr, source, num)

#define BMSfreeMemory(ptr)

#define BMSfreeBlockMemory(mem, ptr)

#define BMSallocBlockMemory(mem, ptr)

#define BMSreallocMemoryArray(ptr, num)

#define BMSfreeBlockMemoryArrayNull(mem, ptr, num)

#define BMSduplicateMemoryArray(ptr, source, num)

#define BMSclearMemory(ptr)

#define BMScopyMemoryArray(ptr, source, num)

#define BMSfreeBlockMemoryArray(mem, ptr, num)

#define BMSreallocBlockMemoryArray(mem, ptr, oldnum, newnum)

#define BMSclearMemoryArray(ptr, num)

struct BMS_BlkMem BMS_BLKMEM

#define BMSfreeMemoryArrayNull(ptr)

#define BMSallocMemory(ptr)

void SCIPmessagePrintError(const char *formatstr,...)

void SCIPmessageFPrintInfo(SCIP_MESSAGEHDLR *messagehdlr, FILE *file, const char *formatstr,...)

void SCIPmessagePrintWarning(SCIP_MESSAGEHDLR *messagehdlr, const char *formatstr,...)

SCIP_RETCODE SCIPprobDelCons(SCIP_PROB *prob, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons)

SCIP_RETCODE SCIPprobAddCons(SCIP_PROB *prob, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons)

internal methods for storing and manipulating the main problem

public data structures and miscellaneous methods

SCIP_Bool SCIPreoptConsCanBeDeleted(SCIP_REOPT *reopt, SCIP_CONS *cons)

data structures and methods for collecting reoptimization information

int SCIPsepastoreGetNCuts(SCIP_SEPASTORE *sepastore)

internal methods for storing separated cuts

SCIP_RETCODE SCIPsetAddIntParam(SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, int *valueptr, SCIP_Bool isadvanced, int defaultvalue, int minvalue, int maxvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)

SCIP_RETCODE SCIPsetAddBoolParam(SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, SCIP_Bool *valueptr, SCIP_Bool isadvanced, SCIP_Bool defaultvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)

SCIP_CONSHDLR * SCIPsetFindConshdlr(SCIP_SET *set, const char *name)

SCIP_STAGE SCIPsetGetStage(SCIP_SET *set)

int SCIPsetCalcMemGrowSize(SCIP_SET *set, int num)

internal methods for global SCIP settings

internal methods for problem statistics

SCIP_CONS ** disabledconss

unsigned int nupgradelocks

int nlocksneg[NLOCKTYPES]

unsigned int updatesepaenable

unsigned int updateobsolete

unsigned int updatesepadisable

SCIP_CONSSETCHG * addconssetchg

unsigned int updateenable

unsigned int updateactfocus

unsigned int updateunmarkpropagate

unsigned int updateactivate

SCIP_CONS * transorigcons

unsigned int updatedisable

unsigned int updatedeactivate

unsigned int updatepropenable

unsigned int stickingatnode

int nlockspos[NLOCKTYPES]

unsigned int markpropagate

unsigned int updatemarkpropagate

unsigned int updatepropdisable

unsigned int updateinsert

SCIP_RESULT lastenfolpresult

SCIP_Longint ndomredsfound

SCIP_PRESOLTIMING presoltiming

SCIP_Longint lastenfolpdomchgcount

SCIP_CLOCK * enforelaxtime

int storednmarkedpropconss

SCIP_Longint nenfolpcalls

SCIP_RESULT lastenfopsresult

SCIP_Longint nenforelaxcalls

SCIP_Longint lastsepalpcount

SCIP_Longint lastenfolplpcount

SCIP_Bool sepasolwasdelayed

SCIP_Bool sepalpwasdelayed

SCIP_Longint ncutsapplied

SCIP_RESULT lastenforelaxresult

SCIP_Longint nenfopscalls

SCIP_Longint lastenforelaxrelaxcount

SCIP_Longint storedpropdomchgcount

SCIP_Longint lastenfolpnode

SCIP_PROPTIMING proptiming

SCIP_Longint lastenforelaxnode

SCIP_CONS ** storedpropconss

SCIP_Longint lastpropdomchgcount

SCIP_Longint lastenfopsnode

SCIP_Longint lastenforelaxdomchgcount

SCIP_Longint nrespropcalls

SCIP_CONSHDLRDATA * conshdlrdata

SCIP_Longint lastenfopsdomchgcount

int counter[SCIP_NLINCONSTYPES]

SCIP_Longint nprobholechgs

SCIP_Longint ninitconssadded

SCIP_Longint nprobboundchgs

datastructures for constraints and constraint handlers

SCIP_Bool SCIPtreeProbing(SCIP_TREE *tree)

int SCIPtreeGetCurrentDepth(SCIP_TREE *tree)

internal methods for branch and bound tree

#define SCIP_DECL_CONSGETSIGNEDPERMSYMGRAPH(x)

#define SCIP_DECL_CONSGETPERMSYMGRAPH(x)

#define SCIP_DECL_CONSINITPRE(x)

#define SCIP_DECL_CONSEXIT(x)

#define SCIP_DECL_CONSGETVARS(x)

#define SCIP_DECL_CONSINITSOL(x)

struct SCIP_ConshdlrData SCIP_CONSHDLRDATA

#define SCIP_DECL_CONSDISABLE(x)

#define SCIP_DECL_CONSENFORELAX(x)

#define SCIP_DECL_CONSGETDIVEBDCHGS(x)

#define SCIP_DECL_CONSGETNVARS(x)

#define SCIP_DECL_CONSRESPROP(x)

@ SCIP_LINCONSTYPE_BINPACKING

@ SCIP_LINCONSTYPE_VARBOUND

@ SCIP_LINCONSTYPE_INVKNAPSACK

@ SCIP_LINCONSTYPE_PRECEDENCE

@ SCIP_LINCONSTYPE_AGGREGATION

@ SCIP_LINCONSTYPE_MIXEDBINARY

@ SCIP_LINCONSTYPE_SINGLETON

@ SCIP_LINCONSTYPE_SETCOVERING

@ SCIP_LINCONSTYPE_EQKNAPSACK

@ SCIP_LINCONSTYPE_KNAPSACK

@ SCIP_LINCONSTYPE_SETPARTITION

@ SCIP_LINCONSTYPE_INTKNAPSACK

@ SCIP_LINCONSTYPE_SETPACKING

@ SCIP_LINCONSTYPE_GENERAL

@ SCIP_LINCONSTYPE_CARDINALITY

#define SCIP_DECL_CONSACTIVE(x)

#define SCIP_DECL_CONSPARSE(x)

#define SCIP_DECL_CONSDEACTIVE(x)

#define SCIP_DECL_CONSPRESOL(x)

#define SCIP_DECL_CONSENABLE(x)

#define SCIP_DECL_CONSINITLP(x)

#define SCIP_DECL_CONSEXITPRE(x)

#define SCIP_DECL_CONSINIT(x)

struct SCIP_ConsData SCIP_CONSDATA

#define SCIP_DECL_CONSHDLRCOPY(x)

#define SCIP_DECL_CONSEXITSOL(x)

#define SCIP_NLINCONSTYPES

#define SCIP_DECL_CONSFREE(x)

enum SCIP_LinConstype SCIP_LINCONSTYPE

enum SCIP_BoundType SCIP_BOUNDTYPE

enum SCIP_Result SCIP_RESULT

enum SCIP_Retcode SCIP_RETCODE

#define SCIP_PRESOLTIMING_MAX

#define SCIP_PRESOLTIMING_FINAL

unsigned int SCIP_PROPTIMING

#define SCIP_PRESOLTIMING_MEDIUM

unsigned int SCIP_PRESOLTIMING

#define SCIP_PROPTIMING_AFTERLPLOOP

#define SCIP_PRESOLTIMING_FAST

#define SCIP_PRESOLTIMING_EXHAUSTIVE

#define SCIP_PROPTIMING_BEFORELP

#define SCIP_PROPTIMING_ALWAYS

#define SCIP_PROPTIMING_DURINGLPLOOP

enum SCIP_LockType SCIP_LOCKTYPE

internal methods for problem variables


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4