/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 False --icfgtochc.specification.mode ASSERT_VIOLATIONS --icfgtochc.single-instance.threads notifier --icfgtochc.thread-modular.proof.level 1 --icfgtochc.preference.order.used.for.reduction LOCKSTEP --icfgtochc.use.semi-commutativity True -s ../../../trunk/examples/concurrent/bpl/parameterized/notify-listeners/../ThreadModularVerifier.Settings.epf -tc ../../../trunk/examples/concurrent/bpl/parameterized/ThreadModularVerifier.xml --chcsolver.chc.solver.backend ELDARICA -i ../../../trunk/examples/concurrent/bpl/parameterized/notify-listeners/notify-listeners.bpl -------------------------------------------------------------------------------- This is Ultimate 0.3.0-wip.dk.sleep-threadmodular-07d3146-m [2024-12-19 17:30:14,341 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-12-19 17:30:14,397 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/notify-listeners/../ThreadModularVerifier.Settings.epf [2024-12-19 17:30:14,409 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-12-19 17:30:14,410 INFO L151 SettingsManager]: Preferences of ChcSolver differ from their defaults: [2024-12-19 17:30:14,411 INFO L153 SettingsManager]: * Produce CHC model if query is SAT=false [2024-12-19 17:30:14,411 INFO L153 SettingsManager]: * CHC solver backend=Z3 [2024-12-19 17:30:14,411 INFO L153 SettingsManager]: * Produce derivation if query is UNSAT=false [2024-12-19 17:30:14,411 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-12-19 17:30:14,411 INFO L153 SettingsManager]: * Size of a code block=OneNontrivialStatement [2024-12-19 17:30:14,412 INFO L153 SettingsManager]: * Add additional assume for each assert=false [2024-12-19 17:30:14,412 INFO L151 SettingsManager]: Preferences of IcfgToChc differ from their defaults: [2024-12-19 17:30:14,412 INFO L153 SettingsManager]: * Conditional Independence=SUFFICIENT [2024-12-19 17:30:14,413 INFO L151 SettingsManager]: Preferences of ChcSmtPrinter differ from their defaults: [2024-12-19 17:30:14,413 INFO L153 SettingsManager]: * Save file in source directory=true [2024-12-19 17:30:14,413 INFO L153 SettingsManager]: * Use automatic naming=true [2024-12-19 17:30:14,413 INFO L153 SettingsManager]: * File name=CHC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Assume program has a precondition -> false 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 -> notifier Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Thread-Modular Proof Level -> 1 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 [2024-12-19 17:30:14,595 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-12-19 17:30:14,600 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-12-19 17:30:14,601 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-12-19 17:30:14,602 INFO L270 PluginConnector]: Initializing Boogie PL CUP Parser... [2024-12-19 17:30:14,603 INFO L274 PluginConnector]: Boogie PL CUP Parser initialized [2024-12-19 17:30:14,603 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/notify-listeners/notify-listeners.bpl [2024-12-19 17:30:14,603 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/notify-listeners/notify-listeners.bpl' [2024-12-19 17:30:14,615 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-12-19 17:30:14,616 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-12-19 17:30:14,616 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-12-19 17:30:14,616 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-12-19 17:30:14,616 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-12-19 17:30:14,625 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 19.12 05:30:14" (1/1) ... [2024-12-19 17:30:14,626 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 19.12 05:30:14" (1/1) ... [2024-12-19 17:30:14,629 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 19.12 05:30:14" (1/1) ... [2024-12-19 17:30:14,629 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 19.12 05:30:14" (1/1) ... [2024-12-19 17:30:14,630 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 19.12 05:30:14" (1/1) ... [2024-12-19 17:30:14,631 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 19.12 05:30:14" (1/1) ... [2024-12-19 17:30:14,632 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 19.12 05:30:14" (1/1) ... [2024-12-19 17:30:14,632 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 19.12 05:30:14" (1/1) ... [2024-12-19 17:30:14,633 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 19.12 05:30:14" (1/1) ... [2024-12-19 17:30:14,633 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-12-19 17:30:14,634 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-12-19 17:30:14,634 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-12-19 17:30:14,634 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-12-19 17:30:14,635 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 19.12 05:30:14" (1/1) ... [2024-12-19 17:30:14,639 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2024-12-19 17:30:14,648 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 [2024-12-19 17:30:14,659 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) [2024-12-19 17:30:14,661 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 [2024-12-19 17:30:14,682 INFO L124 BoogieDeclarations]: Specification and implementation of procedure notifier given in one single declaration [2024-12-19 17:30:14,682 INFO L130 BoogieDeclarations]: Found specification of procedure notifier [2024-12-19 17:30:14,682 INFO L138 BoogieDeclarations]: Found implementation of procedure notifier [2024-12-19 17:30:14,682 INFO L124 BoogieDeclarations]: Specification and implementation of procedure ULTIMATE.start given in one single declaration [2024-12-19 17:30:14,683 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-12-19 17:30:14,683 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-12-19 17:30:14,716 INFO L234 CfgBuilder]: Building ICFG [2024-12-19 17:30:14,718 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2024-12-19 17:30:14,773 INFO L? ?]: Removed 5 outVars from TransFormulas that were not future-live. [2024-12-19 17:30:14,773 INFO L283 CfgBuilder]: Performing block encoding [2024-12-19 17:30:14,784 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-12-19 17:30:14,784 INFO L312 CfgBuilder]: Removed 2 assume(true) statements. [2024-12-19 17:30:14,784 INFO L201 PluginConnector]: Adding new model notify-listeners.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.12 05:30:14 BoogieIcfgContainer [2024-12-19 17:30:14,784 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-12-19 17:30:14,785 INFO L112 PluginConnector]: ------------------------IcfgToChc---------------------------- [2024-12-19 17:30:14,785 INFO L270 PluginConnector]: Initializing IcfgToChc... [2024-12-19 17:30:14,785 INFO L274 PluginConnector]: IcfgToChc initialized [2024-12-19 17:30:14,786 INFO L184 PluginConnector]: Executing the observer IcfgToChcObserver from plugin IcfgToChc for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.12 05:30:14" (1/1) ... [2024-12-19 17:30:14,883 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'prev := data;' is: true [2024-12-19 17:30:14,910 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'assume data > prev;' is: true [2024-12-19 17:30:14,920 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'assume true;' is: true [2024-12-19 17:30:14,926 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'havoc data;' is: true [2024-12-19 17:30:14,945 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'prev := 0;' is: true [2024-12-19 17:30:14,980 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'current := current + 1;' is: false [2024-12-19 17:30:15,004 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'notifications := notifications[current := data];' is: true [2024-12-19 17:30:15,022 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'assume true;' is: true [2024-12-19 17:30:15,039 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'assume idx < current;' is: true [2024-12-19 17:30:15,053 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'prev := 0;' is: true [2024-12-19 17:30:15,066 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'idx := current;' is: true [2024-12-19 17:30:15,077 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:15,088 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'idx := idx + 1;' is: true [2024-12-19 17:30:15,099 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:15,112 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'prev := data;' is: true [2024-12-19 17:30:15,126 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume data > prev;' is: true [2024-12-19 17:30:15,133 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume true;' is: true [2024-12-19 17:30:15,138 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'havoc data;' is: true [2024-12-19 17:30:15,148 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'prev := 0;' is: true [2024-12-19 17:30:15,164 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'current := current + 1;' is: true [2024-12-19 17:30:15,181 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'notifications := notifications[current := data];' is: true [2024-12-19 17:30:15,190 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume true;' is: true [2024-12-19 17:30:15,204 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume idx < current;' is: true [2024-12-19 17:30:15,220 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'prev := 0;' is: true [2024-12-19 17:30:15,229 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'idx := current;' is: true [2024-12-19 17:30:15,237 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:15,247 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'idx := idx + 1;' is: true [2024-12-19 17:30:15,257 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:15,263 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'prev := data;' is: true [2024-12-19 17:30:15,268 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume data > prev;' is: true [2024-12-19 17:30:15,269 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2024-12-19 17:30:15,271 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'havoc data;' is: true [2024-12-19 17:30:15,275 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'prev := 0;' is: true [2024-12-19 17:30:15,280 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'current := current + 1;' is: true [2024-12-19 17:30:15,284 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'notifications := notifications[current := data];' is: true [2024-12-19 17:30:15,287 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2024-12-19 17:30:15,292 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume idx < current;' is: true [2024-12-19 17:30:15,296 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'prev := 0;' is: true [2024-12-19 17:30:15,300 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := current;' is: true [2024-12-19 17:30:15,306 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:15,313 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := idx + 1;' is: true [2024-12-19 17:30:15,317 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:15,329 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'prev := data;' is: true [2024-12-19 17:30:15,338 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'assume data > prev;' is: true [2024-12-19 17:30:15,343 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'assume true;' is: true [2024-12-19 17:30:15,350 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'havoc data;' is: true [2024-12-19 17:30:15,364 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'prev := 0;' is: true [2024-12-19 17:30:15,381 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'current := current + 1;' is: true [2024-12-19 17:30:15,396 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'notifications := notifications[current := data];' is: true [2024-12-19 17:30:15,403 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'assume true;' is: true [2024-12-19 17:30:15,415 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'assume idx < current;' is: true [2024-12-19 17:30:15,426 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'prev := 0;' is: true [2024-12-19 17:30:15,437 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'idx := current;' is: true [2024-12-19 17:30:15,446 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:15,457 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'idx := idx + 1;' is: true [2024-12-19 17:30:15,466 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:15,478 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'prev := data;' is: true [2024-12-19 17:30:15,495 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'assume data > prev;' is: true [2024-12-19 17:30:15,500 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'assume true;' is: true [2024-12-19 17:30:15,505 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'havoc data;' is: true [2024-12-19 17:30:15,516 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'prev := 0;' is: true [2024-12-19 17:30:15,525 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'current := current + 1;' is: true [2024-12-19 17:30:15,556 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 12 [2024-12-19 17:30:15,576 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'notifications := notifications[current := data];' is: (not (= ULTIMATE.start_~~left~~idx current)) [2024-12-19 17:30:15,585 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'assume true;' is: true [2024-12-19 17:30:15,594 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'assume idx < current;' is: true [2024-12-19 17:30:15,602 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'prev := 0;' is: true [2024-12-19 17:30:15,616 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'idx := current;' is: true [2024-12-19 17:30:15,624 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:15,633 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'idx := idx + 1;' is: true [2024-12-19 17:30:15,642 INFO L161 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:15,652 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'prev := data;' is: true [2024-12-19 17:30:15,661 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume data > prev;' is: true [2024-12-19 17:30:15,666 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume true;' is: true [2024-12-19 17:30:15,670 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'havoc data;' is: true [2024-12-19 17:30:15,678 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'prev := 0;' is: true [2024-12-19 17:30:15,687 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'current := current + 1;' is: true [2024-12-19 17:30:15,696 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'notifications := notifications[current := data];' is: true [2024-12-19 17:30:15,705 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume true;' is: true [2024-12-19 17:30:15,733 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume idx < current;' is: true [2024-12-19 17:30:15,753 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'prev := 0;' is: true [2024-12-19 17:30:15,762 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'idx := current;' is: true [2024-12-19 17:30:15,773 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:15,782 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'idx := idx + 1;' is: true [2024-12-19 17:30:15,790 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:15,804 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'prev := data;' is: true [2024-12-19 17:30:15,813 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'assume data > prev;' is: true [2024-12-19 17:30:15,817 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'assume true;' is: true [2024-12-19 17:30:15,820 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'havoc data;' is: true [2024-12-19 17:30:15,828 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'prev := 0;' is: true [2024-12-19 17:30:15,840 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'current := current + 1;' is: true [2024-12-19 17:30:15,850 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'notifications := notifications[current := data];' is: true [2024-12-19 17:30:15,856 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'assume true;' is: true [2024-12-19 17:30:15,865 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'assume idx < current;' is: true [2024-12-19 17:30:15,876 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'prev := 0;' is: true [2024-12-19 17:30:15,883 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'idx := current;' is: true [2024-12-19 17:30:15,894 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:15,901 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'idx := idx + 1;' is: true [2024-12-19 17:30:15,908 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:15,912 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume true;' is: true [2024-12-19 17:30:15,919 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume idx < current;' is: true [2024-12-19 17:30:15,925 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'prev := 0;' is: true [2024-12-19 17:30:15,933 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'idx := current;' is: true [2024-12-19 17:30:15,942 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:15,957 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'idx := idx + 1;' is: true [2024-12-19 17:30:15,968 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:15,969 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2024-12-19 17:30:15,978 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume idx < current;' is: true [2024-12-19 17:30:15,982 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'prev := 0;' is: true [2024-12-19 17:30:15,988 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := current;' is: true [2024-12-19 17:30:15,992 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:15,996 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := idx + 1;' is: true [2024-12-19 17:30:16,001 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:16,005 INFO L161 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'assume true;' is: true [2024-12-19 17:30:16,009 INFO L161 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'assume idx < current;' is: true [2024-12-19 17:30:16,012 INFO L161 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'prev := 0;' is: true [2024-12-19 17:30:16,017 INFO L161 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'idx := current;' is: true [2024-12-19 17:30:16,021 INFO L161 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:16,025 INFO L161 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'idx := idx + 1;' is: true [2024-12-19 17:30:16,031 INFO L161 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:16,036 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'assume true;' is: true [2024-12-19 17:30:16,045 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'assume idx < current;' is: true [2024-12-19 17:30:16,052 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'prev := 0;' is: true [2024-12-19 17:30:16,061 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'idx := current;' is: true [2024-12-19 17:30:16,074 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:16,081 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'idx := idx + 1;' is: true [2024-12-19 17:30:16,088 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:16,092 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'assume true;' is: true [2024-12-19 17:30:16,098 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'assume idx < current;' is: true [2024-12-19 17:30:16,107 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'prev := 0;' is: true [2024-12-19 17:30:16,113 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'idx := current;' is: true [2024-12-19 17:30:16,119 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:16,126 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'idx := idx + 1;' is: true [2024-12-19 17:30:16,133 INFO L161 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:16,138 INFO L161 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'assume true;' is: true [2024-12-19 17:30:16,145 INFO L161 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'assume idx < current;' is: true [2024-12-19 17:30:16,152 INFO L161 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'prev := 0;' is: true [2024-12-19 17:30:16,160 INFO L161 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'idx := current;' is: true [2024-12-19 17:30:16,167 INFO L161 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:16,175 INFO L161 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'idx := idx + 1;' is: true [2024-12-19 17:30:16,184 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 12 [2024-12-19 17:30:16,196 INFO L161 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'msg := notifications[idx];' is: (not (= ULTIMATE.start_~~right~~idx current)) [2024-12-19 17:30:16,201 INFO L161 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'assume true;' is: true [2024-12-19 17:30:16,210 INFO L161 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'assume idx < current;' is: (not (= ULTIMATE.start_~~right~~idx current)) [2024-12-19 17:30:16,217 INFO L161 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'prev := 0;' is: true [2024-12-19 17:30:16,224 INFO L161 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'idx := current;' is: false [2024-12-19 17:30:16,231 INFO L161 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'assume true;prev := msg;' is: true [2024-12-19 17:30:16,238 INFO L161 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'idx := idx + 1;' is: true [2024-12-19 17:30:16,245 INFO L161 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'msg := notifications[idx];' is: true [2024-12-19 17:30:16,264 INFO L201 PluginConnector]: Adding new model notify-listeners.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 19.12 05:30:16 HornClauseAST [2024-12-19 17:30:16,264 INFO L131 PluginConnector]: ------------------------ END IcfgToChc---------------------------- [2024-12-19 17:30:16,264 INFO L112 PluginConnector]: ------------------------ChcSmtPrinter---------------------------- [2024-12-19 17:30:16,264 INFO L270 PluginConnector]: Initializing ChcSmtPrinter... [2024-12-19 17:30:16,264 INFO L274 PluginConnector]: ChcSmtPrinter initialized [2024-12-19 17:30:16,265 INFO L184 PluginConnector]: Executing the observer ChcSmtPrinterObserver from plugin ChcSmtPrinter for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 19.12 05:30:16" (1/1) ... [2024-12-19 17:30:16,266 INFO L192 hcSmtPrinterObserver]: Writing to file /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/notify-listeners/CHC_notify-listeners.bpl_UID16949172040694824211.smt2 [2024-12-19 17:30:16,276 INFO L131 PluginConnector]: ------------------------ END ChcSmtPrinter---------------------------- [2024-12-19 17:30:16,277 INFO L112 PluginConnector]: ------------------------ChcSolver---------------------------- [2024-12-19 17:30:16,277 INFO L270 PluginConnector]: Initializing ChcSolver... [2024-12-19 17:30:16,277 INFO L274 PluginConnector]: ChcSolver initialized [2024-12-19 17:30:16,282 INFO L184 PluginConnector]: Executing the observer ChcSolverObserver from plugin ChcSolver for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 19.12 05:30:16" (1/1) ... [2024-12-19 17:30:16,282 INFO L99 EldaricaCliChcScript]: Writing script to file /tmp/eldarica_8363051211649773973.smt2 [2024-12-19 17:30:16,290 ERROR L181 MonitoredProcess]: Could not determine absolute path of external process, hoping that OS will resolve eld [2024-12-19 17:30:16,290 INFO L189 MonitoredProcess]: No working directory specified, using eld [2024-12-19 17:30:16,292 INFO L229 MonitoredProcess]: Starting monitored process 2 with eld -disj /tmp/eldarica_8363051211649773973.smt2 (exit command is null, workingDir is null) [2024-12-19 17:30:16,294 INFO L327 MonitoredProcess]: [MP eld -disj /tmp/eldarica_8363051211649773973.smt2 (2)] Waiting until timeout for monitored process [2024-12-19 17:50:41,539 INFO L201 PluginConnector]: Adding new model notify-listeners.bpl de.uni_freiburg.informatik.ultimate.plugins.chcsolver OTHER 19.12 05:50:41 ChcSolution [2024-12-19 17:50:41,539 INFO L131 PluginConnector]: ------------------------ END ChcSolver---------------------------- [2024-12-19 17:50:41,541 INFO L158 Benchmark]: Toolchain (without parser) took 1226924.52ms. Allocated memory is still 234.9MB. Free memory was 156.0MB in the beginning and 106.4MB in the end (delta: 49.7MB). Peak memory consumption was 38.1MB. Max. memory is 22.0GB. [2024-12-19 17:50:41,541 INFO L158 Benchmark]: Boogie PL CUP Parser took 0.15ms. Allocated memory is still 234.9MB. Free memory is still 157.0MB. There was no memory consumed. Max. memory is 22.0GB. [2024-12-19 17:50:41,541 INFO L158 Benchmark]: Boogie Preprocessor took 17.52ms. Allocated memory is still 234.9MB. Free memory was 156.0MB in the beginning and 155.0MB in the end (delta: 1.0MB). There was no memory consumed. Max. memory is 22.0GB. [2024-12-19 17:50:41,541 INFO L158 Benchmark]: RCFGBuilder took 150.45ms. Allocated memory is still 234.9MB. Free memory was 155.0MB in the beginning and 145.1MB in the end (delta: 9.9MB). There was no memory consumed. Max. memory is 22.0GB. [2024-12-19 17:50:41,542 INFO L158 Benchmark]: IcfgToChc took 1478.76ms. Allocated memory is still 234.9MB. Free memory was 145.1MB in the beginning and 119.7MB in the end (delta: 25.3MB). Peak memory consumption was 88.5MB. Max. memory is 22.0GB. [2024-12-19 17:50:41,542 INFO L158 Benchmark]: ChcSmtPrinter took 12.54ms. Allocated memory is still 234.9MB. Free memory was 119.7MB in the beginning and 115.8MB in the end (delta: 3.9MB). Peak memory consumption was 16.8MB. Max. memory is 22.0GB. [2024-12-19 17:50:41,542 INFO L158 Benchmark]: ChcSolver took 1225262.53ms. Allocated memory is still 234.9MB. Free memory was 115.8MB in the beginning and 106.4MB in the end (delta: 9.4MB). There was no memory consumed. Max. memory is 22.0GB. [2024-12-19 17:50:41,544 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.15ms. Allocated memory is still 234.9MB. Free memory is still 157.0MB. There was no memory consumed. Max. memory is 22.0GB. * Boogie Preprocessor took 17.52ms. Allocated memory is still 234.9MB. Free memory was 156.0MB in the beginning and 155.0MB in the end (delta: 1.0MB). There was no memory consumed. Max. memory is 22.0GB. * RCFGBuilder took 150.45ms. Allocated memory is still 234.9MB. Free memory was 155.0MB in the beginning and 145.1MB in the end (delta: 9.9MB). There was no memory consumed. Max. memory is 22.0GB. * IcfgToChc took 1478.76ms. Allocated memory is still 234.9MB. Free memory was 145.1MB in the beginning and 119.7MB in the end (delta: 25.3MB). Peak memory consumption was 88.5MB. Max. memory is 22.0GB. * ChcSmtPrinter took 12.54ms. Allocated memory is still 234.9MB. Free memory was 119.7MB in the beginning and 115.8MB in the end (delta: 3.9MB). Peak memory consumption was 16.8MB. Max. memory is 22.0GB. * ChcSolver took 1225262.53ms. Allocated memory is still 234.9MB. Free memory was 115.8MB in the beginning and 106.4MB in the end (delta: 9.4MB). There was no memory consumed. Max. memory is 22.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.chcsolver: - ChcSatResult: SAT The given horn clause set is SAT RESULT: Ultimate could not prove your program: Toolchain returned no result. [2024-12-19 17:50:41,548 WARN L435 MonitoredProcess]: [MP eld -disj /tmp/eldarica_8363051211649773973.smt2 (2)] Forcibly destroying the process [2024-12-19 17:50:41,664 INFO L540 MonitoredProcess]: [MP eld -disj /tmp/eldarica_8363051211649773973.smt2 (2)] Forceful destruction successful, exit code 137 [2024-12-19 17:50:41,670 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Ended with exit code 0 Received shutdown request...