./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-wmm/safe003_power.opt.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --validate ./goblint.2024-08-08_07-59-58.files/protection-local/safe003_power.opt.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version c091e2ee Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/GemCutterReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/pthread-wmm/safe003_power.opt.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe003_power.opt.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --witnessparser.only.consider.loop.invariants false --- Real Ultimate output --- This is Ultimate 0.2.4-tmp.fs.goblint-validation-c091e2e-m [2024-08-14 10:26:34,095 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:26:34,204 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf [2024-08-14 10:26:34,211 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:26:34,212 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:26:34,236 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:26:34,238 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:26:34,238 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:26:34,239 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:26:34,241 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:26:34,242 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:26:34,242 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:26:34,242 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:26:34,243 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:26:34,243 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:26:34,244 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:26:34,244 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-08-14 10:26:34,245 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:26:34,245 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:26:34,245 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:26:34,245 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:26:34,246 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:26:34,246 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:26:34,246 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:26:34,246 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:26:34,246 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:26:34,246 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:26:34,247 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:26:34,247 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:26:34,247 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:26:34,247 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:26:34,247 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:26:34,247 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:26:34,248 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:26:34,248 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-08-14 10:26:34,248 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:26:34,248 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-08-14 10:26:34,248 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:26:34,248 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:26:34,248 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:26:34,249 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:26:34,251 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:26:34,251 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:26:34,452 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:26:34,470 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:26:34,472 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:26:34,473 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:26:34,475 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:26:34,476 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe003_power.opt.i [2024-08-14 10:26:35,839 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:26:36,125 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:26:36,130 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe003_power.opt.i [2024-08-14 10:26:36,152 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/4a45fca60/1c83379534a646b3893896c5c81d39c9/FLAGc84b7f2e8 [2024-08-14 10:26:36,167 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/4a45fca60/1c83379534a646b3893896c5c81d39c9 [2024-08-14 10:26:36,169 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:26:36,170 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:26:36,170 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/safe003_power.opt.yml/witness.yml [2024-08-14 10:26:36,636 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:26:36,644 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:26:36,646 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:26:36,647 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:26:36,651 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:26:36,651 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:26:36" (1/2) ... [2024-08-14 10:26:36,652 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2a59e1df and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:36, skipping insertion in model container [2024-08-14 10:26:36,652 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:26:36" (1/2) ... [2024-08-14 10:26:36,653 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@40b6e3f7 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:36, skipping insertion in model container [2024-08-14 10:26:36,654 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:26:36" (2/2) ... [2024-08-14 10:26:36,655 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2a59e1df and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:26:36, skipping insertion in model container [2024-08-14 10:26:36,655 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:26:36" (2/2) ... [2024-08-14 10:26:36,656 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:26:36,900 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:26:36,903 INFO L97 edCorrectnessWitness]: Location invariant before [L775-L775] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,903 INFO L97 edCorrectnessWitness]: Location invariant before [L818-L818] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,903 INFO L97 edCorrectnessWitness]: Location invariant before [L864-L864] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,903 INFO L97 edCorrectnessWitness]: Location invariant before [L831-L831] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,904 INFO L97 edCorrectnessWitness]: Location invariant before [L860-L860] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,904 INFO L97 edCorrectnessWitness]: Location invariant before [L828-L828] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,904 INFO L97 edCorrectnessWitness]: Location invariant before [L808-L808] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,904 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_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,904 INFO L97 edCorrectnessWitness]: Location invariant before [L760-L760] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,904 INFO L97 edCorrectnessWitness]: Location invariant before [L825-L825] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,904 INFO L97 edCorrectnessWitness]: Location invariant before [L838-L838] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,904 INFO L97 edCorrectnessWitness]: Location invariant before [L871-L871] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,905 INFO L97 edCorrectnessWitness]: Location invariant before [L811-L811] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,905 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_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,905 INFO L97 edCorrectnessWitness]: Location invariant before [L763-L763] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:36,939 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:26:37,104 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/safe003_power.opt.i[951,964] [2024-08-14 10:26:37,219 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:26:37,227 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:26:37,237 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/safe003_power.opt.i[951,964] 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:26:37,379 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:26:37,414 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:26:37,414 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:26:37 WrapperNode [2024-08-14 10:26:37,414 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:26:37,415 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:26:37,415 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:26:37,416 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:26:37,421 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:26:37" (1/1) ... [2024-08-14 10:26:37,439 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:26:37" (1/1) ... [2024-08-14 10:26:37,464 INFO L138 Inliner]: procedures = 175, calls = 121, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 267 [2024-08-14 10:26:37,465 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:26:37,465 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:26:37,466 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:26:37,466 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:26:37,473 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:26:37" (1/1) ... [2024-08-14 10:26:37,473 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:26:37" (1/1) ... [2024-08-14 10:26:37,478 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:26:37" (1/1) ... [2024-08-14 10:26:37,481 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:26:37" (1/1) ... [2024-08-14 10:26:37,501 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:26:37" (1/1) ... [2024-08-14 10:26:37,508 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:26:37" (1/1) ... [2024-08-14 10:26:37,513 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:26:37" (1/1) ... [2024-08-14 10:26:37,515 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:26:37" (1/1) ... [2024-08-14 10:26:37,523 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:26:37,531 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:26:37,531 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:26:37,531 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:26:37,532 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:26:37" (1/1) ... [2024-08-14 10:26:37,542 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:26:37,562 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:26:37,613 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:26:37,645 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:26:37,687 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-08-14 10:26:37,687 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-08-14 10:26:37,687 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:26:37,687 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:26:37,687 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:26:37,689 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:26:37,689 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:26:37,689 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:26:37,689 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:26:37,689 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:26:37,689 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-08-14 10:26:37,689 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:26:37,689 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:26:37,689 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:26:37,690 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:26:37,864 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:26:37,866 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:26:38,489 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:26:38,489 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:26:38,514 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:26:38,520 INFO L158 Benchmark]: Toolchain (without parser) took 1882.75ms. Allocated memory is still 218.1MB. Free memory was 181.1MB in the beginning and 120.4MB in the end (delta: 60.7MB). Peak memory consumption was 92.9MB. Max. memory is 16.1GB. [2024-08-14 10:26:38,520 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 121.6MB. Free memory is still 85.2MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:26:38,521 INFO L158 Benchmark]: Witness Parser took 1.50ms. Allocated memory is still 218.1MB. Free memory is still 146.7MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:26:38,521 INFO L158 Benchmark]: CACSL2BoogieTranslator took 768.06ms. Allocated memory is still 218.1MB. Free memory was 181.1MB in the beginning and 103.5MB in the end (delta: 77.6MB). Peak memory consumption was 75.5MB. Max. memory is 16.1GB. [2024-08-14 10:26:38,521 INFO L158 Benchmark]: Boogie Procedure Inliner took 49.94ms. Allocated memory is still 218.1MB. Free memory was 103.5MB in the beginning and 100.2MB in the end (delta: 3.3MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:26:38,522 INFO L158 Benchmark]: Boogie Preprocessor took 64.57ms. Allocated memory is still 218.1MB. Free memory was 100.2MB in the beginning and 96.0MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:26:38,522 INFO L158 Benchmark]: RCFGBuilder took 988.13ms. Allocated memory is still 218.1MB. Free memory was 96.0MB in the beginning and 120.4MB in the end (delta: -24.4MB). Peak memory consumption was 9.0MB. Max. memory is 16.1GB. [2024-08-14 10:26:38,524 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.16ms. Allocated memory is still 121.6MB. Free memory is still 85.2MB. There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 1.50ms. Allocated memory is still 218.1MB. Free memory is still 146.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 768.06ms. Allocated memory is still 218.1MB. Free memory was 181.1MB in the beginning and 103.5MB in the end (delta: 77.6MB). Peak memory consumption was 75.5MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 49.94ms. Allocated memory is still 218.1MB. Free memory was 103.5MB in the beginning and 100.2MB in the end (delta: 3.3MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 64.57ms. Allocated memory is still 218.1MB. Free memory was 100.2MB in the beginning and 96.0MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 988.13ms. Allocated memory is still 218.1MB. Free memory was 96.0MB in the beginning and 120.4MB in the end (delta: -24.4MB). Peak memory consumption was 9.0MB. 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:26:38,550 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/safe003_power.opt.i ./goblint.2024-08-08_07-59-58.files/protection-local/safe003_power.opt.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Bitvector.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --witnessparser.only.consider.loop.invariants false --- Real Ultimate output --- This is Ultimate 0.2.4-tmp.fs.goblint-validation-c091e2e-m [2024-08-14 10:26:40,909 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-14 10:26:40,961 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Bitvector.epf [2024-08-14 10:26:40,964 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-14 10:26:40,964 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-14 10:26:40,988 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-14 10:26:40,989 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-14 10:26:40,989 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-14 10:26:40,990 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-14 10:26:40,990 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-14 10:26:40,990 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-14 10:26:40,991 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-14 10:26:40,992 INFO L153 SettingsManager]: * Use SBE=true [2024-08-14 10:26:40,993 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-14 10:26:40,993 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-14 10:26:40,993 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-14 10:26:40,993 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-14 10:26:40,994 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-14 10:26:40,994 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-14 10:26:40,994 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-14 10:26:40,994 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-14 10:26:40,998 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-08-14 10:26:40,999 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-14 10:26:40,999 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-08-14 10:26:41,000 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-14 10:26:41,001 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-14 10:26:41,001 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-14 10:26:41,001 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-14 10:26:41,001 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-14 10:26:41,002 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-14 10:26:41,002 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-14 10:26:41,002 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:26:41,005 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-14 10:26:41,005 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-14 10:26:41,005 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-14 10:26:41,005 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-08-14 10:26:41,006 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-14 10:26:41,006 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-08-14 10:26:41,006 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-14 10:26:41,006 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-14 10:26:41,006 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-14 10:26:41,008 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-14 10:26:41,008 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-14 10:26:41,008 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-08-14 10:26:41,008 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:26:41,330 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-14 10:26:41,364 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-14 10:26:41,371 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-14 10:26:41,371 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-14 10:26:41,375 INFO L274 PluginConnector]: CDTParser initialized [2024-08-14 10:26:41,376 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-wmm/safe003_power.opt.i [2024-08-14 10:26:43,173 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-14 10:26:43,415 INFO L384 CDTParser]: Found 1 translation units. [2024-08-14 10:26:43,417 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/safe003_power.opt.i [2024-08-14 10:26:43,437 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/d15022535/3ad020811eb246f189130e53dc04b7c0/FLAG613c68865 [2024-08-14 10:26:43,455 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/d15022535/3ad020811eb246f189130e53dc04b7c0 [2024-08-14 10:26:43,457 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-14 10:26:43,458 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-14 10:26:43,460 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/safe003_power.opt.yml/witness.yml [2024-08-14 10:26:43,880 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-14 10:26:43,883 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-14 10:26:43,883 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-14 10:26:43,884 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-14 10:26:43,888 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-14 10:26:43,889 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:26:43" (1/2) ... [2024-08-14 10:26:43,890 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5dd38856 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:43, skipping insertion in model container [2024-08-14 10:26:43,890 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.08 10:26:43" (1/2) ... [2024-08-14 10:26:43,891 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@6c675cf8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.08 10:26:43, skipping insertion in model container [2024-08-14 10:26:43,892 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:26:43" (2/2) ... [2024-08-14 10:26:43,892 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5dd38856 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:26:43, skipping insertion in model container [2024-08-14 10:26:43,892 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 14.08 10:26:43" (2/2) ... [2024-08-14 10:26:43,893 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-08-14 10:26:44,137 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-14 10:26:44,138 INFO L97 edCorrectnessWitness]: Location invariant before [L871-L871] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,138 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_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,138 INFO L97 edCorrectnessWitness]: Location invariant before [L831-L831] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,138 INFO L97 edCorrectnessWitness]: Location invariant before [L838-L838] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,138 INFO L97 edCorrectnessWitness]: Location invariant before [L760-L760] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,139 INFO L97 edCorrectnessWitness]: Location invariant before [L828-L828] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,139 INFO L97 edCorrectnessWitness]: Location invariant before [L763-L763] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,139 INFO L97 edCorrectnessWitness]: Location invariant before [L811-L811] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,139 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_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,139 INFO L97 edCorrectnessWitness]: Location invariant before [L818-L818] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,139 INFO L97 edCorrectnessWitness]: Location invariant before [L775-L775] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,139 INFO L97 edCorrectnessWitness]: Location invariant before [L808-L808] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,139 INFO L97 edCorrectnessWitness]: Location invariant before [L860-L860] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,142 INFO L97 edCorrectnessWitness]: Location invariant before [L864-L864] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,142 INFO L97 edCorrectnessWitness]: Location invariant before [L825-L825] ((((((((((((((((0 <= __unbuffered_cnt) && (x$flush_delayed == (_Bool)0)) && (x$r_buff0_thd0 == (_Bool)0)) && (x$r_buff0_thd2 == (_Bool)0)) && (x$r_buff0_thd3 == (_Bool)0)) && (x$r_buff1_thd0 == (_Bool)0)) && (x$r_buff1_thd2 == (_Bool)0)) && (x$r_buff1_thd3 == (_Bool)0)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && (__unbuffered_p1_EAX$read_delayed_var == 0 || (__unbuffered_p1_EAX$read_delayed_var == & x && (*__unbuffered_p1_EAX$read_delayed_var == 0 || *__unbuffered_p1_EAX$read_delayed_var == 1)))) && (x == 0 || x == 1)) && (x$mem_tmp == 0 || x$mem_tmp == 1)) && (x$w_buff0 == 0 || x$w_buff0 == 1)) && (x$w_buff1 == 0 || x$w_buff1 == 1)) && ((__unbuffered_p2_EAX == 0 || __unbuffered_p2_EAX == 1) || __unbuffered_p2_EAX == 2)) && ((__unbuffered_p2_EBX == 0 || __unbuffered_p2_EBX == 1) || __unbuffered_p2_EBX == 2)) && ((y == 0 || y == 1) || y == 2) [2024-08-14 10:26:44,184 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-14 10:26:44,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/safe003_power.opt.i[951,964] [2024-08-14 10:26:44,486 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:26:44,508 INFO L202 MainTranslator]: Completed pre-run [2024-08-14 10:26:44,529 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/safe003_power.opt.i[951,964] 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:26:44,644 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-14 10:26:44,694 INFO L206 MainTranslator]: Completed translation [2024-08-14 10:26:44,695 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 14.08 10:26:44 WrapperNode [2024-08-14 10:26:44,695 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-14 10:26:44,696 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-14 10:26:44,696 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-14 10:26:44,696 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-14 10:26:44,701 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:26:44" (1/1) ... [2024-08-14 10:26:44,716 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:26:44" (1/1) ... [2024-08-14 10:26:44,745 INFO L138 Inliner]: procedures = 179, calls = 121, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 268 [2024-08-14 10:26:44,746 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-14 10:26:44,746 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-14 10:26:44,747 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-14 10:26:44,747 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-14 10:26:44,754 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:26:44" (1/1) ... [2024-08-14 10:26:44,754 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:26:44" (1/1) ... [2024-08-14 10:26:44,762 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:26:44" (1/1) ... [2024-08-14 10:26:44,762 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:26:44" (1/1) ... [2024-08-14 10:26:44,793 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:26:44" (1/1) ... [2024-08-14 10:26:44,796 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:26:44" (1/1) ... [2024-08-14 10:26:44,802 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:26:44" (1/1) ... [2024-08-14 10:26:44,804 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:26:44" (1/1) ... [2024-08-14 10:26:44,814 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-14 10:26:44,815 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-14 10:26:44,815 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-14 10:26:44,815 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-14 10:26:44,816 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:26:44" (1/1) ... [2024-08-14 10:26:44,820 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-14 10:26:44,826 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-14 10:26:44,839 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:26:44,846 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:26:44,905 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE4 [2024-08-14 10:26:44,906 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-14 10:26:44,906 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-14 10:26:44,906 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE4 [2024-08-14 10:26:44,906 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2024-08-14 10:26:44,906 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE4 [2024-08-14 10:26:44,906 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-08-14 10:26:44,906 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-08-14 10:26:44,906 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-08-14 10:26:44,906 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-08-14 10:26:44,906 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-08-14 10:26:44,906 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-08-14 10:26:44,906 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-14 10:26:44,906 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-14 10:26:44,906 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-14 10:26:44,907 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:26:45,084 INFO L244 CfgBuilder]: Building ICFG [2024-08-14 10:26:45,085 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-14 10:26:45,836 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-14 10:26:45,836 INFO L293 CfgBuilder]: Performing block encoding [2024-08-14 10:26:45,854 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:26:45,858 INFO L158 Benchmark]: Toolchain (without parser) took 1975.26ms. Allocated memory is still 115.3MB. Free memory was 87.5MB in the beginning and 40.4MB in the end (delta: 47.1MB). Peak memory consumption was 51.4MB. Max. memory is 16.1GB. [2024-08-14 10:26:45,859 INFO L158 Benchmark]: CDTParser took 3.81ms. Allocated memory is still 71.3MB. Free memory was 48.1MB in the beginning and 48.0MB in the end (delta: 83.9kB). There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:26:45,859 INFO L158 Benchmark]: Witness Parser took 0.10ms. Allocated memory is still 71.3MB. Free memory is still 33.9MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-14 10:26:45,860 INFO L158 Benchmark]: CACSL2BoogieTranslator took 811.71ms. Allocated memory is still 115.3MB. Free memory was 87.5MB in the beginning and 83.5MB in the end (delta: 4.0MB). Peak memory consumption was 43.2MB. Max. memory is 16.1GB. [2024-08-14 10:26:45,860 INFO L158 Benchmark]: Boogie Procedure Inliner took 50.38ms. Allocated memory is still 115.3MB. Free memory was 83.0MB in the beginning and 79.3MB in the end (delta: 3.7MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:26:45,861 INFO L158 Benchmark]: Boogie Preprocessor took 67.85ms. Allocated memory is still 115.3MB. Free memory was 79.3MB in the beginning and 75.1MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-08-14 10:26:45,861 INFO L158 Benchmark]: RCFGBuilder took 1042.19ms. Allocated memory is still 115.3MB. Free memory was 75.1MB in the beginning and 40.4MB in the end (delta: 34.7MB). Peak memory consumption was 39.7MB. Max. memory is 16.1GB. [2024-08-14 10:26:45,866 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 3.81ms. Allocated memory is still 71.3MB. Free memory was 48.1MB in the beginning and 48.0MB in the end (delta: 83.9kB). There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.10ms. Allocated memory is still 71.3MB. Free memory is still 33.9MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 811.71ms. Allocated memory is still 115.3MB. Free memory was 87.5MB in the beginning and 83.5MB in the end (delta: 4.0MB). Peak memory consumption was 43.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 50.38ms. Allocated memory is still 115.3MB. Free memory was 83.0MB in the beginning and 79.3MB in the end (delta: 3.7MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 67.85ms. Allocated memory is still 115.3MB. Free memory was 79.3MB in the beginning and 75.1MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 1042.19ms. Allocated memory is still 115.3MB. Free memory was 75.1MB in the beginning and 40.4MB in the end (delta: 34.7MB). Peak memory consumption was 39.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:26:45,895 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