./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-wmm/safe000_power.opt.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --validate ./goblint.2024-08-08_07-59-58.files/protection-local/safe000_power.opt.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version c091e2ee Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/GemCutterReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/pthread-wmm/safe000_power.opt.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe000_power.opt.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --witnessparser.only.consider.loop.invariants false --- Real Ultimate output --- This is Ultimate 0.2.4-tmp.fs.goblint-validation-c091e2e-m [2024-08-14 10:26:08,769 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:26:08,847 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf [2024-08-14 10:26:08,853 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:26:08,855 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:26:08,883 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:26:08,884 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:26:08,884 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:26:08,885 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:26:08,885 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:26:08,886 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:26:08,886 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:26:08,886 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:26:08,887 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:26:08,887 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:26:08,888 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:26:08,888 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-08-14 10:26:08,889 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:26:08,890 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:26:08,890 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:26:08,890 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:26:08,894 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:26:08,895 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:26:08,895 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:26:08,895 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:26:08,896 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:26:08,896 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:26:08,897 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:26:08,897 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:26:08,897 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:26:08,898 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:26:08,898 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:26:08,899 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:26:08,899 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:26:08,899 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-08-14 10:26:08,899 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:26:08,900 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-08-14 10:26:08,900 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:26:08,900 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:26:08,900 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:26:08,901 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:26:08,901 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:26:08,901 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode 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/UGemCutter-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.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false [2024-08-14 10:26:09,131 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:26:09,156 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:26:09,159 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:26:09,161 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:26:09,162 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:26:09,163 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/./goblint.2024-08-08_07-59-58.files/protection-local/safe000_power.opt.yml/witness.yml [2024-08-14 10:26:09,539 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:26:09,541 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:26:09,541 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe000_power.opt.i [2024-08-14 10:26:10,967 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:26:11,246 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:26:11,249 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe000_power.opt.i [2024-08-14 10:26:11,270 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/0d67ea941/fdefc38cb5f64f3aad8793df10b48a0c/FLAG21565ce32 [2024-08-14 10:26:11,548 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/0d67ea941/fdefc38cb5f64f3aad8793df10b48a0c [2024-08-14 10:26:11,548 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:26:11,549 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:26:11,550 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:26:11,551 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:26:11,556 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:26:11,557 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:26:09" (1/2) ... [2024-08-14 10:26:11,558 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7638338d and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:26:11, skipping insertion in model container [2024-08-14 10:26:11,558 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:26:09" (1/2) ... [2024-08-14 10:26:11,559 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@710dc7c9 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:26:11, skipping insertion in model container [2024-08-14 10:26:11,559 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:26:11" (2/2) ... [2024-08-14 10:26:11,560 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7638338d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:11, skipping insertion in model container [2024-08-14 10:26:11,560 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:26:11" (2/2) ... [2024-08-14 10:26:11,560 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:26:11,887 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:26:11,889 INFO L97 edCorrectnessWitness]: Location invariant before [L808-L808] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,889 INFO L97 edCorrectnessWitness]: Location invariant before [L782-L782] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,889 INFO L97 edCorrectnessWitness]: Location invariant before [L864-L864] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,889 INFO L97 edCorrectnessWitness]: Location invariant before [L789-L789] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,889 INFO L97 edCorrectnessWitness]: Location invariant before [L860-L860] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,890 INFO L97 edCorrectnessWitness]: Location invariant before [L811-L811] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,890 INFO L97 edCorrectnessWitness]: Location invariant before [L825-L825] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,890 INFO L97 edCorrectnessWitness]: Location invariant before [L871-L871] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,890 INFO L97 edCorrectnessWitness]: Location invariant before [L763-L763] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,890 INFO L97 edCorrectnessWitness]: Location invariant before [L838-L838] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,890 INFO L97 edCorrectnessWitness]: Location invariant before [L775-L775] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,891 INFO L97 edCorrectnessWitness]: Location invariant before [L831-L831] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,891 INFO L97 edCorrectnessWitness]: Location invariant before [L828-L828] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,891 INFO L97 edCorrectnessWitness]: Location invariant before [L760-L760] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,891 INFO L97 edCorrectnessWitness]: Location invariant before [L818-L818] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:11,959 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:26:12,170 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe000_power.opt.i[951,964] [2024-08-14 10:26:12,346 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:26:12,367 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:26:12,380 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe000_power.opt.i[951,964] Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local [2024-08-14 10:26:12,539 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:26:12,579 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:26:12,580 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:12 WrapperNode [2024-08-14 10:26:12,580 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:26:12,581 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:26:12,581 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:26:12,581 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:26:12,589 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:12" (1/1) ... [2024-08-14 10:26:12,626 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:12" (1/1) ... [2024-08-14 10:26:12,678 INFO L138 Inliner]: procedures = 175, calls = 121, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 267 [2024-08-14 10:26:12,678 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:26:12,679 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:26:12,679 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:26:12,682 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:26:12,691 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:12" (1/1) ... [2024-08-14 10:26:12,692 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:12" (1/1) ... [2024-08-14 10:26:12,701 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:12" (1/1) ... [2024-08-14 10:26:12,702 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:12" (1/1) ... [2024-08-14 10:26:12,732 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:12" (1/1) ... [2024-08-14 10:26:12,739 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:12" (1/1) ... [2024-08-14 10:26:12,746 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:12" (1/1) ... [2024-08-14 10:26:12,755 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:12" (1/1) ... [2024-08-14 10:26:12,761 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:26:12,762 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:26:12,762 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:26:12,763 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:26:12,766 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:12" (1/1) ... [2024-08-14 10:26:12,772 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:26:12,781 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:26:12,797 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2024-08-14 10:26:12,803 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2024-08-14 10:26:12,839 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-08-14 10:26:12,839 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-08-14 10:26:12,840 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:26:12,840 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:26:12,840 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:26:12,840 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:26:12,840 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:26:12,841 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:26:12,841 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:26:12,841 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:26:12,841 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-08-14 10:26:12,841 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:26:12,841 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:26:12,841 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:26:12,844 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-08-14 10:26:13,006 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:26:13,008 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:26:13,929 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:26:13,929 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:26:13,956 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder has thrown an exception: de.uni_freiburg.informatik.ultimate.core.model.models.annotation.IAnnotations$UnmergeableAnnotationsException: Cannot merge class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo with class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo at de.uni_freiburg.informatik.ultimate.core.model.models.annotation.IAnnotations.merge(IAnnotations.java:78) at de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo.merge(AtomicBlockInfo.java:61) at de.uni_freiburg.informatik.ultimate.core.model.models.ModelUtils.copyAnnotationsFiltered(ModelUtils.java:165) at de.uni_freiburg.informatik.ultimate.core.model.models.ModelUtils.copyAnnotations(ModelUtils.java:66) at de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.cfg.CfgBuilder$LargeBlockEncoding.composeSequential(CfgBuilder.java:1879) at de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.cfg.CfgBuilder$LargeBlockEncoding.(CfgBuilder.java:1743) at de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.cfg.CfgBuilder.createIcfg(CfgBuilder.java:301) at de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBuilderObserver.process(RCFGBuilderObserver.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) [2024-08-14 10:26:13,962 INFO L158 Benchmark]: Toolchain (without parser) took 2411.30ms. Allocated memory is still 270.5MB. Free memory was 225.8MB in the beginning and 224.1MB in the end (delta: 1.7MB). Peak memory consumption was 151.0MB. Max. memory is 16.1GB. [2024-08-14 10:26:13,962 INFO L158 Benchmark]: Witness Parser took 0.24ms. Allocated memory is still 155.2MB. Free memory was 106.2MB in the beginning and 106.1MB in the end (delta: 159.5kB). There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:26:13,963 INFO L158 Benchmark]: CDTParser took 0.87ms. Allocated memory is still 155.2MB. Free memory is still 98.5MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:26:13,965 INFO L158 Benchmark]: CACSL2BoogieTranslator took 1029.91ms. Allocated memory is still 270.5MB. Free memory was 225.8MB in the beginning and 149.2MB in the end (delta: 76.5MB). Peak memory consumption was 77.6MB. Max. memory is 16.1GB. [2024-08-14 10:26:13,965 INFO L158 Benchmark]: Boogie Procedure Inliner took 97.26ms. Allocated memory is still 270.5MB. Free memory was 149.2MB in the beginning and 145.0MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:26:13,966 INFO L158 Benchmark]: Boogie Preprocessor took 82.88ms. Allocated memory is still 270.5MB. Free memory was 145.0MB in the beginning and 141.9MB in the end (delta: 3.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-08-14 10:26:13,966 INFO L158 Benchmark]: RCFGBuilder took 1197.46ms. Allocated memory is still 270.5MB. Free memory was 141.9MB in the beginning and 224.1MB in the end (delta: -82.2MB). Peak memory consumption was 67.1MB. Max. memory is 16.1GB. [2024-08-14 10:26:13,970 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Witness Parser took 0.24ms. Allocated memory is still 155.2MB. Free memory was 106.2MB in the beginning and 106.1MB in the end (delta: 159.5kB). There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.87ms. Allocated memory is still 155.2MB. Free memory is still 98.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 1029.91ms. Allocated memory is still 270.5MB. Free memory was 225.8MB in the beginning and 149.2MB in the end (delta: 76.5MB). Peak memory consumption was 77.6MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 97.26ms. Allocated memory is still 270.5MB. Free memory was 149.2MB in the beginning and 145.0MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 82.88ms. Allocated memory is still 270.5MB. Free memory was 145.0MB in the beginning and 141.9MB in the end (delta: 3.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 1197.46ms. Allocated memory is still 270.5MB. Free memory was 141.9MB in the beginning and 224.1MB in the end (delta: -82.2MB). Peak memory consumption was 67.1MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder: - ExceptionOrErrorResult: UnmergeableAnnotationsException: Cannot merge class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo with class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder: UnmergeableAnnotationsException: Cannot merge class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo with class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo: de.uni_freiburg.informatik.ultimate.core.model.models.annotation.IAnnotations.merge(IAnnotations.java:78) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2024-08-14 10:26:14,000 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/GemCutterReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/pthread-wmm/safe000_power.opt.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe000_power.opt.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Bitvector.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --witnessparser.only.consider.loop.invariants false --- Real Ultimate output --- This is Ultimate 0.2.4-tmp.fs.goblint-validation-c091e2e-m [2024-08-14 10:26:16,159 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:26:16,232 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Bitvector.epf [2024-08-14 10:26:16,238 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:26:16,238 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:26:16,270 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:26:16,271 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:26:16,271 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:26:16,272 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:26:16,272 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:26:16,273 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:26:16,273 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:26:16,274 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:26:16,274 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:26:16,275 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:26:16,275 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:26:16,275 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:26:16,276 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:26:16,276 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:26:16,276 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:26:16,277 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:26:16,280 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-08-14 10:26:16,280 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:26:16,281 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-08-14 10:26:16,281 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:26:16,281 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:26:16,281 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:26:16,281 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:26:16,282 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:26:16,282 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:26:16,282 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:26:16,282 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:26:16,282 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:26:16,283 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:26:16,283 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:26:16,283 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-08-14 10:26:16,283 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:26:16,284 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-08-14 10:26:16,284 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:26:16,284 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:26:16,284 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:26:16,287 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:26:16,287 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:26:16,287 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-08-14 10:26:16,287 INFO L153 SettingsManager]: * Logic for external solver=AUFBV 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/UGemCutter-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.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false [2024-08-14 10:26:16,616 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:26:16,636 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:26:16,639 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:26:16,640 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:26:16,641 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:26:16,645 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/./goblint.2024-08-08_07-59-58.files/protection-local/safe000_power.opt.yml/witness.yml [2024-08-14 10:26:16,988 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:26:16,989 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:26:16,990 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe000_power.opt.i [2024-08-14 10:26:18,514 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:26:18,808 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:26:18,809 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe000_power.opt.i [2024-08-14 10:26:18,824 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/a91958da7/d9f7047bcb0e41adb10eba1c13006767/FLAG0535169cd [2024-08-14 10:26:18,840 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/a91958da7/d9f7047bcb0e41adb10eba1c13006767 [2024-08-14 10:26:18,840 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:26:18,846 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:26:18,847 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:26:18,847 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:26:18,852 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:26:18,853 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:26:16" (1/2) ... [2024-08-14 10:26:18,853 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2485f495 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:26:18, skipping insertion in model container [2024-08-14 10:26:18,854 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:26:16" (1/2) ... [2024-08-14 10:26:18,855 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@60b7bb69 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:26:18, skipping insertion in model container [2024-08-14 10:26:18,855 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:26:18" (2/2) ... [2024-08-14 10:26:18,855 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2485f495 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:18, skipping insertion in model container [2024-08-14 10:26:18,855 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:26:18" (2/2) ... [2024-08-14 10:26:18,855 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:26:19,159 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:26:19,160 INFO L97 edCorrectnessWitness]: Location invariant before [L811-L811] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,160 INFO L97 edCorrectnessWitness]: Location invariant before [L860-L860] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,160 INFO L97 edCorrectnessWitness]: Location invariant before [L825-L825] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,161 INFO L97 edCorrectnessWitness]: Location invariant before [L831-L831] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,161 INFO L97 edCorrectnessWitness]: Location invariant before [L818-L818] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,161 INFO L97 edCorrectnessWitness]: Location invariant before [L775-L775] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,161 INFO L97 edCorrectnessWitness]: Location invariant before [L828-L828] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,161 INFO L97 edCorrectnessWitness]: Location invariant before [L782-L782] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,161 INFO L97 edCorrectnessWitness]: Location invariant before [L838-L838] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,161 INFO L97 edCorrectnessWitness]: Location invariant before [L789-L789] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,162 INFO L97 edCorrectnessWitness]: Location invariant before [L871-L871] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,162 INFO L97 edCorrectnessWitness]: Location invariant before [L763-L763] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,162 INFO L97 edCorrectnessWitness]: Location invariant before [L760-L760] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,162 INFO L97 edCorrectnessWitness]: Location invariant before [L808-L808] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,162 INFO L97 edCorrectnessWitness]: Location invariant before [L864-L864] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:19,205 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:26:19,409 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe000_power.opt.i[951,964] [2024-08-14 10:26:19,607 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:26:19,622 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:26:19,637 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe000_power.opt.i[951,964] Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local [2024-08-14 10:26:19,830 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:26:19,883 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:26:19,884 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:19 WrapperNode [2024-08-14 10:26:19,884 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:26:19,885 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:26:19,885 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:26:19,885 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:26:19,892 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:19" (1/1) ... [2024-08-14 10:26:19,937 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:19" (1/1) ... [2024-08-14 10:26:19,982 INFO L138 Inliner]: procedures = 179, calls = 121, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 268 [2024-08-14 10:26:19,983 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:26:19,984 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:26:19,984 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:26:19,984 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:26:19,997 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:19" (1/1) ... [2024-08-14 10:26:19,997 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:19" (1/1) ... [2024-08-14 10:26:20,008 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:19" (1/1) ... [2024-08-14 10:26:20,009 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:19" (1/1) ... [2024-08-14 10:26:20,039 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:19" (1/1) ... [2024-08-14 10:26:20,047 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:19" (1/1) ... [2024-08-14 10:26:20,052 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:19" (1/1) ... [2024-08-14 10:26:20,055 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:19" (1/1) ... [2024-08-14 10:26:20,062 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:26:20,067 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:26:20,068 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:26:20,068 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:26:20,069 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:19" (1/1) ... [2024-08-14 10:26:20,078 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:26:20,094 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:26:20,117 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2024-08-14 10:26:20,121 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2024-08-14 10:26:20,154 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2024-08-14 10:26:20,155 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:26:20,155 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:26:20,155 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2024-08-14 10:26:20,155 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2024-08-14 10:26:20,155 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE4 [2024-08-14 10:26:20,155 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:26:20,155 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:26:20,155 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:26:20,156 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:26:20,156 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:26:20,156 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:26:20,156 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:26:20,156 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:26:20,156 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:26:20,158 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-08-14 10:26:20,330 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:26:20,332 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:26:21,320 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:26:21,321 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:26:21,338 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder has thrown an exception: de.uni_freiburg.informatik.ultimate.core.model.models.annotation.IAnnotations$UnmergeableAnnotationsException: Cannot merge class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo with class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo at de.uni_freiburg.informatik.ultimate.core.model.models.annotation.IAnnotations.merge(IAnnotations.java:78) at de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo.merge(AtomicBlockInfo.java:61) at de.uni_freiburg.informatik.ultimate.core.model.models.ModelUtils.copyAnnotationsFiltered(ModelUtils.java:165) at de.uni_freiburg.informatik.ultimate.core.model.models.ModelUtils.copyAnnotations(ModelUtils.java:66) at de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.cfg.CfgBuilder$LargeBlockEncoding.composeSequential(CfgBuilder.java:1879) at de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.cfg.CfgBuilder$LargeBlockEncoding.(CfgBuilder.java:1743) at de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.cfg.CfgBuilder.createIcfg(CfgBuilder.java:301) at de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBuilderObserver.process(RCFGBuilderObserver.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) [2024-08-14 10:26:21,346 INFO L158 Benchmark]: Toolchain (without parser) took 2498.99ms. Allocated memory was 88.1MB in the beginning and 107.0MB in the end (delta: 18.9MB). Free memory was 59.2MB in the beginning and 61.9MB in the end (delta: -2.7MB). Peak memory consumption was 43.2MB. Max. memory is 16.1GB. [2024-08-14 10:26:21,346 INFO L158 Benchmark]: Witness Parser took 0.19ms. Allocated memory is still 56.6MB. Free memory was 33.5MB in the beginning and 33.4MB in the end (delta: 73.4kB). There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:26:21,347 INFO L158 Benchmark]: CDTParser took 0.17ms. Allocated memory is still 56.6MB. Free memory is still 36.9MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:26:21,347 INFO L158 Benchmark]: CACSL2BoogieTranslator took 1037.22ms. Allocated memory is still 88.1MB. Free memory was 58.8MB in the beginning and 34.1MB in the end (delta: 24.7MB). Peak memory consumption was 26.6MB. Max. memory is 16.1GB. [2024-08-14 10:26:21,348 INFO L158 Benchmark]: Boogie Procedure Inliner took 97.66ms. Allocated memory was 88.1MB in the beginning and 107.0MB in the end (delta: 18.9MB). Free memory was 34.1MB in the beginning and 77.5MB in the end (delta: -43.4MB). Peak memory consumption was 5.2MB. Max. memory is 16.1GB. [2024-08-14 10:26:21,348 INFO L158 Benchmark]: Boogie Preprocessor took 78.96ms. Allocated memory is still 107.0MB. Free memory was 77.5MB in the beginning and 73.3MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:26:21,349 INFO L158 Benchmark]: RCFGBuilder took 1276.18ms. Allocated memory is still 107.0MB. Free memory was 73.3MB in the beginning and 61.9MB in the end (delta: 11.5MB). Peak memory consumption was 38.6MB. Max. memory is 16.1GB. [2024-08-14 10:26:21,352 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Witness Parser took 0.19ms. Allocated memory is still 56.6MB. Free memory was 33.5MB in the beginning and 33.4MB in the end (delta: 73.4kB). There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.17ms. Allocated memory is still 56.6MB. Free memory is still 36.9MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 1037.22ms. Allocated memory is still 88.1MB. Free memory was 58.8MB in the beginning and 34.1MB in the end (delta: 24.7MB). Peak memory consumption was 26.6MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 97.66ms. Allocated memory was 88.1MB in the beginning and 107.0MB in the end (delta: 18.9MB). Free memory was 34.1MB in the beginning and 77.5MB in the end (delta: -43.4MB). Peak memory consumption was 5.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 78.96ms. Allocated memory is still 107.0MB. Free memory was 77.5MB in the beginning and 73.3MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 1276.18ms. Allocated memory is still 107.0MB. Free memory was 73.3MB in the beginning and 61.9MB in the end (delta: 11.5MB). Peak memory consumption was 38.6MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder: - ExceptionOrErrorResult: UnmergeableAnnotationsException: Cannot merge class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo with class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder: UnmergeableAnnotationsException: Cannot merge class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo with class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo: de.uni_freiburg.informatik.ultimate.core.model.models.annotation.IAnnotations.merge(IAnnotations.java:78) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2024-08-14 10:26:21,384 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: UnmergeableAnnotationsException: Cannot merge class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo with class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo