/root/.sdkman/candidates/java/21.0.5-tem/bin/java -Xmx22000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata ./data --icfgtochc.assume.program.has.a.precondition True --icfgtochc.specification.mode ASSERT_VIOLATIONS --icfgtochc.single-instance.threads source --icfgtochc.thread-modular.proof.level 2 --icfgtochc.preference.order.used.for.reduction LOCKSTEP --icfgtochc.use.semi-commutativity True -s ../../../trunk/examples/concurrent/bpl/parameterized/line-queue/../ThreadModularVerifier.Settings.epf -tc ../../../trunk/examples/concurrent/bpl/parameterized/ThreadModularVerifier.xml --chcsolver.chc.solver.backend ELDARICA --icfgtochc.conditional.independence NECESSARY_AND_SUFFICIENT -i ../../../trunk/examples/concurrent/bpl/parameterized/line-queue/line-queue.bpl -------------------------------------------------------------------------------- This is Ultimate 0.3.0-wip.dk.sleep-threadmodular-07d3146-m [2025-01-04 03:38:23,633 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-04 03:38:23,696 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/line-queue/../ThreadModularVerifier.Settings.epf [2025-01-04 03:38:23,710 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-04 03:38:23,711 INFO L151 SettingsManager]: Preferences of ChcSolver differ from their defaults: [2025-01-04 03:38:23,711 INFO L153 SettingsManager]: * Produce CHC model if query is SAT=false [2025-01-04 03:38:23,711 INFO L153 SettingsManager]: * CHC solver backend=Z3 [2025-01-04 03:38:23,711 INFO L153 SettingsManager]: * Produce derivation if query is UNSAT=false [2025-01-04 03:38:23,712 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-04 03:38:23,713 INFO L153 SettingsManager]: * Size of a code block=OneNontrivialStatement [2025-01-04 03:38:23,713 INFO L153 SettingsManager]: * Add additional assume for each assert=false [2025-01-04 03:38:23,714 INFO L151 SettingsManager]: Preferences of IcfgToChc differ from their defaults: [2025-01-04 03:38:23,714 INFO L153 SettingsManager]: * Conditional Independence=SUFFICIENT [2025-01-04 03:38:23,714 INFO L151 SettingsManager]: Preferences of ChcSmtPrinter differ from their defaults: [2025-01-04 03:38:23,714 INFO L153 SettingsManager]: * Save file in source directory=true [2025-01-04 03:38:23,714 INFO L153 SettingsManager]: * Use automatic naming=true [2025-01-04 03:38:23,714 INFO L153 SettingsManager]: * File name=CHC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Assume program has a precondition -> true Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Specification mode -> ASSERT_VIOLATIONS Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Single-instance threads -> source Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Thread-Modular Proof Level -> 2 Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Preference order used for reduction -> LOCKSTEP Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Use semi-commutativity -> true Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.chcsolver: CHC solver backend -> ELDARICA Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Conditional Independence -> NECESSARY_AND_SUFFICIENT [2025-01-04 03:38:24,021 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-04 03:38:24,036 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-04 03:38:24,037 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-04 03:38:24,038 INFO L270 PluginConnector]: Initializing Boogie PL CUP Parser... [2025-01-04 03:38:24,039 INFO L274 PluginConnector]: Boogie PL CUP Parser initialized [2025-01-04 03:38:24,039 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/line-queue/line-queue.bpl [2025-01-04 03:38:24,040 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/line-queue/line-queue.bpl' [2025-01-04 03:38:24,061 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-04 03:38:24,063 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2025-01-04 03:38:24,063 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-04 03:38:24,063 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-04 03:38:24,063 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-04 03:38:24,076 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:38:24" (1/1) ... [2025-01-04 03:38:24,077 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:38:24" (1/1) ... [2025-01-04 03:38:24,082 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:38:24" (1/1) ... [2025-01-04 03:38:24,082 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:38:24" (1/1) ... [2025-01-04 03:38:24,085 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:38:24" (1/1) ... [2025-01-04 03:38:24,086 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:38:24" (1/1) ... [2025-01-04 03:38:24,089 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:38:24" (1/1) ... [2025-01-04 03:38:24,090 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:38:24" (1/1) ... [2025-01-04 03:38:24,090 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:38:24" (1/1) ... [2025-01-04 03:38:24,091 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-04 03:38:24,092 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-04 03:38:24,092 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-04 03:38:24,092 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-04 03:38:24,096 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:38:24" (1/1) ... [2025-01-04 03:38:24,103 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-04 03:38:24,111 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 [2025-01-04 03:38:24,120 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-01-04 03:38:24,126 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2025-01-04 03:38:24,143 INFO L124 BoogieDeclarations]: Specification and implementation of procedure source given in one single declaration [2025-01-04 03:38:24,144 INFO L130 BoogieDeclarations]: Found specification of procedure source [2025-01-04 03:38:24,144 INFO L138 BoogieDeclarations]: Found implementation of procedure source [2025-01-04 03:38:24,144 INFO L124 BoogieDeclarations]: Specification and implementation of procedure ULTIMATE.start given in one single declaration [2025-01-04 03:38:24,144 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-04 03:38:24,144 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-04 03:38:24,182 INFO L234 CfgBuilder]: Building ICFG [2025-01-04 03:38:24,183 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-04 03:38:24,185 WARN L773 $ProcedureCfgBuilder]: Label in the middle of a codeblock. [2025-01-04 03:38:24,245 WARN L773 $ProcedureCfgBuilder]: Label in the middle of a codeblock. [2025-01-04 03:38:24,257 INFO L? ?]: Removed 3 outVars from TransFormulas that were not future-live. [2025-01-04 03:38:24,257 INFO L283 CfgBuilder]: Performing block encoding [2025-01-04 03:38:24,271 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-04 03:38:24,271 INFO L312 CfgBuilder]: Removed 2 assume(true) statements. [2025-01-04 03:38:24,271 INFO L201 PluginConnector]: Adding new model line-queue.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 04.01 03:38:24 BoogieIcfgContainer [2025-01-04 03:38:24,271 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-04 03:38:24,272 INFO L112 PluginConnector]: ------------------------IcfgToChc---------------------------- [2025-01-04 03:38:24,272 INFO L270 PluginConnector]: Initializing IcfgToChc... [2025-01-04 03:38:24,272 INFO L274 PluginConnector]: IcfgToChc initialized [2025-01-04 03:38:24,273 INFO L184 PluginConnector]: Executing the observer IcfgToChcObserver from plugin IcfgToChc for "line-queue.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 04.01 03:38:24" (1/1) ... [2025-01-04 03:38:24,340 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;' is: true [2025-01-04 03:38:24,350 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:24,356 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:24,360 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;prev := value;' is: true [2025-01-04 03:38:24,367 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:24,395 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:24,400 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'prev := -1;' is: true [2025-01-04 03:38:24,401 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume !true;' is: true [2025-01-04 03:38:24,411 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:24,431 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:24,435 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'read_ptr := 0;' is: true [2025-01-04 03:38:24,445 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'assume true;' is: true [2025-01-04 03:38:24,462 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:24,472 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:24,483 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'assume true;prev := value;' is: true [2025-01-04 03:38:24,502 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:24,517 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:24,528 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'prev := -1;' is: true [2025-01-04 03:38:24,529 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'assume !true;' is: true [2025-01-04 03:38:24,539 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:24,555 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:24,563 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'read_ptr := 0;' is: true [2025-01-04 03:38:24,566 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume true;' is: true [2025-01-04 03:38:24,567 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:24,568 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:24,569 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume true;prev := value;' is: true [2025-01-04 03:38:24,570 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:24,571 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:24,573 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'prev := -1;' is: true [2025-01-04 03:38:24,574 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume !true;' is: true [2025-01-04 03:38:24,575 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:24,576 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:24,577 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'read_ptr := 0;' is: true [2025-01-04 03:38:24,583 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'assume true;' is: true [2025-01-04 03:38:24,609 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: (let ((.cse0 (select queue 0))) (= (store queue 0 (store .cse0 (select (store write_ptr ULTIMATE.start_~~right~~id (+ (select write_ptr ULTIMATE.start_~~right~~id) 1)) 0) source_~~left~~idx)) (store queue 0 (store .cse0 (select write_ptr 0) source_~~left~~idx)))) [2025-01-04 03:38:24,622 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: (let ((.cse2 (select write_ptr ULTIMATE.start_~~right~~id)) (.cse1 (select write_ptr 0))) (= (let ((.cse0 (store queue ULTIMATE.start_~~right~~id (store (select queue ULTIMATE.start_~~right~~id) .cse2 ULTIMATE.start_~~right~~value)))) (store .cse0 0 (store (select .cse0 0) .cse1 source_~~left~~idx))) (let ((.cse3 (store queue 0 (store (select queue 0) .cse1 source_~~left~~idx)))) (store .cse3 ULTIMATE.start_~~right~~id (store (select .cse3 ULTIMATE.start_~~right~~id) .cse2 ULTIMATE.start_~~right~~value))))) [2025-01-04 03:38:24,635 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'assume true;prev := value;' is: true [2025-01-04 03:38:24,648 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:24,664 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'value := queue[id - 1][read_ptr];' is: (let ((.cse0 (+ (- 1) ULTIMATE.start_~~right~~id))) (= (select (select queue .cse0) ULTIMATE.start_~~right~~read_ptr) (select (select (store queue 0 (store (select queue 0) (select write_ptr 0) source_~~left~~idx)) .cse0) ULTIMATE.start_~~right~~read_ptr))) [2025-01-04 03:38:24,693 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'prev := -1;' is: true [2025-01-04 03:38:24,694 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'assume !true;' is: true [2025-01-04 03:38:24,705 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:24,724 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:24,735 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'read_ptr := 0;' is: true [2025-01-04 03:38:24,738 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-04 03:38:24,741 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:24,744 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:24,748 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;prev := value;' is: true [2025-01-04 03:38:24,754 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:24,758 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:24,761 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'prev := -1;' is: true [2025-01-04 03:38:24,762 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume !true;' is: true [2025-01-04 03:38:24,768 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:24,779 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:24,781 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'read_ptr := 0;' is: true [2025-01-04 03:38:24,788 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'assume true;' is: true [2025-01-04 03:38:24,796 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: (= (let ((.cse0 (store write_ptr 0 (+ (select write_ptr 0) 1)))) (store .cse0 ULTIMATE.start_~~right~~id (+ (select .cse0 ULTIMATE.start_~~right~~id) 1))) (let ((.cse1 (store write_ptr ULTIMATE.start_~~right~~id (+ (select write_ptr ULTIMATE.start_~~right~~id) 1)))) (store .cse1 0 (+ (select .cse1 0) 1)))) [2025-01-04 03:38:24,809 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: (let ((.cse0 (select queue ULTIMATE.start_~~right~~id))) (= (store queue ULTIMATE.start_~~right~~id (store .cse0 (select (store write_ptr 0 (+ (select write_ptr 0) 1)) ULTIMATE.start_~~right~~id) ULTIMATE.start_~~right~~value)) (store queue ULTIMATE.start_~~right~~id (store .cse0 (select write_ptr ULTIMATE.start_~~right~~id) ULTIMATE.start_~~right~~value)))) [2025-01-04 03:38:24,818 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'assume true;prev := value;' is: true [2025-01-04 03:38:24,830 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:24,842 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:24,851 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'prev := -1;' is: true [2025-01-04 03:38:24,853 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'assume !true;' is: true [2025-01-04 03:38:24,863 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'assume read_ptr < write_ptr[id - 1];' is: (not (let ((.cse0 (+ (- 1) ULTIMATE.start_~~right~~id))) (and (<= (+ ULTIMATE.start_~~right~~read_ptr 1) (select (store write_ptr 0 (+ (select write_ptr 0) 1)) .cse0)) (<= (select write_ptr .cse0) ULTIMATE.start_~~right~~read_ptr)))) [2025-01-04 03:38:24,878 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:24,885 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'read_ptr := 0;' is: true [2025-01-04 03:38:24,891 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume true;' is: true [2025-01-04 03:38:24,899 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:24,907 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:24,915 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume true;prev := value;' is: true [2025-01-04 03:38:24,923 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:24,931 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:24,940 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'prev := -1;' is: true [2025-01-04 03:38:24,940 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume !true;' is: true [2025-01-04 03:38:24,948 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:24,962 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:24,971 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'read_ptr := 0;' is: true [2025-01-04 03:38:24,974 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;' is: true [2025-01-04 03:38:24,979 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:24,982 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:24,988 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;prev := value;' is: true [2025-01-04 03:38:24,993 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:24,996 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:25,001 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'prev := -1;' is: true [2025-01-04 03:38:25,002 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume !true;' is: true [2025-01-04 03:38:25,007 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:25,014 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:25,016 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'read_ptr := 0;' is: true [2025-01-04 03:38:25,018 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume !true;' is: true [2025-01-04 03:38:25,022 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-04 03:38:25,023 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;' is: true [2025-01-04 03:38:25,027 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'idx := 0;' is: true [2025-01-04 03:38:25,030 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'idx := idx + 1;' is: true [2025-01-04 03:38:25,033 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-04 03:38:25,063 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'assume true;' is: true [2025-01-04 03:38:25,075 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:25,087 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:25,100 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'assume true;prev := value;' is: true [2025-01-04 03:38:25,111 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:25,122 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:25,131 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'prev := -1;' is: true [2025-01-04 03:38:25,133 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'assume !true;' is: true [2025-01-04 03:38:25,143 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:25,155 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'id := ctr;ctr := ctr + 1;' is: false [2025-01-04 03:38:25,167 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'read_ptr := 0;' is: true [2025-01-04 03:38:25,169 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'assume !true;' is: true [2025-01-04 03:38:25,180 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-04 03:38:25,186 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'assume true;' is: true [2025-01-04 03:38:25,196 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'idx := 0;' is: true [2025-01-04 03:38:25,208 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'idx := idx + 1;' is: true [2025-01-04 03:38:25,219 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-04 03:38:25,237 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'assume true;' is: true [2025-01-04 03:38:25,244 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:25,250 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:25,256 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'assume true;prev := value;' is: true [2025-01-04 03:38:25,264 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:25,271 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:25,277 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'prev := -1;' is: true [2025-01-04 03:38:25,278 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'assume !true;' is: true [2025-01-04 03:38:25,285 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:25,295 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:25,302 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'read_ptr := 0;' is: true [2025-01-04 03:38:25,303 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'assume !true;' is: true [2025-01-04 03:38:25,309 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-04 03:38:25,311 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'assume true;' is: true [2025-01-04 03:38:25,317 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'idx := 0;' is: true [2025-01-04 03:38:25,329 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'idx := idx + 1;' is: true [2025-01-04 03:38:25,339 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-04 03:38:25,356 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'assume true;' is: true [2025-01-04 03:38:25,378 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:25,386 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:25,392 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'assume true;prev := value;' is: true [2025-01-04 03:38:25,397 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:25,403 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:25,408 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'prev := -1;' is: true [2025-01-04 03:38:25,409 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'assume !true;' is: true [2025-01-04 03:38:25,415 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:25,423 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:25,428 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'read_ptr := 0;' is: true [2025-01-04 03:38:25,429 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'assume !true;' is: true [2025-01-04 03:38:25,434 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-04 03:38:25,436 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'assume true;' is: true [2025-01-04 03:38:25,440 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'idx := 0;' is: true [2025-01-04 03:38:25,446 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'idx := idx + 1;' is: true [2025-01-04 03:38:25,451 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-04 03:38:25,458 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume true;' is: true [2025-01-04 03:38:25,459 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:25,460 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:25,461 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume true;prev := value;' is: true [2025-01-04 03:38:25,461 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:25,462 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:25,463 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'prev := -1;' is: true [2025-01-04 03:38:25,463 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume !true;' is: true [2025-01-04 03:38:25,464 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:25,465 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:25,466 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'read_ptr := 0;' is: true [2025-01-04 03:38:25,467 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume !true;' is: true [2025-01-04 03:38:25,467 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-04 03:38:25,468 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume true;' is: true [2025-01-04 03:38:25,469 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'idx := 0;' is: true [2025-01-04 03:38:25,470 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'idx := idx + 1;' is: true [2025-01-04 03:38:25,470 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-04 03:38:25,481 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'assume true;' is: true [2025-01-04 03:38:25,490 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: (not (let ((.cse0 (+ (- 1) ULTIMATE.start_~~left~~id))) (and (<= (+ ULTIMATE.start_~~left~~read_ptr 1) (select write_ptr .cse0)) (<= (select (store write_ptr ULTIMATE.start_~~right~~id (+ (select write_ptr ULTIMATE.start_~~right~~id) 1)) .cse0) ULTIMATE.start_~~left~~read_ptr)))) [2025-01-04 03:38:25,496 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:25,502 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'assume true;prev := value;' is: true [2025-01-04 03:38:25,510 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:25,517 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:25,524 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'prev := -1;' is: true [2025-01-04 03:38:25,524 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'assume !true;' is: true [2025-01-04 03:38:25,531 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:25,539 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:25,544 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'read_ptr := 0;' is: true [2025-01-04 03:38:25,545 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'assume !true;' is: true [2025-01-04 03:38:25,551 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-04 03:38:25,554 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'assume true;' is: true [2025-01-04 03:38:25,559 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'idx := 0;' is: true [2025-01-04 03:38:25,565 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'idx := idx + 1;' is: true [2025-01-04 03:38:25,573 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: (not (let ((.cse0 (+ (- 1) ULTIMATE.start_~~left~~id))) (and (<= (select (store write_ptr 0 (+ (select write_ptr 0) 1)) .cse0) ULTIMATE.start_~~left~~read_ptr) (<= (+ ULTIMATE.start_~~left~~read_ptr 1) (select write_ptr .cse0))))) [2025-01-04 03:38:25,582 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-04 03:38:25,586 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:25,589 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:25,591 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;prev := value;' is: true [2025-01-04 03:38:25,594 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:25,597 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:25,599 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'prev := -1;' is: true [2025-01-04 03:38:25,600 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume !true;' is: true [2025-01-04 03:38:25,603 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:25,609 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:25,612 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'read_ptr := 0;' is: true [2025-01-04 03:38:25,613 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume !true;' is: true [2025-01-04 03:38:25,617 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-04 03:38:25,619 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-04 03:38:25,625 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := 0;' is: true [2025-01-04 03:38:25,627 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := idx + 1;' is: true [2025-01-04 03:38:25,630 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-04 03:38:25,638 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'assume true;' is: true [2025-01-04 03:38:25,643 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:25,652 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: (let ((.cse0 (+ (- 1) ULTIMATE.start_~~left~~id))) (= (select (select queue .cse0) ULTIMATE.start_~~left~~read_ptr) (select (select (store queue ULTIMATE.start_~~right~~id (store (select queue ULTIMATE.start_~~right~~id) (select write_ptr ULTIMATE.start_~~right~~id) ULTIMATE.start_~~right~~value)) .cse0) ULTIMATE.start_~~left~~read_ptr))) [2025-01-04 03:38:25,657 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'assume true;prev := value;' is: true [2025-01-04 03:38:25,664 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:25,671 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:25,676 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'prev := -1;' is: true [2025-01-04 03:38:25,677 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'assume !true;' is: true [2025-01-04 03:38:25,682 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:25,690 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:25,694 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'read_ptr := 0;' is: true [2025-01-04 03:38:25,695 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'assume !true;' is: true [2025-01-04 03:38:25,702 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: (let ((.cse0 (+ (- 1) ULTIMATE.start_~~left~~id))) (= (select (select queue .cse0) ULTIMATE.start_~~left~~read_ptr) (select (select (store queue 0 (store (select queue 0) (select write_ptr 0) source_~~right~~idx)) .cse0) ULTIMATE.start_~~left~~read_ptr))) [2025-01-04 03:38:25,705 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'assume true;' is: true [2025-01-04 03:38:25,709 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'idx := 0;' is: true [2025-01-04 03:38:25,716 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'idx := idx + 1;' is: true [2025-01-04 03:38:25,723 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-04 03:38:25,732 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'assume true;' is: true [2025-01-04 03:38:25,738 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:25,743 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:25,749 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'assume true;prev := value;' is: true [2025-01-04 03:38:25,758 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:25,765 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:25,771 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'prev := -1;' is: true [2025-01-04 03:38:25,771 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'assume !true;' is: true [2025-01-04 03:38:25,778 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:25,787 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:25,792 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'read_ptr := 0;' is: true [2025-01-04 03:38:25,793 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'assume !true;' is: true [2025-01-04 03:38:25,799 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-04 03:38:25,801 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'assume true;' is: true [2025-01-04 03:38:25,807 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'idx := 0;' is: true [2025-01-04 03:38:25,812 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'idx := idx + 1;' is: true [2025-01-04 03:38:25,817 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-04 03:38:25,829 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'assume true;' is: true [2025-01-04 03:38:25,835 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-04 03:38:25,841 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-04 03:38:25,846 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'assume true;prev := value;' is: true [2025-01-04 03:38:25,851 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:25,856 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:25,862 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'prev := -1;' is: true [2025-01-04 03:38:25,862 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'assume !true;' is: true [2025-01-04 03:38:25,867 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:25,876 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:25,880 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'read_ptr := 0;' is: true [2025-01-04 03:38:25,881 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'assume !true;' is: true [2025-01-04 03:38:25,885 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-04 03:38:25,887 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'assume true;' is: true [2025-01-04 03:38:25,891 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'idx := 0;' is: true [2025-01-04 03:38:25,896 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'idx := idx + 1;' is: true [2025-01-04 03:38:25,901 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-04 03:38:25,934 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'assume true;' is: true [2025-01-04 03:38:25,941 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: (let ((.cse0 (select queue ULTIMATE.start_~~left~~id))) (= (store queue ULTIMATE.start_~~left~~id (store .cse0 (select (store write_ptr ULTIMATE.start_~~right~~id (+ (select write_ptr ULTIMATE.start_~~right~~id) 1)) ULTIMATE.start_~~left~~id) ULTIMATE.start_~~left~~value)) (store queue ULTIMATE.start_~~left~~id (store .cse0 (select write_ptr ULTIMATE.start_~~left~~id) ULTIMATE.start_~~left~~value)))) [2025-01-04 03:38:25,947 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: (let ((.cse2 (select write_ptr ULTIMATE.start_~~left~~id)) (.cse1 (select write_ptr ULTIMATE.start_~~right~~id))) (= (let ((.cse0 (store queue ULTIMATE.start_~~left~~id (store (select queue ULTIMATE.start_~~left~~id) .cse2 ULTIMATE.start_~~left~~value)))) (store .cse0 ULTIMATE.start_~~right~~id (store (select .cse0 ULTIMATE.start_~~right~~id) .cse1 ULTIMATE.start_~~right~~value))) (let ((.cse3 (store queue ULTIMATE.start_~~right~~id (store (select queue ULTIMATE.start_~~right~~id) .cse1 ULTIMATE.start_~~right~~value)))) (store .cse3 ULTIMATE.start_~~left~~id (store (select .cse3 ULTIMATE.start_~~left~~id) .cse2 ULTIMATE.start_~~left~~value))))) [2025-01-04 03:38:25,952 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'assume true;prev := value;' is: true [2025-01-04 03:38:25,960 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:25,969 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'value := queue[id - 1][read_ptr];' is: (let ((.cse0 (+ (- 1) ULTIMATE.start_~~right~~id))) (= (select (select (store queue ULTIMATE.start_~~left~~id (store (select queue ULTIMATE.start_~~left~~id) (select write_ptr ULTIMATE.start_~~left~~id) ULTIMATE.start_~~left~~value)) .cse0) ULTIMATE.start_~~right~~read_ptr) (select (select queue .cse0) ULTIMATE.start_~~right~~read_ptr))) [2025-01-04 03:38:25,975 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'prev := -1;' is: true [2025-01-04 03:38:25,976 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'assume !true;' is: true [2025-01-04 03:38:25,983 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-04 03:38:25,996 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:26,001 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'read_ptr := 0;' is: true [2025-01-04 03:38:26,002 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'assume !true;' is: true [2025-01-04 03:38:26,007 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: (let ((.cse2 (select write_ptr 0)) (.cse1 (select write_ptr ULTIMATE.start_~~left~~id))) (= (let ((.cse0 (store queue 0 (store (select queue 0) .cse2 source_~~right~~idx)))) (store .cse0 ULTIMATE.start_~~left~~id (store (select .cse0 ULTIMATE.start_~~left~~id) .cse1 ULTIMATE.start_~~left~~value))) (let ((.cse3 (store queue ULTIMATE.start_~~left~~id (store (select queue ULTIMATE.start_~~left~~id) .cse1 ULTIMATE.start_~~left~~value)))) (store .cse3 0 (store (select .cse3 0) .cse2 source_~~right~~idx))))) [2025-01-04 03:38:26,010 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'assume true;' is: true [2025-01-04 03:38:26,014 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'idx := 0;' is: true [2025-01-04 03:38:26,019 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'idx := idx + 1;' is: true [2025-01-04 03:38:26,025 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: (let ((.cse0 (select queue ULTIMATE.start_~~left~~id))) (= (store queue ULTIMATE.start_~~left~~id (store .cse0 (select (store write_ptr 0 (+ (select write_ptr 0) 1)) ULTIMATE.start_~~left~~id) ULTIMATE.start_~~left~~value)) (store queue ULTIMATE.start_~~left~~id (store .cse0 (select write_ptr ULTIMATE.start_~~left~~id) ULTIMATE.start_~~left~~value)))) [2025-01-04 03:38:26,034 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'assume true;' is: true [2025-01-04 03:38:26,039 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: (= (let ((.cse0 (store write_ptr ULTIMATE.start_~~right~~id (+ (select write_ptr ULTIMATE.start_~~right~~id) 1)))) (store .cse0 ULTIMATE.start_~~left~~id (+ (select .cse0 ULTIMATE.start_~~left~~id) 1))) (let ((.cse1 (store write_ptr ULTIMATE.start_~~left~~id (+ (select write_ptr ULTIMATE.start_~~left~~id) 1)))) (store .cse1 ULTIMATE.start_~~right~~id (+ (select .cse1 ULTIMATE.start_~~right~~id) 1)))) [2025-01-04 03:38:26,047 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: (let ((.cse0 (select queue ULTIMATE.start_~~right~~id))) (= (store queue ULTIMATE.start_~~right~~id (store .cse0 (select (store write_ptr ULTIMATE.start_~~left~~id (+ (select write_ptr ULTIMATE.start_~~left~~id) 1)) ULTIMATE.start_~~right~~id) ULTIMATE.start_~~right~~value)) (store queue ULTIMATE.start_~~right~~id (store .cse0 (select write_ptr ULTIMATE.start_~~right~~id) ULTIMATE.start_~~right~~value)))) [2025-01-04 03:38:26,052 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'assume true;prev := value;' is: true [2025-01-04 03:38:26,057 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'read_ptr := read_ptr + 1;' is: true [2025-01-04 03:38:26,063 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-04 03:38:26,071 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'prev := -1;' is: true [2025-01-04 03:38:26,072 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'assume !true;' is: true [2025-01-04 03:38:26,083 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'assume read_ptr < write_ptr[id - 1];' is: (not (let ((.cse0 (+ (- 1) ULTIMATE.start_~~right~~id))) (and (<= (select write_ptr .cse0) ULTIMATE.start_~~right~~read_ptr) (<= (+ ULTIMATE.start_~~right~~read_ptr 1) (select (store write_ptr ULTIMATE.start_~~left~~id (+ (select write_ptr ULTIMATE.start_~~left~~id) 1)) .cse0))))) [2025-01-04 03:38:26,091 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-04 03:38:26,099 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'read_ptr := 0;' is: true [2025-01-04 03:38:26,102 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'assume !true;' is: true [2025-01-04 03:38:26,109 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: (let ((.cse0 (select queue 0))) (= (store queue 0 (store .cse0 (select write_ptr 0) source_~~right~~idx)) (store queue 0 (store .cse0 (select (store write_ptr ULTIMATE.start_~~left~~id (+ (select write_ptr ULTIMATE.start_~~left~~id) 1)) 0) source_~~right~~idx)))) [2025-01-04 03:38:26,111 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'assume true;' is: true [2025-01-04 03:38:26,116 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'idx := 0;' is: true [2025-01-04 03:38:26,122 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'idx := idx + 1;' is: true [2025-01-04 03:38:26,126 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: (= (let ((.cse0 (store write_ptr ULTIMATE.start_~~left~~id (+ (select write_ptr ULTIMATE.start_~~left~~id) 1)))) (store .cse0 0 (+ (select .cse0 0) 1))) (let ((.cse1 (store write_ptr 0 (+ (select write_ptr 0) 1)))) (store .cse1 ULTIMATE.start_~~left~~id (+ (select .cse1 ULTIMATE.start_~~left~~id) 1)))) [2025-01-04 03:38:26,195 INFO L201 PluginConnector]: Adding new model line-queue.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 04.01 03:38:26 HornClauseAST [2025-01-04 03:38:26,196 INFO L131 PluginConnector]: ------------------------ END IcfgToChc---------------------------- [2025-01-04 03:38:26,196 INFO L112 PluginConnector]: ------------------------ChcSmtPrinter---------------------------- [2025-01-04 03:38:26,196 INFO L270 PluginConnector]: Initializing ChcSmtPrinter... [2025-01-04 03:38:26,197 INFO L274 PluginConnector]: ChcSmtPrinter initialized [2025-01-04 03:38:26,198 INFO L184 PluginConnector]: Executing the observer ChcSmtPrinterObserver from plugin ChcSmtPrinter for "line-queue.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 04.01 03:38:26" (1/1) ... [2025-01-04 03:38:26,199 INFO L192 hcSmtPrinterObserver]: Writing to file /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/line-queue/CHC_line-queue.bpl_UID6296976855394902338.smt2 [2025-01-04 03:38:26,266 INFO L131 PluginConnector]: ------------------------ END ChcSmtPrinter---------------------------- [2025-01-04 03:38:26,266 INFO L112 PluginConnector]: ------------------------ChcSolver---------------------------- [2025-01-04 03:38:26,266 INFO L270 PluginConnector]: Initializing ChcSolver... [2025-01-04 03:38:26,266 INFO L274 PluginConnector]: ChcSolver initialized [2025-01-04 03:38:26,268 INFO L184 PluginConnector]: Executing the observer ChcSolverObserver from plugin ChcSolver for "line-queue.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 04.01 03:38:26" (1/1) ... [2025-01-04 03:38:26,269 INFO L99 EldaricaCliChcScript]: Writing script to file /tmp/eldarica_9298231574483714865.smt2 [2025-01-04 03:38:26,306 ERROR L181 MonitoredProcess]: Could not determine absolute path of external process, hoping that OS will resolve eld [2025-01-04 03:38:26,306 INFO L189 MonitoredProcess]: No working directory specified, using eld [2025-01-04 03:38:26,310 INFO L229 MonitoredProcess]: Starting monitored process 2 with eld -disj /tmp/eldarica_9298231574483714865.smt2 (exit command is null, workingDir is null) [2025-01-04 03:38:26,316 INFO L327 MonitoredProcess]: [MP eld -disj /tmp/eldarica_9298231574483714865.smt2 (2)] Waiting until timeout for monitored process [2025-01-04 03:43:10,763 FATAL L? ?]: An unrecoverable error occured during an interaction with an SMT solver: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: Internal exception: java.lang.ClassCastException: class ap.proof.ModelSearchProver$UnsatResult$ cannot be cast to class ap.proof.ModelSearchProver$ModelResult (ap.proof.ModelSearchProver$UnsatResult$ and ap.proof.ModelSearchProver$ModelResult are in unnamed module of loader 'app') at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1511) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser.do_action(Parser.java:701) at com.github.jhoenicke.javacup.runtime.LRParser.parse(LRParser.java:383) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:268) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parseCheckSatResult(Executor.java:291) at de.uni_freiburg.informatik.ultimate.lib.chc.EldaricaCliChcScript.solve(EldaricaCliChcScript.java:122) at de.uni_freiburg.informatik.ultimate.lib.chc.EldaricaCliChcScript.solve(EldaricaCliChcScript.java:90) at de.uni_freiburg.informatik.ultimate.plugins.chcsolver.ChcSolverObserver.process(ChcSolverObserver.java:88) at de.uni_freiburg.informatik.ultimate.core.coreplugin.modelwalker.DFSTreeWalker.runObserver(DFSTreeWalker.java:65) at de.uni_freiburg.informatik.ultimate.core.coreplugin.modelwalker.BaseWalker.runObserver(BaseWalker.java:93) at de.uni_freiburg.informatik.ultimate.core.coreplugin.modelwalker.BaseWalker.run(BaseWalker.java:86) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:166) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:150) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:127) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:233) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:227) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:144) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:106) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:319) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2025-01-04 03:43:10,774 INFO L158 Benchmark]: Toolchain (without parser) took 286710.41ms. Allocated memory was 167.8MB in the beginning and 218.1MB in the end (delta: 50.3MB). Free memory was 147.4MB in the beginning and 118.3MB in the end (delta: 29.1MB). Peak memory consumption was 69.3MB. Max. memory is 22.0GB. [2025-01-04 03:43:10,774 INFO L158 Benchmark]: Boogie PL CUP Parser took 0.18ms. Allocated memory is still 167.8MB. Free memory is still 148.4MB. There was no memory consumed. Max. memory is 22.0GB. [2025-01-04 03:43:10,774 INFO L158 Benchmark]: Boogie Preprocessor took 28.19ms. Allocated memory is still 167.8MB. Free memory was 147.4MB in the beginning and 145.8MB in the end (delta: 1.5MB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-04 03:43:10,774 INFO L158 Benchmark]: RCFGBuilder took 179.65ms. Allocated memory is still 167.8MB. Free memory was 145.8MB in the beginning and 137.1MB in the end (delta: 8.7MB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-04 03:43:10,775 INFO L158 Benchmark]: IcfgToChc took 1923.58ms. Allocated memory was 167.8MB in the beginning and 218.1MB in the end (delta: 50.3MB). Free memory was 137.1MB in the beginning and 145.4MB in the end (delta: -8.3MB). Peak memory consumption was 86.8MB. Max. memory is 22.0GB. [2025-01-04 03:43:10,775 INFO L158 Benchmark]: ChcSmtPrinter took 69.42ms. Allocated memory is still 218.1MB. Free memory was 145.4MB in the beginning and 130.0MB in the end (delta: 15.4MB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-04 03:43:10,775 INFO L158 Benchmark]: ChcSolver took 284505.91ms. Allocated memory is still 218.1MB. Free memory was 130.0MB in the beginning and 118.3MB in the end (delta: 11.7MB). Peak memory consumption was 16.8MB. Max. memory is 22.0GB. [2025-01-04 03:43:10,777 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.18ms. Allocated memory is still 167.8MB. Free memory is still 148.4MB. There was no memory consumed. Max. memory is 22.0GB. * Boogie Preprocessor took 28.19ms. Allocated memory is still 167.8MB. Free memory was 147.4MB in the beginning and 145.8MB in the end (delta: 1.5MB). There was no memory consumed. Max. memory is 22.0GB. * RCFGBuilder took 179.65ms. Allocated memory is still 167.8MB. Free memory was 145.8MB in the beginning and 137.1MB in the end (delta: 8.7MB). There was no memory consumed. Max. memory is 22.0GB. * IcfgToChc took 1923.58ms. Allocated memory was 167.8MB in the beginning and 218.1MB in the end (delta: 50.3MB). Free memory was 137.1MB in the beginning and 145.4MB in the end (delta: -8.3MB). Peak memory consumption was 86.8MB. Max. memory is 22.0GB. * ChcSmtPrinter took 69.42ms. Allocated memory is still 218.1MB. Free memory was 145.4MB in the beginning and 130.0MB in the end (delta: 15.4MB). There was no memory consumed. Max. memory is 22.0GB. * ChcSolver took 284505.91ms. Allocated memory is still 218.1MB. Free memory was 130.0MB in the beginning and 118.3MB in the end (delta: 11.7MB). Peak memory consumption was 16.8MB. Max. memory is 22.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.chcsolver: - ExceptionOrErrorResult: SMTLIBException: Internal exception: java.lang.ClassCastException: class ap.proof.ModelSearchProver$UnsatResult$ cannot be cast to class ap.proof.ModelSearchProver$ModelResult (ap.proof.ModelSearchProver$UnsatResult$ and ap.proof.ModelSearchProver$ModelResult are in unnamed module of loader 'app') de.uni_freiburg.informatik.ultimate.plugins.chcsolver: SMTLIBException: Internal exception: java.lang.ClassCastException: class ap.proof.ModelSearchProver$UnsatResult$ cannot be cast to class ap.proof.ModelSearchProver$ModelResult (ap.proof.ModelSearchProver$UnsatResult$ and ap.proof.ModelSearchProver$ModelResult are in unnamed module of loader 'app'): de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1511) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2025-01-04 03:43:10,785 WARN L435 MonitoredProcess]: [MP eld -disj /tmp/eldarica_9298231574483714865.smt2 (2)] Forcibly destroying the process [2025-01-04 03:43:10,985 FATAL L548 MonitoredProcess]: [MP eld -disj /tmp/eldarica_9298231574483714865.smt2 (2)] Could not destroy process within 200 ms, abandoning it [2025-01-04 03:43:10,996 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...