/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.use.nondeterministic.sleep.update.encoding true --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-03 23:49:41,615 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-03 23:49:41,716 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-03 23:49:41,729 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-03 23:49:41,730 INFO L151 SettingsManager]: Preferences of ChcSolver differ from their defaults: [2025-01-03 23:49:41,730 INFO L153 SettingsManager]: * Produce CHC model if query is SAT=false [2025-01-03 23:49:41,730 INFO L153 SettingsManager]: * CHC solver backend=Z3 [2025-01-03 23:49:41,731 INFO L153 SettingsManager]: * Produce derivation if query is UNSAT=false [2025-01-03 23:49:41,732 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-03 23:49:41,732 INFO L153 SettingsManager]: * Size of a code block=OneNontrivialStatement [2025-01-03 23:49:41,733 INFO L153 SettingsManager]: * Add additional assume for each assert=false [2025-01-03 23:49:41,733 INFO L151 SettingsManager]: Preferences of IcfgToChc differ from their defaults: [2025-01-03 23:49:41,734 INFO L153 SettingsManager]: * Conditional Independence=SUFFICIENT [2025-01-03 23:49:41,734 INFO L151 SettingsManager]: Preferences of ChcSmtPrinter differ from their defaults: [2025-01-03 23:49:41,734 INFO L153 SettingsManager]: * Save file in source directory=true [2025-01-03 23:49:41,734 INFO L153 SettingsManager]: * Use automatic naming=true [2025-01-03 23:49:41,734 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: Use nondeterministic sleep update encoding -> true Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Conditional Independence -> NECESSARY_AND_SUFFICIENT [2025-01-03 23:49:42,012 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-03 23:49:42,019 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-03 23:49:42,020 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-03 23:49:42,021 INFO L270 PluginConnector]: Initializing Boogie PL CUP Parser... [2025-01-03 23:49:42,026 INFO L274 PluginConnector]: Boogie PL CUP Parser initialized [2025-01-03 23:49:42,027 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-03 23:49:42,027 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/line-queue/line-queue.bpl' [2025-01-03 23:49:42,048 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-03 23:49:42,049 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2025-01-03 23:49:42,050 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-03 23:49:42,050 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-03 23:49:42,050 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-03 23:49:42,062 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 11:49:42" (1/1) ... [2025-01-03 23:49:42,063 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 11:49:42" (1/1) ... [2025-01-03 23:49:42,067 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 11:49:42" (1/1) ... [2025-01-03 23:49:42,068 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 11:49:42" (1/1) ... [2025-01-03 23:49:42,070 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 11:49:42" (1/1) ... [2025-01-03 23:49:42,070 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 11:49:42" (1/1) ... [2025-01-03 23:49:42,072 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 11:49:42" (1/1) ... [2025-01-03 23:49:42,072 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 11:49:42" (1/1) ... [2025-01-03 23:49:42,073 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 11:49:42" (1/1) ... [2025-01-03 23:49:42,074 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-03 23:49:42,075 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-03 23:49:42,075 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-03 23:49:42,075 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-03 23:49:42,075 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "line-queue.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 11:49:42" (1/1) ... [2025-01-03 23:49:42,080 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-03 23:49:42,087 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 [2025-01-03 23:49:42,100 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-03 23:49:42,108 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-03 23:49:42,133 INFO L124 BoogieDeclarations]: Specification and implementation of procedure source given in one single declaration [2025-01-03 23:49:42,134 INFO L130 BoogieDeclarations]: Found specification of procedure source [2025-01-03 23:49:42,134 INFO L138 BoogieDeclarations]: Found implementation of procedure source [2025-01-03 23:49:42,134 INFO L124 BoogieDeclarations]: Specification and implementation of procedure ULTIMATE.start given in one single declaration [2025-01-03 23:49:42,134 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-03 23:49:42,134 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-03 23:49:42,179 INFO L234 CfgBuilder]: Building ICFG [2025-01-03 23:49:42,181 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-03 23:49:42,184 WARN L773 $ProcedureCfgBuilder]: Label in the middle of a codeblock. [2025-01-03 23:49:42,253 WARN L773 $ProcedureCfgBuilder]: Label in the middle of a codeblock. [2025-01-03 23:49:42,265 INFO L? ?]: Removed 3 outVars from TransFormulas that were not future-live. [2025-01-03 23:49:42,265 INFO L283 CfgBuilder]: Performing block encoding [2025-01-03 23:49:42,280 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-03 23:49:42,280 INFO L312 CfgBuilder]: Removed 2 assume(true) statements. [2025-01-03 23:49:42,280 INFO L201 PluginConnector]: Adding new model line-queue.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 03.01 11:49:42 BoogieIcfgContainer [2025-01-03 23:49:42,280 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-03 23:49:42,281 INFO L112 PluginConnector]: ------------------------IcfgToChc---------------------------- [2025-01-03 23:49:42,281 INFO L270 PluginConnector]: Initializing IcfgToChc... [2025-01-03 23:49:42,281 INFO L274 PluginConnector]: IcfgToChc initialized [2025-01-03 23:49:42,282 INFO L184 PluginConnector]: Executing the observer IcfgToChcObserver from plugin IcfgToChc for "line-queue.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 03.01 11:49:42" (1/1) ... [2025-01-03 23:49:42,361 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;' is: true [2025-01-03 23:49:42,371 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-03 23:49:42,380 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-03 23:49:42,384 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;prev := value;' is: true [2025-01-03 23:49:42,390 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:42,395 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:42,399 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'prev := -1;' is: true [2025-01-03 23:49:42,400 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume !true;' is: true [2025-01-03 23:49:42,410 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:42,427 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:42,431 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'read_ptr := 0;' is: true [2025-01-03 23:49:42,433 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume !true;' is: true [2025-01-03 23:49:42,437 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-03 23:49:42,438 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;' is: true [2025-01-03 23:49:42,442 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'idx := 0;' is: true [2025-01-03 23:49:42,447 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'idx := idx + 1;' is: true [2025-01-03 23:49:42,453 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-03 23:49:42,502 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'assume true;' is: true [2025-01-03 23:49:42,526 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-03 23:49:42,548 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-03 23:49:42,565 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'assume true;prev := value;' is: true [2025-01-03 23:49:42,587 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:42,626 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:42,644 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'prev := -1;' is: true [2025-01-03 23:49:42,646 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'assume !true;' is: true [2025-01-03 23:49:42,661 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:42,686 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'id := ctr;ctr := ctr + 1;' is: false [2025-01-03 23:49:42,700 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'read_ptr := 0;' is: true [2025-01-03 23:49:42,702 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'assume !true;' is: true [2025-01-03 23:49:42,715 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-03 23:49:42,722 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'assume true;' is: true [2025-01-03 23:49:42,732 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'idx := 0;' is: true [2025-01-03 23:49:42,743 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := ctr;ctr := ctr + 1;' and 'idx := idx + 1;' is: true [2025-01-03 23:49:42,754 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-03 23:49:42,773 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'assume true;' is: true [2025-01-03 23:49:42,781 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-03 23:49:42,789 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-03 23:49:42,799 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'assume true;prev := value;' is: true [2025-01-03 23:49:42,808 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:42,819 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:42,826 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'prev := -1;' is: true [2025-01-03 23:49:42,828 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'assume !true;' is: true [2025-01-03 23:49:42,837 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:42,847 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:42,854 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'read_ptr := 0;' is: true [2025-01-03 23:49:42,856 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'assume !true;' is: true [2025-01-03 23:49:42,862 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-03 23:49:42,865 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'assume true;' is: true [2025-01-03 23:49:42,871 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'idx := 0;' is: true [2025-01-03 23:49:42,877 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'idx := idx + 1;' is: true [2025-01-03 23:49:42,883 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := 0;' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-03 23:49:42,896 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'assume true;' is: true [2025-01-03 23:49:42,906 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-03 23:49:42,915 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-03 23:49:42,923 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'assume true;prev := value;' is: true [2025-01-03 23:49:42,931 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:42,940 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:42,948 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'prev := -1;' is: true [2025-01-03 23:49:42,949 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'assume !true;' is: true [2025-01-03 23:49:42,963 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:42,974 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:42,981 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'read_ptr := 0;' is: true [2025-01-03 23:49:42,983 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'assume !true;' is: true [2025-01-03 23:49:42,993 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-03 23:49:42,996 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'assume true;' is: true [2025-01-03 23:49:43,002 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'idx := 0;' is: true [2025-01-03 23:49:43,009 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'idx := idx + 1;' is: true [2025-01-03 23:49:43,015 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := -1;' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-03 23:49:43,025 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume true;' is: true [2025-01-03 23:49:43,026 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-03 23:49:43,027 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-03 23:49:43,028 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume true;prev := value;' is: true [2025-01-03 23:49:43,029 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:43,030 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:43,031 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'prev := -1;' is: true [2025-01-03 23:49:43,031 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume !true;' is: true [2025-01-03 23:49:43,032 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:43,033 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:43,034 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,035 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume !true;' is: true [2025-01-03 23:49:43,036 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-03 23:49:43,038 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume true;' is: true [2025-01-03 23:49:43,039 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'idx := 0;' is: true [2025-01-03 23:49:43,040 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'idx := idx + 1;' is: true [2025-01-03 23:49:43,040 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-03 23:49:43,054 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'assume true;' is: true [2025-01-03 23:49:43,067 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-03 23:49:43,078 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-03 23:49:43,086 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'assume true;prev := value;' is: true [2025-01-03 23:49:43,093 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:43,102 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-03 23:49:43,109 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'prev := -1;' is: true [2025-01-03 23:49:43,110 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'assume !true;' is: true [2025-01-03 23:49:43,117 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-03 23:49:43,129 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:43,136 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,137 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'assume !true;' is: true [2025-01-03 23:49:43,144 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-03 23:49:43,147 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'assume true;' is: true [2025-01-03 23:49:43,154 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'idx := 0;' is: true [2025-01-03 23:49:43,161 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume read_ptr < write_ptr[id - 1];' and 'idx := idx + 1;' is: true [2025-01-03 23:49:43,171 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-03 23:49:43,181 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-03 23:49:43,184 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-03 23:49:43,187 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-03 23:49:43,189 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;prev := value;' is: true [2025-01-03 23:49:43,192 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:43,195 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:43,198 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'prev := -1;' is: true [2025-01-03 23:49:43,199 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume !true;' is: true [2025-01-03 23:49:43,201 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:43,207 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:43,210 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,211 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume !true;' is: true [2025-01-03 23:49:43,214 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' is: true [2025-01-03 23:49:43,214 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-03 23:49:43,218 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := 0;' is: true [2025-01-03 23:49:43,221 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := idx + 1;' is: true [2025-01-03 23:49:43,224 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' is: true [2025-01-03 23:49:43,247 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'assume true;' is: true [2025-01-03 23:49:43,254 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-03 23:49:43,262 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-03 23:49:43,270 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'assume true;prev := value;' is: true [2025-01-03 23:49:43,277 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:43,283 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:43,289 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'prev := -1;' is: true [2025-01-03 23:49:43,290 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'assume !true;' is: true [2025-01-03 23:49:43,300 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-03 23:49:43,314 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:43,320 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,321 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'assume !true;' is: true [2025-01-03 23:49:43,330 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-03 23:49:43,332 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'assume true;' is: true [2025-01-03 23:49:43,338 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'idx := 0;' is: true [2025-01-03 23:49:43,344 INFO L161 IndependenceChecker]: instantiated independence condition for 'value := queue[id - 1][read_ptr];' and 'idx := idx + 1;' is: true [2025-01-03 23:49:43,349 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-03 23:49:43,359 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'assume true;' is: true [2025-01-03 23:49:43,365 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-03 23:49:43,371 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-03 23:49:43,376 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'assume true;prev := value;' is: true [2025-01-03 23:49:43,382 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:43,388 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:43,394 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'prev := -1;' is: true [2025-01-03 23:49:43,394 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'assume !true;' is: true [2025-01-03 23:49:43,401 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:43,408 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:43,414 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,415 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'assume !true;' is: true [2025-01-03 23:49:43,421 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-03 23:49:43,423 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'assume true;' is: true [2025-01-03 23:49:43,428 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'idx := 0;' is: true [2025-01-03 23:49:43,433 INFO L161 IndependenceChecker]: instantiated independence condition for 'read_ptr := read_ptr + 1;' and 'idx := idx + 1;' is: true [2025-01-03 23:49:43,439 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-03 23:49:43,453 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'assume true;' is: true [2025-01-03 23:49:43,458 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-03 23:49:43,464 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-03 23:49:43,469 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'assume true;prev := value;' is: true [2025-01-03 23:49:43,476 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:43,483 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:43,488 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'prev := -1;' is: true [2025-01-03 23:49:43,489 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'assume !true;' is: true [2025-01-03 23:49:43,495 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:43,504 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:43,510 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,511 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'assume !true;' is: true [2025-01-03 23:49:43,516 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-03 23:49:43,519 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'assume true;' is: true [2025-01-03 23:49:43,523 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'idx := 0;' is: true [2025-01-03 23:49:43,529 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := value;' and 'idx := idx + 1;' is: true [2025-01-03 23:49:43,534 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-03 23:49:43,544 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'assume true;' is: true [2025-01-03 23:49:43,553 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-03 23:49:43,559 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-03 23:49:43,565 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-03 23:49:43,570 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-03 23:49:43,578 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-03 23:49:43,585 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'prev := -1;' is: true [2025-01-03 23:49:43,586 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'assume !true;' is: true [2025-01-03 23:49:43,592 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-03 23:49:43,601 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-03 23:49:43,608 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,610 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'assume !true;' is: true [2025-01-03 23:49:43,616 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-03 23:49:43,619 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'assume true;' is: true [2025-01-03 23:49:43,624 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'idx := 0;' is: true [2025-01-03 23:49:43,631 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[id := queue[id][write_ptr[id] := value]];' and 'idx := idx + 1;' is: true [2025-01-03 23:49:43,642 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-03 23:49:43,652 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'assume true;' is: true [2025-01-03 23:49:43,658 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-03 23:49:43,667 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-03 23:49:43,674 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-03 23:49:43,681 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-03 23:49:43,688 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-03 23:49:43,696 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'prev := -1;' is: true [2025-01-03 23:49:43,696 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'assume !true;' is: true [2025-01-03 23:49:43,704 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-03 23:49:43,712 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-03 23:49:43,716 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,717 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'assume !true;' is: true [2025-01-03 23:49:43,723 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-03 23:49:43,726 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'assume true;' is: true [2025-01-03 23:49:43,731 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'idx := 0;' is: true [2025-01-03 23:49:43,737 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[id := write_ptr[id] + 1];' and 'idx := idx + 1;' is: true [2025-01-03 23:49:43,742 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-03 23:49:43,750 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;' is: true [2025-01-03 23:49:43,752 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-03 23:49:43,756 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-03 23:49:43,758 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;prev := value;' is: true [2025-01-03 23:49:43,761 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:43,763 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:43,765 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'prev := -1;' is: true [2025-01-03 23:49:43,766 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume !true;' is: true [2025-01-03 23:49:43,769 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:43,774 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:43,776 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,779 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'assume true;' is: true [2025-01-03 23:49:43,784 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-03 23:49:43,790 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-03 23:49:43,795 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'assume true;prev := value;' is: true [2025-01-03 23:49:43,799 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:43,805 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:43,809 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'prev := -1;' is: true [2025-01-03 23:49:43,809 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'assume !true;' is: true [2025-01-03 23:49:43,815 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:43,822 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:43,827 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,829 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume true;' is: true [2025-01-03 23:49:43,830 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-03 23:49:43,830 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-03 23:49:43,831 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume true;prev := value;' is: true [2025-01-03 23:49:43,832 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:43,832 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:43,834 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'prev := -1;' is: true [2025-01-03 23:49:43,834 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume !true;' is: true [2025-01-03 23:49:43,835 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:43,836 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:43,836 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !true;' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,840 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'assume true;' is: true [2025-01-03 23:49:43,846 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-03 23:49:43,852 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-03 23:49:43,857 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-03 23:49:43,862 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-03 23:49:43,884 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-03 23:49:43,889 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'prev := -1;' is: true [2025-01-03 23:49:43,890 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'assume !true;' is: true [2025-01-03 23:49:43,896 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-03 23:49:43,903 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-03 23:49:43,908 INFO L161 IndependenceChecker]: instantiated independence condition for 'queue := queue[0 := queue[0][write_ptr[0] := idx]];' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,909 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-03 23:49:43,911 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-03 23:49:43,914 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-03 23:49:43,916 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;prev := value;' is: true [2025-01-03 23:49:43,918 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:43,920 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:43,922 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'prev := -1;' is: true [2025-01-03 23:49:43,924 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume !true;' is: true [2025-01-03 23:49:43,927 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:43,932 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:43,934 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,937 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'assume true;' is: true [2025-01-03 23:49:43,942 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-03 23:49:43,948 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-03 23:49:43,953 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-03 23:49:43,959 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-03 23:49:43,964 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-03 23:49:43,968 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'prev := -1;' is: true [2025-01-03 23:49:43,969 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'assume !true;' is: true [2025-01-03 23:49:43,975 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-03 23:49:43,983 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-03 23:49:43,987 INFO L161 IndependenceChecker]: instantiated independence condition for 'write_ptr := write_ptr[0 := write_ptr[0] + 1];' and 'read_ptr := 0;' is: true [2025-01-03 23:49:43,992 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume true;' is: true [2025-01-03 23:49:43,998 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'write_ptr := write_ptr[id := write_ptr[id] + 1];' is: true [2025-01-03 23:49:44,003 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'queue := queue[id := queue[id][write_ptr[id] := value]];' is: true [2025-01-03 23:49:44,010 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume true;prev := value;' is: true [2025-01-03 23:49:44,015 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'read_ptr := read_ptr + 1;' is: true [2025-01-03 23:49:44,027 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'value := queue[id - 1][read_ptr];' is: true [2025-01-03 23:49:44,032 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'prev := -1;' is: true [2025-01-03 23:49:44,032 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume !true;' is: true [2025-01-03 23:49:44,038 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume read_ptr < write_ptr[id - 1];' is: true [2025-01-03 23:49:44,048 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'id := ctr;ctr := ctr + 1;' is: true [2025-01-03 23:49:44,056 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'read_ptr := 0;' is: true [2025-01-03 23:49:44,108 INFO L201 PluginConnector]: Adding new model line-queue.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 03.01 11:49:44 HornClauseAST [2025-01-03 23:49:44,108 INFO L131 PluginConnector]: ------------------------ END IcfgToChc---------------------------- [2025-01-03 23:49:44,109 INFO L112 PluginConnector]: ------------------------ChcSmtPrinter---------------------------- [2025-01-03 23:49:44,109 INFO L270 PluginConnector]: Initializing ChcSmtPrinter... [2025-01-03 23:49:44,109 INFO L274 PluginConnector]: ChcSmtPrinter initialized [2025-01-03 23:49:44,109 INFO L184 PluginConnector]: Executing the observer ChcSmtPrinterObserver from plugin ChcSmtPrinter for "line-queue.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 03.01 11:49:44" (1/1) ... [2025-01-03 23:49:44,111 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_UID12454029860144418115.smt2 [2025-01-03 23:49:44,208 INFO L131 PluginConnector]: ------------------------ END ChcSmtPrinter---------------------------- [2025-01-03 23:49:44,209 INFO L112 PluginConnector]: ------------------------ChcSolver---------------------------- [2025-01-03 23:49:44,209 INFO L270 PluginConnector]: Initializing ChcSolver... [2025-01-03 23:49:44,209 INFO L274 PluginConnector]: ChcSolver initialized [2025-01-03 23:49:44,210 INFO L184 PluginConnector]: Executing the observer ChcSolverObserver from plugin ChcSolver for "line-queue.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 03.01 11:49:44" (1/1) ... [2025-01-03 23:49:44,211 INFO L99 EldaricaCliChcScript]: Writing script to file /tmp/eldarica_11849152921408120835.smt2 [2025-01-03 23:49:44,240 ERROR L181 MonitoredProcess]: Could not determine absolute path of external process, hoping that OS will resolve eld [2025-01-03 23:49:44,240 INFO L189 MonitoredProcess]: No working directory specified, using eld [2025-01-03 23:49:44,245 INFO L229 MonitoredProcess]: Starting monitored process 2 with eld -disj /tmp/eldarica_11849152921408120835.smt2 (exit command is null, workingDir is null) [2025-01-03 23:49:44,248 INFO L327 MonitoredProcess]: [MP eld -disj /tmp/eldarica_11849152921408120835.smt2 (2)] Waiting until timeout for monitored process [2025-01-03 23:51:56,226 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-03 23:51:56,232 INFO L158 Benchmark]: Toolchain (without parser) took 134181.59ms. Allocated memory was 167.8MB in the beginning and 234.9MB in the end (delta: 67.1MB). Free memory was 144.9MB in the beginning and 123.7MB in the end (delta: 21.2MB). Peak memory consumption was 86.7MB. Max. memory is 22.0GB. [2025-01-03 23:51:56,232 INFO L158 Benchmark]: Boogie PL CUP Parser took 0.19ms. Allocated memory is still 167.8MB. Free memory is still 145.9MB. There was no memory consumed. Max. memory is 22.0GB. [2025-01-03 23:51:56,232 INFO L158 Benchmark]: Boogie Preprocessor took 23.73ms. Allocated memory is still 167.8MB. Free memory was 144.8MB in the beginning and 143.4MB in the end (delta: 1.5MB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-03 23:51:56,232 INFO L158 Benchmark]: RCFGBuilder took 206.00ms. Allocated memory is still 167.8MB. Free memory was 143.3MB in the beginning and 134.7MB in the end (delta: 8.6MB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-03 23:51:56,233 INFO L158 Benchmark]: IcfgToChc took 1827.09ms. Allocated memory was 167.8MB in the beginning and 234.9MB in the end (delta: 67.1MB). Free memory was 134.7MB in the beginning and 165.5MB in the end (delta: -30.8MB). Peak memory consumption was 87.5MB. Max. memory is 22.0GB. [2025-01-03 23:51:56,233 INFO L158 Benchmark]: ChcSmtPrinter took 99.80ms. Allocated memory is still 234.9MB. Free memory was 165.5MB in the beginning and 133.3MB in the end (delta: 32.2MB). Peak memory consumption was 33.6MB. Max. memory is 22.0GB. [2025-01-03 23:51:56,233 INFO L158 Benchmark]: ChcSolver took 132021.37ms. Allocated memory is still 234.9MB. Free memory was 133.3MB in the beginning and 123.7MB in the end (delta: 9.6MB). Peak memory consumption was 16.8MB. Max. memory is 22.0GB. [2025-01-03 23:51:56,238 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.19ms. Allocated memory is still 167.8MB. Free memory is still 145.9MB. There was no memory consumed. Max. memory is 22.0GB. * Boogie Preprocessor took 23.73ms. Allocated memory is still 167.8MB. Free memory was 144.8MB in the beginning and 143.4MB in the end (delta: 1.5MB). There was no memory consumed. Max. memory is 22.0GB. * RCFGBuilder took 206.00ms. Allocated memory is still 167.8MB. Free memory was 143.3MB in the beginning and 134.7MB in the end (delta: 8.6MB). There was no memory consumed. Max. memory is 22.0GB. * IcfgToChc took 1827.09ms. Allocated memory was 167.8MB in the beginning and 234.9MB in the end (delta: 67.1MB). Free memory was 134.7MB in the beginning and 165.5MB in the end (delta: -30.8MB). Peak memory consumption was 87.5MB. Max. memory is 22.0GB. * ChcSmtPrinter took 99.80ms. Allocated memory is still 234.9MB. Free memory was 165.5MB in the beginning and 133.3MB in the end (delta: 32.2MB). Peak memory consumption was 33.6MB. Max. memory is 22.0GB. * ChcSolver took 132021.37ms. Allocated memory is still 234.9MB. Free memory was 133.3MB in the beginning and 123.7MB in the end (delta: 9.6MB). 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-03 23:51:56,251 WARN L435 MonitoredProcess]: [MP eld -disj /tmp/eldarica_11849152921408120835.smt2 (2)] Forcibly destroying the process [2025-01-03 23:51:56,301 INFO L540 MonitoredProcess]: [MP eld -disj /tmp/eldarica_11849152921408120835.smt2 (2)] Forceful destruction successful, exit code 0 [2025-01-03 23:51:56,306 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...