./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-wmm/mix047_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --validate ./goblint.2024-02-07_10-47-16.files/SV-COMP24_unreach-call/mix047_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version e7c74aec Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/pthread-wmm/mix047_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i ./goblint.2024-02-07_10-47-16.files/SV-COMP24_unreach-call/mix047_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_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-wip.fs.fix-undeclared-acsl-variable-e7c74ae-m [2024-02-07 19:28:15,933 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-02-07 19:28:15,993 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-02-07 19:28:15,999 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-02-07 19:28:15,999 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-02-07 19:28:16,019 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-02-07 19:28:16,023 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-02-07 19:28:16,023 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-02-07 19:28:16,024 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-02-07 19:28:16,027 INFO L153 SettingsManager]: * Use memory slicer=true [2024-02-07 19:28:16,027 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-02-07 19:28:16,028 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-02-07 19:28:16,029 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-02-07 19:28:16,030 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-02-07 19:28:16,030 INFO L153 SettingsManager]: * Use SBE=true [2024-02-07 19:28:16,030 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-02-07 19:28:16,031 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-02-07 19:28:16,031 INFO L153 SettingsManager]: * sizeof long=4 [2024-02-07 19:28:16,031 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-02-07 19:28:16,031 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-02-07 19:28:16,031 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-02-07 19:28:16,032 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-02-07 19:28:16,032 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-02-07 19:28:16,032 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-02-07 19:28:16,033 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-02-07 19:28:16,033 INFO L153 SettingsManager]: * sizeof long double=12 [2024-02-07 19:28:16,034 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-02-07 19:28:16,034 INFO L153 SettingsManager]: * Use constant arrays=true [2024-02-07 19:28:16,034 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-02-07 19:28:16,034 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-02-07 19:28:16,035 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-02-07 19:28:16,035 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-02-07 19:28:16,036 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-02-07 19:28:16,036 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-02-07 19:28:16,036 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-02-07 19:28:16,036 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-02-07 19:28:16,037 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-02-07 19:28:16,037 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-02-07 19:28:16,037 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-02-07 19:28:16,037 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-02-07 19:28:16,037 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-02-07 19:28:16,037 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-02-07 19:28:16,038 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-02-07 19:28:16,038 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC 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/UAutomizer-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-02-07 19:28:16,211 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-02-07 19:28:16,229 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-02-07 19:28:16,232 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-02-07 19:28:16,233 INFO L270 PluginConnector]: Initializing CDTParser... [2024-02-07 19:28:16,233 INFO L274 PluginConnector]: CDTParser initialized [2024-02-07 19:28:16,234 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread-wmm/mix047_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i [2024-02-07 19:28:17,367 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-02-07 19:28:17,609 INFO L384 CDTParser]: Found 1 translation units. [2024-02-07 19:28:17,610 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/mix047_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i [2024-02-07 19:28:17,629 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/743485977/61cf3016c51f469ea1ea9e8a00223ed4/FLAGc0d02e8ec [2024-02-07 19:28:17,640 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/743485977/61cf3016c51f469ea1ea9e8a00223ed4 [2024-02-07 19:28:17,642 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-02-07 19:28:17,643 INFO L274 PluginConnector]: Witness Parser initialized [2024-02-07 19:28:17,643 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/./goblint.2024-02-07_10-47-16.files/SV-COMP24_unreach-call/mix047_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.yml/witness.yml [2024-02-07 19:28:17,776 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-02-07 19:28:17,778 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-02-07 19:28:17,779 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-02-07 19:28:17,779 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-02-07 19:28:17,782 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-02-07 19:28:17,783 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.02 07:28:17" (1/2) ... [2024-02-07 19:28:17,784 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5a0766c0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.02 07:28:17, skipping insertion in model container [2024-02-07 19:28:17,784 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.02 07:28:17" (1/2) ... [2024-02-07 19:28:17,785 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@342c3731 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.02 07:28:17, skipping insertion in model container [2024-02-07 19:28:17,786 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 07.02 07:28:17" (2/2) ... [2024-02-07 19:28:17,786 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5a0766c0 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:17, skipping insertion in model container [2024-02-07 19:28:17,786 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 07.02 07:28:17" (2/2) ... [2024-02-07 19:28:17,786 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-02-07 19:28:17,958 INFO L74 edCorrectnessWitness]: Found the following entries in the witness: [2024-02-07 19:28:17,960 INFO L76 edCorrectnessWitness]: Location invariant before [L781-L781] y == 2 [2024-02-07 19:28:17,960 INFO L76 edCorrectnessWitness]: Location invariant before [L789-L789] (z$r_buff0_thd3 == (_Bool)0) && (z$w_buff0_used == (_Bool)1) [2024-02-07 19:28:17,960 INFO L76 edCorrectnessWitness]: Location invariant before [L784-L784] z == 1 [2024-02-07 19:28:17,960 INFO L76 edCorrectnessWitness]: Location invariant before [L807-L807] (z$r_buff0_thd2 == (_Bool)0) && (z$r_buff1_thd1 == (_Bool)0) [2024-02-07 19:28:17,960 INFO L76 edCorrectnessWitness]: Location invariant before [L871-L871] ((((z$r_buff1_thd0 == (_Bool)0 && z$w_buff0_used == (_Bool)1) && z$w_buff1_used == (_Bool)1) || z$r_buff0_thd0 == (_Bool)0) || (((z$r_buff0_thd0 == (_Bool)0 && z$r_buff1_thd0 == (_Bool)0) && z$w_buff0_used == (_Bool)1) && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1))) || (z$r_buff0_thd0 == (_Bool)0 && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1)) [2024-02-07 19:28:17,961 INFO L76 edCorrectnessWitness]: Location invariant before [L809-L809] (z$r_buff1_thd3 == (_Bool)0) && (z$r_buff0_thd4 == (_Bool)0 || z$r_buff0_thd4 == (_Bool)1) [2024-02-07 19:28:17,961 INFO L76 edCorrectnessWitness]: Location invariant before [L790-L790] (z$r_buff1_thd3 == (_Bool)0 && (z$w_buff1_used == (_Bool)1 || (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1))) || (z$r_buff0_thd3 == (_Bool)0 && z$w_buff0_used == (_Bool)1) [2024-02-07 19:28:17,961 INFO L76 edCorrectnessWitness]: Location invariant before [L806-L806] (z$r_buff0_thd1 == (_Bool)0) && (z$r_buff1_thd0 == (_Bool)0) [2024-02-07 19:28:17,961 INFO L76 edCorrectnessWitness]: Location invariant before [L802-L802] (z$w_buff0 == 2) && (z$w_buff0_used == (_Bool)0 || z$w_buff0_used == (_Bool)1) [2024-02-07 19:28:17,961 INFO L76 edCorrectnessWitness]: Location invariant before [L801-L801] ((((0 <= z$w_buff1) && (z$w_buff1 <= 2)) && (z$w_buff1 <= 127)) && (z$w_buff1 % 2 == 0)) && (z$w_buff1 == 0 || z$w_buff1 == 2) [2024-02-07 19:28:17,962 INFO L76 edCorrectnessWitness]: Location invariant before [L820-L820] ((0 <= __unbuffered_p3_EBX) && (__unbuffered_p3_EBX <= 1)) && (__unbuffered_p3_EBX == 0 || __unbuffered_p3_EBX == 1) [2024-02-07 19:28:17,962 INFO L76 edCorrectnessWitness]: Location invariant before [L859-L859] (z$r_buff1_thd0 == (_Bool)0 && (z$w_buff1_used == (_Bool)1 || (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1))) || (z$r_buff0_thd0 == (_Bool)0 && z$w_buff0_used == (_Bool)1) [2024-02-07 19:28:17,962 INFO L76 edCorrectnessWitness]: Location invariant before [L853-L853] 0 <= __unbuffered_cnt [2024-02-07 19:28:17,962 INFO L76 edCorrectnessWitness]: Location invariant before [L878-L878] z$flush_delayed == (_Bool)0 [2024-02-07 19:28:17,962 INFO L76 edCorrectnessWitness]: Location invariant before [L754-L754] x == 1 [2024-02-07 19:28:17,962 INFO L76 edCorrectnessWitness]: Location invariant before [L879-L879] main$tmp_guard1 == (_Bool)0 || main$tmp_guard1 == (_Bool)1 [2024-02-07 19:28:17,962 INFO L76 edCorrectnessWitness]: Location invariant before [L810-L810] z$r_buff1_thd4 == (_Bool)0 || z$r_buff1_thd4 == (_Bool)1 [2024-02-07 19:28:17,963 INFO L76 edCorrectnessWitness]: Location invariant before [L773-L773] 0 <= __unbuffered_cnt [2024-02-07 19:28:17,963 INFO L76 edCorrectnessWitness]: Location invariant before [L811-L811] z$r_buff0_thd4 == (_Bool)1 [2024-02-07 19:28:17,963 INFO L76 edCorrectnessWitness]: Location invariant before [L788-L788] (z$r_buff1_thd3 == (_Bool)0 && (z$w_buff1_used == (_Bool)1 || (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1))) || (z$r_buff0_thd3 == (_Bool)0 && z$w_buff0_used == (_Bool)1) [2024-02-07 19:28:17,963 INFO L76 edCorrectnessWitness]: Location invariant before [L794-L794] 1 <= __unbuffered_cnt [2024-02-07 19:28:17,963 INFO L76 edCorrectnessWitness]: Location invariant before [L766-L766] x == 2 [2024-02-07 19:28:17,964 INFO L76 edCorrectnessWitness]: Location invariant before [L858-L858] (z$r_buff0_thd0 == (_Bool)0) && (z$w_buff0_used == (_Bool)1) [2024-02-07 19:28:17,964 INFO L76 edCorrectnessWitness]: Location invariant before [L869-L869] ((((z$r_buff1_thd0 == (_Bool)0 && z$w_buff0_used == (_Bool)1) && z$w_buff1_used == (_Bool)1) || z$r_buff0_thd0 == (_Bool)0) || (((z$r_buff0_thd0 == (_Bool)0 && z$r_buff1_thd0 == (_Bool)0) && z$w_buff0_used == (_Bool)1) && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1))) || (z$r_buff0_thd0 == (_Bool)0 && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1)) [2024-02-07 19:28:17,964 INFO L76 edCorrectnessWitness]: Location invariant before [L751-L751] b == 1 [2024-02-07 19:28:17,964 INFO L76 edCorrectnessWitness]: Location invariant before [L868-L868] ((((z$r_buff1_thd0 == (_Bool)0 && z$w_buff0_used == (_Bool)1) && z$w_buff1_used == (_Bool)1) || z$r_buff0_thd0 == (_Bool)0) || (((z$r_buff0_thd0 == (_Bool)0 && z$r_buff1_thd0 == (_Bool)0) && z$w_buff0_used == (_Bool)1) && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1))) || (z$r_buff0_thd0 == (_Bool)0 && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1)) [2024-02-07 19:28:17,964 INFO L76 edCorrectnessWitness]: Location invariant before [L787-L787] (z$r_buff0_thd3 == (_Bool)0) && (z$w_buff0_used == (_Bool)1) [2024-02-07 19:28:17,964 INFO L76 edCorrectnessWitness]: Location invariant before [L866-L866] weak$$choice2 == (_Bool)0 || weak$$choice2 == (_Bool)1 [2024-02-07 19:28:17,964 INFO L76 edCorrectnessWitness]: Location invariant before [L877-L877] (((0 <= z) && (z <= 2)) && (z <= 127)) && ((z == 0 || z == 1) || z == 2) [2024-02-07 19:28:17,965 INFO L76 edCorrectnessWitness]: Location invariant before [L786-L786] (z$r_buff1_thd3 == (_Bool)0 && z$w_buff1_used == (_Bool)1) || (z$r_buff0_thd3 == (_Bool)0 && z$w_buff0_used == (_Bool)1) [2024-02-07 19:28:17,965 INFO L76 edCorrectnessWitness]: Location invariant before [L758-L758] 0 <= __unbuffered_cnt [2024-02-07 19:28:17,965 INFO L76 edCorrectnessWitness]: Location invariant before [L873-L873] ((((z$r_buff1_thd0 == (_Bool)0 && z$w_buff0_used == (_Bool)1) && z$w_buff1_used == (_Bool)1) || z$r_buff0_thd0 == (_Bool)0) || (((z$r_buff0_thd0 == (_Bool)0 && z$r_buff1_thd0 == (_Bool)0) && z$w_buff0_used == (_Bool)1) && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1))) || (z$r_buff0_thd0 == (_Bool)0 && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1)) [2024-02-07 19:28:17,965 INFO L76 edCorrectnessWitness]: Location invariant before [L870-L870] ((((z$r_buff1_thd0 == (_Bool)0 && z$w_buff0_used == (_Bool)1) && z$w_buff1_used == (_Bool)1) || z$r_buff0_thd0 == (_Bool)0) || (((z$r_buff0_thd0 == (_Bool)0 && z$r_buff1_thd0 == (_Bool)0) && z$w_buff0_used == (_Bool)1) && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1))) || (z$r_buff0_thd0 == (_Bool)0 && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1)) [2024-02-07 19:28:17,965 INFO L76 edCorrectnessWitness]: Location invariant before [L18-L18] ((0 <= expression) && (expression <= 1)) && (expression == 0 || expression == 1) [2024-02-07 19:28:17,965 INFO L76 edCorrectnessWitness]: Location invariant before [L774-L774] 1 <= __unbuffered_cnt [2024-02-07 19:28:17,965 INFO L76 edCorrectnessWitness]: Location invariant before [L867-L867] ((((0 <= z) && (z <= 2)) && (z <= 127)) && (z$flush_delayed == (_Bool)0 || z$flush_delayed == (_Bool)1)) && ((z == 0 || z == 1) || z == 2) [2024-02-07 19:28:17,966 INFO L76 edCorrectnessWitness]: Location invariant before [L793-L793] 0 <= __unbuffered_cnt [2024-02-07 19:28:17,966 INFO L76 edCorrectnessWitness]: Location invariant before [L860-L860] (z$r_buff0_thd0 == (_Bool)0) && (z$w_buff0_used == (_Bool)1) [2024-02-07 19:28:17,967 INFO L76 edCorrectnessWitness]: Location invariant before [L830-L830] 1 <= __unbuffered_cnt [2024-02-07 19:28:17,967 INFO L76 edCorrectnessWitness]: Location invariant before [L829-L829] 0 <= __unbuffered_cnt [2024-02-07 19:28:17,967 INFO L76 edCorrectnessWitness]: Location invariant before [L827-L827] z$r_buff1_thd4 == (_Bool)0 || z$r_buff1_thd4 == (_Bool)1 [2024-02-07 19:28:17,967 INFO L76 edCorrectnessWitness]: Location invariant before [L865-L865] weak$$choice0 == (_Bool)0 || weak$$choice0 == (_Bool)1 [2024-02-07 19:28:17,967 INFO L76 edCorrectnessWitness]: Location invariant before [L872-L872] ((((z$r_buff1_thd0 == (_Bool)0 && z$w_buff0_used == (_Bool)1) && z$w_buff1_used == (_Bool)1) || z$r_buff0_thd0 == (_Bool)0) || (((z$r_buff0_thd0 == (_Bool)0 && z$r_buff1_thd0 == (_Bool)0) && z$w_buff0_used == (_Bool)1) && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1))) || (z$r_buff0_thd0 == (_Bool)0 && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1)) [2024-02-07 19:28:17,967 INFO L76 edCorrectnessWitness]: Location invariant before [L817-L817] ((0 <= __unbuffered_p3_EAX) && (__unbuffered_p3_EAX <= 1)) && (__unbuffered_p3_EAX == 0 || __unbuffered_p3_EAX == 1) [2024-02-07 19:28:17,968 INFO L76 edCorrectnessWitness]: Location invariant before [L769-L769] y == 1 [2024-02-07 19:28:17,968 INFO L76 edCorrectnessWitness]: Location invariant before [L805-L805] z$r_buff0_thd0 == (_Bool)0 [2024-02-07 19:28:17,968 INFO L76 edCorrectnessWitness]: Location invariant before [L819-L819] ((0 <= b) && (b <= 1)) && (b == 0 || b == 1) [2024-02-07 19:28:17,968 INFO L76 edCorrectnessWitness]: Location invariant before [L861-L861] ((z$r_buff0_thd0 == (_Bool)0 && z$w_buff0_used == (_Bool)1) || (z$r_buff1_thd0 == (_Bool)0 && z$w_buff1_used == (_Bool)1)) || (z$r_buff1_thd0 == (_Bool)0 && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1)) [2024-02-07 19:28:17,968 INFO L76 edCorrectnessWitness]: Location invariant before [L826-L826] (z$r_buff1_thd4 == (_Bool)0 || z$r_buff1_thd4 == (_Bool)1) && (((z$w_buff1_used == (_Bool)1 && (z$r_buff0_thd4 == (_Bool)0 || z$r_buff0_thd4 == (_Bool)1)) || (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1)) || (z$w_buff0_used == (_Bool)1 && (z$r_buff0_thd4 == (_Bool)0 || z$r_buff0_thd4 == (_Bool)1))) [2024-02-07 19:28:17,969 INFO L76 edCorrectnessWitness]: Location invariant before [L874-L874] ((((z$r_buff1_thd0 == (_Bool)0 && z$w_buff0_used == (_Bool)1) && z$w_buff1_used == (_Bool)1) || z$r_buff0_thd0 == (_Bool)0) || (((z$r_buff0_thd0 == (_Bool)0 && z$r_buff1_thd0 == (_Bool)0) && z$w_buff0_used == (_Bool)1) && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1))) || (z$r_buff0_thd0 == (_Bool)0 && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1)) [2024-02-07 19:28:17,969 INFO L76 edCorrectnessWitness]: Location invariant before [L791-L791] z$r_buff1_thd3 == (_Bool)0 [2024-02-07 19:28:17,969 INFO L76 edCorrectnessWitness]: Location invariant before [L816-L816] ((0 <= a) && (a <= 1)) && (a == 0 || a == 1) [2024-02-07 19:28:17,969 INFO L76 edCorrectnessWitness]: Location invariant before [L824-L824] ((((z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1) || ((z$w_buff1_used == (_Bool)1 && (z$r_buff0_thd4 == (_Bool)0 || z$r_buff0_thd4 == (_Bool)1)) && (z$r_buff1_thd4 == (_Bool)0 || z$r_buff1_thd4 == (_Bool)1))) || ((z$r_buff1_thd4 == (_Bool)0 || z$r_buff1_thd4 == (_Bool)1) && (z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1))) || ((z$w_buff0_used == (_Bool)1 && (z$r_buff0_thd4 == (_Bool)0 || z$r_buff0_thd4 == (_Bool)1)) && (z$r_buff1_thd4 == (_Bool)0 || z$r_buff1_thd4 == (_Bool)1))) || ((z$r_buff0_thd4 == (_Bool)0 || z$r_buff0_thd4 == (_Bool)1) && (z$w_buff0_used == (_Bool)0 || z$w_buff0_used == (_Bool)1)) [2024-02-07 19:28:17,970 INFO L76 edCorrectnessWitness]: Location invariant before [L759-L759] 1 <= __unbuffered_cnt [2024-02-07 19:28:17,970 INFO L76 edCorrectnessWitness]: Location invariant before [L855-L855] main$tmp_guard0 == (_Bool)0 || main$tmp_guard0 == (_Bool)1 [2024-02-07 19:28:17,970 INFO L76 edCorrectnessWitness]: Location invariant before [L823-L823] (z$w_buff0_used == (_Bool)1) && (z$r_buff0_thd4 == (_Bool)0 || z$r_buff0_thd4 == (_Bool)1) [2024-02-07 19:28:17,970 INFO L76 edCorrectnessWitness]: Location invariant before [L800-L800] ((((0 <= z$w_buff0) && (z$w_buff0 <= 2)) && (z$w_buff0 <= 127)) && (z$w_buff0 % 2 == 0)) && (z$w_buff0 == 0 || z$w_buff0 == 2) [2024-02-07 19:28:17,971 INFO L76 edCorrectnessWitness]: Location invariant before [L862-L862] z$r_buff1_thd0 == (_Bool)0 [2024-02-07 19:28:17,971 INFO L76 edCorrectnessWitness]: Location invariant before [L803-L803] z$w_buff1_used == (_Bool)0 || z$w_buff1_used == (_Bool)1 [2024-02-07 19:28:17,971 INFO L76 edCorrectnessWitness]: Location invariant before [L804-L804] (z$w_buff0_used == (_Bool)1) && (z$w_buff1_used == (_Bool)1) [2024-02-07 19:28:17,971 INFO L76 edCorrectnessWitness]: Location invariant before [L854-L854] main$tmp_guard0 == (_Bool)0 || main$tmp_guard0 == (_Bool)1 [2024-02-07 19:28:17,971 INFO L76 edCorrectnessWitness]: Location invariant before [L814-L814] a == 1 [2024-02-07 19:28:17,972 INFO L76 edCorrectnessWitness]: Location invariant before [L822-L822] (z$w_buff1_used == (_Bool)1 && (z$r_buff1_thd4 == (_Bool)0 || z$r_buff1_thd4 == (_Bool)1)) || (z$w_buff0_used == (_Bool)1 && (z$r_buff0_thd4 == (_Bool)0 || z$r_buff0_thd4 == (_Bool)1)) [2024-02-07 19:28:17,972 INFO L76 edCorrectnessWitness]: Location invariant before [L857-L857] (z$r_buff1_thd0 == (_Bool)0 && z$w_buff1_used == (_Bool)1) || (z$r_buff0_thd0 == (_Bool)0 && z$w_buff0_used == (_Bool)1) [2024-02-07 19:28:17,972 INFO L76 edCorrectnessWitness]: Location invariant before [L875-L875] ((((0 <= __unbuffered_p3_EBX) && (__unbuffered_p3_EBX <= 1)) && (x == 2)) && (__unbuffered_p3_EBX == 0 || __unbuffered_p3_EBX == 1)) && ((y == 2 && ((z == 2 && (__unbuffered_p3_EAX == 1 || ((0 <= __unbuffered_p3_EAX && __unbuffered_p3_EAX <= 1) && (__unbuffered_p3_EAX == 0 || __unbuffered_p3_EAX == 1)))) || ((((((0 <= __unbuffered_p3_EAX && 0 <= z) && __unbuffered_p3_EAX <= 1) && z <= 2) && z <= 127) && (__unbuffered_p3_EAX == 0 || __unbuffered_p3_EAX == 1)) && ((z == 0 || z == 1) || z == 2)))) || ((((((((((0 <= __unbuffered_p3_EAX && 0 <= y) && 0 <= z) && __unbuffered_p3_EAX <= 1) && y <= 2) && y <= 127) && z <= 2) && z <= 127) && (__unbuffered_p3_EAX == 0 || __unbuffered_p3_EAX == 1)) && ((y == 0 || y == 1) || y == 2)) && ((z == 0 || z == 1) || z == 2))) [2024-02-07 19:28:17,972 INFO L76 edCorrectnessWitness]: Location invariant before [L825-L825] (z$w_buff0_used == (_Bool)1) && (z$r_buff0_thd4 == (_Bool)0 || z$r_buff0_thd4 == (_Bool)1) [2024-02-07 19:28:17,972 INFO L76 edCorrectnessWitness]: Location invariant before [L808-L808] (z$r_buff0_thd3 == (_Bool)0) && (z$r_buff1_thd2 == (_Bool)0) [2024-02-07 19:28:18,009 INFO L181 MainTranslator]: Built tables and reachable declarations [2024-02-07 19:28:18,153 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/mix047_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i[983,996] [2024-02-07 19:28:18,302 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-02-07 19:28:18,320 INFO L206 MainTranslator]: Completed pre-run Start Parsing Local [2024-02-07 19:28:18,360 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/mix047_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i[983,996] Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local 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-02-07 19:28:18,485 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-02-07 19:28:18,511 INFO L211 MainTranslator]: Completed translation [2024-02-07 19:28:18,512 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:18 WrapperNode [2024-02-07 19:28:18,512 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-02-07 19:28:18,513 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-02-07 19:28:18,513 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-02-07 19:28:18,525 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-02-07 19:28:18,530 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 07.02 07:28:18" (1/1) ... [2024-02-07 19:28:18,547 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 07.02 07:28:18" (1/1) ... [2024-02-07 19:28:18,585 INFO L138 Inliner]: procedures = 177, calls = 71, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 216 [2024-02-07 19:28:18,586 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-02-07 19:28:18,586 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-02-07 19:28:18,586 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-02-07 19:28:18,586 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-02-07 19:28:18,597 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:18" (1/1) ... [2024-02-07 19:28:18,597 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:18" (1/1) ... [2024-02-07 19:28:18,600 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:18" (1/1) ... [2024-02-07 19:28:18,615 INFO L175 MemorySlicer]: Split 6 memory accesses to 5 slices as follows [2, 1, 1, 1, 1]. 33 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2, 0, 0, 0, 0]. The 4 writes are split as follows [0, 1, 1, 1, 1]. [2024-02-07 19:28:18,615 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:18" (1/1) ... [2024-02-07 19:28:18,616 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:18" (1/1) ... [2024-02-07 19:28:18,642 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:18" (1/1) ... [2024-02-07 19:28:18,644 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:18" (1/1) ... [2024-02-07 19:28:18,646 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:18" (1/1) ... [2024-02-07 19:28:18,648 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:18" (1/1) ... [2024-02-07 19:28:18,651 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-02-07 19:28:18,652 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-02-07 19:28:18,652 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-02-07 19:28:18,652 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-02-07 19:28:18,653 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:18" (1/1) ... [2024-02-07 19:28:18,667 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-02-07 19:28:18,673 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-07 19:28:18,710 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-02-07 19:28:18,732 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-02-07 19:28:18,745 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-02-07 19:28:18,745 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-02-07 19:28:18,746 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2024-02-07 19:28:18,746 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2024-02-07 19:28:18,746 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#4 [2024-02-07 19:28:18,746 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-02-07 19:28:18,746 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-02-07 19:28:18,746 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-02-07 19:28:18,746 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-02-07 19:28:18,746 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-02-07 19:28:18,747 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-02-07 19:28:18,747 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-02-07 19:28:18,747 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-02-07 19:28:18,747 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-02-07 19:28:18,747 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-02-07 19:28:18,747 INFO L130 BoogieDeclarations]: Found specification of procedure P3 [2024-02-07 19:28:18,748 INFO L138 BoogieDeclarations]: Found implementation of procedure P3 [2024-02-07 19:28:18,748 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-02-07 19:28:18,748 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-02-07 19:28:18,748 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-02-07 19:28:18,748 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-02-07 19:28:18,748 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2024-02-07 19:28:18,748 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-02-07 19:28:18,748 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-02-07 19:28:18,748 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-02-07 19:28:18,750 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-02-07 19:28:18,893 INFO L244 CfgBuilder]: Building ICFG [2024-02-07 19:28:18,895 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-02-07 19:28:19,327 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-02-07 19:28:19,327 INFO L293 CfgBuilder]: Performing block encoding [2024-02-07 19:28:19,708 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-02-07 19:28:19,708 INFO L320 CfgBuilder]: Removed 0 assume(true) statements. [2024-02-07 19:28:19,708 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.02 07:28:19 BoogieIcfgContainer [2024-02-07 19:28:19,709 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-02-07 19:28:19,711 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-02-07 19:28:19,711 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-02-07 19:28:19,714 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-02-07 19:28:19,714 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.02 07:28:17" (1/4) ... [2024-02-07 19:28:19,715 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@16f20cc2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.02 07:28:19, skipping insertion in model container [2024-02-07 19:28:19,715 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 07.02 07:28:17" (2/4) ... [2024-02-07 19:28:19,715 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@16f20cc2 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 07.02 07:28:19, skipping insertion in model container [2024-02-07 19:28:19,715 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 07:28:18" (3/4) ... [2024-02-07 19:28:19,716 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@16f20cc2 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 07.02 07:28:19, skipping insertion in model container [2024-02-07 19:28:19,717 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.02 07:28:19" (4/4) ... [2024-02-07 19:28:19,717 INFO L112 eAbstractionObserver]: Analyzing ICFG mix047_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i [2024-02-07 19:28:19,732 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-02-07 19:28:19,732 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 70 error locations. [2024-02-07 19:28:19,732 INFO L518 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-02-07 19:28:19,825 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-02-07 19:28:19,859 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 131 places, 119 transitions, 254 flow [2024-02-07 19:28:19,920 INFO L124 PetriNetUnfolderBase]: 1/115 cut-off events. [2024-02-07 19:28:19,921 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-02-07 19:28:19,926 INFO L83 FinitePrefix]: Finished finitePrefix Result has 128 conditions, 115 events. 1/115 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 28. Compared 579 event pairs, 0 based on Foata normal form. 0/44 useless extension candidates. Maximal degree in co-relation 119. Up to 2 conditions per place. [2024-02-07 19:28:19,926 INFO L82 GeneralOperation]: Start removeDead. Operand has 131 places, 119 transitions, 254 flow [2024-02-07 19:28:19,932 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 127 places, 115 transitions, 242 flow [2024-02-07 19:28:19,944 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-02-07 19:28:19,952 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@5d4582c0, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-02-07 19:28:19,952 INFO L358 AbstractCegarLoop]: Starting to check reachability of 119 error locations. [2024-02-07 19:28:19,956 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-07 19:28:19,957 INFO L124 PetriNetUnfolderBase]: 0/4 cut-off events. [2024-02-07 19:28:19,957 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-02-07 19:28:19,957 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-02-07 19:28:19,958 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1] [2024-02-07 19:28:19,958 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting P0Err0ASSERT_VIOLATIONWITNESS_INVARIANT === [P0Err0ASSERT_VIOLATIONWITNESS_INVARIANT, P0Err1ASSERT_VIOLATIONWITNESS_INVARIANT, P0Err2ASSERT_VIOLATIONWITNESS_INVARIANT (and 116 more)] === [2024-02-07 19:28:20,029 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-02-07 19:28:20,029 INFO L85 PathProgramCache]: Analyzing trace with hash 23009037, now seen corresponding path program 1 times [2024-02-07 19:28:20,037 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-07 19:28:20,037 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1972049705] [2024-02-07 19:28:20,038 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-07 19:28:20,038 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-07 19:28:20,175 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-07 19:28:20,246 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-07 19:28:20,246 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-07 19:28:20,247 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1972049705] [2024-02-07 19:28:20,247 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1972049705] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-07 19:28:20,248 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-07 19:28:20,250 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-02-07 19:28:20,251 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [529871331] [2024-02-07 19:28:20,252 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-07 19:28:20,258 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2024-02-07 19:28:20,268 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-07 19:28:20,290 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2024-02-07 19:28:20,291 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2024-02-07 19:28:20,293 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 17 out of 119 [2024-02-07 19:28:20,296 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 127 places, 115 transitions, 242 flow. Second operand has 2 states, 2 states have (on average 18.5) internal successors, (37), 2 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-07 19:28:20,296 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-02-07 19:28:20,296 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 17 of 119 [2024-02-07 19:28:20,298 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-02-07 19:28:32,372 INFO L124 PetriNetUnfolderBase]: 109259/154621 cut-off events. [2024-02-07 19:28:32,373 INFO L125 PetriNetUnfolderBase]: For 340/340 co-relation queries the response was YES. [2024-02-07 19:28:32,721 INFO L83 FinitePrefix]: Finished finitePrefix Result has 297897 conditions, 154621 events. 109259/154621 cut-off events. For 340/340 co-relation queries the response was YES. Maximal size of possible extension queue 7853. Compared 1247339 event pairs, 109259 based on Foata normal form. 1800/90955 useless extension candidates. Maximal degree in co-relation 297885. Up to 142465 conditions per place. [2024-02-07 19:28:33,445 INFO L140 encePairwiseOnDemand]: 84/119 looper letters, 48 selfloop transitions, 0 changer transitions 0/61 dead transitions. [2024-02-07 19:28:33,445 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 75 places, 61 transitions, 230 flow [2024-02-07 19:28:33,446 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-02-07 19:28:33,448 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2024-02-07 19:28:33,453 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 117 transitions. [2024-02-07 19:28:33,455 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.49159663865546216 [2024-02-07 19:28:33,456 INFO L175 Difference]: Start difference. First operand has 127 places, 115 transitions, 242 flow. Second operand 2 states and 117 transitions. [2024-02-07 19:28:33,457 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 75 places, 61 transitions, 230 flow [2024-02-07 19:28:33,465 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 71 places, 61 transitions, 226 flow, removed 0 selfloop flow, removed 4 redundant places. [2024-02-07 19:28:33,466 INFO L231 Difference]: Finished difference. Result has 71 places, 61 transitions, 130 flow [2024-02-07 19:28:33,468 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=119, PETRI_DIFFERENCE_MINUEND_FLOW=130, PETRI_DIFFERENCE_MINUEND_PLACES=70, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=61, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=61, PETRI_DIFFERENCE_SUBTRAHEND_STATES=2, PETRI_FLOW=130, PETRI_PLACES=71, PETRI_TRANSITIONS=61} [2024-02-07 19:28:33,470 INFO L281 CegarLoopForPetriNet]: 127 programPoint places, -56 predicate places. [2024-02-07 19:28:33,471 INFO L495 AbstractCegarLoop]: Abstraction has has 71 places, 61 transitions, 130 flow [2024-02-07 19:28:33,471 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 18.5) internal successors, (37), 2 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-07 19:28:33,471 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-02-07 19:28:33,471 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2024-02-07 19:28:33,471 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-02-07 19:28:33,472 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting P0Err2ASSERT_VIOLATIONWITNESS_INVARIANT === [P0Err0ASSERT_VIOLATIONWITNESS_INVARIANT, P0Err1ASSERT_VIOLATIONWITNESS_INVARIANT, P0Err2ASSERT_VIOLATIONWITNESS_INVARIANT (and 116 more)] === [2024-02-07 19:28:33,472 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-02-07 19:28:33,472 INFO L85 PathProgramCache]: Analyzing trace with hash -1731712932, now seen corresponding path program 1 times [2024-02-07 19:28:33,472 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-07 19:28:33,472 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [262577195] [2024-02-07 19:28:33,473 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-07 19:28:33,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-07 19:28:33,487 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-07 19:28:33,546 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-07 19:28:33,547 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-07 19:28:33,547 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [262577195] [2024-02-07 19:28:33,548 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [262577195] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-07 19:28:33,548 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-07 19:28:33,549 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-02-07 19:28:33,549 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1205622336] [2024-02-07 19:28:33,549 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-07 19:28:33,550 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-02-07 19:28:33,550 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-07 19:28:33,551 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-02-07 19:28:33,551 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-02-07 19:28:33,552 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 17 out of 119 [2024-02-07 19:28:33,553 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 71 places, 61 transitions, 130 flow. Second operand has 3 states, 3 states have (on average 18.666666666666668) internal successors, (56), 3 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-07 19:28:33,553 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-02-07 19:28:33,553 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 17 of 119 [2024-02-07 19:28:33,553 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand