<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Hi,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
I have a linear constraint:</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0">
[linear] <scoreub>: <score>[C] -1e+20<ch#0>[B] -1e+20<ch#1>[B] -1e+20<ch#2>[B] -1e+20<ch#3>[B] -1e+20<ch#4>[B] -1e+20<ch#5>[B] -1e+20<ch#6>[B] <= 0;</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0">
which (in debug mode) is causing the following problem:</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0 ContentPasted1">
gobnilp: src/scip/set.c:6168: SCIPsetIsEQ: Assertion `((!SCIPsetIsInfinity(set, val1) || !SCIPsetIsInfinity(set, val2)) && (!SCIPsetIsInfinity(set, -val1) || !SCIPsetIsInfinity(set, -val2))) || val1 == val2' failed.
<div><br class="ContentPasted1">
</div>
<div class="ContentPasted1">Thread 1 "gobnilp" received signal SIGABRT, Aborted.</div>
<div class="ContentPasted1">__pthread_kill_implementation (no_tid=0, signo=6, threadid=140737350973376) at ./nptl/pthread_kill.c:44</div>
<div class="ContentPasted1">44 ./nptl/pthread_kill.c: No such file or directory.</div>
<div class="ContentPasted1">(gdb) bt</div>
<div class="ContentPasted1">#0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=140737350973376) at ./nptl/pthread_kill.c:44</div>
<div class="ContentPasted1">#1 __pthread_kill_internal (signo=6, threadid=140737350973376) at ./nptl/pthread_kill.c:78</div>
<div class="ContentPasted1">#2 __GI___pthread_kill (threadid=140737350973376, signo=signo@entry=6) at ./nptl/pthread_kill.c:89</div>
<div class="ContentPasted1">#3 0x00007ffff6a42476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26</div>
<div class="ContentPasted1">#4 0x00007ffff6a287f3 in __GI_abort () at ./stdlib/abort.c:79</div>
<div class="ContentPasted1">#5 0x00007ffff6a2871b in __assert_fail_base (fmt=0x7ffff6bdd150 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n",
</div>
<div class="ContentPasted1"> assertion=0x555559676ce0 "((!SCIPsetIsInfinity(set, val1) || !SCIPsetIsInfinity(set, val2)) && (!SCIPsetIsInfinity(set, -val1) || !SCIPsetIsInfinity(set, -val2))) || val1 == val2", file=0x55555966f220 "src/scip/set.c", line=6168,
function=<optimised out>) at ./assert/assert.c:92</div>
<div class="ContentPasted1">#6 0x00007ffff6a39e96 in __GI___assert_fail (</div>
<div class="ContentPasted1"> assertion=0x555559676ce0 "((!SCIPsetIsInfinity(set, val1) || !SCIPsetIsInfinity(set, val2)) && (!SCIPsetIsInfinity(set, -val1) || !SCIPsetIsInfinity(set, -val2))) || val1 == val2", file=0x55555966f220 "src/scip/set.c", line=6168,
function=0x555559678098 <__PRETTY_FUNCTION__.72> "SCIPsetIsEQ")</div>
<div class="ContentPasted1"> at ./assert/assert.c:101</div>
<div class="ContentPasted1">#7 0x0000555557a873d8 in SCIPsetIsEQ (set=0x55555b42fc70, val1=-2.6911787705190607e+22, val2=-1e+20) at src/scip/set.c:6168</div>
<div class="ContentPasted1">#8 0x00005555578f6775 in SCIPisEQ (scip=0x55555b28f340, val1=-2.6911787705190607e+22, val2=-1e+20) at src/scip/scip_numerics.c:454</div>
<div class="ContentPasted1">#9 0x0000555556e3fe2f in checkEqualObjective (scip=0x55555b28f340, consdata=0x55555b3fd7f8, scale=0x7fffffffaad8, offset=0x7fffffffaad0)</div>
<div class="ContentPasted1"> at src/scip/cons_linear.c:10322</div>
<br>
</div>
<div class="elementToProof">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="ContentPasted2 ContentPasted3">
so it looks like the problem is caused by checkEqualObjective generating a value ( -2.6911787705190607e+22 ) which is less than -1+e20 (ie less than "negative infinity"). I can easily get round this (and indeed should do since constraints with infinite coefficients
aren't a great idea!) but it might be worth adding some sort of check for "infinite" coefficients in linear constraints.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="ContentPasted2">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="ContentPasted2">
James<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div id="Signature">
<div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
James Cussens</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Room MVB 3.26<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
School of Computer Science, University of Bristol</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Phone: +44 (0)117 455 8723<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<a href="https://jcussens.github.io/">https://jcussens.github.io/</a></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-size:11.5pt">Funded PhDs available in Bristol in the following areas: <a href="http://www.bristol.ac.uk/cdt/compass/" target="_blank" rel="noopener noreferrer"><span>Data Science</span></a>, <a href="http://www.bristol.ac.uk/cdt/interactive-ai/" target="_blank" rel="noopener noreferrer"><span>Interactive
AI</span></a>, <a href="http://www.bristol.ac.uk/cdt/cyber-security/" target="_blank" rel="noopener noreferrer"><span>Cyber Security</span></a> or <a href="http://www.bristol.ac.uk/cdt/digital-health/" target="_blank" rel="noopener noreferrer"><span>Digital
Health</span></a>. </span><br>
</div>
</div>
</div>
</div>
</body>
</html>