./deagle --no-assertions --datarace --32 /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c


--------------------------------------------------------------------------------


Deagle version 2.1 64-bit x86_64 linux
which contains:
CBMC version 5.67.0 (SVCOMP2023_221122-2-g2121ef1a2) 64-bit x86_64 linux
Parsing /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c
Converting
Type-checking popl20-horseshoe.wvr
Generating GOTO Program
Adding CPROVER library (x86_64)
file <builtin-library-pthread_create> line 20: warning: pointer parameter types differ between declaration and definition "pthread_create"
old definition in module popl20-horseshoe.wvr file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c line 22
signed int (pthread_t *, const pthread_attr_t *, void * (*)(void *), void *)
new definition in module <built-in-library> file <builtin-library-pthread_create> line 20
signed int (pthread_t *thread, const pthread_attr_t *attr, void * (*start_routine)(void *), void *arg)
Removal of function pointers and virtual functions
file <builtin-library-__spawned_thread> line 34 function __spawned_thread: replacing function pointer by 3 possible targets
Generic Property Instrumentation
Running with 8 object bits, 24 offset bits (default)
Starting Bounded Model Checking
[Warning][Unknown] Invalidating expressions: AddrOf(Var(q1_front,
                                     NoOffset)) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:105:3)
[Warning][Unknown] Invalidating expressions: AddrOf(Var(q2_front, NoOffset)) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:107:3)
[Warning][Unknown] Invalidating expressions: AddrOf(Var(n1, NoOffset)) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:110:3)
[Warning][Unknown] Invalidating expressions: IndexPI(Lval(Var(arr, NoOffset)), Lval(Var(i, NoOffset))) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:138:5)
[Warning][Unknown] Invalidating expressions: AddrOf(Var(n2,
                                     NoOffset)) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:112:3)
[Warning][Unknown] Invalidating expressions: IndexPI(Lval(Var(arr, NoOffset)), Lval(Var(i, NoOffset))) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:138:5)
[Warning][Unknown] Invalidating expressions: AddrOf(Var(N,
                                     NoOffset)) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:115:3)
