./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-wmm/safe025_power.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --validate ./goblint.2024-08-08_07-59-58.files/protection-local/safe025_power.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/safe025_power.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe025_power.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:54,400 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:29:54,469 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:54,477 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:29:54,479 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:29:54,511 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:29:54,511 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:29:54,512 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:29:54,512 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:29:54,513 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:29:54,513 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:29:54,514 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:29:54,514 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:29:54,515 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:29:54,515 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:29:54,515 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:29:54,516 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-08-14 10:29:54,516 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:29:54,516 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:29:54,517 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:29:54,517 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:29:54,518 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:29:54,518 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:29:54,519 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:29:54,519 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:29:54,519 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:29:54,520 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:29:54,520 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:29:54,520 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:29:54,521 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:29:54,521 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:29:54,521 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:29:54,521 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:29:54,522 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:29:54,522 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-08-14 10:29:54,522 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:29:54,523 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-08-14 10:29:54,523 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:29:54,523 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:29:54,524 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:29:54,524 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:29:54,524 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:29:54,525 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:54,759 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:29:54,785 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:29:54,788 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:29:54,790 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:29:54,792 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:29:54,793 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/safe025_power.yml/witness.yml [2024-08-14 10:29:55,124 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:29:55,125 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:29:55,125 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe025_power.i [2024-08-14 10:29:56,503 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:29:56,769 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:29:56,770 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe025_power.i [2024-08-14 10:29:56,790 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/03fb8a6af/fc77f403bd824319b3e678c67457b25d/FLAG4f89a1e16 [2024-08-14 10:29:56,804 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/03fb8a6af/fc77f403bd824319b3e678c67457b25d [2024-08-14 10:29:56,804 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:29:56,805 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:29:56,806 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:29:56,806 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:29:56,811 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:29:56,812 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:55" (1/2) ... [2024-08-14 10:29:56,813 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3ff91f6e and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:56, skipping insertion in model container [2024-08-14 10:29:56,813 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:55" (1/2) ... [2024-08-14 10:29:56,815 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@6c9a7c89 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:56, skipping insertion in model container [2024-08-14 10:29:56,815 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:29:56" (2/2) ... [2024-08-14 10:29:56,816 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3ff91f6e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:56, skipping insertion in model container [2024-08-14 10:29:56,816 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:29:56" (2/2) ... [2024-08-14 10:29:56,816 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:29:57,147 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:29:57,149 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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,149 INFO L97 edCorrectnessWitness]: Location invariant before [L851-L851] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,149 INFO L97 edCorrectnessWitness]: Location invariant before [L822-L822] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,149 INFO L97 edCorrectnessWitness]: Location invariant before [L858-L858] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,150 INFO L97 edCorrectnessWitness]: Location invariant before [L761-L761] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,150 INFO L97 edCorrectnessWitness]: Location invariant before [L815-L815] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,150 INFO L97 edCorrectnessWitness]: Location invariant before [L784-L784] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,150 INFO L97 edCorrectnessWitness]: Location invariant before [L829-L829] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,150 INFO L97 edCorrectnessWitness]: Location invariant before [L880-L880] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,151 INFO L97 edCorrectnessWitness]: Location invariant before [L848-L848] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,151 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_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,151 INFO L97 edCorrectnessWitness]: Location invariant before [L803-L803] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,151 INFO L97 edCorrectnessWitness]: Location invariant before [L791-L791] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,151 INFO L97 edCorrectnessWitness]: Location invariant before [L884-L884] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,151 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_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,151 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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:29:57,208 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:29:57,402 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/safe025_power.i[990,1003] [2024-08-14 10:29:57,605 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:29:57,616 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:29:57,628 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/safe025_power.i[990,1003] 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:57,800 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:29:57,850 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:29:57,850 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:57 WrapperNode [2024-08-14 10:29:57,850 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:29:57,852 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:29:57,853 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:29:57,853 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:29:57,860 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:57" (1/1) ... [2024-08-14 10:29:57,895 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:57" (1/1) ... [2024-08-14 10:29:57,935 INFO L138 Inliner]: procedures = 175, calls = 170, calls flagged for inlining = 6, calls inlined = 6, statements flattened = 359 [2024-08-14 10:29:57,938 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:29:57,939 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:29:57,939 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:29:57,939 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:29:57,946 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:57" (1/1) ... [2024-08-14 10:29:57,946 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:57" (1/1) ... [2024-08-14 10:29:57,953 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:57" (1/1) ... [2024-08-14 10:29:57,953 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:57" (1/1) ... [2024-08-14 10:29:57,985 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:57" (1/1) ... [2024-08-14 10:29:57,989 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:57" (1/1) ... [2024-08-14 10:29:57,996 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:57" (1/1) ... [2024-08-14 10:29:58,004 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:57" (1/1) ... [2024-08-14 10:29:58,016 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:29:58,017 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:29:58,017 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:29:58,017 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:29:58,018 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:57" (1/1) ... [2024-08-14 10:29:58,024 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:29:58,033 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:29:58,050 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:58,054 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:58,097 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-08-14 10:29:58,124 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-08-14 10:29:58,124 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:29:58,124 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:29:58,124 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:29:58,125 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:29:58,125 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:29:58,125 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:29:58,125 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:29:58,125 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:29:58,125 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-08-14 10:29:58,125 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:29:58,125 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:29:58,126 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:29:58,130 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:58,333 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:29:58,335 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:29:59,278 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:29:59,279 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:29:59,310 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:59,316 INFO L158 Benchmark]: Toolchain (without parser) took 2510.28ms. Allocated memory is still 201.3MB. Free memory was 159.0MB in the beginning and 88.9MB in the end (delta: 70.1MB). Peak memory consumption was 109.7MB. Max. memory is 16.1GB. [2024-08-14 10:29:59,319 INFO L158 Benchmark]: Witness Parser took 0.25ms. Allocated memory is still 155.2MB. Free memory is still 105.0MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:29:59,320 INFO L158 Benchmark]: CDTParser took 0.77ms. Allocated memory is still 155.2MB. Free memory is still 98.3MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:29:59,321 INFO L158 Benchmark]: CACSL2BoogieTranslator took 1044.48ms. Allocated memory is still 201.3MB. Free memory was 159.0MB in the beginning and 69.7MB in the end (delta: 89.3MB). Peak memory consumption was 88.1MB. Max. memory is 16.1GB. [2024-08-14 10:29:59,322 INFO L158 Benchmark]: Boogie Procedure Inliner took 85.79ms. Allocated memory is still 201.3MB. Free memory was 69.7MB in the beginning and 64.6MB in the end (delta: 5.1MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. [2024-08-14 10:29:59,322 INFO L158 Benchmark]: Boogie Preprocessor took 77.85ms. Allocated memory is still 201.3MB. Free memory was 64.6MB in the beginning and 60.4MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:29:59,323 INFO L158 Benchmark]: RCFGBuilder took 1297.58ms. Allocated memory is still 201.3MB. Free memory was 60.4MB in the beginning and 88.9MB in the end (delta: -28.5MB). Peak memory consumption was 11.2MB. Max. memory is 16.1GB. [2024-08-14 10:29:59,326 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.25ms. Allocated memory is still 155.2MB. Free memory is still 105.0MB. There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.77ms. Allocated memory is still 155.2MB. Free memory is still 98.3MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 1044.48ms. Allocated memory is still 201.3MB. Free memory was 159.0MB in the beginning and 69.7MB in the end (delta: 89.3MB). Peak memory consumption was 88.1MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 85.79ms. Allocated memory is still 201.3MB. Free memory was 69.7MB in the beginning and 64.6MB in the end (delta: 5.1MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. * Boogie Preprocessor took 77.85ms. Allocated memory is still 201.3MB. Free memory was 64.6MB in the beginning and 60.4MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 1297.58ms. Allocated memory is still 201.3MB. Free memory was 60.4MB in the beginning and 88.9MB in the end (delta: -28.5MB). Peak memory consumption was 11.2MB. 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:59,357 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/safe025_power.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe025_power.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:30:01,599 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:30:01,682 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Bitvector.epf [2024-08-14 10:30:01,687 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:30:01,688 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:30:01,722 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:30:01,723 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:30:01,723 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:30:01,724 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:30:01,725 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:30:01,725 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:30:01,725 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:30:01,726 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:30:01,728 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:30:01,728 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:30:01,729 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:30:01,729 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:30:01,729 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:30:01,729 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:30:01,730 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:30:01,730 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:30:01,734 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-08-14 10:30:01,734 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:30:01,735 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-08-14 10:30:01,735 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:30:01,735 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:30:01,735 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:30:01,735 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:30:01,736 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:30:01,736 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:30:01,736 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:30:01,736 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:30:01,737 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:30:01,737 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:30:01,737 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:30:01,738 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-08-14 10:30:01,738 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:30:01,739 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-08-14 10:30:01,740 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:30:01,740 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:30:01,740 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:30:01,741 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:30:01,741 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:30:01,741 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-08-14 10:30:01,741 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:30:02,048 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:30:02,069 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:30:02,072 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:30:02,073 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:30:02,074 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:30:02,075 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe025_power.i [2024-08-14 10:30:03,598 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:30:03,891 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:30:03,891 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe025_power.i [2024-08-14 10:30:03,919 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/ba71c6918/3c55c0a63a984f7cb260ea4d501b86e3/FLAG05cdb965e [2024-08-14 10:30:03,937 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/ba71c6918/3c55c0a63a984f7cb260ea4d501b86e3 [2024-08-14 10:30:03,940 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:30:03,941 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:30:03,941 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/safe025_power.yml/witness.yml [2024-08-14 10:30:04,293 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:30:04,296 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:30:04,299 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:30:04,299 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:30:04,305 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:30:04,305 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:30:03" (1/2) ... [2024-08-14 10:30:04,306 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3eb54a0b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:30:04, skipping insertion in model container [2024-08-14 10:30:04,306 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:30:03" (1/2) ... [2024-08-14 10:30:04,308 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@482c4f26 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:30:04, skipping insertion in model container [2024-08-14 10:30:04,308 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:30:04" (2/2) ... [2024-08-14 10:30:04,308 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3eb54a0b and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:30:04, skipping insertion in model container [2024-08-14 10:30:04,308 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:30:04" (2/2) ... [2024-08-14 10:30:04,309 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:30:04,684 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:30:04,688 INFO L97 edCorrectnessWitness]: Location invariant before [L880-L880] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,688 INFO L97 edCorrectnessWitness]: Location invariant before [L791-L791] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,688 INFO L97 edCorrectnessWitness]: Location invariant before [L803-L803] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,689 INFO L97 edCorrectnessWitness]: Location invariant before [L761-L761] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,689 INFO L97 edCorrectnessWitness]: Location invariant before [L815-L815] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,689 INFO L97 edCorrectnessWitness]: Location invariant before [L884-L884] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,689 INFO L97 edCorrectnessWitness]: Location invariant before [L784-L784] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,689 INFO L97 edCorrectnessWitness]: Location invariant before [L829-L829] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,689 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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,689 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_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,689 INFO L97 edCorrectnessWitness]: Location invariant before [L822-L822] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,689 INFO L97 edCorrectnessWitness]: Location invariant before [L848-L848] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,690 INFO L97 edCorrectnessWitness]: Location invariant before [L858-L858] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,690 INFO L97 edCorrectnessWitness]: Location invariant before [L851-L851] ((((((((((((((((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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,690 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_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,690 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_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd1 == (_Bool)0)) && (x$r_buff1_thd3 == (_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_p2_EBX == 0 || __unbuffered_p2_EBX == 1)) && (y == 0 || y == 1)) && ((__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) || __unbuffered_p0_EAX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2)) && ((x$mem_tmp == 0 || x$mem_tmp == 1) || x$mem_tmp == 2)) && ((x$w_buff0 == 0 || x$w_buff0 == 1) || x$w_buff0 == 2)) && ((x$w_buff1 == 0 || x$w_buff1 == 1) || x$w_buff1 == 2) [2024-08-14 10:30:04,740 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:30:04,939 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/safe025_power.i[990,1003] [2024-08-14 10:30:05,130 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:30:05,154 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:30:05,175 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/safe025_power.i[990,1003] 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:30:05,398 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:30:05,445 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:30:05,446 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:30:05 WrapperNode [2024-08-14 10:30:05,446 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:30:05,448 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:30:05,448 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:30:05,448 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:30:05,455 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:30:05" (1/1) ... [2024-08-14 10:30:05,489 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:30:05" (1/1) ... [2024-08-14 10:30:05,536 INFO L138 Inliner]: procedures = 179, calls = 170, calls flagged for inlining = 6, calls inlined = 6, statements flattened = 360 [2024-08-14 10:30:05,536 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:30:05,537 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:30:05,537 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:30:05,537 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:30:05,546 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:30:05" (1/1) ... [2024-08-14 10:30:05,547 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:30:05" (1/1) ... [2024-08-14 10:30:05,557 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:30:05" (1/1) ... [2024-08-14 10:30:05,557 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:30:05" (1/1) ... [2024-08-14 10:30:05,593 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:30:05" (1/1) ... [2024-08-14 10:30:05,598 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:30:05" (1/1) ... [2024-08-14 10:30:05,604 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:30:05" (1/1) ... [2024-08-14 10:30:05,608 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:30:05" (1/1) ... [2024-08-14 10:30:05,617 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:30:05,618 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:30:05,619 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:30:05,619 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:30:05,620 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:30:05" (1/1) ... [2024-08-14 10:30:05,625 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:30:05,634 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:30:05,656 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:30:05,661 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:30:05,696 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2024-08-14 10:30:05,696 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:30:05,697 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:30:05,697 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2024-08-14 10:30:05,699 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2024-08-14 10:30:05,699 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE4 [2024-08-14 10:30:05,699 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:30:05,699 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:30:05,699 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:30:05,699 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:30:05,700 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:30:05,700 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:30:05,700 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:30:05,700 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:30:05,700 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:30:05,702 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:30:05,941 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:30:05,943 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:30:07,071 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:30:07,071 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:30:07,106 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:30:07,111 INFO L158 Benchmark]: Toolchain (without parser) took 2814.67ms. Allocated memory was 79.7MB in the beginning and 96.5MB in the end (delta: 16.8MB). Free memory was 31.1MB in the beginning and 53.2MB in the end (delta: -22.1MB). Peak memory consumption was 24.2MB. Max. memory is 16.1GB. [2024-08-14 10:30:07,111 INFO L158 Benchmark]: CDTParser took 0.19ms. Allocated memory is still 62.9MB. Free memory was 34.6MB in the beginning and 34.5MB in the end (delta: 83.9kB). There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:30:07,111 INFO L158 Benchmark]: Witness Parser took 0.16ms. Allocated memory is still 62.9MB. Free memory is still 21.5MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:30:07,112 INFO L158 Benchmark]: CACSL2BoogieTranslator took 1147.14ms. Allocated memory is still 79.7MB. Free memory was 30.8MB in the beginning and 38.0MB in the end (delta: -7.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2024-08-14 10:30:07,112 INFO L158 Benchmark]: Boogie Procedure Inliner took 88.30ms. Allocated memory is still 79.7MB. Free memory was 38.0MB in the beginning and 34.0MB in the end (delta: 4.0MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:30:07,113 INFO L158 Benchmark]: Boogie Preprocessor took 80.53ms. Allocated memory is still 79.7MB. Free memory was 34.0MB in the beginning and 28.9MB in the end (delta: 5.1MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:30:07,113 INFO L158 Benchmark]: RCFGBuilder took 1489.87ms. Allocated memory was 79.7MB in the beginning and 96.5MB in the end (delta: 16.8MB). Free memory was 28.9MB in the beginning and 53.2MB in the end (delta: -24.3MB). Peak memory consumption was 23.1MB. Max. memory is 16.1GB. [2024-08-14 10:30:07,118 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.19ms. Allocated memory is still 62.9MB. Free memory was 34.6MB in the beginning and 34.5MB in the end (delta: 83.9kB). There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.16ms. Allocated memory is still 62.9MB. Free memory is still 21.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 1147.14ms. Allocated memory is still 79.7MB. Free memory was 30.8MB in the beginning and 38.0MB in the end (delta: -7.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 88.30ms. Allocated memory is still 79.7MB. Free memory was 38.0MB in the beginning and 34.0MB in the end (delta: 4.0MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 80.53ms. Allocated memory is still 79.7MB. Free memory was 34.0MB in the beginning and 28.9MB in the end (delta: 5.1MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 1489.87ms. Allocated memory was 79.7MB in the beginning and 96.5MB in the end (delta: 16.8MB). Free memory was 28.9MB in the beginning and 53.2MB in the end (delta: -24.3MB). Peak memory consumption was 23.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:30:07,155 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