./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-wmm/safe014_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/safe014_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/safe014_power.oepc.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe014_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:33,880 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:28:33,981 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:33,985 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:28:33,986 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:28:34,015 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:28:34,017 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:28:34,017 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:28:34,018 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:28:34,019 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:28:34,020 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:28:34,020 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:28:34,021 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:28:34,023 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:28:34,023 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:28:34,023 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:28:34,023 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-08-14 10:28:34,024 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:28:34,024 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:28:34,024 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:28:34,025 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:28:34,025 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:28:34,028 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:28:34,029 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:28:34,029 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:28:34,029 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:28:34,030 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:28:34,030 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:28:34,030 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:28:34,030 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:28:34,030 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:28:34,031 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:28:34,031 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:28:34,031 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:28:34,031 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-08-14 10:28:34,031 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:28:34,032 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-08-14 10:28:34,032 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:28:34,032 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:28:34,032 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:28:34,033 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:28:34,034 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:28:34,034 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:34,286 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:28:34,310 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:28:34,315 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:28:34,316 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:28:34,316 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:28:34,317 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe014_power.oepc.i [2024-08-14 10:28:35,888 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:28:36,166 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:28:36,168 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe014_power.oepc.i [2024-08-14 10:28:36,184 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/f2169d34c/2b3f76e564b249faa772bcbf7961ee17/FLAGb84308fca [2024-08-14 10:28:36,200 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/f2169d34c/2b3f76e564b249faa772bcbf7961ee17 [2024-08-14 10:28:36,203 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:28:36,204 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:28:36,205 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/safe014_power.oepc.yml/witness.yml [2024-08-14 10:28:36,591 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:28:36,593 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:28:36,598 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:28:36,598 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:28:36,603 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:28:36,604 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:28:36" (1/2) ... [2024-08-14 10:28:36,605 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@13d8dc88 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:28:36, skipping insertion in model container [2024-08-14 10:28:36,605 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:28:36" (1/2) ... [2024-08-14 10:28:36,607 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@22716c91 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:28:36, skipping insertion in model container [2024-08-14 10:28:36,607 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:36" (2/2) ... [2024-08-14 10:28:36,607 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@13d8dc88 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:28:36, skipping insertion in model container [2024-08-14 10:28:36,607 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:36" (2/2) ... [2024-08-14 10:28:36,608 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:28:36,938 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:28:36,941 INFO L97 edCorrectnessWitness]: Location invariant before [L807-L807] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,941 INFO L97 edCorrectnessWitness]: Location invariant before [L800-L800] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,941 INFO L97 edCorrectnessWitness]: Location invariant before [L820-L820] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,941 INFO L97 edCorrectnessWitness]: Location invariant before [L761-L761] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,941 INFO L97 edCorrectnessWitness]: Location invariant before [L842-L842] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,942 INFO L97 edCorrectnessWitness]: Location invariant before [L783-L783] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,942 INFO L97 edCorrectnessWitness]: Location invariant before [L813-L813] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,942 INFO L97 edCorrectnessWitness]: Location invariant before [L846-L846] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,942 INFO L97 edCorrectnessWitness]: Location invariant before [L785-L785] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,942 INFO L97 edCorrectnessWitness]: Location invariant before [L795-L795] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,942 INFO L97 edCorrectnessWitness]: Location invariant before [L792-L792] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,943 INFO L97 edCorrectnessWitness]: Location invariant before [L798-L798] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,943 INFO L97 edCorrectnessWitness]: Location invariant before [L810-L810] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,943 INFO L97 edCorrectnessWitness]: Location invariant before [L780-L780] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,943 INFO L97 edCorrectnessWitness]: Location invariant before [L853-L853] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:36,984 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:28:37,172 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/safe014_power.oepc.i[995,1008] [2024-08-14 10:28:37,347 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:28:37,358 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:28:37,371 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/safe014_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 [2024-08-14 10:28:37,554 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:28:37,600 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:28:37,601 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:28:37 WrapperNode [2024-08-14 10:28:37,601 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:28:37,602 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:28:37,602 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:28:37,602 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:28:37,609 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:37" (1/1) ... [2024-08-14 10:28:37,641 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:37" (1/1) ... [2024-08-14 10:28:37,676 INFO L138 Inliner]: procedures = 175, calls = 117, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 167 [2024-08-14 10:28:37,679 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:28:37,680 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:28:37,680 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:28:37,680 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:28:37,693 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:37" (1/1) ... [2024-08-14 10:28:37,694 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:37" (1/1) ... [2024-08-14 10:28:37,703 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:37" (1/1) ... [2024-08-14 10:28:37,703 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:37" (1/1) ... [2024-08-14 10:28:37,733 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:37" (1/1) ... [2024-08-14 10:28:37,739 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:37" (1/1) ... [2024-08-14 10:28:37,746 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:37" (1/1) ... [2024-08-14 10:28:37,752 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:37" (1/1) ... [2024-08-14 10:28:37,760 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:28:37,765 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:28:37,765 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:28:37,765 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:28:37,766 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:37" (1/1) ... [2024-08-14 10:28:37,772 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:28:37,780 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:28:37,796 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:37,799 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:37,835 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-08-14 10:28:37,836 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-08-14 10:28:37,836 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:28:37,836 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:28:37,837 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:28:37,837 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:28:37,837 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:28:37,839 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:28:37,839 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:28:37,839 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:28:37,839 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-08-14 10:28:37,839 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:28:37,839 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:28:37,840 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:28:37,841 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:38,034 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:28:38,036 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:28:38,831 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:28:38,831 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:28:38,859 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:38,867 INFO L158 Benchmark]: Toolchain (without parser) took 2273.78ms. Allocated memory is still 180.4MB. Free memory was 76.6MB in the beginning and 101.8MB in the end (delta: -25.2MB). Peak memory consumption was 31.0MB. Max. memory is 16.1GB. [2024-08-14 10:28:38,868 INFO L158 Benchmark]: CDTParser took 0.12ms. Allocated memory is still 113.2MB. Free memory is still 77.5MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:28:38,868 INFO L158 Benchmark]: Witness Parser took 0.16ms. Allocated memory is still 180.4MB. Free memory is still 108.4MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:28:38,869 INFO L158 Benchmark]: CACSL2BoogieTranslator took 1003.63ms. Allocated memory is still 180.4MB. Free memory was 76.3MB in the beginning and 79.6MB in the end (delta: -3.3MB). Peak memory consumption was 12.1MB. Max. memory is 16.1GB. [2024-08-14 10:28:38,870 INFO L158 Benchmark]: Boogie Procedure Inliner took 77.26ms. Allocated memory is still 180.4MB. Free memory was 79.6MB in the beginning and 76.4MB in the end (delta: 3.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:28:38,870 INFO L158 Benchmark]: Boogie Preprocessor took 84.13ms. Allocated memory is still 180.4MB. Free memory was 76.4MB in the beginning and 73.1MB in the end (delta: 3.2MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-08-14 10:28:38,871 INFO L158 Benchmark]: RCFGBuilder took 1100.60ms. Allocated memory is still 180.4MB. Free memory was 73.1MB in the beginning and 101.8MB in the end (delta: -28.7MB). Peak memory consumption was 27.3MB. Max. memory is 16.1GB. [2024-08-14 10:28:38,875 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.12ms. Allocated memory is still 113.2MB. Free memory is still 77.5MB. There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.16ms. Allocated memory is still 180.4MB. Free memory is still 108.4MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 1003.63ms. Allocated memory is still 180.4MB. Free memory was 76.3MB in the beginning and 79.6MB in the end (delta: -3.3MB). Peak memory consumption was 12.1MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 77.26ms. Allocated memory is still 180.4MB. Free memory was 79.6MB in the beginning and 76.4MB in the end (delta: 3.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 84.13ms. Allocated memory is still 180.4MB. Free memory was 76.4MB in the beginning and 73.1MB in the end (delta: 3.2MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 1100.60ms. Allocated memory is still 180.4MB. Free memory was 73.1MB in the beginning and 101.8MB in the end (delta: -28.7MB). Peak memory consumption was 27.3MB. 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:38,904 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 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/safe014_power.oepc.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe014_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:41,108 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:28:41,197 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:41,205 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:28:41,206 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:28:41,233 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:28:41,233 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:28:41,234 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:28:41,234 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:28:41,235 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:28:41,235 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:28:41,236 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:28:41,236 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:28:41,240 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:28:41,240 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:28:41,241 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:28:41,241 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:28:41,245 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:28:41,245 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:28:41,245 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:28:41,246 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:28:41,246 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-08-14 10:28:41,246 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:28:41,246 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-08-14 10:28:41,247 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:28:41,247 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:28:41,247 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:28:41,247 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:28:41,248 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:28:41,248 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:28:41,248 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:28:41,248 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:28:41,249 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:28:41,249 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:28:41,249 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:28:41,249 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-08-14 10:28:41,249 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:28:41,250 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-08-14 10:28:41,250 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:28:41,250 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:28:41,250 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:28:41,252 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:28:41,253 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:28:41,253 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-08-14 10:28:41,253 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:41,599 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:28:41,626 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:28:41,630 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:28:41,631 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:28:41,632 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:28:41,633 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe014_power.oepc.i [2024-08-14 10:28:43,237 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:28:43,547 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:28:43,548 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe014_power.oepc.i [2024-08-14 10:28:43,568 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/a7452cf59/3191c89c56b84ba8808d766f5c1fa65b/FLAGc9a5a1123 [2024-08-14 10:28:43,833 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/a7452cf59/3191c89c56b84ba8808d766f5c1fa65b [2024-08-14 10:28:43,836 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:28:43,837 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:28:43,838 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/safe014_power.oepc.yml/witness.yml [2024-08-14 10:28:44,172 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:28:44,173 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:28:44,174 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:28:44,174 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:28:44,180 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:28:44,181 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:28:43" (1/2) ... [2024-08-14 10:28:44,182 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1ce42944 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:28:44, skipping insertion in model container [2024-08-14 10:28:44,182 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:28:43" (1/2) ... [2024-08-14 10:28:44,184 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@5a9f1475 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:28:44, skipping insertion in model container [2024-08-14 10:28:44,184 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:44" (2/2) ... [2024-08-14 10:28:44,185 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1ce42944 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:28:44, skipping insertion in model container [2024-08-14 10:28:44,185 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:44" (2/2) ... [2024-08-14 10:28:44,185 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:28:44,452 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:28:44,454 INFO L97 edCorrectnessWitness]: Location invariant before [L780-L780] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,454 INFO L97 edCorrectnessWitness]: Location invariant before [L813-L813] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,454 INFO L97 edCorrectnessWitness]: Location invariant before [L853-L853] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,454 INFO L97 edCorrectnessWitness]: Location invariant before [L842-L842] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,454 INFO L97 edCorrectnessWitness]: Location invariant before [L792-L792] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,455 INFO L97 edCorrectnessWitness]: Location invariant before [L785-L785] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,455 INFO L97 edCorrectnessWitness]: Location invariant before [L783-L783] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,456 INFO L97 edCorrectnessWitness]: Location invariant before [L846-L846] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,456 INFO L97 edCorrectnessWitness]: Location invariant before [L807-L807] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,456 INFO L97 edCorrectnessWitness]: Location invariant before [L761-L761] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,456 INFO L97 edCorrectnessWitness]: Location invariant before [L800-L800] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,457 INFO L97 edCorrectnessWitness]: Location invariant before [L810-L810] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,457 INFO L97 edCorrectnessWitness]: Location invariant before [L798-L798] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,457 INFO L97 edCorrectnessWitness]: Location invariant before [L820-L820] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,457 INFO L97 edCorrectnessWitness]: Location invariant before [L795-L795] ((((((((((((((((((0 <= __unbuffered_cnt) && (y$flush_delayed == (_Bool)0)) && (y$r_buff0_thd0 == (_Bool)0)) && (y$r_buff0_thd1 == (_Bool)0)) && (y$r_buff0_thd3 == (_Bool)0)) && (y$r_buff1_thd0 == (_Bool)0)) && (y$r_buff1_thd1 == (_Bool)0)) && (y$r_buff1_thd3 == (_Bool)0)) && (y$w_buff0 == 0)) && (y$w_buff0_used == (_Bool)0)) && (y$w_buff1 == 0)) && (y$w_buff1_used == (_Bool)0)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p0_EAX$read_delayed_var == 0 || (__unbuffered_p0_EAX$read_delayed_var == & y && (*__unbuffered_p0_EAX$read_delayed_var == 0 || *__unbuffered_p0_EAX$read_delayed_var == 1)))) && (y == 0 || y == 1)) && (y$mem_tmp == 0 || y$mem_tmp == 1)) && ((__unbuffered_p0_EBX == 0 || __unbuffered_p0_EBX == 1) || __unbuffered_p0_EBX == 2)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((x == 0 || x == 1) || x == 2) [2024-08-14 10:28:44,510 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:28:44,694 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/safe014_power.oepc.i[995,1008] [2024-08-14 10:28:44,896 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:28:44,916 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:28:44,937 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/safe014_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 [2024-08-14 10:28:45,121 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:28:45,167 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:28:45,168 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:28:45 WrapperNode [2024-08-14 10:28:45,168 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:28:45,170 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:28:45,170 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:28:45,170 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:28:45,176 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:45" (1/1) ... [2024-08-14 10:28:45,211 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:45" (1/1) ... [2024-08-14 10:28:45,249 INFO L138 Inliner]: procedures = 179, calls = 117, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 168 [2024-08-14 10:28:45,249 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:28:45,250 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:28:45,250 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:28:45,250 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:28:45,260 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:45" (1/1) ... [2024-08-14 10:28:45,260 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:45" (1/1) ... [2024-08-14 10:28:45,270 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:45" (1/1) ... [2024-08-14 10:28:45,274 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:45" (1/1) ... [2024-08-14 10:28:45,308 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:45" (1/1) ... [2024-08-14 10:28:45,311 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:45" (1/1) ... [2024-08-14 10:28:45,315 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:45" (1/1) ... [2024-08-14 10:28:45,318 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:45" (1/1) ... [2024-08-14 10:28:45,324 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:28:45,325 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:28:45,325 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:28:45,325 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:28:45,330 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:45" (1/1) ... [2024-08-14 10:28:45,338 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:28:45,348 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:28:45,366 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:45,372 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:45,408 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2024-08-14 10:28:45,408 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:28:45,408 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:28:45,409 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2024-08-14 10:28:45,409 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2024-08-14 10:28:45,409 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE4 [2024-08-14 10:28:45,410 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:28:45,410 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:28:45,410 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:28:45,410 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:28:45,411 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:28:45,411 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:28:45,411 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:28:45,411 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:28:45,412 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:28:45,413 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:45,600 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:28:45,603 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:28:46,491 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:28:46,491 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:28:46,520 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:46,526 INFO L158 Benchmark]: Toolchain (without parser) took 2352.15ms. Allocated memory was 69.2MB in the beginning and 86.0MB in the end (delta: 16.8MB). Free memory was 38.0MB in the beginning and 27.0MB in the end (delta: 11.0MB). Peak memory consumption was 36.9MB. Max. memory is 16.1GB. [2024-08-14 10:28:46,527 INFO L158 Benchmark]: CDTParser took 0.20ms. Allocated memory is still 54.5MB. Free memory is still 37.8MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:28:46,527 INFO L158 Benchmark]: Witness Parser took 1.36ms. Allocated memory is still 69.2MB. Free memory is still 34.6MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:28:46,528 INFO L158 Benchmark]: CACSL2BoogieTranslator took 994.01ms. Allocated memory was 69.2MB in the beginning and 86.0MB in the end (delta: 16.8MB). Free memory was 37.7MB in the beginning and 48.9MB in the end (delta: -11.2MB). Peak memory consumption was 30.1MB. Max. memory is 16.1GB. [2024-08-14 10:28:46,529 INFO L158 Benchmark]: Boogie Procedure Inliner took 79.86ms. Allocated memory is still 86.0MB. Free memory was 48.9MB in the beginning and 46.1MB in the end (delta: 2.9MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-08-14 10:28:46,529 INFO L158 Benchmark]: Boogie Preprocessor took 74.40ms. Allocated memory is still 86.0MB. Free memory was 46.1MB in the beginning and 42.1MB in the end (delta: 4.0MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:28:46,529 INFO L158 Benchmark]: RCFGBuilder took 1199.36ms. Allocated memory is still 86.0MB. Free memory was 42.1MB in the beginning and 27.0MB in the end (delta: 15.1MB). Peak memory consumption was 24.7MB. Max. memory is 16.1GB. [2024-08-14 10:28:46,532 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.20ms. Allocated memory is still 54.5MB. Free memory is still 37.8MB. There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 1.36ms. Allocated memory is still 69.2MB. Free memory is still 34.6MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 994.01ms. Allocated memory was 69.2MB in the beginning and 86.0MB in the end (delta: 16.8MB). Free memory was 37.7MB in the beginning and 48.9MB in the end (delta: -11.2MB). Peak memory consumption was 30.1MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 79.86ms. Allocated memory is still 86.0MB. Free memory was 48.9MB in the beginning and 46.1MB in the end (delta: 2.9MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 74.40ms. Allocated memory is still 86.0MB. Free memory was 46.1MB in the beginning and 42.1MB in the end (delta: 4.0MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 1199.36ms. Allocated memory is still 86.0MB. Free memory was 42.1MB in the beginning and 27.0MB in the end (delta: 15.1MB). Peak memory consumption was 24.7MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder: - ExceptionOrErrorResult: UnmergeableAnnotationsException: Cannot merge class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo with class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder: UnmergeableAnnotationsException: Cannot merge class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo with class de.uni_freiburg.informatik.ultimate.core.lib.models.annotation.AtomicBlockInfo: de.uni_freiburg.informatik.ultimate.core.model.models.annotation.IAnnotations.merge(IAnnotations.java:78) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2024-08-14 10:28:46,561 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