./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-wmm/safe015_power.oepc.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --validate ./goblint.2024-08-08_07-59-58.files/protection-local/safe015_power.oepc.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version c091e2ee Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/GemCutterReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/pthread-wmm/safe015_power.oepc.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe015_power.oepc.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --witnessparser.only.consider.loop.invariants false --- Real Ultimate output --- This is Ultimate 0.2.4-tmp.fs.goblint-validation-c091e2e-m [2024-08-14 10:28:50,250 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:28:50,319 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf [2024-08-14 10:28:50,327 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:28:50,328 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:28:50,361 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:28:50,363 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:28:50,363 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:28:50,364 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:28:50,366 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:28:50,366 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:28:50,367 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:28:50,367 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:28:50,367 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:28:50,367 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:28:50,368 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:28:50,368 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-08-14 10:28:50,368 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:28:50,369 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:28:50,369 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:28:50,370 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:28:50,370 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:28:50,371 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:28:50,371 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:28:50,371 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:28:50,372 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:28:50,372 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:28:50,372 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:28:50,373 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:28:50,373 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:28:50,373 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:28:50,373 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:28:50,374 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:28:50,374 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:28:50,374 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-08-14 10:28:50,375 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:28:50,375 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-08-14 10:28:50,375 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:28:50,376 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:28:50,376 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:28:50,376 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:28:50,377 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:28:50,377 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false [2024-08-14 10:28:50,682 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:28:50,710 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:28:50,713 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:28:50,714 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:28:50,714 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:28:50,715 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe015_power.oepc.i [2024-08-14 10:28:52,147 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:28:52,408 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:28:52,409 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe015_power.oepc.i [2024-08-14 10:28:52,427 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/e0a46230a/07db940954e642e7883d01164bf571e1/FLAGb85d8a0db [2024-08-14 10:28:52,446 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/e0a46230a/07db940954e642e7883d01164bf571e1 [2024-08-14 10:28:52,449 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:28:52,450 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:28:52,450 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/./goblint.2024-08-08_07-59-58.files/protection-local/safe015_power.oepc.yml/witness.yml [2024-08-14 10:28:52,787 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:28:52,790 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:28:52,792 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:28:52,793 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:28:52,798 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:28:52,799 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:28:52" (1/2) ... [2024-08-14 10:28:52,800 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1e6b21c7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:28:52, skipping insertion in model container [2024-08-14 10:28:52,800 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:28:52" (1/2) ... [2024-08-14 10:28:52,802 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@549c3d66 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:28:52, skipping insertion in model container [2024-08-14 10:28:52,802 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:28:52" (2/2) ... [2024-08-14 10:28:52,803 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1e6b21c7 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:28:52, skipping insertion in model container [2024-08-14 10:28:52,803 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:28:52" (2/2) ... [2024-08-14 10:28:52,803 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:28:53,102 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:28:53,103 INFO L97 edCorrectnessWitness]: Location invariant before [L882-L882] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,104 INFO L97 edCorrectnessWitness]: Location invariant before [L856-L856] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,104 INFO L97 edCorrectnessWitness]: Location invariant before [L759-L759] (((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,104 INFO L97 edCorrectnessWitness]: Location invariant before [L889-L889] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,104 INFO L97 edCorrectnessWitness]: Location invariant before [L878-L878] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,104 INFO L97 edCorrectnessWitness]: Location invariant before [L820-L820] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,105 INFO L97 edCorrectnessWitness]: Location invariant before [L846-L846] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,105 INFO L97 edCorrectnessWitness]: Location invariant before [L780-L780] (((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,105 INFO L97 edCorrectnessWitness]: Location invariant before [L762-L762] (((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,105 INFO L97 edCorrectnessWitness]: Location invariant before [L801-L801] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,105 INFO L97 edCorrectnessWitness]: Location invariant before [L813-L813] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,106 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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,106 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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,106 INFO L97 edCorrectnessWitness]: Location invariant before [L849-L849] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,106 INFO L97 edCorrectnessWitness]: Location invariant before [L827-L827] (((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,106 INFO L97 edCorrectnessWitness]: Location invariant before [L789-L789] (((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:28:53,150 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:28:53,319 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe015_power.oepc.i[995,1008] [2024-08-14 10:28:53,514 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:28:53,536 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:28:53,551 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe015_power.oepc.i[995,1008] 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:28:53,757 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:28:53,805 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:28:53,805 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:28:53 WrapperNode [2024-08-14 10:28:53,806 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:28:53,807 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:28:53,807 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:28:53,807 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:28:53,814 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:28:53" (1/1) ... [2024-08-14 10:28:53,848 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:28:53" (1/1) ... [2024-08-14 10:28:53,899 INFO L138 Inliner]: procedures = 175, calls = 170, calls flagged for inlining = 6, calls inlined = 6, statements flattened = 358 [2024-08-14 10:28:53,899 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:28:53,900 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:28:53,900 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:28:53,900 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:28:53,929 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:28:53" (1/1) ... [2024-08-14 10:28:53,933 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:28:53" (1/1) ... [2024-08-14 10:28:53,942 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:28:53" (1/1) ... [2024-08-14 10:28:53,943 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:28:53" (1/1) ... [2024-08-14 10:28:53,981 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:28:53" (1/1) ... [2024-08-14 10:28:53,988 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:28:53" (1/1) ... [2024-08-14 10:28:53,995 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:28:53" (1/1) ... [2024-08-14 10:28:54,002 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:28:53" (1/1) ... [2024-08-14 10:28:54,047 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:28:54,052 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:28:54,053 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:28:54,054 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:28:54,055 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:28:53" (1/1) ... [2024-08-14 10:28:54,071 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:28:54,082 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:28:54,098 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:28:54,102 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:28:54,136 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-08-14 10:28:54,137 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-08-14 10:28:54,137 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:28:54,137 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:28:54,138 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:28:54,138 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:28:54,140 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:28:54,140 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:28:54,141 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:28:54,141 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:28:54,141 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-08-14 10:28:54,141 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:28:54,141 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:28:54,142 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:28:54,143 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:28:54,330 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:28:54,332 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:28:55,272 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:28:55,272 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:28:55,317 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:28:55,323 INFO L158 Benchmark]: Toolchain (without parser) took 2533.54ms. Allocated memory was 169.9MB in the beginning and 207.6MB in the end (delta: 37.7MB). Free memory was 105.9MB in the beginning and 168.9MB in the end (delta: -63.0MB). Peak memory consumption was 57.4MB. Max. memory is 16.1GB. [2024-08-14 10:28:55,324 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 104.9MB. Free memory is still 75.9MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:28:55,324 INFO L158 Benchmark]: Witness Parser took 0.12ms. Allocated memory is still 169.9MB. Free memory is still 134.1MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:28:55,325 INFO L158 Benchmark]: CACSL2BoogieTranslator took 1013.65ms. Allocated memory is still 169.9MB. Free memory was 105.9MB in the beginning and 115.4MB in the end (delta: -9.5MB). Peak memory consumption was 65.0MB. Max. memory is 16.1GB. [2024-08-14 10:28:55,325 INFO L158 Benchmark]: Boogie Procedure Inliner took 92.14ms. Allocated memory is still 169.9MB. Free memory was 115.4MB in the beginning and 111.2MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:28:55,326 INFO L158 Benchmark]: Boogie Preprocessor took 151.33ms. Allocated memory is still 169.9MB. Free memory was 111.2MB in the beginning and 133.3MB in the end (delta: -22.1MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. [2024-08-14 10:28:55,327 INFO L158 Benchmark]: RCFGBuilder took 1269.57ms. Allocated memory was 169.9MB in the beginning and 207.6MB in the end (delta: 37.7MB). Free memory was 133.3MB in the beginning and 168.9MB in the end (delta: -35.6MB). Peak memory consumption was 84.9MB. Max. memory is 16.1GB. [2024-08-14 10:28:55,332 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.10ms. Allocated memory is still 104.9MB. Free memory is still 75.9MB. There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.12ms. Allocated memory is still 169.9MB. Free memory is still 134.1MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 1013.65ms. Allocated memory is still 169.9MB. Free memory was 105.9MB in the beginning and 115.4MB in the end (delta: -9.5MB). Peak memory consumption was 65.0MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 92.14ms. Allocated memory is still 169.9MB. Free memory was 115.4MB in the beginning and 111.2MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 151.33ms. Allocated memory is still 169.9MB. Free memory was 111.2MB in the beginning and 133.3MB in the end (delta: -22.1MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. * RCFGBuilder took 1269.57ms. Allocated memory was 169.9MB in the beginning and 207.6MB in the end (delta: 37.7MB). Free memory was 133.3MB in the beginning and 168.9MB in the end (delta: -35.6MB). Peak memory consumption was 84.9MB. 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:28:55,367 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/GemCutterReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/pthread-wmm/safe015_power.oepc.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe015_power.oepc.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:28:57,673 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:28:57,766 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Bitvector.epf [2024-08-14 10:28:57,772 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:28:57,772 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:28:57,806 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:28:57,810 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:28:57,811 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:28:57,812 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:28:57,813 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:28:57,814 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:28:57,814 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:28:57,814 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:28:57,815 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:28:57,816 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:28:57,817 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:28:57,817 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:28:57,818 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:28:57,818 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:28:57,821 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:28:57,821 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:28:57,822 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-08-14 10:28:57,823 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:28:57,823 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-08-14 10:28:57,823 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:28:57,824 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:28:57,824 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:28:57,824 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:28:57,824 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:28:57,825 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:28:57,825 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:28:57,826 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:28:57,826 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:28:57,826 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:28:57,827 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:28:57,827 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-08-14 10:28:57,828 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:28:57,828 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-08-14 10:28:57,828 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:28:57,828 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:28:57,828 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:28:57,829 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:28:57,830 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:28:57,830 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-08-14 10:28:57,830 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:28:58,157 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:28:58,180 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:28:58,185 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:28:58,187 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:28:58,187 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:28:58,189 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/./goblint.2024-08-08_07-59-58.files/protection-local/safe015_power.oepc.yml/witness.yml [2024-08-14 10:28:58,550 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:28:58,552 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:28:58,552 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe015_power.oepc.i [2024-08-14 10:29:00,117 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:29:00,451 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:29:00,451 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe015_power.oepc.i [2024-08-14 10:29:00,472 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/4cae27d7e/dbe05f4e9e7d4015bf30e8d53872b984/FLAGe9c8d0099 [2024-08-14 10:29:00,683 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/4cae27d7e/dbe05f4e9e7d4015bf30e8d53872b984 [2024-08-14 10:29:00,684 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:29:00,685 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:29:00,686 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:29:00,686 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:29:00,691 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:29:00,692 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:28:58" (1/2) ... [2024-08-14 10:29:00,693 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7a5d23d8 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:00, skipping insertion in model container [2024-08-14 10:29:00,693 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:28:58" (1/2) ... [2024-08-14 10:29:00,696 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@425044e1 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:29:00, skipping insertion in model container [2024-08-14 10:29:00,696 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:29:00" (2/2) ... [2024-08-14 10:29:00,697 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7a5d23d8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:00, skipping insertion in model container [2024-08-14 10:29:00,697 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:29:00" (2/2) ... [2024-08-14 10:29:00,698 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:29:00,950 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:29:00,951 INFO L97 edCorrectnessWitness]: Location invariant before [L780-L780] (((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,952 INFO L97 edCorrectnessWitness]: Location invariant before [L846-L846] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,952 INFO L97 edCorrectnessWitness]: Location invariant before [L849-L849] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,952 INFO L97 edCorrectnessWitness]: Location invariant before [L789-L789] (((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,952 INFO L97 edCorrectnessWitness]: Location invariant before [L856-L856] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,953 INFO L97 edCorrectnessWitness]: Location invariant before [L762-L762] (((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,953 INFO L97 edCorrectnessWitness]: Location invariant before [L801-L801] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,953 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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,953 INFO L97 edCorrectnessWitness]: Location invariant before [L882-L882] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,953 INFO L97 edCorrectnessWitness]: Location invariant before [L759-L759] (((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,953 INFO L97 edCorrectnessWitness]: Location invariant before [L889-L889] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,954 INFO L97 edCorrectnessWitness]: Location invariant before [L827-L827] (((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd1 == (_Bool)0)) && (x$r_buff0_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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,954 INFO L97 edCorrectnessWitness]: Location invariant before [L820-L820] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,954 INFO L97 edCorrectnessWitness]: Location invariant before [L813-L813] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,954 INFO L97 edCorrectnessWitness]: Location invariant before [L878-L878] (((((((((((((((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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,954 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_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)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:29:00,991 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:29:01,185 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe015_power.oepc.i[995,1008] [2024-08-14 10:29:01,455 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:29:01,473 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:29:01,488 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe015_power.oepc.i[995,1008] 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:01,665 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:29:01,710 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:29:01,711 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:01 WrapperNode [2024-08-14 10:29:01,711 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:29:01,712 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:29:01,712 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:29:01,713 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:29:01,720 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:01" (1/1) ... [2024-08-14 10:29:01,756 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:01" (1/1) ... [2024-08-14 10:29:01,803 INFO L138 Inliner]: procedures = 179, calls = 170, calls flagged for inlining = 6, calls inlined = 6, statements flattened = 359 [2024-08-14 10:29:01,803 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:29:01,804 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:29:01,804 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:29:01,804 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:29:01,813 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:01" (1/1) ... [2024-08-14 10:29:01,817 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:01" (1/1) ... [2024-08-14 10:29:01,829 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:01" (1/1) ... [2024-08-14 10:29:01,830 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:01" (1/1) ... [2024-08-14 10:29:01,854 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:01" (1/1) ... [2024-08-14 10:29:01,857 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:01" (1/1) ... [2024-08-14 10:29:01,862 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:01" (1/1) ... [2024-08-14 10:29:01,866 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:01" (1/1) ... [2024-08-14 10:29:01,878 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:29:01,883 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:29:01,883 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:29:01,883 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:29:01,884 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:29:01" (1/1) ... [2024-08-14 10:29:01,892 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:29:01,901 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:29:01,919 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:01,922 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:01,984 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2024-08-14 10:29:01,985 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:29:01,985 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:29:01,986 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2024-08-14 10:29:01,987 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2024-08-14 10:29:01,987 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE4 [2024-08-14 10:29:01,987 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:29:01,987 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:29:01,987 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:29:01,987 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:29:01,988 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:29:01,988 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:29:01,988 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:29:01,988 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:29:01,988 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:29:01,989 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:02,180 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:29:02,182 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:29:03,266 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:29:03,266 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:29:03,288 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:03,295 INFO L158 Benchmark]: Toolchain (without parser) took 2608.34ms. Allocated memory was 86.0MB in the beginning and 119.5MB in the end (delta: 33.6MB). Free memory was 63.5MB in the beginning and 69.9MB in the end (delta: -6.4MB). Peak memory consumption was 54.6MB. Max. memory is 16.1GB. [2024-08-14 10:29:03,295 INFO L158 Benchmark]: Witness Parser took 0.30ms. Allocated memory is still 58.7MB. Free memory was 30.5MB in the beginning and 30.4MB in the end (delta: 73.4kB). There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:29:03,296 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 58.7MB. Free memory was 41.1MB in the beginning and 40.8MB in the end (delta: 212.6kB). There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:29:03,297 INFO L158 Benchmark]: CACSL2BoogieTranslator took 1025.33ms. Allocated memory is still 86.0MB. Free memory was 63.0MB in the beginning and 41.6MB in the end (delta: 21.4MB). Peak memory consumption was 33.8MB. Max. memory is 16.1GB. [2024-08-14 10:29:03,298 INFO L158 Benchmark]: Boogie Procedure Inliner took 91.14ms. Allocated memory is still 86.0MB. Free memory was 41.6MB in the beginning and 37.4MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:29:03,299 INFO L158 Benchmark]: Boogie Preprocessor took 78.10ms. Allocated memory is still 86.0MB. Free memory was 37.4MB in the beginning and 32.7MB in the end (delta: 4.8MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:29:03,299 INFO L158 Benchmark]: RCFGBuilder took 1409.51ms. Allocated memory was 86.0MB in the beginning and 119.5MB in the end (delta: 33.6MB). Free memory was 32.7MB in the beginning and 69.9MB in the end (delta: -37.2MB). Peak memory consumption was 23.4MB. Max. memory is 16.1GB. [2024-08-14 10:29:03,302 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.30ms. Allocated memory is still 58.7MB. Free memory was 30.5MB in the beginning and 30.4MB in the end (delta: 73.4kB). There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.15ms. Allocated memory is still 58.7MB. Free memory was 41.1MB in the beginning and 40.8MB in the end (delta: 212.6kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 1025.33ms. Allocated memory is still 86.0MB. Free memory was 63.0MB in the beginning and 41.6MB in the end (delta: 21.4MB). Peak memory consumption was 33.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 91.14ms. Allocated memory is still 86.0MB. Free memory was 41.6MB in the beginning and 37.4MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 78.10ms. Allocated memory is still 86.0MB. Free memory was 37.4MB in the beginning and 32.7MB in the end (delta: 4.8MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 1409.51ms. Allocated memory was 86.0MB in the beginning and 119.5MB in the end (delta: 33.6MB). Free memory was 32.7MB in the beginning and 69.9MB in the end (delta: -37.2MB). Peak memory consumption was 23.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:03,338 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: UnmergeableAnnotationsException: Cannot merge class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo with class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo