./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-wmm/safe015_rmo.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --validate ./goblint.2024-08-08_07-59-58.files/protection-local/safe015_rmo.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/safe015_rmo.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe015_rmo.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:28:57,235 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:28:57,302 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf [2024-08-14 10:28:57,306 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:28:57,307 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:28:57,327 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:28:57,328 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:28:57,330 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:28:57,331 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:28:57,332 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:28:57,332 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:28:57,333 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:28:57,333 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:28:57,333 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:28:57,333 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:28:57,333 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:28:57,333 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-08-14 10:28:57,334 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:28:57,334 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:28:57,334 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:28:57,334 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:28:57,337 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:28:57,337 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:28:57,337 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:28:57,337 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:28:57,337 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:28:57,337 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:28:57,338 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:28:57,338 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:28:57,338 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:28:57,338 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:28:57,338 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:28:57,338 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:28:57,338 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:28:57,339 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-08-14 10:28:57,339 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:28:57,339 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-08-14 10:28:57,339 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:28:57,339 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:28:57,340 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:28:57,340 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:28:57,340 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:28:57,341 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:28:57,549 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:28:57,568 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:28:57,571 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:28:57,571 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:28:57,572 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:28:57,573 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/safe015_rmo.yml/witness.yml [2024-08-14 10:28:57,886 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:28:57,886 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:28:57,887 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe015_rmo.i [2024-08-14 10:28:59,174 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:28:59,408 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:28:59,408 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe015_rmo.i [2024-08-14 10:28:59,423 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/08402da76/8b7f819eeb0e4f2ea12e286ba52571e1/FLAGc010eda34 [2024-08-14 10:28:59,757 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/08402da76/8b7f819eeb0e4f2ea12e286ba52571e1 [2024-08-14 10:28:59,757 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:28:59,758 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:28:59,759 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:28:59,759 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:28:59,764 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:28:59,765 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:28:57" (1/2) ... [2024-08-14 10:28:59,765 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2f946d67 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:28:59, skipping insertion in model container [2024-08-14 10:28:59,766 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:28:57" (1/2) ... [2024-08-14 10:28:59,766 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@3aa94b7e and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:28:59, skipping insertion in model container [2024-08-14 10:28:59,767 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:28:59" (2/2) ... [2024-08-14 10:28:59,767 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2f946d67 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:28:59, skipping insertion in model container [2024-08-14 10:28:59,767 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:28:59" (2/2) ... [2024-08-14 10:28:59,767 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:29:00,011 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:29:00,012 INFO L97 edCorrectnessWitness]: Location invariant before [L762-L762] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,012 INFO L97 edCorrectnessWitness]: Location invariant before [L870-L870] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,012 INFO L97 edCorrectnessWitness]: Location invariant before [L859-L859] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,012 INFO L97 edCorrectnessWitness]: Location invariant before [L792-L792] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,013 INFO L97 edCorrectnessWitness]: Location invariant before [L863-L863] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,013 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_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,013 INFO L97 edCorrectnessWitness]: Location invariant before [L802-L802] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,013 INFO L97 edCorrectnessWitness]: Location invariant before [L759-L759] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,013 INFO L97 edCorrectnessWitness]: Location invariant before [L764-L764] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,013 INFO L97 edCorrectnessWitness]: Location invariant before [L795-L795] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,013 INFO L97 edCorrectnessWitness]: Location invariant before [L827-L827] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,014 INFO L97 edCorrectnessWitness]: Location invariant before [L780-L780] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,014 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_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,014 INFO L97 edCorrectnessWitness]: Location invariant before [L830-L830] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,014 INFO L97 edCorrectnessWitness]: Location invariant before [L837-L837] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,014 INFO L97 edCorrectnessWitness]: Location invariant before [L809-L809] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,054 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:29:00,206 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/safe015_rmo.i[988,1001] [2024-08-14 10:29:00,408 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:29:00,418 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:29:00,432 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/safe015_rmo.i[988,1001] 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 Start Parsing Local [2024-08-14 10:29:00,555 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:29:00,590 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:29:00,590 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:00 WrapperNode [2024-08-14 10:29:00,590 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:29:00,592 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:29:00,592 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:29:00,592 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:29:00,597 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:29:00" (1/1) ... [2024-08-14 10:29:00,625 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:29:00" (1/1) ... [2024-08-14 10:29:00,663 INFO L138 Inliner]: procedures = 175, calls = 168, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 219 [2024-08-14 10:29:00,666 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:29:00,671 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:29:00,671 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:29:00,671 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:29:00,679 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:00" (1/1) ... [2024-08-14 10:29:00,680 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:00" (1/1) ... [2024-08-14 10:29:00,685 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:00" (1/1) ... [2024-08-14 10:29:00,686 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:00" (1/1) ... [2024-08-14 10:29:00,703 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:00" (1/1) ... [2024-08-14 10:29:00,705 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:00" (1/1) ... [2024-08-14 10:29:00,714 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:00" (1/1) ... [2024-08-14 10:29:00,720 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:00" (1/1) ... [2024-08-14 10:29:00,727 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:29:00,728 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:29:00,728 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:29:00,728 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:29:00,730 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:00" (1/1) ... [2024-08-14 10:29:00,739 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:29:00,752 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:29:00,771 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:29:00,774 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:29:00,805 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-08-14 10:29:00,805 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-08-14 10:29:00,805 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:29:00,805 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:29:00,806 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:29:00,806 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:29:00,806 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:29:00,806 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:29:00,806 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:29:00,806 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:29:00,806 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-08-14 10:29:00,806 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:29:00,806 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:29:00,806 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:29:00,808 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:29:00,987 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:29:00,989 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:29:01,689 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:29:01,689 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:29:01,707 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:29:01,711 INFO L158 Benchmark]: Toolchain (without parser) took 1951.99ms. Allocated memory is still 165.7MB. Free memory was 118.9MB in the beginning and 113.3MB in the end (delta: 5.6MB). Peak memory consumption was 80.5MB. Max. memory is 16.1GB. [2024-08-14 10:29:01,711 INFO L158 Benchmark]: Witness Parser took 0.08ms. Allocated memory is still 104.9MB. Free memory is still 67.4MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:29:01,711 INFO L158 Benchmark]: CDTParser took 0.83ms. Allocated memory is still 165.7MB. Free memory is still 108.9MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:29:01,712 INFO L158 Benchmark]: CACSL2BoogieTranslator took 831.51ms. Allocated memory is still 165.7MB. Free memory was 118.9MB in the beginning and 113.8MB in the end (delta: 5.1MB). Peak memory consumption was 75.8MB. Max. memory is 16.1GB. [2024-08-14 10:29:01,713 INFO L158 Benchmark]: Boogie Procedure Inliner took 78.36ms. Allocated memory is still 165.7MB. Free memory was 113.8MB in the beginning and 110.6MB in the end (delta: 3.1MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:29:01,713 INFO L158 Benchmark]: Boogie Preprocessor took 56.93ms. Allocated memory is still 165.7MB. Free memory was 110.6MB in the beginning and 106.5MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:29:01,713 INFO L158 Benchmark]: RCFGBuilder took 981.56ms. Allocated memory is still 165.7MB. Free memory was 106.5MB in the beginning and 113.3MB in the end (delta: -6.8MB). Peak memory consumption was 65.5MB. Max. memory is 16.1GB. [2024-08-14 10:29:01,715 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.08ms. Allocated memory is still 104.9MB. Free memory is still 67.4MB. There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.83ms. Allocated memory is still 165.7MB. Free memory is still 108.9MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 831.51ms. Allocated memory is still 165.7MB. Free memory was 118.9MB in the beginning and 113.8MB in the end (delta: 5.1MB). Peak memory consumption was 75.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 78.36ms. Allocated memory is still 165.7MB. Free memory was 113.8MB in the beginning and 110.6MB in the end (delta: 3.1MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 56.93ms. Allocated memory is still 165.7MB. Free memory was 110.6MB in the beginning and 106.5MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 981.56ms. Allocated memory is still 165.7MB. Free memory was 106.5MB in the beginning and 113.3MB in the end (delta: -6.8MB). Peak memory consumption was 65.5MB. 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:29:01,738 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/safe015_rmo.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe015_rmo.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:29:03,632 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:29:03,696 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Bitvector.epf [2024-08-14 10:29:03,701 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:29:03,702 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:29:03,722 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:29:03,724 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:29:03,724 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:29:03,725 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:29:03,725 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:29:03,725 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:29:03,726 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:29:03,726 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:29:03,728 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:29:03,728 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:29:03,728 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:29:03,729 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:29:03,729 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:29:03,729 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:29:03,732 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:29:03,732 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:29:03,732 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-08-14 10:29:03,732 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:29:03,732 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-08-14 10:29:03,732 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:29:03,733 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:29:03,733 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:29:03,733 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:29:03,733 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:29:03,733 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:29:03,733 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:29:03,733 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:29:03,734 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:29:03,734 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:29:03,734 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:29:03,734 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-08-14 10:29:03,734 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:29:03,734 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-08-14 10:29:03,734 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:29:03,734 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:29:03,735 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:29:03,735 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:29:03,736 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:29:03,736 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-08-14 10:29:03,736 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:29:04,002 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:29:04,018 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:29:04,021 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:29:04,022 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:29:04,023 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:29:04,024 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe015_rmo.i [2024-08-14 10:29:05,371 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:29:05,639 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:29:05,639 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe015_rmo.i [2024-08-14 10:29:05,656 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/ae0e13cec/ff86a7c5dcc64c549719393c4d3cca25/FLAG9ae1c5e42 [2024-08-14 10:29:05,944 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/ae0e13cec/ff86a7c5dcc64c549719393c4d3cca25 [2024-08-14 10:29:05,946 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:29:05,946 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:29:05,947 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/safe015_rmo.yml/witness.yml [2024-08-14 10:29:06,293 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:29:06,294 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:29:06,295 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:29:06,295 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:29:06,299 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:29:06,300 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:29:05" (1/2) ... [2024-08-14 10:29:06,301 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7ea29d5b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:06, skipping insertion in model container [2024-08-14 10:29:06,301 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:29:05" (1/2) ... [2024-08-14 10:29:06,302 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@6349ac2e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:06, skipping insertion in model container [2024-08-14 10:29:06,302 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:29:06" (2/2) ... [2024-08-14 10:29:06,303 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7ea29d5b and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:06, skipping insertion in model container [2024-08-14 10:29:06,303 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:29:06" (2/2) ... [2024-08-14 10:29:06,303 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:29:06,559 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:29:06,560 INFO L97 edCorrectnessWitness]: Location invariant before [L802-L802] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,561 INFO L97 edCorrectnessWitness]: Location invariant before [L795-L795] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,561 INFO L97 edCorrectnessWitness]: Location invariant before [L830-L830] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,561 INFO L97 edCorrectnessWitness]: Location invariant before [L827-L827] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,561 INFO L97 edCorrectnessWitness]: Location invariant before [L762-L762] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,561 INFO L97 edCorrectnessWitness]: Location invariant before [L764-L764] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,561 INFO L97 edCorrectnessWitness]: Location invariant before [L780-L780] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,561 INFO L97 edCorrectnessWitness]: Location invariant before [L837-L837] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,561 INFO L97 edCorrectnessWitness]: Location invariant before [L759-L759] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,562 INFO L97 edCorrectnessWitness]: Location invariant before [L863-L863] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,562 INFO L97 edCorrectnessWitness]: Location invariant before [L809-L809] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,562 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_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,562 INFO L97 edCorrectnessWitness]: Location invariant before [L859-L859] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,562 INFO L97 edCorrectnessWitness]: Location invariant before [L870-L870] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,562 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_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,562 INFO L97 edCorrectnessWitness]: Location invariant before [L792-L792] (((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$w_buff0 == 0)) && (x$w_buff0_used == (_Bool)0)) && (x$w_buff1 == 0)) && (x$w_buff1_used == (_Bool)0)) && (__unbuffered_p2_EAX$read_delayed_var == 0 || (__unbuffered_p2_EAX$read_delayed_var == & x && ((*__unbuffered_p2_EAX$read_delayed_var == 0 || *__unbuffered_p2_EAX$read_delayed_var == 1) || *__unbuffered_p2_EAX$read_delayed_var == 2)))) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:06,599 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:29:06,743 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/safe015_rmo.i[988,1001] [2024-08-14 10:29:06,918 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:29:06,936 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:29:06,950 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/safe015_rmo.i[988,1001] 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 Start Parsing Local [2024-08-14 10:29:07,074 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:29:07,113 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:29:07,113 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:07 WrapperNode [2024-08-14 10:29:07,114 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:29:07,115 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:29:07,115 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:29:07,115 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:29:07,120 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:07" (1/1) ... [2024-08-14 10:29:07,141 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:07" (1/1) ... [2024-08-14 10:29:07,168 INFO L138 Inliner]: procedures = 179, calls = 168, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 220 [2024-08-14 10:29:07,168 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:29:07,169 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:29:07,169 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:29:07,169 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:29:07,176 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:07" (1/1) ... [2024-08-14 10:29:07,177 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:07" (1/1) ... [2024-08-14 10:29:07,182 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:07" (1/1) ... [2024-08-14 10:29:07,182 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:07" (1/1) ... [2024-08-14 10:29:07,199 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:07" (1/1) ... [2024-08-14 10:29:07,202 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:07" (1/1) ... [2024-08-14 10:29:07,206 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:07" (1/1) ... [2024-08-14 10:29:07,209 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:07" (1/1) ... [2024-08-14 10:29:07,215 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:29:07,216 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:29:07,216 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:29:07,217 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:29:07,217 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:07" (1/1) ... [2024-08-14 10:29:07,224 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:29:07,235 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:29:07,269 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:29:07,278 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:29:07,316 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2024-08-14 10:29:07,316 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:29:07,317 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:29:07,317 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2024-08-14 10:29:07,318 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2024-08-14 10:29:07,318 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE4 [2024-08-14 10:29:07,318 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:29:07,318 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:29:07,318 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:29:07,318 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:29:07,319 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:29:07,319 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:29:07,319 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:29:07,319 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:29:07,319 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:29:07,321 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:29:07,451 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:29:07,452 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:29:08,256 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:29:08,257 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:29:08,274 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:29:08,281 INFO L158 Benchmark]: Toolchain (without parser) took 1986.65ms. Allocated memory was 90.2MB in the beginning and 109.1MB in the end (delta: 18.9MB). Free memory was 50.7MB in the beginning and 56.0MB in the end (delta: -5.3MB). Peak memory consumption was 29.7MB. Max. memory is 16.1GB. [2024-08-14 10:29:08,282 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 71.3MB. Free memory is still 51.7MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:29:08,282 INFO L158 Benchmark]: Witness Parser took 0.09ms. Allocated memory is still 71.3MB. Free memory is still 50.5MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:29:08,284 INFO L158 Benchmark]: CACSL2BoogieTranslator took 818.53ms. Allocated memory is still 90.2MB. Free memory was 50.7MB in the beginning and 42.3MB in the end (delta: 8.4MB). Peak memory consumption was 18.1MB. Max. memory is 16.1GB. [2024-08-14 10:29:08,284 INFO L158 Benchmark]: Boogie Procedure Inliner took 53.74ms. Allocated memory is still 90.2MB. Free memory was 42.3MB in the beginning and 38.7MB in the end (delta: 3.6MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:29:08,285 INFO L158 Benchmark]: Boogie Preprocessor took 46.67ms. Allocated memory is still 90.2MB. Free memory was 38.7MB in the beginning and 34.6MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:29:08,286 INFO L158 Benchmark]: RCFGBuilder took 1063.68ms. Allocated memory was 90.2MB in the beginning and 109.1MB in the end (delta: 18.9MB). Free memory was 34.6MB in the beginning and 56.0MB in the end (delta: -21.4MB). Peak memory consumption was 13.7MB. Max. memory is 16.1GB. [2024-08-14 10:29:08,288 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.15ms. Allocated memory is still 71.3MB. Free memory is still 51.7MB. There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.09ms. Allocated memory is still 71.3MB. Free memory is still 50.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 818.53ms. Allocated memory is still 90.2MB. Free memory was 50.7MB in the beginning and 42.3MB in the end (delta: 8.4MB). Peak memory consumption was 18.1MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 53.74ms. Allocated memory is still 90.2MB. Free memory was 42.3MB in the beginning and 38.7MB in the end (delta: 3.6MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 46.67ms. Allocated memory is still 90.2MB. Free memory was 38.7MB in the beginning and 34.6MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 1063.68ms. Allocated memory was 90.2MB in the beginning and 109.1MB in the end (delta: 18.9MB). Free memory was 34.6MB in the beginning and 56.0MB in the end (delta: -21.4MB). Peak memory consumption was 13.7MB. 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:29:08,312 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 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