/usr/bin/java -Xmx15000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data -s ../../../trunk/examples/threadmodular/regression/notify-listeners/ThreadModularVerifier.Settings.epf -tc ../../../trunk/examples/threadmodular/regression/ThreadModularVerifier.xml --icfgtochc.break.symmetry.of.preference.order false --chcsolver.chc.solver.backend GOLEM --chcsolver.produce.chc.model.if.query.is.sat true --chcsolver.produce.derivation.if.query.is.unsat false --chcsolver.produce.unsat.core.if.query.is.unsat false -i ../../../trunk/examples/threadmodular/regression/notify-listeners/notify-listeners.bpl -------------------------------------------------------------------------------- This is Ultimate 0.2.3-wip.dk.sleep-threadmodular-5ab1b01-m [2023-07-03 17:50:07,395 INFO L172 SettingsManager]: Resetting all preferences to default values... [2023-07-03 17:50:07,436 INFO L100 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/threadmodular/regression/notify-listeners/ThreadModularVerifier.Settings.epf [2023-07-03 17:50:07,441 INFO L114 SettingsManager]: Preferences different from defaults after loading the file: [2023-07-03 17:50:07,442 INFO L135 SettingsManager]: Preferences of ChcSolver differ from their defaults: [2023-07-03 17:50:07,442 INFO L137 SettingsManager]: * Produce UNSAT core if query is UNSAT=true [2023-07-03 17:50:07,443 INFO L135 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-07-03 17:50:07,443 INFO L137 SettingsManager]: * Size of a code block=OneNontrivialStatement [2023-07-03 17:50:07,443 INFO L137 SettingsManager]: * Add additional assume for each assert=false [2023-07-03 17:50:07,444 INFO L135 SettingsManager]: Preferences of IcfgToChc differ from their defaults: [2023-07-03 17:50:07,444 INFO L137 SettingsManager]: * Specification mode=ASSERT_VIOLATIONS [2023-07-03 17:50:07,444 INFO L137 SettingsManager]: * Preference order used for reduction=LOCKSTEP [2023-07-03 17:50:07,447 INFO L137 SettingsManager]: * Single-instance threads=notifier [2023-07-03 17:50:07,450 INFO L137 SettingsManager]: * Assume program has a precondition=false [2023-07-03 17:50:07,450 INFO L137 SettingsManager]: * Conditional Independence=PRECOMPUTED_CONDITIONS [2023-07-03 17:50:07,450 INFO L135 SettingsManager]: Preferences of ChcSmtPrinter differ from their defaults: [2023-07-03 17:50:07,451 INFO L137 SettingsManager]: * Save file in source directory=true [2023-07-03 17:50:07,451 INFO L137 SettingsManager]: * Use automatic naming=true [2023-07-03 17:50:07,452 INFO L137 SettingsManager]: * File name=CHC_conditional WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Break symmetry of preference order -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.chcsolver: CHC solver backend -> GOLEM Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.chcsolver: Produce CHC model if query is SAT -> true Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.chcsolver: Produce derivation if query is UNSAT -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.chcsolver: Produce UNSAT core if query is UNSAT -> false [2023-07-03 17:50:07,635 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-07-03 17:50:07,653 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-07-03 17:50:07,654 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-07-03 17:50:07,655 INFO L270 PluginConnector]: Initializing Boogie PL CUP Parser... [2023-07-03 17:50:07,655 INFO L274 PluginConnector]: Boogie PL CUP Parser initialized [2023-07-03 17:50:07,656 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/threadmodular/regression/notify-listeners/notify-listeners.bpl [2023-07-03 17:50:07,656 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/threadmodular/regression/notify-listeners/notify-listeners.bpl' [2023-07-03 17:50:07,673 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-07-03 17:50:07,674 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2023-07-03 17:50:07,675 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-07-03 17:50:07,675 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2023-07-03 17:50:07,675 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2023-07-03 17:50:07,686 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.07 05:50:07" (1/1) ... [2023-07-03 17:50:07,687 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.07 05:50:07" (1/1) ... [2023-07-03 17:50:07,691 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.07 05:50:07" (1/1) ... [2023-07-03 17:50:07,692 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.07 05:50:07" (1/1) ... [2023-07-03 17:50:07,693 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.07 05:50:07" (1/1) ... [2023-07-03 17:50:07,695 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.07 05:50:07" (1/1) ... [2023-07-03 17:50:07,695 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.07 05:50:07" (1/1) ... [2023-07-03 17:50:07,696 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.07 05:50:07" (1/1) ... [2023-07-03 17:50:07,696 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-07-03 17:50:07,698 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-07-03 17:50:07,698 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2023-07-03 17:50:07,698 INFO L274 PluginConnector]: RCFGBuilder initialized [2023-07-03 17:50:07,699 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.07 05:50:07" (1/1) ... [2023-07-03 17:50:07,703 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2023-07-03 17:50:07,708 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-07-03 17:50:07,718 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2023-07-03 17:50:07,723 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2023-07-03 17:50:07,743 INFO L124 BoogieDeclarations]: Specification and implementation of procedure notifier given in one single declaration [2023-07-03 17:50:07,743 INFO L130 BoogieDeclarations]: Found specification of procedure notifier [2023-07-03 17:50:07,743 INFO L138 BoogieDeclarations]: Found implementation of procedure notifier [2023-07-03 17:50:07,744 INFO L124 BoogieDeclarations]: Specification and implementation of procedure ULTIMATE.start given in one single declaration [2023-07-03 17:50:07,744 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-07-03 17:50:07,744 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-07-03 17:50:07,781 INFO L236 CfgBuilder]: Building ICFG [2023-07-03 17:50:07,783 INFO L262 CfgBuilder]: Building CFG for each procedure with an implementation [2023-07-03 17:50:07,841 INFO L277 CfgBuilder]: Performing block encoding [2023-07-03 17:50:07,845 INFO L297 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-07-03 17:50:07,845 INFO L302 CfgBuilder]: Removed 2 assume(true) statements. [2023-07-03 17:50:07,846 INFO L201 PluginConnector]: Adding new model notify-listeners.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 03.07 05:50:07 BoogieIcfgContainer [2023-07-03 17:50:07,846 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-07-03 17:50:07,847 INFO L112 PluginConnector]: ------------------------IcfgToChc---------------------------- [2023-07-03 17:50:07,847 INFO L270 PluginConnector]: Initializing IcfgToChc... [2023-07-03 17:50:07,847 INFO L274 PluginConnector]: IcfgToChc initialized [2023-07-03 17:50:07,848 INFO L184 PluginConnector]: Executing the observer IcfgToChcObserver from plugin IcfgToChc for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 03.07 05:50:07" (1/1) ... [2023-07-03 17:50:08,020 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume true;' is: true [2023-07-03 17:50:08,023 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume idx < current;' is: true [2023-07-03 17:50:08,025 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'prev := 0;' is: true [2023-07-03 17:50:08,028 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'idx := current;' is: true [2023-07-03 17:50:08,030 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,033 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,036 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,041 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2023-07-03 17:50:08,042 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume idx < current;' is: true [2023-07-03 17:50:08,043 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'prev := 0;' is: true [2023-07-03 17:50:08,045 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := current;' is: true [2023-07-03 17:50:08,046 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,048 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,049 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,058 INFO L180 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'assume true;' is: true [2023-07-03 17:50:08,059 INFO L180 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'assume idx < current;' is: true [2023-07-03 17:50:08,061 INFO L180 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'prev := 0;' is: true [2023-07-03 17:50:08,063 INFO L180 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'idx := current;' is: true [2023-07-03 17:50:08,068 INFO L180 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,070 INFO L180 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,072 INFO L180 IndependenceChecker]: instantiated independence condition for 'havoc data;' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,077 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'assume true;' is: true [2023-07-03 17:50:08,079 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'assume idx < current;' is: true [2023-07-03 17:50:08,081 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'prev := 0;' is: true [2023-07-03 17:50:08,082 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'idx := current;' is: true [2023-07-03 17:50:08,084 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,086 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,091 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume data > prev;' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,098 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'assume true;' is: true [2023-07-03 17:50:08,100 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'assume idx < current;' is: true [2023-07-03 17:50:08,108 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'prev := 0;' is: true [2023-07-03 17:50:08,110 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'idx := current;' is: true [2023-07-03 17:50:08,112 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,136 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,137 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := data;' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,154 INFO L180 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'assume true;' is: true [2023-07-03 17:50:08,161 INFO L180 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'assume idx < current;' is: true [2023-07-03 17:50:08,162 INFO L180 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'prev := 0;' is: true [2023-07-03 17:50:08,163 INFO L180 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'idx := current;' is: true [2023-07-03 17:50:08,171 INFO L180 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,173 INFO L180 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,232 INFO L351 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 [2023-07-03 17:50:08,252 INFO L180 IndependenceChecker]: instantiated independence condition for 'notifications := notifications[current := data];' and 'msg := notifications[idx];' is: (not (= ULTIMATE.start_~~right~~idx current)) [2023-07-03 17:50:08,255 INFO L180 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'assume true;' is: true [2023-07-03 17:50:08,275 INFO L180 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'assume idx < current;' is: (< ULTIMATE.start_~~right~~idx current) [2023-07-03 17:50:08,277 INFO L180 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'prev := 0;' is: true [2023-07-03 17:50:08,287 INFO L180 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'idx := current;' is: false [2023-07-03 17:50:08,289 INFO L180 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,290 INFO L180 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,291 INFO L180 IndependenceChecker]: instantiated independence condition for 'current := current + 1;' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,297 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'prev := data;' is: true [2023-07-03 17:50:08,298 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'assume data > prev;' is: true [2023-07-03 17:50:08,299 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'assume true;' is: true [2023-07-03 17:50:08,301 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'havoc data;' is: true [2023-07-03 17:50:08,303 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'prev := 0;' is: true [2023-07-03 17:50:08,314 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'current := current + 1;' is: false [2023-07-03 17:50:08,315 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'notifications := notifications[current := data];' is: true [2023-07-03 17:50:08,320 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'assume true;' is: true [2023-07-03 17:50:08,320 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'assume idx < current;' is: true [2023-07-03 17:50:08,324 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'prev := 0;' is: true [2023-07-03 17:50:08,325 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'idx := current;' is: true [2023-07-03 17:50:08,326 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,329 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,330 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := current;' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,342 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'prev := data;' is: true [2023-07-03 17:50:08,343 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume data > prev;' is: true [2023-07-03 17:50:08,344 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume true;' is: true [2023-07-03 17:50:08,344 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'havoc data;' is: true [2023-07-03 17:50:08,345 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'prev := 0;' is: true [2023-07-03 17:50:08,346 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'current := current + 1;' is: true [2023-07-03 17:50:08,347 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'notifications := notifications[current := data];' is: true [2023-07-03 17:50:08,348 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume true;' is: true [2023-07-03 17:50:08,349 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume idx < current;' is: true [2023-07-03 17:50:08,349 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'prev := 0;' is: true [2023-07-03 17:50:08,350 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'idx := current;' is: true [2023-07-03 17:50:08,351 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,352 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,353 INFO L180 IndependenceChecker]: instantiated independence condition for 'prev := 0;' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,357 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'prev := data;' is: true [2023-07-03 17:50:08,358 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume data > prev;' is: true [2023-07-03 17:50:08,358 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2023-07-03 17:50:08,359 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'havoc data;' is: true [2023-07-03 17:50:08,360 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'prev := 0;' is: true [2023-07-03 17:50:08,360 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'current := current + 1;' is: true [2023-07-03 17:50:08,361 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'notifications := notifications[current := data];' is: true [2023-07-03 17:50:08,362 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2023-07-03 17:50:08,363 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume idx < current;' is: true [2023-07-03 17:50:08,363 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'prev := 0;' is: true [2023-07-03 17:50:08,364 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := current;' is: true [2023-07-03 17:50:08,365 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,366 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,366 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,371 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'prev := data;' is: true [2023-07-03 17:50:08,371 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'assume data > prev;' is: true [2023-07-03 17:50:08,372 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'assume true;' is: true [2023-07-03 17:50:08,373 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'havoc data;' is: true [2023-07-03 17:50:08,374 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'prev := 0;' is: true [2023-07-03 17:50:08,375 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'current := current + 1;' is: true [2023-07-03 17:50:08,376 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'notifications := notifications[current := data];' is: true [2023-07-03 17:50:08,377 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'assume true;' is: true [2023-07-03 17:50:08,378 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'assume idx < current;' is: true [2023-07-03 17:50:08,379 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'prev := 0;' is: true [2023-07-03 17:50:08,379 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'idx := current;' is: true [2023-07-03 17:50:08,380 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,381 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,382 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume idx < current;' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,386 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'prev := data;' is: true [2023-07-03 17:50:08,387 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'assume data > prev;' is: true [2023-07-03 17:50:08,388 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'assume true;' is: true [2023-07-03 17:50:08,388 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'havoc data;' is: true [2023-07-03 17:50:08,389 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'prev := 0;' is: true [2023-07-03 17:50:08,390 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'current := current + 1;' is: true [2023-07-03 17:50:08,402 INFO L351 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 [2023-07-03 17:50:08,416 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'notifications := notifications[current := data];' is: (not (= ULTIMATE.start_~~left~~idx current)) [2023-07-03 17:50:08,418 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'assume true;' is: true [2023-07-03 17:50:08,419 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'assume idx < current;' is: true [2023-07-03 17:50:08,420 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'prev := 0;' is: true [2023-07-03 17:50:08,420 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'idx := current;' is: true [2023-07-03 17:50:08,421 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,422 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,423 INFO L180 IndependenceChecker]: instantiated independence condition for 'msg := notifications[idx];' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,427 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'prev := data;' is: true [2023-07-03 17:50:08,428 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume data > prev;' is: true [2023-07-03 17:50:08,429 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume true;' is: true [2023-07-03 17:50:08,430 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'havoc data;' is: true [2023-07-03 17:50:08,431 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'prev := 0;' is: true [2023-07-03 17:50:08,433 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'current := current + 1;' is: true [2023-07-03 17:50:08,434 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'notifications := notifications[current := data];' is: true [2023-07-03 17:50:08,435 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume true;' is: true [2023-07-03 17:50:08,436 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume idx < current;' is: true [2023-07-03 17:50:08,437 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'prev := 0;' is: true [2023-07-03 17:50:08,438 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'idx := current;' is: true [2023-07-03 17:50:08,439 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,440 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,441 INFO L180 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,444 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'prev := data;' is: true [2023-07-03 17:50:08,445 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'assume data > prev;' is: true [2023-07-03 17:50:08,445 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'assume true;' is: true [2023-07-03 17:50:08,446 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'havoc data;' is: true [2023-07-03 17:50:08,447 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'prev := 0;' is: true [2023-07-03 17:50:08,448 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'current := current + 1;' is: true [2023-07-03 17:50:08,449 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'notifications := notifications[current := data];' is: true [2023-07-03 17:50:08,449 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'assume true;' is: true [2023-07-03 17:50:08,450 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'assume idx < current;' is: true [2023-07-03 17:50:08,451 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'prev := 0;' is: true [2023-07-03 17:50:08,452 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'idx := current;' is: true [2023-07-03 17:50:08,452 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'assume true;prev := msg;' is: true [2023-07-03 17:50:08,453 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'idx := idx + 1;' is: true [2023-07-03 17:50:08,454 INFO L180 IndependenceChecker]: instantiated independence condition for 'assume true;prev := msg;' and 'msg := notifications[idx];' is: true [2023-07-03 17:50:08,483 INFO L201 PluginConnector]: Adding new model notify-listeners.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 03.07 05:50:08 HornClauseAST [2023-07-03 17:50:08,483 INFO L131 PluginConnector]: ------------------------ END IcfgToChc---------------------------- [2023-07-03 17:50:08,483 INFO L112 PluginConnector]: ------------------------ChcSmtPrinter---------------------------- [2023-07-03 17:50:08,484 INFO L270 PluginConnector]: Initializing ChcSmtPrinter... [2023-07-03 17:50:08,484 INFO L274 PluginConnector]: ChcSmtPrinter initialized [2023-07-03 17:50:08,484 INFO L184 PluginConnector]: Executing the observer ChcSmtPrinterObserver from plugin ChcSmtPrinter for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 03.07 05:50:08" (1/1) ... [2023-07-03 17:50:08,485 INFO L192 hcSmtPrinterObserver]: Writing to file /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/threadmodular/regression/notify-listeners/CHC_conditional_notify-listeners.bpl_UID13005908823325589808.smt2 [2023-07-03 17:50:08,506 INFO L131 PluginConnector]: ------------------------ END ChcSmtPrinter---------------------------- [2023-07-03 17:50:08,506 INFO L112 PluginConnector]: ------------------------ChcSolver---------------------------- [2023-07-03 17:50:08,506 INFO L270 PluginConnector]: Initializing ChcSolver... [2023-07-03 17:50:08,507 INFO L274 PluginConnector]: ChcSolver initialized [2023-07-03 17:50:08,508 INFO L184 PluginConnector]: Executing the observer ChcSolverObserver from plugin ChcSolver for "notify-listeners.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 03.07 05:50:08" (1/1) ... [2023-07-03 17:50:08,508 INFO L89 GolemChcScript]: Writing script to file /tmp/golem_14012657293142797480.smt2 [2023-07-03 17:50:08,516 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/golem [2023-07-03 17:50:08,526 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/golem --print-witness /tmp/golem_14012657293142797480.smt2 (exit command is null, workingDir is null) [2023-07-03 17:50:08,532 FATAL L? ?]: An unrecoverable error occured during an interaction with an SMT solver: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: golem (MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/golem --print-witness /tmp/golem_14012657293142797480.smt2 (2) without exit command) Received EOF on stdin. No stderr output. at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:262) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parseCheckSatResult(Executor.java:281) at de.uni_freiburg.informatik.ultimate.lib.chc.GolemChcScript.solve(GolemChcScript.java:108) at de.uni_freiburg.informatik.ultimate.lib.chc.GolemChcScript.solve(GolemChcScript.java:80) at de.uni_freiburg.informatik.ultimate.plugins.chcsolver.ChcSolverObserver.process(ChcSolverObserver.java:86) 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) Caused by: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: EOF at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1518) 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:258) ... 17 more [2023-07-03 17:50:08,537 INFO L158 Benchmark]: Toolchain (without parser) took 862.31ms. Allocated memory is still 339.7MB. Free memory was 296.9MB in the beginning and 248.5MB in the end (delta: 48.4MB). Peak memory consumption was 50.0MB. Max. memory is 15.0GB. [2023-07-03 17:50:08,537 INFO L158 Benchmark]: Boogie PL CUP Parser took 0.11ms. Allocated memory is still 339.7MB. Free memory was 298.0MB in the beginning and 297.9MB in the end (delta: 139.8kB). There was no memory consumed. Max. memory is 15.0GB. [2023-07-03 17:50:08,538 INFO L158 Benchmark]: Boogie Preprocessor took 22.54ms. Allocated memory is still 339.7MB. Free memory was 296.9MB in the beginning and 294.9MB in the end (delta: 2.0MB). Peak memory consumption was 2.1MB. Max. memory is 15.0GB. [2023-07-03 17:50:08,538 INFO L158 Benchmark]: RCFGBuilder took 148.32ms. Allocated memory is still 339.7MB. Free memory was 294.9MB in the beginning and 286.4MB in the end (delta: 8.5MB). Peak memory consumption was 8.4MB. Max. memory is 15.0GB. [2023-07-03 17:50:08,538 INFO L158 Benchmark]: IcfgToChc took 636.36ms. Allocated memory is still 339.7MB. Free memory was 286.3MB in the beginning and 258.4MB in the end (delta: 27.9MB). Peak memory consumption was 26.9MB. Max. memory is 15.0GB. [2023-07-03 17:50:08,539 INFO L158 Benchmark]: ChcSmtPrinter took 22.55ms. Allocated memory is still 339.7MB. Free memory was 258.4MB in the beginning and 251.5MB in the end (delta: 6.9MB). Peak memory consumption was 6.3MB. Max. memory is 15.0GB. [2023-07-03 17:50:08,539 INFO L158 Benchmark]: ChcSolver took 29.33ms. Allocated memory is still 339.7MB. Free memory was 251.5MB in the beginning and 248.5MB in the end (delta: 3.0MB). Peak memory consumption was 4.2MB. Max. memory is 15.0GB. [2023-07-03 17:50:08,544 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### [2023-07-03 17:50:08,535 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/golem --print-witness /tmp/golem_14012657293142797480.smt2 (2)] Waiting until timeout for monitored process --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.11ms. Allocated memory is still 339.7MB. Free memory was 298.0MB in the beginning and 297.9MB in the end (delta: 139.8kB). There was no memory consumed. Max. memory is 15.0GB. * Boogie Preprocessor took 22.54ms. Allocated memory is still 339.7MB. Free memory was 296.9MB in the beginning and 294.9MB in the end (delta: 2.0MB). Peak memory consumption was 2.1MB. Max. memory is 15.0GB. * RCFGBuilder took 148.32ms. Allocated memory is still 339.7MB. Free memory was 294.9MB in the beginning and 286.4MB in the end (delta: 8.5MB). Peak memory consumption was 8.4MB. Max. memory is 15.0GB. * IcfgToChc took 636.36ms. Allocated memory is still 339.7MB. Free memory was 286.3MB in the beginning and 258.4MB in the end (delta: 27.9MB). Peak memory consumption was 26.9MB. Max. memory is 15.0GB. * ChcSmtPrinter took 22.55ms. Allocated memory is still 339.7MB. Free memory was 258.4MB in the beginning and 251.5MB in the end (delta: 6.9MB). Peak memory consumption was 6.3MB. Max. memory is 15.0GB. * ChcSolver took 29.33ms. Allocated memory is still 339.7MB. Free memory was 251.5MB in the beginning and 248.5MB in the end (delta: 3.0MB). Peak memory consumption was 4.2MB. Max. memory is 15.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.chcsolver: - ExceptionOrErrorResult: SMTLIBException: golem (MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/golem --print-witness /tmp/golem_14012657293142797480.smt2 (2) without exit command) Received EOF on stdin. No stderr output. de.uni_freiburg.informatik.ultimate.plugins.chcsolver: SMTLIBException: golem (MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/golem --print-witness /tmp/golem_14012657293142797480.smt2 (2) without exit command) Received EOF on stdin. No stderr output.: de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:262) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2023-07-03 17:50:08,556 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/golem --print-witness /tmp/golem_14012657293142797480.smt2 (2)] Ended with exit code 134 [2023-07-03 17:50:08,564 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...