/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.thread-modular.proof.level 2 --icfgtochc.preference.order.used.for.reduction LOCKSTEP -s ../../../trunk/examples/concurrent/bpl/parameterized/equalsum-ghost/../ThreadModularVerifier.Settings.epf -tc ../../../trunk/examples/concurrent/bpl/parameterized/ThreadModularVerifier.xml --chcsolver.chc.solver.backend ELDARICA --icfgtochc.conditional.independence NECESSARY_AND_SUFFICIENT -i ../../../trunk/examples/concurrent/bpl/parameterized/equalsum-ghost/equalsum-ghost.bpl -------------------------------------------------------------------------------- This is Ultimate 0.3.0-wip.dk.sleep-threadmodular-07d3146-m [2025-01-04 03:32:55,378 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-04 03:32:55,472 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/equalsum-ghost/../ThreadModularVerifier.Settings.epf [2025-01-04 03:32:55,484 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-04 03:32:55,485 INFO L151 SettingsManager]: Preferences of ChcSolver differ from their defaults: [2025-01-04 03:32:55,485 INFO L153 SettingsManager]: * Produce CHC model if query is SAT=false [2025-01-04 03:32:55,485 INFO L153 SettingsManager]: * CHC solver backend=Z3 [2025-01-04 03:32:55,485 INFO L153 SettingsManager]: * Produce derivation if query is UNSAT=false [2025-01-04 03:32:55,485 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-04 03:32:55,486 INFO L153 SettingsManager]: * Size of a code block=OneNontrivialStatement [2025-01-04 03:32:55,486 INFO L153 SettingsManager]: * Add additional assume for each assert=false [2025-01-04 03:32:55,487 INFO L151 SettingsManager]: Preferences of IcfgToChc differ from their defaults: [2025-01-04 03:32:55,487 INFO L153 SettingsManager]: * Conditional Independence=SUFFICIENT [2025-01-04 03:32:55,487 INFO L151 SettingsManager]: Preferences of ChcSmtPrinter differ from their defaults: [2025-01-04 03:32:55,487 INFO L153 SettingsManager]: * Save file in source directory=true [2025-01-04 03:32:55,487 INFO L153 SettingsManager]: * Use automatic naming=true [2025-01-04 03:32:55,487 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: 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.chcsolver: CHC solver backend -> ELDARICA Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Conditional Independence -> NECESSARY_AND_SUFFICIENT [2025-01-04 03:32:55,755 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-04 03:32:55,760 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-04 03:32:55,761 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-04 03:32:55,762 INFO L270 PluginConnector]: Initializing Boogie PL CUP Parser... [2025-01-04 03:32:55,763 INFO L274 PluginConnector]: Boogie PL CUP Parser initialized [2025-01-04 03:32:55,764 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/equalsum-ghost/equalsum-ghost.bpl [2025-01-04 03:32:55,764 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/equalsum-ghost/equalsum-ghost.bpl' [2025-01-04 03:32:55,778 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-04 03:32:55,779 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2025-01-04 03:32:55,780 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-04 03:32:55,780 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-04 03:32:55,780 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-04 03:32:55,789 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:32:55" (1/1) ... [2025-01-04 03:32:55,790 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:32:55" (1/1) ... [2025-01-04 03:32:55,793 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:32:55" (1/1) ... [2025-01-04 03:32:55,793 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:32:55" (1/1) ... [2025-01-04 03:32:55,794 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:32:55" (1/1) ... [2025-01-04 03:32:55,794 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:32:55" (1/1) ... [2025-01-04 03:32:55,796 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:32:55" (1/1) ... [2025-01-04 03:32:55,796 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:32:55" (1/1) ... [2025-01-04 03:32:55,797 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:32:55" (1/1) ... [2025-01-04 03:32:55,797 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-04 03:32:55,798 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-04 03:32:55,798 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-04 03:32:55,798 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-04 03:32:55,799 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 04.01 03:32:55" (1/1) ... [2025-01-04 03:32:55,802 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-04 03:32:55,809 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 [2025-01-04 03:32:55,818 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-01-04 03:32:55,822 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2025-01-04 03:32:55,839 INFO L124 BoogieDeclarations]: Specification and implementation of procedure ULTIMATE.start given in one single declaration [2025-01-04 03:32:55,840 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-04 03:32:55,840 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-04 03:32:55,871 INFO L234 CfgBuilder]: Building ICFG [2025-01-04 03:32:55,872 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-04 03:32:55,874 WARN L773 $ProcedureCfgBuilder]: Label in the middle of a codeblock. [2025-01-04 03:32:55,922 INFO L? ?]: Removed 4 outVars from TransFormulas that were not future-live. [2025-01-04 03:32:55,923 INFO L283 CfgBuilder]: Performing block encoding [2025-01-04 03:32:55,943 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-04 03:32:55,943 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-01-04 03:32:55,943 INFO L201 PluginConnector]: Adding new model equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 04.01 03:32:55 BoogieIcfgContainer [2025-01-04 03:32:55,943 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-04 03:32:55,944 INFO L112 PluginConnector]: ------------------------IcfgToChc---------------------------- [2025-01-04 03:32:55,944 INFO L270 PluginConnector]: Initializing IcfgToChc... [2025-01-04 03:32:55,944 INFO L274 PluginConnector]: IcfgToChc initialized [2025-01-04 03:32:55,945 INFO L184 PluginConnector]: Executing the observer IcfgToChcObserver from plugin IcfgToChc for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 04.01 03:32:55" (1/1) ... [2025-01-04 03:32:56,130 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' is: true [2025-01-04 03:32:56,132 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;' is: true [2025-01-04 03:32:56,138 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'sum := sum + A[idx];' is: true [2025-01-04 03:32:56,143 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'sum := 0;' is: true [2025-01-04 03:32:56,152 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'id := id_ctr;id_ctr := id_ctr + 1;' is: true [2025-01-04 03:32:56,153 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;' is: true [2025-01-04 03:32:56,157 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'idx := idx + 1;' is: true [2025-01-04 03:32:56,161 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume !(idx < n);' is: true [2025-01-04 03:32:56,168 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume idx < n;' is: true [2025-01-04 03:32:56,177 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'idx := 0;' is: true [2025-01-04 03:32:56,347 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := id_ctr;id_ctr := id_ctr + 1;' and 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' is: true [2025-01-04 03:32:56,356 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := id_ctr;id_ctr := id_ctr + 1;' and 'assume true;' is: true [2025-01-04 03:32:56,374 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := id_ctr;id_ctr := id_ctr + 1;' and 'sum := sum + A[idx];' is: true [2025-01-04 03:32:56,386 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := id_ctr;id_ctr := id_ctr + 1;' and 'sum := 0;' is: true [2025-01-04 03:32:56,401 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := id_ctr;id_ctr := id_ctr + 1;' and 'id := id_ctr;id_ctr := id_ctr + 1;' is: false [2025-01-04 03:32:56,408 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := id_ctr;id_ctr := id_ctr + 1;' and 'assume true;' is: true [2025-01-04 03:32:56,419 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := id_ctr;id_ctr := id_ctr + 1;' and 'idx := idx + 1;' is: true [2025-01-04 03:32:56,430 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := id_ctr;id_ctr := id_ctr + 1;' and 'assume !(idx < n);' is: true [2025-01-04 03:32:56,443 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := id_ctr;id_ctr := id_ctr + 1;' and 'assume idx < n;' is: true [2025-01-04 03:32:56,453 INFO L161 IndependenceChecker]: instantiated independence condition for 'id := id_ctr;id_ctr := id_ctr + 1;' and 'idx := 0;' is: true [2025-01-04 03:32:56,516 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := 0;' and 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' is: true [2025-01-04 03:32:56,519 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := 0;' and 'assume true;' is: true [2025-01-04 03:32:56,526 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := 0;' and 'sum := sum + A[idx];' is: true [2025-01-04 03:32:56,531 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := 0;' and 'sum := 0;' is: true [2025-01-04 03:32:56,543 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := 0;' and 'id := id_ctr;id_ctr := id_ctr + 1;' is: true [2025-01-04 03:32:56,546 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := 0;' and 'assume true;' is: true [2025-01-04 03:32:56,554 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := 0;' and 'idx := idx + 1;' is: true [2025-01-04 03:32:56,559 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := 0;' and 'assume !(idx < n);' is: true [2025-01-04 03:32:56,568 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := 0;' and 'assume idx < n;' is: true [2025-01-04 03:32:56,574 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := 0;' and 'idx := 0;' is: true [2025-01-04 03:32:56,641 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' is: true [2025-01-04 03:32:56,644 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'assume true;' is: true [2025-01-04 03:32:56,650 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'sum := sum + A[idx];' is: true [2025-01-04 03:32:56,655 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'sum := 0;' is: true [2025-01-04 03:32:56,662 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'id := id_ctr;id_ctr := id_ctr + 1;' is: true [2025-01-04 03:32:56,664 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'assume true;' is: true [2025-01-04 03:32:56,671 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'idx := idx + 1;' is: true [2025-01-04 03:32:56,677 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'assume !(idx < n);' is: true [2025-01-04 03:32:56,682 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'assume idx < n;' is: true [2025-01-04 03:32:56,686 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := 0;' and 'idx := 0;' is: true [2025-01-04 03:32:56,736 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !(idx < n);' and 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' is: true [2025-01-04 03:32:56,740 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !(idx < n);' and 'assume true;' is: true [2025-01-04 03:32:56,746 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !(idx < n);' and 'sum := sum + A[idx];' is: true [2025-01-04 03:32:56,751 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !(idx < n);' and 'sum := 0;' is: true [2025-01-04 03:32:56,759 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !(idx < n);' and 'id := id_ctr;id_ctr := id_ctr + 1;' is: true [2025-01-04 03:32:56,761 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !(idx < n);' and 'assume true;' is: true [2025-01-04 03:32:56,767 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !(idx < n);' and 'idx := idx + 1;' is: true [2025-01-04 03:32:56,771 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !(idx < n);' and 'assume !(idx < n);' is: true [2025-01-04 03:32:56,777 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !(idx < n);' and 'assume idx < n;' is: true [2025-01-04 03:32:56,781 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume !(idx < n);' and 'idx := 0;' is: true [2025-01-04 03:32:56,832 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < n;' and 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' is: true [2025-01-04 03:32:56,835 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < n;' and 'assume true;' is: true [2025-01-04 03:32:56,841 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < n;' and 'sum := sum + A[idx];' is: true [2025-01-04 03:32:56,845 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < n;' and 'sum := 0;' is: true [2025-01-04 03:32:56,854 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < n;' and 'id := id_ctr;id_ctr := id_ctr + 1;' is: true [2025-01-04 03:32:56,857 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < n;' and 'assume true;' is: true [2025-01-04 03:32:56,863 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < n;' and 'idx := idx + 1;' is: true [2025-01-04 03:32:56,868 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < n;' and 'assume !(idx < n);' is: true [2025-01-04 03:32:56,875 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < n;' and 'assume idx < n;' is: true [2025-01-04 03:32:56,880 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume idx < n;' and 'idx := 0;' is: true [2025-01-04 03:32:57,036 INFO L161 IndependenceChecker]: instantiated independence condition for 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' and 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' is: (not (and (= i ULTIMATE.start_~~left~~id) (= i ULTIMATE.start_~~right~~id) (not (= ULTIMATE.start_~~right~~sum ULTIMATE.start_~~left~~sum)))) [2025-01-04 03:32:57,065 INFO L161 IndependenceChecker]: instantiated independence condition for 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' and 'assume true;' is: true [2025-01-04 03:32:57,107 INFO L161 IndependenceChecker]: instantiated independence condition for 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' and 'sum := sum + A[idx];' is: true [2025-01-04 03:32:57,151 INFO L161 IndependenceChecker]: instantiated independence condition for 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' and 'sum := 0;' is: true [2025-01-04 03:32:57,198 INFO L161 IndependenceChecker]: instantiated independence condition for 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' and 'id := id_ctr;id_ctr := id_ctr + 1;' is: true [2025-01-04 03:32:57,230 INFO L161 IndependenceChecker]: instantiated independence condition for 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' and 'assume true;' is: true [2025-01-04 03:32:57,277 INFO L161 IndependenceChecker]: instantiated independence condition for 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' and 'idx := idx + 1;' is: true [2025-01-04 03:32:57,322 INFO L161 IndependenceChecker]: instantiated independence condition for 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' and 'assume !(idx < n);' is: true [2025-01-04 03:32:57,372 INFO L161 IndependenceChecker]: instantiated independence condition for 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' and 'assume idx < n;' is: true [2025-01-04 03:32:57,404 INFO L161 IndependenceChecker]: instantiated independence condition for 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' and 'idx := 0;' is: true [2025-01-04 03:32:57,449 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := sum + A[idx];' and 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' is: true [2025-01-04 03:32:57,452 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := sum + A[idx];' and 'assume true;' is: true [2025-01-04 03:32:57,458 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := sum + A[idx];' and 'sum := sum + A[idx];' is: true [2025-01-04 03:32:57,463 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := sum + A[idx];' and 'sum := 0;' is: true [2025-01-04 03:32:57,470 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := sum + A[idx];' and 'id := id_ctr;id_ctr := id_ctr + 1;' is: true [2025-01-04 03:32:57,472 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := sum + A[idx];' and 'assume true;' is: true [2025-01-04 03:32:57,478 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := sum + A[idx];' and 'idx := idx + 1;' is: true [2025-01-04 03:32:57,482 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := sum + A[idx];' and 'assume !(idx < n);' is: true [2025-01-04 03:32:57,487 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := sum + A[idx];' and 'assume idx < n;' is: true [2025-01-04 03:32:57,494 INFO L161 IndependenceChecker]: instantiated independence condition for 'sum := sum + A[idx];' and 'idx := 0;' is: true [2025-01-04 03:32:57,525 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' is: true [2025-01-04 03:32:57,526 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-04 03:32:57,530 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'sum := sum + A[idx];' is: true [2025-01-04 03:32:57,532 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'sum := 0;' is: true [2025-01-04 03:32:57,538 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'id := id_ctr;id_ctr := id_ctr + 1;' is: true [2025-01-04 03:32:57,539 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-04 03:32:57,542 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := idx + 1;' is: true [2025-01-04 03:32:57,544 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume !(idx < n);' is: true [2025-01-04 03:32:57,546 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume idx < n;' is: true [2025-01-04 03:32:57,549 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := 0;' is: true [2025-01-04 03:32:57,589 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' is: true [2025-01-04 03:32:57,592 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume true;' is: true [2025-01-04 03:32:57,596 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'sum := sum + A[idx];' is: true [2025-01-04 03:32:57,600 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'sum := 0;' is: true [2025-01-04 03:32:57,608 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'id := id_ctr;id_ctr := id_ctr + 1;' is: true [2025-01-04 03:32:57,611 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume true;' is: true [2025-01-04 03:32:57,615 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'idx := idx + 1;' is: true [2025-01-04 03:32:57,619 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume !(idx < n);' is: true [2025-01-04 03:32:57,624 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'assume idx < n;' is: true [2025-01-04 03:32:57,630 INFO L161 IndependenceChecker]: instantiated independence condition for 'idx := idx + 1;' and 'idx := 0;' is: true [2025-01-04 03:32:57,658 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'BeginParallelComposition{ParallelCodeBlock0: assume !(id == i);ParallelCodeBlock1: assume id == i;sum_i := sum;terminated_i := true;}EndParallelComposition' is: true [2025-01-04 03:32:57,659 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-04 03:32:57,661 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'sum := sum + A[idx];' is: true [2025-01-04 03:32:57,663 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'sum := 0;' is: true [2025-01-04 03:32:57,667 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'id := id_ctr;id_ctr := id_ctr + 1;' is: true [2025-01-04 03:32:57,667 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-04 03:32:57,670 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := idx + 1;' is: true [2025-01-04 03:32:57,672 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume !(idx < n);' is: true [2025-01-04 03:32:57,674 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume idx < n;' is: true [2025-01-04 03:32:57,676 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'idx := 0;' is: true [2025-01-04 03:32:57,710 INFO L201 PluginConnector]: Adding new model equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 04.01 03:32:57 HornClauseAST [2025-01-04 03:32:57,710 INFO L131 PluginConnector]: ------------------------ END IcfgToChc---------------------------- [2025-01-04 03:32:57,710 INFO L112 PluginConnector]: ------------------------ChcSmtPrinter---------------------------- [2025-01-04 03:32:57,710 INFO L270 PluginConnector]: Initializing ChcSmtPrinter... [2025-01-04 03:32:57,710 INFO L274 PluginConnector]: ChcSmtPrinter initialized [2025-01-04 03:32:57,711 INFO L184 PluginConnector]: Executing the observer ChcSmtPrinterObserver from plugin ChcSmtPrinter for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 04.01 03:32:57" (1/1) ... [2025-01-04 03:32:57,712 INFO L192 hcSmtPrinterObserver]: Writing to file /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/equalsum-ghost/CHC_equalsum-ghost.bpl_UID1949225346845763649.smt2 [2025-01-04 03:32:57,741 INFO L131 PluginConnector]: ------------------------ END ChcSmtPrinter---------------------------- [2025-01-04 03:32:57,743 INFO L112 PluginConnector]: ------------------------ChcSolver---------------------------- [2025-01-04 03:32:57,743 INFO L270 PluginConnector]: Initializing ChcSolver... [2025-01-04 03:32:57,743 INFO L274 PluginConnector]: ChcSolver initialized [2025-01-04 03:32:57,745 INFO L184 PluginConnector]: Executing the observer ChcSolverObserver from plugin ChcSolver for "equalsum-ghost.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 04.01 03:32:57" (1/1) ... [2025-01-04 03:32:57,747 INFO L99 EldaricaCliChcScript]: Writing script to file /tmp/eldarica_1603851188783017041.smt2 [2025-01-04 03:32:57,769 ERROR L181 MonitoredProcess]: Could not determine absolute path of external process, hoping that OS will resolve eld [2025-01-04 03:32:57,769 INFO L189 MonitoredProcess]: No working directory specified, using eld [2025-01-04 03:32:57,771 INFO L229 MonitoredProcess]: Starting monitored process 2 with eld -disj /tmp/eldarica_1603851188783017041.smt2 (exit command is null, workingDir is null) [2025-01-04 03:32:57,776 INFO L327 MonitoredProcess]: [MP eld -disj /tmp/eldarica_1603851188783017041.smt2 (2)] Waiting until timeout for monitored process [2025-01-04 03:52:19,712 FATAL L? ?]: An unrecoverable error occured during an interaction with an SMT solver: de.uni_freiburg.informatik.ultimate.logic.SMTLIBException: out of memory at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1511) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser.do_action(Parser.java:701) at com.github.jhoenicke.javacup.runtime.LRParser.parse(LRParser.java:383) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parse(Executor.java:268) at de.uni_freiburg.informatik.ultimate.smtsolver.external.Executor.parseCheckSatResult(Executor.java:291) at de.uni_freiburg.informatik.ultimate.lib.chc.EldaricaCliChcScript.solve(EldaricaCliChcScript.java:122) at de.uni_freiburg.informatik.ultimate.lib.chc.EldaricaCliChcScript.solve(EldaricaCliChcScript.java:90) at de.uni_freiburg.informatik.ultimate.plugins.chcsolver.ChcSolverObserver.process(ChcSolverObserver.java:88) at de.uni_freiburg.informatik.ultimate.core.coreplugin.modelwalker.DFSTreeWalker.runObserver(DFSTreeWalker.java:65) at de.uni_freiburg.informatik.ultimate.core.coreplugin.modelwalker.BaseWalker.runObserver(BaseWalker.java:93) at de.uni_freiburg.informatik.ultimate.core.coreplugin.modelwalker.BaseWalker.run(BaseWalker.java:86) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:166) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:150) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:127) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:233) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:227) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:144) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:106) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:319) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2025-01-04 03:52:19,717 INFO L158 Benchmark]: Toolchain (without parser) took 1163937.58ms. Allocated memory was 167.8MB in the beginning and 251.7MB in the end (delta: 83.9MB). Free memory was 144.8MB in the beginning and 223.4MB in the end (delta: -78.6MB). Peak memory consumption was 137.2MB. Max. memory is 22.0GB. [2025-01-04 03:52:19,718 INFO L158 Benchmark]: Boogie PL CUP Parser took 0.22ms. Allocated memory is still 167.8MB. Free memory was 145.7MB in the beginning and 145.7MB in the end (delta: 26.8kB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-04 03:52:19,719 INFO L158 Benchmark]: Boogie Preprocessor took 18.13ms. Allocated memory is still 167.8MB. Free memory was 144.7MB in the beginning and 143.4MB in the end (delta: 1.4MB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-04 03:52:19,719 INFO L158 Benchmark]: RCFGBuilder took 145.26ms. Allocated memory is still 167.8MB. Free memory was 143.3MB in the beginning and 134.1MB in the end (delta: 9.2MB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-04 03:52:19,720 INFO L158 Benchmark]: IcfgToChc took 1766.08ms. Allocated memory was 167.8MB in the beginning and 251.7MB in the end (delta: 83.9MB). Free memory was 134.1MB in the beginning and 110.9MB in the end (delta: 23.2MB). Peak memory consumption was 137.2MB. Max. memory is 22.0GB. [2025-01-04 03:52:19,720 INFO L158 Benchmark]: ChcSmtPrinter took 30.95ms. Allocated memory is still 251.7MB. Free memory was 110.9MB in the beginning and 103.7MB in the end (delta: 7.2MB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-04 03:52:19,720 INFO L158 Benchmark]: ChcSolver took 1161973.38ms. Allocated memory is still 251.7MB. Free memory was 103.7MB in the beginning and 223.4MB in the end (delta: -119.7MB). Peak memory consumption was 16.8MB. Max. memory is 22.0GB. [2025-01-04 03:52:19,721 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.22ms. Allocated memory is still 167.8MB. Free memory was 145.7MB in the beginning and 145.7MB in the end (delta: 26.8kB). There was no memory consumed. Max. memory is 22.0GB. * Boogie Preprocessor took 18.13ms. Allocated memory is still 167.8MB. Free memory was 144.7MB in the beginning and 143.4MB in the end (delta: 1.4MB). There was no memory consumed. Max. memory is 22.0GB. * RCFGBuilder took 145.26ms. Allocated memory is still 167.8MB. Free memory was 143.3MB in the beginning and 134.1MB in the end (delta: 9.2MB). There was no memory consumed. Max. memory is 22.0GB. * IcfgToChc took 1766.08ms. Allocated memory was 167.8MB in the beginning and 251.7MB in the end (delta: 83.9MB). Free memory was 134.1MB in the beginning and 110.9MB in the end (delta: 23.2MB). Peak memory consumption was 137.2MB. Max. memory is 22.0GB. * ChcSmtPrinter took 30.95ms. Allocated memory is still 251.7MB. Free memory was 110.9MB in the beginning and 103.7MB in the end (delta: 7.2MB). There was no memory consumed. Max. memory is 22.0GB. * ChcSolver took 1161973.38ms. Allocated memory is still 251.7MB. Free memory was 103.7MB in the beginning and 223.4MB in the end (delta: -119.7MB). Peak memory consumption was 16.8MB. Max. memory is 22.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.chcsolver: - ExceptionOrErrorResult: SMTLIBException: out of memory de.uni_freiburg.informatik.ultimate.plugins.chcsolver: SMTLIBException: out of memory: de.uni_freiburg.informatik.ultimate.smtsolver.external.Parser$Action$.CUP$do_action(Parser.java:1511) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2025-01-04 03:52:19,734 WARN L435 MonitoredProcess]: [MP eld -disj /tmp/eldarica_1603851188783017041.smt2 (2)] Forcibly destroying the process [2025-01-04 03:52:19,935 FATAL L548 MonitoredProcess]: [MP eld -disj /tmp/eldarica_1603851188783017041.smt2 (2)] Could not destroy process within 200 ms, abandoning it [2025-01-04 03:52:19,942 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...