[Warning][Race] Memory location q1_back@popl20-horseshoe.wvr.c:42:15 (race with conf. 110):
  read with {thread:([thread1@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:120:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:49:5)
  read with {thread:([thread1@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:120:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:50:5)
  read with {thread:([thread1@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:120:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:51:5)
  read with {thread:([thread1@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:120:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:55:3)
  read with {thread:([thread1@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:120:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:56:3)
  read with {thread:([thread1@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:120:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:57:3)
  read with {thread:([thread2@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:121:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:67:5)
  write with {thread:([thread1@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:120:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:51:5)
  write with {thread:([thread1@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:120:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:57:3)
[Warning][Race] Memory location q2_back@popl20-horseshoe.wvr.c:42:34 (race with conf. 110):
  read with {thread:([thread2@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:121:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:72:5)
  read with {thread:([thread2@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:121:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:73:5)
  read with {thread:([thread2@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:121:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:74:5)
  read with {thread:([thread3@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:122:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:89:5)
  write with {thread:([thread2@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:121:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:74:5)
[Warning][Race] Memory location t@popl20-horseshoe.wvr.c:42:54 (race with conf. 110):
  read with {thread:([thread3@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:122:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:93:5)
  read with {thread:([main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:126:3)
  write with {thread:([thread3@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:122:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:93:5)
[Warning][Race] Memory location s@popl20-horseshoe.wvr.c:42:51 (race with conf. 110):
  read with {thread:([thread2@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:121:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:76:5)
  read with {thread:([main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:126:3)
  write with {thread:([thread2@/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:121:3, main], {})} (conf. 110) (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c:76:5)

Summary for all memory locations:
	safe:            8
	vulnerable:      0
	unsafe:          4
	-------------------
	total:          12
Use SV-COMP unwinding strategy: 2
Deagle's solver is set!!!!!!
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 0
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 0
Unwinding loop create_fresh_int_array.0 iteration 1 file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c line 137 function create_fresh_int_array thread 0
Not unwinding loop create_fresh_int_array.0 iteration 2 file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c line 137 function create_fresh_int_array thread 0
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 0
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 0
Unwinding loop create_fresh_int_array.0 iteration 1 file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c line 137 function create_fresh_int_array thread 0
Not unwinding loop create_fresh_int_array.0 iteration 2 file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c line 137 function create_fresh_int_array thread 0
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 0
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 0
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 1
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 1
Unwinding loop thread1.0 iteration 1 file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c line 47 function thread1 thread 1
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 1
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 1
Not unwinding loop thread1.0 iteration 2 file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c line 47 function thread1 thread 1
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 1
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 1
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 2
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 2
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 2
Unwinding loop thread2.0 iteration 1 file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c line 65 function thread2 thread 2
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 2
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 2
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 2
Not unwinding loop thread2.0 iteration 2 file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c line 65 function thread2 thread 2
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 3
Unwinding loop thread3.0 iteration 1 file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c line 87 function thread3 thread 3
aborting path on assume(false) at file <builtin-library-abort> line 6 function abort thread 3
Not unwinding loop thread3.0 iteration 2 file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c line 87 function thread3 thread 3
Handling datarace, passing the problem to goblint first
getcwd: /mnt/goblint-svcomp/benchexec/tools-pldi/deagle
/mnt/goblint-svcomp/benchexec/tools-pldi/deagle/goblint/goblint /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c | tee goblint/goblint_output: 0
Lines where datarace may occur: 105 106 112 113 115 116 126 127 49 50 51 52 55 56 57 58 67 68 72 73 74 75 76 77 89 90 93 94 
The number of races before goblint filter: 127
The number of races after goblint filter: 18
Race categories: 6
	112(1) - 75(1) n2:
		n2#2 n2#3
		n2#2 n2#5
	106(1) - 52(1) q1_back:
		q1_back#2 q1_back#3
		q1_back#2 q1_back#5
		q1_back#2 q1_back#6
		q1_back#2 q1_back#8
	106(1) - 58(1) q1_back:
		q1_back#2 q1_back#9
		q1_back#2 q1_back#11
	113(1) - 75(1) q2:
		q2#2 q2#3
		q2#2 q2#5
	126(1) - 76(1) s:
		s#2 s#5
		s#2 s#7
		s#3 s#5
		s#3 s#7
	126(1) - 93(1) t:
		t#2 t#5
		t#2 t#7
		t#3 t#5
		t#3 t#7
Runtime Symex: 0.890343s
Adding SC constraints
Shared __CPROVER_threads_exited: 6R/4W
Shared __CPROVER_next_thread_id: 5R/4W
Shared q1: 5R/2W
Shared q2: 4R/2W
Shared q1_front: 2R/4W
Shared q1_back: 5R/5W
Shared q2_front: 2R/4W
Shared q2_back: 4R/4W
Shared n1: 5R/2W
Shared n2: 4R/2W
Shared s: 4R/3W
Shared t: 4R/3W
Shared N: 2R/2W
Shared main::1::t1!0@1: 2R/2W
Shared main::1::t2!0@1: 2R/2W
Shared main::1::t3!0@1: 2R/2W
Shared symex_dynamic::dynamic_object1: 5R/3W
Shared symex_dynamic::dynamic_object2: 4R/3W
size of program expression: 1052 steps
no slicing due to threads
Generated 0 VCC(s), 0 remaining after simplification
Runtime Postprocess Equation: 0.00461339s
Passing problem to propositional reduction
converting SSA
Runtime Convert SSA: 0.0073702s
Set Deagle solver's graph
Running propositional reduction
Post-processing
Runtime Post-process: 0.0274016s
Solving with Deagle's Closure solver
51813 variables, 190066 clauses
ClosureSolver finishes with 76 conflicts, 420 decisions, and 59583 propagations. 158 theory propagations and 4 cycles included.
SAT checker: instance is UNSATISFIABLE
Runtime Solver: 0.0357755s
Runtime decision procedure: 0.0579723s

** Results:
/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/weaver/popl20-horseshoe.wvr.c function main
[nodatarace.assertion.0] line 122 No data races on variable n2 between line 112 and line 75: SUCCESS
[nodatarace.assertion.1] line 122 No data races on variable q1_back between line 106 and line 52: SUCCESS
[nodatarace.assertion.2] line 122 No data races on variable q1_back between line 106 and line 58: SUCCESS
[nodatarace.assertion.3] line 122 No data races on variable q2 between line 113 and line 75: SUCCESS
[nodatarace.assertion.4] line 122 No data races on variable s between line 126 and line 76: SUCCESS
[nodatarace.assertion.5] line 122 No data races on variable t between line 126 and line 93: SUCCESS

** 0 of 6 failed (1 iterations)
VERIFICATION SUCCESSFUL
