./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-wmm/mix026_pso.opt_rmo.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/mix026_pso.opt_rmo.opt.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 958ec4d9 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/mix026_pso.opt_rmo.opt.i ./goblint.2024-02-07_10-47-16.files/SV-COMP24_unreach-call/mix026_pso.opt_rmo.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-dev-958ec4d-m [2024-02-07 14:47:45,834 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-02-07 14:47:45,911 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-02-07 14:47:45,916 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-02-07 14:47:45,917 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-02-07 14:47:45,941 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-02-07 14:47:45,945 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-02-07 14:47:45,945 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-02-07 14:47:45,946 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-02-07 14:47:45,949 INFO L153 SettingsManager]: * Use memory slicer=true [2024-02-07 14:47:45,949 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-02-07 14:47:45,949 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-02-07 14:47:45,950 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-02-07 14:47:45,951 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-02-07 14:47:45,951 INFO L153 SettingsManager]: * Use SBE=true [2024-02-07 14:47:45,952 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-02-07 14:47:45,952 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-02-07 14:47:45,952 INFO L153 SettingsManager]: * sizeof long=4 [2024-02-07 14:47:45,952 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-02-07 14:47:45,952 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-02-07 14:47:45,953 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-02-07 14:47:45,953 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-02-07 14:47:45,953 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-02-07 14:47:45,953 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-02-07 14:47:45,954 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-02-07 14:47:45,954 INFO L153 SettingsManager]: * sizeof long double=12 [2024-02-07 14:47:45,954 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-02-07 14:47:45,954 INFO L153 SettingsManager]: * Use constant arrays=true [2024-02-07 14:47:45,955 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-02-07 14:47:45,955 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-02-07 14:47:45,956 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-02-07 14:47:45,956 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-02-07 14:47:45,956 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-02-07 14:47:45,956 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-02-07 14:47:45,956 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-02-07 14:47:45,957 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-02-07 14:47:45,957 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-02-07 14:47:45,957 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-02-07 14:47:45,957 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-02-07 14:47:45,957 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-02-07 14:47:45,958 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-02-07 14:47:45,958 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-02-07 14:47:45,958 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-02-07 14:47:45,958 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 14:47:46,164 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-02-07 14:47:46,182 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-02-07 14:47:46,184 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-02-07 14:47:46,185 INFO L270 PluginConnector]: Initializing CDTParser... [2024-02-07 14:47:46,185 INFO L274 PluginConnector]: CDTParser initialized [2024-02-07 14:47:46,192 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread-wmm/mix026_pso.opt_rmo.opt.i [2024-02-07 14:47:47,225 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-02-07 14:47:47,470 INFO L384 CDTParser]: Found 1 translation units. [2024-02-07 14:47:47,471 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-wmm/mix026_pso.opt_rmo.opt.i [2024-02-07 14:47:47,484 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f01c513aa/2457eadcb5754516aa32fe400faf4fe6/FLAG507d84a5c [2024-02-07 14:47:47,497 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f01c513aa/2457eadcb5754516aa32fe400faf4fe6 [2024-02-07 14:47:47,499 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-02-07 14:47:47,508 INFO L274 PluginConnector]: Witness Parser initialized [2024-02-07 14:47:47,510 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/mix026_pso.opt_rmo.opt.yml/witness.yml [2024-02-07 14:47:47,650 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-02-07 14:47:47,652 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-02-07 14:47:47,654 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-02-07 14:47:47,654 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-02-07 14:47:47,658 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-02-07 14:47:47,659 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.02 02:47:47" (1/2) ... [2024-02-07 14:47:47,660 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@56084d86 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.02 02:47:47, skipping insertion in model container [2024-02-07 14:47:47,660 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.02 02:47:47" (1/2) ... [2024-02-07 14:47:47,661 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@2bd0f2d9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.02 02:47:47, skipping insertion in model container [2024-02-07 14:47:47,661 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 07.02 02:47:47" (2/2) ... [2024-02-07 14:47:47,662 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@56084d86 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:47:47, skipping insertion in model container [2024-02-07 14:47:47,662 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 07.02 02:47:47" (2/2) ... [2024-02-07 14:47:47,662 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-02-07 14:47:47,828 INFO L74 edCorrectnessWitness]: Found the following entries in the witness: [2024-02-07 14:47:47,830 INFO L76 edCorrectnessWitness]: Location invariant before [L805-L805] y$r_buff1_thd4 == (_Bool)0 [2024-02-07 14:47:47,830 INFO L76 edCorrectnessWitness]: Location invariant before [L809-L809] z == 1 [2024-02-07 14:47:47,830 INFO L76 edCorrectnessWitness]: Location invariant before [L806-L806] y$r_buff0_thd3 == (_Bool)1 [2024-02-07 14:47:47,831 INFO L76 edCorrectnessWitness]: Location invariant before [L755-L755] ((0 <= x) && (x <= 1)) && (x == 0 || x == 1) [2024-02-07 14:47:47,831 INFO L76 edCorrectnessWitness]: Location invariant before [L869-L869] (y$r_buff1_thd0 == (_Bool)0 && y$w_buff1_used == (_Bool)1) || (y$r_buff0_thd0 == (_Bool)0 && y$w_buff0_used == (_Bool)1) [2024-02-07 14:47:47,831 INFO L76 edCorrectnessWitness]: Location invariant before [L812-L812] (y$w_buff0_used == (_Bool)1) && (y$r_buff0_thd3 == (_Bool)0 || y$r_buff0_thd3 == (_Bool)1) [2024-02-07 14:47:47,832 INFO L76 edCorrectnessWitness]: Location invariant before [L831-L831] ((0 <= a) && (a <= 1)) && (a == 0 || a == 1) [2024-02-07 14:47:47,832 INFO L76 edCorrectnessWitness]: Location invariant before [L815-L815] (y$r_buff1_thd3 == (_Bool)0 || y$r_buff1_thd3 == (_Bool)1) && (((y$w_buff1_used == (_Bool)1 && (y$r_buff0_thd3 == (_Bool)0 || y$r_buff0_thd3 == (_Bool)1)) || (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1)) || (y$w_buff0_used == (_Bool)1 && (y$r_buff0_thd3 == (_Bool)0 || y$r_buff0_thd3 == (_Bool)1))) [2024-02-07 14:47:47,832 INFO L76 edCorrectnessWitness]: Location invariant before [L871-L871] (y$r_buff1_thd0 == (_Bool)0 && (y$w_buff1_used == (_Bool)1 || (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1))) || (y$r_buff0_thd0 == (_Bool)0 && y$w_buff0_used == (_Bool)1) [2024-02-07 14:47:47,832 INFO L76 edCorrectnessWitness]: Location invariant before [L768-L768] x == 1 [2024-02-07 14:47:47,832 INFO L76 edCorrectnessWitness]: Location invariant before [L801-L801] (y$r_buff0_thd1 == (_Bool)0) && (y$r_buff1_thd0 == (_Bool)0) [2024-02-07 14:47:47,832 INFO L76 edCorrectnessWitness]: Location invariant before [L828-L828] (((0 <= z) && (z <= 2)) && (z <= 127)) && ((z == 0 || z == 1) || z == 2) [2024-02-07 14:47:47,832 INFO L76 edCorrectnessWitness]: Location invariant before [L829-L829] (((0 <= __unbuffered_p3_EAX) && (__unbuffered_p3_EAX <= 2)) && (__unbuffered_p3_EAX <= 127)) && ((__unbuffered_p3_EAX == 0 || __unbuffered_p3_EAX == 1) || __unbuffered_p3_EAX == 2) [2024-02-07 14:47:47,833 INFO L76 edCorrectnessWitness]: Location invariant before [L789-L789] 1 <= __unbuffered_cnt [2024-02-07 14:47:47,833 INFO L76 edCorrectnessWitness]: Location invariant before [L784-L784] y$flush_delayed == (_Bool)0 [2024-02-07 14:47:47,833 INFO L76 edCorrectnessWitness]: Location invariant before [L761-L761] 1 <= __unbuffered_cnt [2024-02-07 14:47:47,833 INFO L76 edCorrectnessWitness]: Location invariant before [L797-L797] (y$w_buff0 == 1) && (y$w_buff0_used == (_Bool)0 || y$w_buff0_used == (_Bool)1) [2024-02-07 14:47:47,833 INFO L76 edCorrectnessWitness]: Location invariant before [L798-L798] y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1 [2024-02-07 14:47:47,833 INFO L76 edCorrectnessWitness]: Location invariant before [L775-L775] ((((y$r_buff1_thd2 == (_Bool)0 && y$w_buff0_used == (_Bool)1) && y$w_buff1_used == (_Bool)1) || y$r_buff0_thd2 == (_Bool)0) || (((y$r_buff0_thd2 == (_Bool)0 && y$r_buff1_thd2 == (_Bool)0) && y$w_buff0_used == (_Bool)1) && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1))) || (y$r_buff0_thd2 == (_Bool)0 && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1)) [2024-02-07 14:47:47,833 INFO L76 edCorrectnessWitness]: Location invariant before [L867-L867] main$tmp_guard0 == (_Bool)0 || main$tmp_guard0 == (_Bool)1 [2024-02-07 14:47:47,833 INFO L76 edCorrectnessWitness]: Location invariant before [L819-L819] 1 <= __unbuffered_cnt [2024-02-07 14:47:47,834 INFO L76 edCorrectnessWitness]: Location invariant before [L837-L837] (y$r_buff0_thd4 == (_Bool)0) && (y$w_buff0_used == (_Bool)1) [2024-02-07 14:47:47,834 INFO L76 edCorrectnessWitness]: Location invariant before [L802-L802] (y$r_buff0_thd2 == (_Bool)0) && (y$r_buff1_thd1 == (_Bool)0) [2024-02-07 14:47:47,834 INFO L76 edCorrectnessWitness]: Location invariant before [L779-L779] ((((y$r_buff1_thd2 == (_Bool)0 && y$w_buff0_used == (_Bool)1) && y$w_buff1_used == (_Bool)1) || y$r_buff0_thd2 == (_Bool)0) || (((y$r_buff0_thd2 == (_Bool)0 && y$r_buff1_thd2 == (_Bool)0) && y$w_buff0_used == (_Bool)1) && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1))) || (y$r_buff0_thd2 == (_Bool)0 && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1)) [2024-02-07 14:47:47,835 INFO L76 edCorrectnessWitness]: Location invariant before [L813-L813] (y$r_buff1_thd3 == (_Bool)0 || y$r_buff1_thd3 == (_Bool)1) && (((y$w_buff1_used == (_Bool)1 && (y$r_buff0_thd3 == (_Bool)0 || y$r_buff0_thd3 == (_Bool)1)) || (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1)) || (y$w_buff0_used == (_Bool)1 && (y$r_buff0_thd3 == (_Bool)0 || y$r_buff0_thd3 == (_Bool)1))) [2024-02-07 14:47:47,835 INFO L76 edCorrectnessWitness]: Location invariant before [L874-L874] y$r_buff1_thd0 == (_Bool)0 [2024-02-07 14:47:47,835 INFO L76 edCorrectnessWitness]: Location invariant before [L878-L878] main$tmp_guard1 == (_Bool)0 || main$tmp_guard1 == (_Bool)1 [2024-02-07 14:47:47,835 INFO L76 edCorrectnessWitness]: Location invariant before [L777-L777] ((((y$r_buff1_thd2 == (_Bool)0 && y$w_buff0_used == (_Bool)1) && y$w_buff1_used == (_Bool)1) || y$r_buff0_thd2 == (_Bool)0) || (((y$r_buff0_thd2 == (_Bool)0 && y$r_buff1_thd2 == (_Bool)0) && y$w_buff0_used == (_Bool)1) && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1))) || (y$r_buff0_thd2 == (_Bool)0 && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1)) [2024-02-07 14:47:47,835 INFO L76 edCorrectnessWitness]: Location invariant before [L872-L872] (y$r_buff0_thd0 == (_Bool)0) && (y$w_buff0_used == (_Bool)1) [2024-02-07 14:47:47,835 INFO L76 edCorrectnessWitness]: Location invariant before [L826-L826] z == 2 [2024-02-07 14:47:47,835 INFO L76 edCorrectnessWitness]: Location invariant before [L780-L780] ((((y$r_buff1_thd2 == (_Bool)0 && y$w_buff0_used == (_Bool)1) && y$w_buff1_used == (_Bool)1) || y$r_buff0_thd2 == (_Bool)0) || (((y$r_buff0_thd2 == (_Bool)0 && y$r_buff1_thd2 == (_Bool)0) && y$w_buff0_used == (_Bool)1) && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1))) || (y$r_buff0_thd2 == (_Bool)0 && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1)) [2024-02-07 14:47:47,836 INFO L76 edCorrectnessWitness]: Location invariant before [L835-L835] (y$r_buff0_thd4 == (_Bool)0) && (y$w_buff0_used == (_Bool)1) [2024-02-07 14:47:47,836 INFO L76 edCorrectnessWitness]: Location invariant before [L865-L865] 0 <= __unbuffered_cnt [2024-02-07 14:47:47,836 INFO L76 edCorrectnessWitness]: Location invariant before [L799-L799] (y$w_buff0_used == (_Bool)1) && (y$w_buff1_used == (_Bool)1) [2024-02-07 14:47:47,836 INFO L76 edCorrectnessWitness]: Location invariant before [L841-L841] 0 <= __unbuffered_cnt [2024-02-07 14:47:47,836 INFO L76 edCorrectnessWitness]: Location invariant before [L834-L834] (y$r_buff1_thd4 == (_Bool)0 && y$w_buff1_used == (_Bool)1) || (y$r_buff0_thd4 == (_Bool)0 && y$w_buff0_used == (_Bool)1) [2024-02-07 14:47:47,836 INFO L76 edCorrectnessWitness]: Location invariant before [L760-L760] 0 <= __unbuffered_cnt [2024-02-07 14:47:47,837 INFO L76 edCorrectnessWitness]: Location invariant before [L804-L804] (y$r_buff0_thd4 == (_Bool)0) && (y$r_buff1_thd3 == (_Bool)0 || y$r_buff1_thd3 == (_Bool)1) [2024-02-07 14:47:47,838 INFO L76 edCorrectnessWitness]: Location invariant before [L800-L800] y$r_buff0_thd0 == (_Bool)0 [2024-02-07 14:47:47,838 INFO L76 edCorrectnessWitness]: Location invariant before [L842-L842] 1 <= __unbuffered_cnt [2024-02-07 14:47:47,838 INFO L76 edCorrectnessWitness]: Location invariant before [L773-L773] (((0 <= y) && (y <= 1)) && (y == 0 || y == 1)) && (y$flush_delayed == (_Bool)0 || y$flush_delayed == (_Bool)1) [2024-02-07 14:47:47,838 INFO L76 edCorrectnessWitness]: Location invariant before [L771-L771] weak$$choice0 == (_Bool)0 || weak$$choice0 == (_Bool)1 [2024-02-07 14:47:47,838 INFO L76 edCorrectnessWitness]: Location invariant before [L836-L836] (y$r_buff1_thd4 == (_Bool)0 && (y$w_buff1_used == (_Bool)1 || (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1))) || (y$r_buff0_thd4 == (_Bool)0 && y$w_buff0_used == (_Bool)1) [2024-02-07 14:47:47,838 INFO L76 edCorrectnessWitness]: Location invariant before [L781-L781] (((0 <= y) && (y <= 1)) && (y$r_buff1_thd2 == (_Bool)0)) && (y == 0 || y == 1) [2024-02-07 14:47:47,838 INFO L76 edCorrectnessWitness]: Location invariant before [L778-L778] ((((y$r_buff1_thd2 == (_Bool)0 && y$w_buff0_used == (_Bool)1) && y$w_buff1_used == (_Bool)1) || y$r_buff0_thd2 == (_Bool)0) || (((y$r_buff0_thd2 == (_Bool)0 && y$r_buff1_thd2 == (_Bool)0) && y$w_buff0_used == (_Bool)1) && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1))) || (y$r_buff0_thd2 == (_Bool)0 && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1)) [2024-02-07 14:47:47,839 INFO L76 edCorrectnessWitness]: Location invariant before [L783-L783] ((0 <= y) && (y <= 1)) && (y == 0 || y == 1) [2024-02-07 14:47:47,839 INFO L76 edCorrectnessWitness]: Location invariant before [L753-L753] a == 1 [2024-02-07 14:47:47,839 INFO L76 edCorrectnessWitness]: Location invariant before [L873-L873] (y$r_buff1_thd0 == (_Bool)0 && (y$w_buff1_used == (_Bool)1 || (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1))) || (y$r_buff0_thd0 == (_Bool)0 && y$w_buff0_used == (_Bool)1) [2024-02-07 14:47:47,839 INFO L76 edCorrectnessWitness]: Location invariant before [L866-L866] main$tmp_guard0 == (_Bool)0 || main$tmp_guard0 == (_Bool)1 [2024-02-07 14:47:47,839 INFO L76 edCorrectnessWitness]: Location invariant before [L818-L818] 0 <= __unbuffered_cnt [2024-02-07 14:47:47,840 INFO L76 edCorrectnessWitness]: Location invariant before [L18-L18] ((0 <= expression) && (expression <= 1)) && (expression == 0 || expression == 1) [2024-02-07 14:47:47,840 INFO L76 edCorrectnessWitness]: Location invariant before [L796-L796] ((0 <= y$w_buff1) && (y$w_buff1 <= 1)) && (y$w_buff1 == 0 || y$w_buff1 == 1) [2024-02-07 14:47:47,840 INFO L76 edCorrectnessWitness]: Location invariant before [L870-L870] (y$r_buff0_thd0 == (_Bool)0) && (y$w_buff0_used == (_Bool)1) [2024-02-07 14:47:47,840 INFO L76 edCorrectnessWitness]: Location invariant before [L795-L795] ((0 <= y$w_buff0) && (y$w_buff0 <= 1)) && (y$w_buff0 == 0 || y$w_buff0 == 1) [2024-02-07 14:47:47,840 INFO L76 edCorrectnessWitness]: Location invariant before [L776-L776] ((((y$r_buff1_thd2 == (_Bool)0 && y$w_buff0_used == (_Bool)1) && y$w_buff1_used == (_Bool)1) || y$r_buff0_thd2 == (_Bool)0) || (((y$r_buff0_thd2 == (_Bool)0 && y$r_buff1_thd2 == (_Bool)0) && y$w_buff0_used == (_Bool)1) && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1))) || (y$r_buff0_thd2 == (_Bool)0 && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1)) [2024-02-07 14:47:47,841 INFO L76 edCorrectnessWitness]: Location invariant before [L788-L788] 0 <= __unbuffered_cnt [2024-02-07 14:47:47,841 INFO L76 edCorrectnessWitness]: Location invariant before [L772-L772] weak$$choice2 == (_Bool)0 || weak$$choice2 == (_Bool)1 [2024-02-07 14:47:47,842 INFO L76 edCorrectnessWitness]: Location invariant before [L876-L876] ((((0 <= __unbuffered_p3_EBX) && (__unbuffered_p3_EBX <= 1)) && (z == 2)) && (__unbuffered_p3_EBX == 0 || __unbuffered_p3_EBX == 1)) && ((__unbuffered_p0_EAX == 0 && ((__unbuffered_p1_EAX == 0 && (__unbuffered_p3_EAX == 2 || (((0 <= __unbuffered_p3_EAX && __unbuffered_p3_EAX <= 2) && __unbuffered_p3_EAX <= 127) && ((__unbuffered_p3_EAX == 0 || __unbuffered_p3_EAX == 1) || __unbuffered_p3_EAX == 2)))) || ((((((0 <= __unbuffered_p1_EAX && 0 <= __unbuffered_p3_EAX) && __unbuffered_p1_EAX <= 1) && __unbuffered_p3_EAX <= 2) && __unbuffered_p3_EAX <= 127) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && ((__unbuffered_p3_EAX == 0 || __unbuffered_p3_EAX == 1) || __unbuffered_p3_EAX == 2)))) || (((((((((0 <= __unbuffered_p0_EAX && 0 <= __unbuffered_p1_EAX) && 0 <= __unbuffered_p3_EAX) && __unbuffered_p0_EAX <= 1) && __unbuffered_p1_EAX <= 1) && __unbuffered_p3_EAX <= 2) && __unbuffered_p3_EAX <= 127) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1)) && (__unbuffered_p1_EAX == 0 || __unbuffered_p1_EAX == 1)) && ((__unbuffered_p3_EAX == 0 || __unbuffered_p3_EAX == 1) || __unbuffered_p3_EAX == 2))) [2024-02-07 14:47:47,842 INFO L76 edCorrectnessWitness]: Location invariant before [L774-L774] ((((y$r_buff1_thd2 == (_Bool)0 && y$w_buff0_used == (_Bool)1) && y$w_buff1_used == (_Bool)1) || y$r_buff0_thd2 == (_Bool)0) || (((y$r_buff0_thd2 == (_Bool)0 && y$r_buff1_thd2 == (_Bool)0) && y$w_buff0_used == (_Bool)1) && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1))) || (y$r_buff0_thd2 == (_Bool)0 && (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1)) [2024-02-07 14:47:47,842 INFO L76 edCorrectnessWitness]: Location invariant before [L838-L838] (y$r_buff1_thd4 == (_Bool)0 && (y$w_buff1_used == (_Bool)1 || (y$w_buff1_used == (_Bool)0 || y$w_buff1_used == (_Bool)1))) || (y$r_buff0_thd4 == (_Bool)0 && y$w_buff0_used == (_Bool)1) [2024-02-07 14:47:47,842 INFO L76 edCorrectnessWitness]: Location invariant before [L756-L756] ((0 <= __unbuffered_p0_EAX) && (__unbuffered_p0_EAX <= 1)) && (__unbuffered_p0_EAX == 0 || __unbuffered_p0_EAX == 1) [2024-02-07 14:47:47,842 INFO L76 edCorrectnessWitness]: Location invariant before [L803-L803] (y$r_buff1_thd2 == (_Bool)0) && (y$r_buff0_thd3 == (_Bool)0 || y$r_buff0_thd3 == (_Bool)1) [2024-02-07 14:47:47,842 INFO L76 edCorrectnessWitness]: Location invariant before [L877-L877] main$tmp_guard1 == (_Bool)0 || main$tmp_guard1 == (_Bool)1 [2024-02-07 14:47:47,843 INFO L76 edCorrectnessWitness]: Location invariant before [L816-L816] y$r_buff1_thd3 == (_Bool)0 || y$r_buff1_thd3 == (_Bool)1 [2024-02-07 14:47:47,843 INFO L76 edCorrectnessWitness]: Location invariant before [L811-L811] (y$w_buff1_used == (_Bool)1 && (y$r_buff1_thd3 == (_Bool)0 || y$r_buff1_thd3 == (_Bool)1)) || (y$w_buff0_used == (_Bool)1 && (y$r_buff0_thd3 == (_Bool)0 || y$r_buff0_thd3 == (_Bool)1)) [2024-02-07 14:47:47,843 INFO L76 edCorrectnessWitness]: Location invariant before [L814-L814] (y$w_buff0_used == (_Bool)1) && (y$r_buff0_thd3 == (_Bool)0 || y$r_buff0_thd3 == (_Bool)1) [2024-02-07 14:47:47,843 INFO L76 edCorrectnessWitness]: Location invariant before [L839-L839] y$r_buff1_thd4 == (_Bool)0 [2024-02-07 14:47:47,843 INFO L76 edCorrectnessWitness]: Location invariant before [L832-L832] ((0 <= __unbuffered_p3_EBX) && (__unbuffered_p3_EBX <= 1)) && (__unbuffered_p3_EBX == 0 || __unbuffered_p3_EBX == 1) [2024-02-07 14:47:47,891 INFO L178 MainTranslator]: Built tables and reachable declarations [2024-02-07 14:47:48,042 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/mix026_pso.opt_rmo.opt.i[956,969] [2024-02-07 14:47:48,217 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-02-07 14:47:48,229 INFO L203 MainTranslator]: Completed pre-run Start Parsing Local [2024-02-07 14:47:48,260 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/mix026_pso.opt_rmo.opt.i[956,969] 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 Start Parsing Local [2024-02-07 14:47:48,365 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-02-07 14:47:48,398 INFO L207 MainTranslator]: Completed translation [2024-02-07 14:47:48,399 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:47:48 WrapperNode [2024-02-07 14:47:48,399 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-02-07 14:47:48,399 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-02-07 14:47:48,400 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-02-07 14:47:48,400 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-02-07 14:47:48,405 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 02:47:48" (1/1) ... [2024-02-07 14:47:48,432 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 02:47:48" (1/1) ... [2024-02-07 14:47:48,457 INFO L138 Inliner]: procedures = 177, calls = 69, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 179 [2024-02-07 14:47:48,457 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-02-07 14:47:48,458 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-02-07 14:47:48,458 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-02-07 14:47:48,458 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-02-07 14:47:48,466 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 02:47:48" (1/1) ... [2024-02-07 14:47:48,466 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 02:47:48" (1/1) ... [2024-02-07 14:47:48,471 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 02:47:48" (1/1) ... [2024-02-07 14:47:48,492 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 14:47:48,499 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 02:47:48" (1/1) ... [2024-02-07 14:47:48,499 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 02:47:48" (1/1) ... [2024-02-07 14:47:48,509 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 02:47:48" (1/1) ... [2024-02-07 14:47:48,521 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 02:47:48" (1/1) ... [2024-02-07 14:47:48,524 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 02:47:48" (1/1) ... [2024-02-07 14:47:48,529 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 02:47:48" (1/1) ... [2024-02-07 14:47:48,533 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-02-07 14:47:48,537 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-02-07 14:47:48,537 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-02-07 14:47:48,540 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-02-07 14:47:48,541 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 02:47:48" (1/1) ... [2024-02-07 14:47:48,549 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-02-07 14:47:48,555 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-07 14:47:48,583 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 14:47:48,611 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-02-07 14:47:48,612 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-02-07 14:47:48,612 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2024-02-07 14:47:48,612 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2024-02-07 14:47:48,612 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#4 [2024-02-07 14:47:48,612 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-02-07 14:47:48,612 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-02-07 14:47:48,612 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-02-07 14:47:48,613 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-02-07 14:47:48,613 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2024-02-07 14:47:48,613 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2024-02-07 14:47:48,613 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2024-02-07 14:47:48,614 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2024-02-07 14:47:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2024-02-07 14:47:48,614 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2024-02-07 14:47:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure P3 [2024-02-07 14:47:48,614 INFO L138 BoogieDeclarations]: Found implementation of procedure P3 [2024-02-07 14:47:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-02-07 14:47:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-02-07 14:47:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-02-07 14:47:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-02-07 14:47:48,614 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2024-02-07 14:47:48,615 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-02-07 14:47:48,615 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-02-07 14:47:48,615 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-02-07 14:47:48,604 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 14:47:48,617 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 14:47:48,775 INFO L244 CfgBuilder]: Building ICFG [2024-02-07 14:47:48,777 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-02-07 14:47:49,170 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-02-07 14:47:49,170 INFO L293 CfgBuilder]: Performing block encoding [2024-02-07 14:47:49,481 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-02-07 14:47:49,482 INFO L320 CfgBuilder]: Removed 0 assume(true) statements. [2024-02-07 14:47:49,482 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.02 02:47:49 BoogieIcfgContainer [2024-02-07 14:47:49,482 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-02-07 14:47:49,483 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-02-07 14:47:49,484 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-02-07 14:47:49,486 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-02-07 14:47:49,486 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.02 02:47:47" (1/4) ... [2024-02-07 14:47:49,487 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3879d476 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.02 02:47:49, skipping insertion in model container [2024-02-07 14:47:49,487 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 07.02 02:47:47" (2/4) ... [2024-02-07 14:47:49,487 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3879d476 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 07.02 02:47:49, skipping insertion in model container [2024-02-07 14:47:49,487 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 02:47:48" (3/4) ... [2024-02-07 14:47:49,487 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3879d476 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 07.02 02:47:49, skipping insertion in model container [2024-02-07 14:47:49,488 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.02 02:47:49" (4/4) ... [2024-02-07 14:47:49,489 INFO L112 eAbstractionObserver]: Analyzing ICFG mix026_pso.opt_rmo.opt.i [2024-02-07 14:47:49,503 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-02-07 14:47:49,503 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 71 error locations. [2024-02-07 14:47:49,503 INFO L518 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-02-07 14:47:49,594 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-02-07 14:47:49,624 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 131 places, 119 transitions, 254 flow [2024-02-07 14:47:49,674 INFO L124 PetriNetUnfolderBase]: 1/115 cut-off events. [2024-02-07 14:47:49,675 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-02-07 14:47:49,680 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 21. Compared 556 event pairs, 0 based on Foata normal form. 0/43 useless extension candidates. Maximal degree in co-relation 119. Up to 2 conditions per place. [2024-02-07 14:47:49,680 INFO L82 GeneralOperation]: Start removeDead. Operand has 131 places, 119 transitions, 254 flow [2024-02-07 14:47:49,686 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 127 places, 115 transitions, 242 flow [2024-02-07 14:47:49,698 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-02-07 14:47:49,705 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;@500f4d53, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-02-07 14:47:49,705 INFO L358 AbstractCegarLoop]: Starting to check reachability of 132 error locations. [2024-02-07 14:47:49,709 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-07 14:47:49,710 INFO L124 PetriNetUnfolderBase]: 0/5 cut-off events. [2024-02-07 14:47:49,710 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-02-07 14:47:49,710 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-02-07 14:47:49,711 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1] [2024-02-07 14:47:49,711 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting P0Err0ASSERT_VIOLATIONWITNESS_INVARIANT === [P0Err0ASSERT_VIOLATIONWITNESS_INVARIANT, P0Err1ASSERT_VIOLATIONWITNESS_INVARIANT, P0Err2ASSERT_VIOLATIONWITNESS_INVARIANT (and 129 more)] === [2024-02-07 14:47:49,718 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-02-07 14:47:49,719 INFO L85 PathProgramCache]: Analyzing trace with hash 22928377, now seen corresponding path program 1 times [2024-02-07 14:47:49,726 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-07 14:47:49,726 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1937807255] [2024-02-07 14:47:49,727 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-07 14:47:49,727 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-07 14:47:49,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-07 14:47:49,861 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 14:47:49,861 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-07 14:47:49,861 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1937807255] [2024-02-07 14:47:49,862 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1937807255] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-07 14:47:49,862 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-07 14:47:49,862 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-02-07 14:47:49,863 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [378381898] [2024-02-07 14:47:49,864 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-07 14:47:49,870 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2024-02-07 14:47:49,874 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-07 14:47:49,891 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2024-02-07 14:47:49,891 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2024-02-07 14:47:49,893 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 17 out of 119 [2024-02-07 14:47:49,894 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 14:47:49,894 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-02-07 14:47:49,895 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 17 of 119 [2024-02-07 14:47:49,895 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-02-07 14:48:15,158 INFO L124 PetriNetUnfolderBase]: 245222/347858 cut-off events. [2024-02-07 14:48:15,159 INFO L125 PetriNetUnfolderBase]: For 175/175 co-relation queries the response was YES. [2024-02-07 14:48:16,068 INFO L83 FinitePrefix]: Finished finitePrefix Result has 666113 conditions, 347858 events. 245222/347858 cut-off events. For 175/175 co-relation queries the response was YES. Maximal size of possible extension queue 17145. Compared 3036890 event pairs, 245222 based on Foata normal form. 5040/176539 useless extension candidates. Maximal degree in co-relation 666101. Up to 317226 conditions per place. [2024-02-07 14:48:17,533 INFO L140 encePairwiseOnDemand]: 83/119 looper letters, 53 selfloop transitions, 0 changer transitions 0/66 dead transitions. [2024-02-07 14:48:17,533 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 80 places, 66 transitions, 250 flow [2024-02-07 14:48:17,534 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-02-07 14:48:17,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2024-02-07 14:48:17,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 123 transitions. [2024-02-07 14:48:17,542 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.5168067226890757 [2024-02-07 14:48:17,544 INFO L175 Difference]: Start difference. First operand has 127 places, 115 transitions, 242 flow. Second operand 2 states and 123 transitions. [2024-02-07 14:48:17,544 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 80 places, 66 transitions, 250 flow [2024-02-07 14:48:17,606 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 76 places, 66 transitions, 246 flow, removed 0 selfloop flow, removed 4 redundant places. [2024-02-07 14:48:17,609 INFO L231 Difference]: Finished difference. Result has 76 places, 66 transitions, 140 flow [2024-02-07 14:48:17,610 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=119, PETRI_DIFFERENCE_MINUEND_FLOW=140, PETRI_DIFFERENCE_MINUEND_PLACES=75, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=66, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=66, PETRI_DIFFERENCE_SUBTRAHEND_STATES=2, PETRI_FLOW=140, PETRI_PLACES=76, PETRI_TRANSITIONS=66} [2024-02-07 14:48:17,613 INFO L281 CegarLoopForPetriNet]: 127 programPoint places, -51 predicate places. [2024-02-07 14:48:17,613 INFO L495 AbstractCegarLoop]: Abstraction has has 76 places, 66 transitions, 140 flow [2024-02-07 14:48:17,613 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 14:48:17,614 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-02-07 14:48:17,614 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1] [2024-02-07 14:48:17,614 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-02-07 14:48:17,614 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting P0Err1ASSERT_VIOLATIONWITNESS_INVARIANT === [P0Err0ASSERT_VIOLATIONWITNESS_INVARIANT, P0Err1ASSERT_VIOLATIONWITNESS_INVARIANT, P0Err2ASSERT_VIOLATIONWITNESS_INVARIANT (and 129 more)] === [2024-02-07 14:48:17,615 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-02-07 14:48:17,615 INFO L85 PathProgramCache]: Analyzing trace with hash 710780528, now seen corresponding path program 1 times [2024-02-07 14:48:17,615 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-07 14:48:17,615 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1484995557] [2024-02-07 14:48:17,615 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-07 14:48:17,616 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-07 14:48:17,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-07 14:48:17,738 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 14:48:17,739 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-07 14:48:17,739 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1484995557] [2024-02-07 14:48:17,739 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1484995557] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-07 14:48:17,739 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-07 14:48:17,740 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-02-07 14:48:17,740 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [74284929] [2024-02-07 14:48:17,740 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-07 14:48:17,741 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-02-07 14:48:17,741 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-07 14:48:17,741 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-02-07 14:48:17,741 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-02-07 14:48:17,742 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 17 out of 119 [2024-02-07 14:48:17,743 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 76 places, 66 transitions, 140 flow. Second operand has 3 states, 3 states have (on average 18.333333333333332) internal successors, (55), 3 states have internal predecessors, (55), 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 14:48:17,743 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-02-07 14:48:17,743 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 17 of 119 [2024-02-07 14:48:17,743 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand