./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-wmm/safe019_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/safe019_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/safe019_power.opt.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe019_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:29:23,638 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:29:23,709 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf [2024-08-14 10:29:23,716 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:29:23,716 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:29:23,746 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:29:23,749 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:29:23,749 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:29:23,750 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:29:23,751 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:29:23,752 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:29:23,752 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:29:23,753 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:29:23,753 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:29:23,755 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:29:23,755 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:29:23,755 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-08-14 10:29:23,756 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:29:23,756 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:29:23,756 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:29:23,759 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:29:23,760 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:29:23,760 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:29:23,760 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:29:23,761 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:29:23,761 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:29:23,761 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:29:23,761 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:29:23,762 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:29:23,762 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:29:23,762 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:29:23,762 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:29:23,762 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:29:23,763 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:29:23,763 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-08-14 10:29:23,763 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:29:23,763 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-08-14 10:29:23,764 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:29:23,764 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:29:23,764 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:29:23,765 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:29:23,766 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:29:23,766 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:29:24,018 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:29:24,045 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:29:24,048 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:29:24,050 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:29:24,050 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:29:24,052 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/safe019_power.opt.yml/witness.yml [2024-08-14 10:29:24,445 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:29:24,445 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:29:24,446 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe019_power.opt.i [2024-08-14 10:29:25,954 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:29:26,216 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:29:26,217 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe019_power.opt.i [2024-08-14 10:29:26,231 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/07591e34b/dbd34d86803d4409abaf31ed7c685f6c/FLAGb2c6876ce [2024-08-14 10:29:26,247 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/07591e34b/dbd34d86803d4409abaf31ed7c685f6c [2024-08-14 10:29:26,247 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:29:26,248 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:29:26,249 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:29:26,249 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:29:26,254 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:29:26,254 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:24" (1/2) ... [2024-08-14 10:29:26,255 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@77b3a7ca and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:26, skipping insertion in model container [2024-08-14 10:29:26,255 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:24" (1/2) ... [2024-08-14 10:29:26,256 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@2f971434 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:26, skipping insertion in model container [2024-08-14 10:29:26,256 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:29:26" (2/2) ... [2024-08-14 10:29:26,256 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@77b3a7ca and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:26, skipping insertion in model container [2024-08-14 10:29:26,256 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:29:26" (2/2) ... [2024-08-14 10:29:26,257 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:29:26,638 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:29:26,639 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_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,640 INFO L97 edCorrectnessWitness]: Location invariant before [L769-L769] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,640 INFO L97 edCorrectnessWitness]: Location invariant before [L850-L850] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,640 INFO L97 edCorrectnessWitness]: Location invariant before [L843-L843] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,640 INFO L97 edCorrectnessWitness]: Location invariant before [L891-L891] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,640 INFO L97 edCorrectnessWitness]: Location invariant before [L807-L807] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,641 INFO L97 edCorrectnessWitness]: Location invariant before [L787-L787] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,641 INFO L97 edCorrectnessWitness]: Location invariant before [L895-L895] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,641 INFO L97 edCorrectnessWitness]: Location invariant before [L814-L814] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,641 INFO L97 edCorrectnessWitness]: Location invariant before [L821-L821] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,641 INFO L97 edCorrectnessWitness]: Location invariant before [L857-L857] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,642 INFO L97 edCorrectnessWitness]: Location invariant before [L902-L902] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,642 INFO L97 edCorrectnessWitness]: Location invariant before [L794-L794] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,642 INFO L97 edCorrectnessWitness]: Location invariant before [L867-L867] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,642 INFO L97 edCorrectnessWitness]: Location invariant before [L840-L840] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,642 INFO L97 edCorrectnessWitness]: Location invariant before [L785-L785] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,642 INFO L97 edCorrectnessWitness]: Location invariant before [L766-L766] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:26,696 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:29:26,905 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/safe019_power.opt.i[994,1007] [2024-08-14 10:29:27,094 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:29:27,109 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:29:27,126 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/safe019_power.opt.i[994,1007] 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 Start Parsing Local [2024-08-14 10:29:27,298 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:29:27,340 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:29:27,341 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:27 WrapperNode [2024-08-14 10:29:27,341 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:29:27,342 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:29:27,343 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:29:27,343 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:29:27,350 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:27" (1/1) ... [2024-08-14 10:29:27,387 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:27" (1/1) ... [2024-08-14 10:29:27,429 INFO L138 Inliner]: procedures = 176, calls = 140, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 262 [2024-08-14 10:29:27,433 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:29:27,434 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:29:27,434 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:29:27,434 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:29:27,445 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:27" (1/1) ... [2024-08-14 10:29:27,446 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:27" (1/1) ... [2024-08-14 10:29:27,457 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:27" (1/1) ... [2024-08-14 10:29:27,460 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:27" (1/1) ... [2024-08-14 10:29:27,480 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:27" (1/1) ... [2024-08-14 10:29:27,484 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:27" (1/1) ... [2024-08-14 10:29:27,488 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:27" (1/1) ... [2024-08-14 10:29:27,492 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:27" (1/1) ... [2024-08-14 10:29:27,498 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:29:27,499 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:29:27,500 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:29:27,500 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:29:27,501 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:27" (1/1) ... [2024-08-14 10:29:27,509 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:29:27,521 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:29:27,552 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:27,556 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:27,594 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-08-14 10:29:27,595 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-08-14 10:29:27,595 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:29:27,595 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:29:27,595 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:29:27,595 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:29:27,597 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:29:27,597 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:29:27,597 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:29:27,597 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:29:27,597 INFO L130 BoogieDeclarations]: Found specification of procedure P3 [2024-08-14 10:29:27,598 INFO L138 BoogieDeclarations]: Found implementation of procedure P3 [2024-08-14 10:29:27,598 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-08-14 10:29:27,598 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:29:27,598 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:29:27,598 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:29:27,600 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:27,777 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:29:27,779 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:29:28,695 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:29:28,695 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:29:28,729 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:28,734 INFO L158 Benchmark]: Toolchain (without parser) took 2485.21ms. Allocated memory is still 151.0MB. Free memory was 110.1MB in the beginning and 80.2MB in the end (delta: 29.9MB). Peak memory consumption was 75.5MB. Max. memory is 16.1GB. [2024-08-14 10:29:28,735 INFO L158 Benchmark]: Witness Parser took 0.23ms. Allocated memory is still 113.2MB. Free memory was 75.6MB in the beginning and 75.4MB in the end (delta: 184.7kB). There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:29:28,736 INFO L158 Benchmark]: CDTParser took 0.95ms. Allocated memory is still 151.0MB. Free memory is still 92.1MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:29:28,736 INFO L158 Benchmark]: CACSL2BoogieTranslator took 1091.95ms. Allocated memory is still 151.0MB. Free memory was 110.1MB in the beginning and 92.0MB in the end (delta: 18.1MB). Peak memory consumption was 69.0MB. Max. memory is 16.1GB. [2024-08-14 10:29:28,737 INFO L158 Benchmark]: Boogie Procedure Inliner took 91.12ms. Allocated memory is still 151.0MB. Free memory was 92.0MB in the beginning and 87.8MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:29:28,737 INFO L158 Benchmark]: Boogie Preprocessor took 64.65ms. Allocated memory is still 151.0MB. Free memory was 87.8MB in the beginning and 83.6MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:29:28,738 INFO L158 Benchmark]: RCFGBuilder took 1233.28ms. Allocated memory is still 151.0MB. Free memory was 83.6MB in the beginning and 80.2MB in the end (delta: 3.4MB). Peak memory consumption was 46.4MB. Max. memory is 16.1GB. [2024-08-14 10:29:28,742 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.23ms. Allocated memory is still 113.2MB. Free memory was 75.6MB in the beginning and 75.4MB in the end (delta: 184.7kB). There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.95ms. Allocated memory is still 151.0MB. Free memory is still 92.1MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 1091.95ms. Allocated memory is still 151.0MB. Free memory was 110.1MB in the beginning and 92.0MB in the end (delta: 18.1MB). Peak memory consumption was 69.0MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 91.12ms. Allocated memory is still 151.0MB. Free memory was 92.0MB in the beginning and 87.8MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 64.65ms. Allocated memory is still 151.0MB. Free memory was 87.8MB in the beginning and 83.6MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 1233.28ms. Allocated memory is still 151.0MB. Free memory was 83.6MB in the beginning and 80.2MB in the end (delta: 3.4MB). Peak memory consumption was 46.4MB. 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:28,774 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/safe019_power.opt.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe019_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:29:31,027 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:29:31,101 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:31,108 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:29:31,109 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:29:31,138 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:29:31,139 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:29:31,139 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:29:31,140 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:29:31,140 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:29:31,141 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:29:31,141 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:29:31,141 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:29:31,142 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:29:31,142 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:29:31,142 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:29:31,143 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:29:31,143 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:29:31,143 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:29:31,144 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:29:31,144 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:29:31,145 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-08-14 10:29:31,145 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:29:31,145 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-08-14 10:29:31,145 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:29:31,146 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:29:31,146 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:29:31,146 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:29:31,147 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:29:31,147 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:29:31,147 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:29:31,148 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:29:31,153 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:29:31,153 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:29:31,153 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:29:31,153 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-08-14 10:29:31,154 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:29:31,154 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-08-14 10:29:31,154 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:29:31,154 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:29:31,155 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:29:31,155 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:29:31,156 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:29:31,156 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-08-14 10:29:31,160 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:31,485 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:29:31,508 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:29:31,512 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:29:31,513 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:29:31,517 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:29:31,519 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/safe019_power.opt.yml/witness.yml [2024-08-14 10:29:31,935 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:29:31,935 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:29:31,935 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe019_power.opt.i [2024-08-14 10:29:33,481 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:29:33,749 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:29:33,750 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe019_power.opt.i [2024-08-14 10:29:33,781 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/7fc458982/11ea64732e724b3489ef0d752601786e/FLAGcd13fffbf [2024-08-14 10:29:33,812 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/7fc458982/11ea64732e724b3489ef0d752601786e [2024-08-14 10:29:33,819 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:29:33,821 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:29:33,822 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:29:33,822 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:29:33,827 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:29:33,828 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:31" (1/2) ... [2024-08-14 10:29:33,829 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1c895d2 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:33, skipping insertion in model container [2024-08-14 10:29:33,829 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:31" (1/2) ... [2024-08-14 10:29:33,831 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@5ae69127 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:33, skipping insertion in model container [2024-08-14 10:29:33,831 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:29:33" (2/2) ... [2024-08-14 10:29:33,831 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1c895d2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:33, skipping insertion in model container [2024-08-14 10:29:33,831 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:29:33" (2/2) ... [2024-08-14 10:29:33,832 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:29:34,242 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:29:34,243 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_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,243 INFO L97 edCorrectnessWitness]: Location invariant before [L840-L840] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,243 INFO L97 edCorrectnessWitness]: Location invariant before [L814-L814] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,244 INFO L97 edCorrectnessWitness]: Location invariant before [L807-L807] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,244 INFO L97 edCorrectnessWitness]: Location invariant before [L821-L821] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,244 INFO L97 edCorrectnessWitness]: Location invariant before [L867-L867] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,244 INFO L97 edCorrectnessWitness]: Location invariant before [L785-L785] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,244 INFO L97 edCorrectnessWitness]: Location invariant before [L891-L891] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,244 INFO L97 edCorrectnessWitness]: Location invariant before [L766-L766] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,244 INFO L97 edCorrectnessWitness]: Location invariant before [L850-L850] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,245 INFO L97 edCorrectnessWitness]: Location invariant before [L857-L857] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,245 INFO L97 edCorrectnessWitness]: Location invariant before [L843-L843] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,245 INFO L97 edCorrectnessWitness]: Location invariant before [L895-L895] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,245 INFO L97 edCorrectnessWitness]: Location invariant before [L787-L787] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,245 INFO L97 edCorrectnessWitness]: Location invariant before [L769-L769] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,245 INFO L97 edCorrectnessWitness]: Location invariant before [L794-L794] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,246 INFO L97 edCorrectnessWitness]: Location invariant before [L902-L902] ((((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff0_thd4 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (x$r_buff1_thd4 == (_Bool)0)) && (__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1)) && (__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1)) && (__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)))) && (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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:34,289 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:29:34,481 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/safe019_power.opt.i[994,1007] [2024-08-14 10:29:34,674 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:29:34,700 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:29:34,723 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/safe019_power.opt.i[994,1007] 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 Start Parsing Local [2024-08-14 10:29:34,932 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:29:34,980 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:29:34,981 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:34 WrapperNode [2024-08-14 10:29:34,981 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:29:34,982 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:29:34,982 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:29:34,982 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:29:34,989 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:34" (1/1) ... [2024-08-14 10:29:35,029 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:34" (1/1) ... [2024-08-14 10:29:35,073 INFO L138 Inliner]: procedures = 180, calls = 140, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 263 [2024-08-14 10:29:35,074 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:29:35,074 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:29:35,074 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:29:35,075 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:29:35,089 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:34" (1/1) ... [2024-08-14 10:29:35,090 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:34" (1/1) ... [2024-08-14 10:29:35,100 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:34" (1/1) ... [2024-08-14 10:29:35,100 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:34" (1/1) ... [2024-08-14 10:29:35,120 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:34" (1/1) ... [2024-08-14 10:29:35,123 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:34" (1/1) ... [2024-08-14 10:29:35,129 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:34" (1/1) ... [2024-08-14 10:29:35,133 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:34" (1/1) ... [2024-08-14 10:29:35,141 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:29:35,142 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:29:35,142 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:29:35,143 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:29:35,144 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:34" (1/1) ... [2024-08-14 10:29:35,151 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:29:35,164 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:29:35,194 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:35,208 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:35,246 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2024-08-14 10:29:35,247 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:29:35,247 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:29:35,248 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2024-08-14 10:29:35,248 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2024-08-14 10:29:35,248 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE4 [2024-08-14 10:29:35,248 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:29:35,249 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:29:35,249 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:29:35,249 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:29:35,249 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:29:35,249 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:29:35,249 INFO L130 BoogieDeclarations]: Found specification of procedure P3 [2024-08-14 10:29:35,249 INFO L138 BoogieDeclarations]: Found implementation of procedure P3 [2024-08-14 10:29:35,251 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:29:35,251 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:29:35,251 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:29:35,253 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:35,456 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:29:35,460 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:29:36,492 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:29:36,492 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:29:36,519 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:36,526 INFO L158 Benchmark]: Toolchain (without parser) took 2704.30ms. Allocated memory was 71.3MB in the beginning and 123.7MB in the end (delta: 52.4MB). Free memory was 49.0MB in the beginning and 47.5MB in the end (delta: 1.5MB). Peak memory consumption was 56.6MB. Max. memory is 16.1GB. [2024-08-14 10:29:36,527 INFO L158 Benchmark]: Witness Parser took 0.59ms. Allocated memory is still 41.9MB. Free memory was 25.7MB in the beginning and 25.6MB in the end (delta: 78.2kB). There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:29:36,527 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 50.3MB. Free memory is still 26.5MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:29:36,528 INFO L158 Benchmark]: CACSL2BoogieTranslator took 1159.04ms. Allocated memory was 71.3MB in the beginning and 96.5MB in the end (delta: 25.2MB). Free memory was 48.7MB in the beginning and 57.7MB in the end (delta: -9.0MB). Peak memory consumption was 38.0MB. Max. memory is 16.1GB. [2024-08-14 10:29:36,529 INFO L158 Benchmark]: Boogie Procedure Inliner took 91.89ms. Allocated memory is still 96.5MB. Free memory was 57.7MB in the beginning and 53.5MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:29:36,529 INFO L158 Benchmark]: Boogie Preprocessor took 67.19ms. Allocated memory is still 96.5MB. Free memory was 53.5MB in the beginning and 49.3MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:29:36,531 INFO L158 Benchmark]: RCFGBuilder took 1381.88ms. Allocated memory was 96.5MB in the beginning and 123.7MB in the end (delta: 27.3MB). Free memory was 49.3MB in the beginning and 47.5MB in the end (delta: 1.8MB). Peak memory consumption was 32.1MB. Max. memory is 16.1GB. [2024-08-14 10:29:36,538 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.59ms. Allocated memory is still 41.9MB. Free memory was 25.7MB in the beginning and 25.6MB in the end (delta: 78.2kB). There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.09ms. Allocated memory is still 50.3MB. Free memory is still 26.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 1159.04ms. Allocated memory was 71.3MB in the beginning and 96.5MB in the end (delta: 25.2MB). Free memory was 48.7MB in the beginning and 57.7MB in the end (delta: -9.0MB). Peak memory consumption was 38.0MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 91.89ms. Allocated memory is still 96.5MB. Free memory was 57.7MB in the beginning and 53.5MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 67.19ms. Allocated memory is still 96.5MB. Free memory was 53.5MB in the beginning and 49.3MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 1381.88ms. Allocated memory was 96.5MB in the beginning and 123.7MB in the end (delta: 27.3MB). Free memory was 49.3MB in the beginning and 47.5MB in the end (delta: 1.8MB). Peak memory consumption was 32.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:29:36,589 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