/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 SEQ_COMP --icfgtochc.conditional.independence NONE --chcsolver.timeout 5000 -s ../../../trunk/examples/concurrent/bpl/parameterized/inc-dec-geq0/../ThreadModularVerifier.Settings.epf -tc ../../../trunk/examples/concurrent/bpl/parameterized/ThreadModularVerifier.xml --chcsolver.chc.solver.backend GOLEM --icfgtochc.use.nondeterministic.sleep.update.encoding true -i ../../../trunk/examples/concurrent/bpl/parameterized/inc-dec-geq0/inc-dec-geq0.bpl -------------------------------------------------------------------------------- This is Ultimate 0.3.0-wip.dk.sleep-threadmodular-07d3146-m [2025-01-03 21:46:37,491 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-03 21:46:37,547 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/inc-dec-geq0/../ThreadModularVerifier.Settings.epf [2025-01-03 21:46:37,557 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-03 21:46:37,558 INFO L151 SettingsManager]: Preferences of ChcSolver differ from their defaults: [2025-01-03 21:46:37,558 INFO L153 SettingsManager]: * Produce CHC model if query is SAT=false [2025-01-03 21:46:37,558 INFO L153 SettingsManager]: * CHC solver backend=Z3 [2025-01-03 21:46:37,558 INFO L153 SettingsManager]: * Produce derivation if query is UNSAT=false [2025-01-03 21:46:37,559 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-03 21:46:37,559 INFO L153 SettingsManager]: * Size of a code block=OneNontrivialStatement [2025-01-03 21:46:37,559 INFO L153 SettingsManager]: * Add additional assume for each assert=false [2025-01-03 21:46:37,559 INFO L151 SettingsManager]: Preferences of IcfgToChc differ from their defaults: [2025-01-03 21:46:37,559 INFO L153 SettingsManager]: * Conditional Independence=SUFFICIENT [2025-01-03 21:46:37,559 INFO L151 SettingsManager]: Preferences of ChcSmtPrinter differ from their defaults: [2025-01-03 21:46:37,559 INFO L153 SettingsManager]: * Save file in source directory=true [2025-01-03 21:46:37,561 INFO L153 SettingsManager]: * Use automatic naming=true [2025-01-03 21:46:37,561 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 -> SEQ_COMP Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.icfgtochc: Conditional Independence -> NONE Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.chcsolver: Timeout -> 5000 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.icfgtochc: Use nondeterministic sleep update encoding -> true [2025-01-03 21:46:37,902 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-03 21:46:37,922 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-03 21:46:37,925 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-03 21:46:37,925 INFO L270 PluginConnector]: Initializing Boogie PL CUP Parser... [2025-01-03 21:46:37,926 INFO L274 PluginConnector]: Boogie PL CUP Parser initialized [2025-01-03 21:46:37,927 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/inc-dec-geq0/inc-dec-geq0.bpl [2025-01-03 21:46:37,927 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/inc-dec-geq0/inc-dec-geq0.bpl' [2025-01-03 21:46:37,939 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-03 21:46:37,940 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2025-01-03 21:46:37,940 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-03 21:46:37,940 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-03 21:46:37,941 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-03 21:46:37,950 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 09:46:37" (1/1) ... [2025-01-03 21:46:37,951 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 09:46:37" (1/1) ... [2025-01-03 21:46:37,954 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 09:46:37" (1/1) ... [2025-01-03 21:46:37,954 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 09:46:37" (1/1) ... [2025-01-03 21:46:37,955 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 09:46:37" (1/1) ... [2025-01-03 21:46:37,955 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 09:46:37" (1/1) ... [2025-01-03 21:46:37,955 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 09:46:37" (1/1) ... [2025-01-03 21:46:37,956 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 09:46:37" (1/1) ... [2025-01-03 21:46:37,956 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 09:46:37" (1/1) ... [2025-01-03 21:46:37,957 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-03 21:46:37,957 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-03 21:46:37,958 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-03 21:46:37,958 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-03 21:46:37,958 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 03.01 09:46:37" (1/1) ... [2025-01-03 21:46:37,964 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-01-03 21:46:37,973 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 [2025-01-03 21:46:37,984 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-01-03 21:46:37,987 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2025-01-03 21:46:38,012 INFO L124 BoogieDeclarations]: Specification and implementation of procedure thread given in one single declaration [2025-01-03 21:46:38,012 INFO L130 BoogieDeclarations]: Found specification of procedure thread [2025-01-03 21:46:38,013 INFO L138 BoogieDeclarations]: Found implementation of procedure thread [2025-01-03 21:46:38,043 INFO L234 CfgBuilder]: Building ICFG [2025-01-03 21:46:38,044 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-03 21:46:38,046 WARN L773 $ProcedureCfgBuilder]: Label in the middle of a codeblock. [2025-01-03 21:46:38,079 INFO L? ?]: Removed 0 outVars from TransFormulas that were not future-live. [2025-01-03 21:46:38,079 INFO L283 CfgBuilder]: Performing block encoding [2025-01-03 21:46:38,087 INFO L304 CfgBuilder]: Using library mode [2025-01-03 21:46:38,087 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-01-03 21:46:38,087 INFO L201 PluginConnector]: Adding new model inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 03.01 09:46:38 BoogieIcfgContainer [2025-01-03 21:46:38,087 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-03 21:46:38,088 INFO L112 PluginConnector]: ------------------------IcfgToChc---------------------------- [2025-01-03 21:46:38,088 INFO L270 PluginConnector]: Initializing IcfgToChc... [2025-01-03 21:46:38,088 INFO L274 PluginConnector]: IcfgToChc initialized [2025-01-03 21:46:38,090 INFO L184 PluginConnector]: Executing the observer IcfgToChcObserver from plugin IcfgToChc for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 03.01 09:46:38" (1/1) ... [2025-01-03 21:46:38,148 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;' is: true [2025-01-03 21:46:38,150 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'assume true;' is: true [2025-01-03 21:46:38,161 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'x := x - 1;' is: true [2025-01-03 21:46:38,166 INFO L161 IndependenceChecker]: instantiated independence condition for '<[ dummy edge: assume true; ]>' and 'x := x + 1;' is: true [2025-01-03 21:46:38,183 INFO L161 IndependenceChecker]: instantiated independence condition for 'x := x + 1;' and 'assume true;' is: true [2025-01-03 21:46:38,189 INFO L161 IndependenceChecker]: instantiated independence condition for 'x := x + 1;' and 'assume true;' is: true [2025-01-03 21:46:38,210 INFO L161 IndependenceChecker]: instantiated independence condition for 'x := x + 1;' and 'x := x - 1;' is: true [2025-01-03 21:46:38,222 INFO L161 IndependenceChecker]: instantiated independence condition for 'x := x + 1;' and 'x := x + 1;' is: true [2025-01-03 21:46:38,245 INFO L161 IndependenceChecker]: instantiated independence condition for 'x := x - 1;' and 'assume true;' is: true [2025-01-03 21:46:38,250 INFO L161 IndependenceChecker]: instantiated independence condition for 'x := x - 1;' and 'assume true;' is: true [2025-01-03 21:46:38,256 INFO L161 IndependenceChecker]: instantiated independence condition for 'x := x - 1;' and 'x := x - 1;' is: true [2025-01-03 21:46:38,261 INFO L161 IndependenceChecker]: instantiated independence condition for 'x := x - 1;' and 'x := x + 1;' is: true [2025-01-03 21:46:38,268 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-03 21:46:38,269 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-03 21:46:38,273 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'x := x - 1;' is: true [2025-01-03 21:46:38,278 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'x := x + 1;' is: true [2025-01-03 21:46:38,283 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-03 21:46:38,284 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'assume true;' is: true [2025-01-03 21:46:38,289 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'x := x - 1;' is: true [2025-01-03 21:46:38,293 INFO L161 IndependenceChecker]: instantiated independence condition for 'assume true;' and 'x := x + 1;' is: true [2025-01-03 21:46:38,333 INFO L201 PluginConnector]: Adding new model inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 03.01 09:46:38 HornClauseAST [2025-01-03 21:46:38,334 INFO L131 PluginConnector]: ------------------------ END IcfgToChc---------------------------- [2025-01-03 21:46:38,334 INFO L112 PluginConnector]: ------------------------ChcSmtPrinter---------------------------- [2025-01-03 21:46:38,334 INFO L270 PluginConnector]: Initializing ChcSmtPrinter... [2025-01-03 21:46:38,334 INFO L274 PluginConnector]: ChcSmtPrinter initialized [2025-01-03 21:46:38,338 INFO L184 PluginConnector]: Executing the observer ChcSmtPrinterObserver from plugin ChcSmtPrinter for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 03.01 09:46:38" (1/1) ... [2025-01-03 21:46:38,339 INFO L192 hcSmtPrinterObserver]: Writing to file /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/parameterized/inc-dec-geq0/CHC_inc-dec-geq0.bpl_UID989437795042984796.smt2 [2025-01-03 21:46:38,361 INFO L131 PluginConnector]: ------------------------ END ChcSmtPrinter---------------------------- [2025-01-03 21:46:38,361 INFO L112 PluginConnector]: ------------------------ChcSolver---------------------------- [2025-01-03 21:46:38,361 INFO L270 PluginConnector]: Initializing ChcSolver... [2025-01-03 21:46:38,361 INFO L274 PluginConnector]: ChcSolver initialized [2025-01-03 21:46:38,363 INFO L184 PluginConnector]: Executing the observer ChcSolverObserver from plugin ChcSolver for "inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.plugins.icfgtochc OTHER 03.01 09:46:38" (1/1) ... [2025-01-03 21:46:38,364 INFO L89 GolemChcScript]: Writing script to file /tmp/golem_7939708597009853961.smt2 [2025-01-03 21:46:38,373 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/golem [2025-01-03 21:46:38,375 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/golem /tmp/golem_7939708597009853961.smt2 (exit command is null, workingDir is null) [2025-01-03 21:46:38,378 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/golem /tmp/golem_7939708597009853961.smt2 (2)] Waiting until timeout for monitored process [2025-01-03 21:46:42,257 INFO L201 PluginConnector]: Adding new model inc-dec-geq0.bpl de.uni_freiburg.informatik.ultimate.plugins.chcsolver OTHER 03.01 09:46:42 ChcSolution [2025-01-03 21:46:42,257 INFO L131 PluginConnector]: ------------------------ END ChcSolver---------------------------- [2025-01-03 21:46:42,258 INFO L158 Benchmark]: Toolchain (without parser) took 4317.68ms. Allocated memory is still 167.8MB. Free memory was 148.0MB in the beginning and 139.4MB in the end (delta: 8.6MB). Peak memory consumption was 1.4MB. Max. memory is 22.0GB. [2025-01-03 21:46:42,264 INFO L158 Benchmark]: Boogie PL CUP Parser took 0.20ms. Allocated memory is still 167.8MB. Free memory is still 148.8MB. There was no memory consumed. Max. memory is 22.0GB. [2025-01-03 21:46:42,265 INFO L158 Benchmark]: Boogie Preprocessor took 16.55ms. Allocated memory is still 167.8MB. Free memory was 148.0MB in the beginning and 146.6MB in the end (delta: 1.3MB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-03 21:46:42,265 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UGemCutter-linux/golem /tmp/golem_7939708597009853961.smt2 (2)] Ended with exit code 0 [2025-01-03 21:46:42,268 INFO L158 Benchmark]: RCFGBuilder took 130.06ms. Allocated memory is still 167.8MB. Free memory was 146.6MB in the beginning and 139.3MB in the end (delta: 7.3MB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-03 21:46:42,269 INFO L158 Benchmark]: IcfgToChc took 245.60ms. Allocated memory is still 167.8MB. Free memory was 139.3MB in the beginning and 142.0MB in the end (delta: -2.7MB). Peak memory consumption was 19.2MB. Max. memory is 22.0GB. [2025-01-03 21:46:42,269 INFO L158 Benchmark]: ChcSmtPrinter took 26.67ms. Allocated memory is still 167.8MB. Free memory was 142.0MB in the beginning and 140.1MB in the end (delta: 1.9MB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-03 21:46:42,269 INFO L158 Benchmark]: ChcSolver took 3895.60ms. Allocated memory is still 167.8MB. Free memory was 140.1MB in the beginning and 139.4MB in the end (delta: 746.8kB). There was no memory consumed. Max. memory is 22.0GB. [2025-01-03 21:46:42,271 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.20ms. Allocated memory is still 167.8MB. Free memory is still 148.8MB. There was no memory consumed. Max. memory is 22.0GB. * Boogie Preprocessor took 16.55ms. Allocated memory is still 167.8MB. Free memory was 148.0MB in the beginning and 146.6MB in the end (delta: 1.3MB). There was no memory consumed. Max. memory is 22.0GB. * RCFGBuilder took 130.06ms. Allocated memory is still 167.8MB. Free memory was 146.6MB in the beginning and 139.3MB in the end (delta: 7.3MB). There was no memory consumed. Max. memory is 22.0GB. * IcfgToChc took 245.60ms. Allocated memory is still 167.8MB. Free memory was 139.3MB in the beginning and 142.0MB in the end (delta: -2.7MB). Peak memory consumption was 19.2MB. Max. memory is 22.0GB. * ChcSmtPrinter took 26.67ms. Allocated memory is still 167.8MB. Free memory was 142.0MB in the beginning and 140.1MB in the end (delta: 1.9MB). There was no memory consumed. Max. memory is 22.0GB. * ChcSolver took 3895.60ms. Allocated memory is still 167.8MB. Free memory was 140.1MB in the beginning and 139.4MB in the end (delta: 746.8kB). 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. [2025-01-03 21:46:42,288 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...