./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/ldv-races/race-3_1-container_of-global.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --validate ./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/race-3_1-container_of-global.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 8857f20b 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/ldv-races/race-3_1-container_of-global.i ./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/race-3_1-container_of-global.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-8857f20-m [2024-01-29 22:54:13,586 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-01-29 22:54:13,647 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-01-29 22:54:13,650 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-01-29 22:54:13,651 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-01-29 22:54:13,666 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-01-29 22:54:13,667 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-01-29 22:54:13,667 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-01-29 22:54:13,668 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-01-29 22:54:13,668 INFO L153 SettingsManager]: * Use memory slicer=true [2024-01-29 22:54:13,669 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-01-29 22:54:13,669 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-01-29 22:54:13,669 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-01-29 22:54:13,670 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-01-29 22:54:13,670 INFO L153 SettingsManager]: * Use SBE=true [2024-01-29 22:54:13,670 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-01-29 22:54:13,671 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-01-29 22:54:13,671 INFO L153 SettingsManager]: * sizeof long=4 [2024-01-29 22:54:13,671 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-01-29 22:54:13,672 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-01-29 22:54:13,672 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-01-29 22:54:13,673 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-01-29 22:54:13,673 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-01-29 22:54:13,673 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-01-29 22:54:13,674 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-01-29 22:54:13,674 INFO L153 SettingsManager]: * sizeof long double=12 [2024-01-29 22:54:13,674 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-01-29 22:54:13,674 INFO L153 SettingsManager]: * Use constant arrays=true [2024-01-29 22:54:13,675 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-01-29 22:54:13,675 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-01-29 22:54:13,675 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-01-29 22:54:13,676 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-01-29 22:54:13,676 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-01-29 22:54:13,676 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-01-29 22:54:13,677 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-01-29 22:54:13,677 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-01-29 22:54:13,677 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-01-29 22:54:13,678 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-01-29 22:54:13,678 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-01-29 22:54:13,678 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-01-29 22:54:13,678 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-01-29 22:54:13,679 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-01-29 22:54:13,679 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-01-29 22:54:13,679 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-01-29 22:54:13,868 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-01-29 22:54:13,903 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-01-29 22:54:13,905 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-01-29 22:54:13,906 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-01-29 22:54:13,908 INFO L274 PluginConnector]: Witness Parser initialized [2024-01-29 22:54:13,909 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/race-3_1-container_of-global.yml/witness.yml [2024-01-29 22:54:14,016 INFO L270 PluginConnector]: Initializing CDTParser... [2024-01-29 22:54:14,017 INFO L274 PluginConnector]: CDTParser initialized [2024-01-29 22:54:14,017 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/ldv-races/race-3_1-container_of-global.i [2024-01-29 22:54:15,285 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-01-29 22:54:15,543 INFO L384 CDTParser]: Found 1 translation units. [2024-01-29 22:54:15,544 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_1-container_of-global.i [2024-01-29 22:54:15,581 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cdd8d85f5/84e77034fb4e4940961c7e9a6365f8a7/FLAG67a18ab32 [2024-01-29 22:54:15,596 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/cdd8d85f5/84e77034fb4e4940961c7e9a6365f8a7 [2024-01-29 22:54:15,597 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-01-29 22:54:15,598 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-01-29 22:54:15,601 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-01-29 22:54:15,601 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-01-29 22:54:15,605 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-01-29 22:54:15,606 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 29.01 10:54:14" (1/2) ... [2024-01-29 22:54:15,608 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@18ef9a75 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:54:15, skipping insertion in model container [2024-01-29 22:54:15,608 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 29.01 10:54:14" (1/2) ... [2024-01-29 22:54:15,609 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@d8d9e3b and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:54:15, skipping insertion in model container [2024-01-29 22:54:15,610 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.01 10:54:15" (2/2) ... [2024-01-29 22:54:15,610 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@18ef9a75 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.01 10:54:15, skipping insertion in model container [2024-01-29 22:54:15,610 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.01 10:54:15" (2/2) ... [2024-01-29 22:54:15,611 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-01-29 22:54:15,706 INFO L96 nessWitnessExtractor]: Found the following entries in the witness: [2024-01-29 22:54:15,708 INFO L98 nessWitnessExtractor]: Location invariant before [L3948-L3952] ret == 0 [2024-01-29 22:54:15,708 INFO L98 nessWitnessExtractor]: Location invariant before [L3948-L3952] (ret == 0) && (((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && my_dev == 0) && probe_ret == -1) && data.shared.a == 0) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:15,708 INFO L98 nessWitnessExtractor]: Location invariant before [L3955-L3955] ret == 0 [2024-01-29 22:54:15,708 INFO L98 nessWitnessExtractor]: Location invariant before [L3955-L3955] (ret == 0) && ((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:15,708 INFO L98 nessWitnessExtractor]: Location invariant before [L3902-L3902] (unsigned long )arg == 0UL [2024-01-29 22:54:15,709 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3928] ((my_dev == 0) && (data->shared.a == 0)) && (res != 0) [2024-01-29 22:54:15,709 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3928] (my_dev == 0) && (data->shared.a == 0) [2024-01-29 22:54:15,710 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3928] ((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-29 22:54:15,710 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3928] my_dev == 0 [2024-01-29 22:54:15,710 INFO L98 nessWitnessExtractor]: Location invariant before [L3950-L3950] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && ((long long )probe_ret - (long long )ret >= 0LL) [2024-01-29 22:54:15,710 INFO L98 nessWitnessExtractor]: Location invariant before [L3950-L3950] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL) [2024-01-29 22:54:15,710 INFO L98 nessWitnessExtractor]: Location invariant before [L3950-L3950] (0LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-29 22:54:15,710 INFO L98 nessWitnessExtractor]: Location invariant before [L3950-L3950] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && ((0LL - (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:15,710 INFO L98 nessWitnessExtractor]: Location invariant before [L3950-L3950] ((((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && ((long long )probe_ret - (long long )ret >= 0LL)) && (probe_ret == 0) [2024-01-29 22:54:15,710 INFO L98 nessWitnessExtractor]: Location invariant before [L3950-L3950] ((((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && ((long long )probe_ret - (long long )ret >= 0LL)) && (ret == 0) [2024-01-29 22:54:15,711 INFO L98 nessWitnessExtractor]: Location invariant before [L3914-L3914] 0 == data->shared.a [2024-01-29 22:54:15,711 INFO L98 nessWitnessExtractor]: Location invariant before [L3914-L3914] (0 == data->shared.a) && (data->shared.a == 0) [2024-01-29 22:54:15,711 INFO L98 nessWitnessExtractor]: Location invariant before [L3914-L3914] (0 == data->shared.a) && (my_dev == 0) [2024-01-29 22:54:15,711 INFO L98 nessWitnessExtractor]: Location invariant before [L3912-L3912] my_dev == 0 [2024-01-29 22:54:15,711 INFO L98 nessWitnessExtractor]: Location invariant before [L3906-L3906] (unsigned long )arg == 0UL [2024-01-29 22:54:15,712 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] (((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL)) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:15,712 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:15,712 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] ((((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL)) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL)) && (my_dev == 0) [2024-01-29 22:54:15,712 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] ((((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL)) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL)) && (ret == 0) [2024-01-29 22:54:15,712 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] (2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL [2024-01-29 22:54:15,712 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483647LL - (long long )probe_ret) + (long long )ret >= 0LL) [2024-01-29 22:54:15,712 INFO L98 nessWitnessExtractor]: Location invariant before [L3903-L3903] (unsigned long )arg == 0UL [2024-01-29 22:54:15,713 INFO L98 nessWitnessExtractor]: Location invariant before [L3951-L3951] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && (ret == 0) [2024-01-29 22:54:15,713 INFO L98 nessWitnessExtractor]: Location invariant before [L3951-L3951] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && (ret == 0)) && (probe_ret == 0) [2024-01-29 22:54:15,713 INFO L98 nessWitnessExtractor]: Location invariant before [L3951-L3951] (0LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-29 22:54:15,713 INFO L98 nessWitnessExtractor]: Location invariant before [L3951-L3951] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL) [2024-01-29 22:54:15,713 INFO L98 nessWitnessExtractor]: Location invariant before [L3951-L3951] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret - (long long )ret >= 0LL) [2024-01-29 22:54:15,713 INFO L98 nessWitnessExtractor]: Location invariant before [L3951-L3951] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((0LL - (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:15,714 INFO L98 nessWitnessExtractor]: Location invariant before [L3907-L3907] (unsigned long )arg == 0UL [2024-01-29 22:54:15,714 INFO L98 nessWitnessExtractor]: Location invariant before [L3943-L3943] ((4294967296LL + (long long )probe_ret) + (long long )ret >= 0LL) && (my_dev == 0) [2024-01-29 22:54:15,714 INFO L98 nessWitnessExtractor]: Location invariant before [L3943-L3943] (4294967296LL + (long long )probe_ret) + (long long )ret >= 0LL [2024-01-29 22:54:15,714 INFO L98 nessWitnessExtractor]: Location invariant before [L3943-L3943] ((4294967296LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((4294967295LL - (long long )probe_ret) + (long long )ret >= 0LL) [2024-01-29 22:54:15,714 INFO L98 nessWitnessExtractor]: Location invariant before [L3943-L3943] ((4294967296LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((4294967295LL + (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:15,715 INFO L98 nessWitnessExtractor]: Location invariant before [L3943-L3943] ((4294967296LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((4294967294LL - (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:15,715 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] (ret == 0) && ((((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && -1 == data.shared.b) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.a == data.shared.b) && data.shared.b == -1) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:15,715 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] ret == 0 [2024-01-29 22:54:15,716 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] ret == 0 [2024-01-29 22:54:15,716 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] (ret == 0) && ((((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && -1 == data.shared.b) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.a == data.shared.b) && data.shared.b == -1) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:15,716 INFO L98 nessWitnessExtractor]: Location invariant before [L3905-L3905] (unsigned long )arg == 0UL [2024-01-29 22:54:15,716 INFO L98 nessWitnessExtractor]: Location invariant before [L3921-L3921] (my_dev == 0) && (res == 0) [2024-01-29 22:54:15,716 INFO L98 nessWitnessExtractor]: Location invariant before [L3921-L3921] ((my_dev == 0) && (res == 0)) && (data->shared.b == 0) [2024-01-29 22:54:15,716 INFO L98 nessWitnessExtractor]: Location invariant before [L3921-L3921] ((my_dev == 0) && (res == 0)) && (data->shared.a == 0) [2024-01-29 22:54:15,716 INFO L98 nessWitnessExtractor]: Location invariant before [L3921-L3921] my_dev == 0 [2024-01-29 22:54:15,717 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3954] (ret == 0) && (((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && my_dev == 0) && probe_ret == -1) && data.shared.a == 0) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:15,717 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3954] ret == 0 [2024-01-29 22:54:15,717 INFO L98 nessWitnessExtractor]: Location invariant before [L3904-L3904] (unsigned long )arg == 0UL [2024-01-29 22:54:15,718 INFO L98 nessWitnessExtractor]: Location invariant before [L3949-L3949] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && ((long long )probe_ret - (long long )ret >= 0LL) [2024-01-29 22:54:15,718 INFO L98 nessWitnessExtractor]: Location invariant before [L3949-L3949] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL) [2024-01-29 22:54:15,718 INFO L98 nessWitnessExtractor]: Location invariant before [L3949-L3949] ((((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && ((long long )probe_ret - (long long )ret >= 0LL)) && (probe_ret == 0) [2024-01-29 22:54:15,718 INFO L98 nessWitnessExtractor]: Location invariant before [L3949-L3949] (0LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-29 22:54:15,719 INFO L98 nessWitnessExtractor]: Location invariant before [L3949-L3949] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && ((0LL - (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:15,719 INFO L98 nessWitnessExtractor]: Location invariant before [L3949-L3949] ((((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && ((long long )probe_ret - (long long )ret >= 0LL)) && (ret == 0) [2024-01-29 22:54:15,719 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] (ret == 0) && (((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && my_dev == 0) && probe_ret == -1) && data.shared.a == 0) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:15,719 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] ret == 0 [2024-01-29 22:54:15,720 INFO L98 nessWitnessExtractor]: Location invariant after [L3926-L3927] (my_dev == 0) && (data->shared.b == 0) [2024-01-29 22:54:15,720 INFO L98 nessWitnessExtractor]: Location invariant after [L3926-L3927] my_dev == 0 [2024-01-29 22:54:15,720 INFO L98 nessWitnessExtractor]: Location invariant after [L3926-L3927] ((my_dev == 0) && (data->shared.b == 0)) && (res != 0) [2024-01-29 22:54:15,720 INFO L98 nessWitnessExtractor]: Location invariant after [L3926-L3927] (my_dev == 0) && (data->shared.a == 0) [2024-01-29 22:54:15,720 INFO L98 nessWitnessExtractor]: Location invariant before [L3934-L3934] (unsigned long )status == 0UL [2024-01-29 22:54:15,720 INFO L98 nessWitnessExtractor]: Location invariant after [L3930-L3935] (unsigned long )status == 0UL [2024-01-29 22:54:15,720 INFO L98 nessWitnessExtractor]: Location invariant before [L3923-L3923] res == 0 [2024-01-29 22:54:15,721 INFO L98 nessWitnessExtractor]: Location invariant before [L3923-L3923] (res == 0) && (data->shared.b == 0) [2024-01-29 22:54:15,721 INFO L98 nessWitnessExtractor]: Location invariant before [L3923-L3923] (res == 0) && (data->shared.a == 0) [2024-01-29 22:54:15,721 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] ((0 == data->shared.a) && (0 == data->shared.b)) && (my_dev == 0) [2024-01-29 22:54:15,721 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] (((0 == data->shared.a) && (0 == data->shared.b)) && (my_dev == 0)) && (data->shared.b == 0) [2024-01-29 22:54:15,721 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] (0 == data->shared.a) && (0 == data->shared.b) [2024-01-29 22:54:15,721 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] (((0 == data->shared.a) && (0 == data->shared.b)) && (my_dev == 0)) && (data->shared.a == 0) [2024-01-29 22:54:15,721 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] 0 == data->shared.a [2024-01-29 22:54:15,721 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] (((0 == data->shared.a) && (0 == data->shared.b)) && (my_dev == 0)) && (data->shared.a == data->shared.b) [2024-01-29 22:54:15,722 INFO L98 nessWitnessExtractor]: Location invariant before [L3913-L3913] my_dev == 0 [2024-01-29 22:54:15,722 INFO L98 nessWitnessExtractor]: Location invariant before [L3956-L3956] (ret == 0) && ((((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && -1 == data.shared.b) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.a == data.shared.b) && data.shared.b == -1) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:15,722 INFO L98 nessWitnessExtractor]: Location invariant before [L3956-L3956] ret == 0 [2024-01-29 22:54:15,722 INFO L98 nessWitnessExtractor]: Location invariant before [L3937-L3937] my_dev == 0 [2024-01-29 22:54:15,722 INFO L98 nessWitnessExtractor]: Location invariant before [L3885-L3885] expression == 1 [2024-01-29 22:54:15,722 INFO L98 nessWitnessExtractor]: Location invariant before [L3885-L3885] (expression == 1) && (expression == 0) [2024-01-29 22:54:15,722 INFO L98 nessWitnessExtractor]: Location invariant before [L3885-L3885] (expression == 1) && ((expression == 1 && my_dev == 0) || ((0 <= expression && expression <= 1) && (expression == 0 || expression == 1))) [2024-01-29 22:54:15,722 INFO L98 nessWitnessExtractor]: Location invariant before [L3918-L3919] (my_dev == 0) && (data->shared.b == 0) [2024-01-29 22:54:15,723 INFO L98 nessWitnessExtractor]: Location invariant before [L3918-L3919] my_dev == 0 [2024-01-29 22:54:15,723 INFO L98 nessWitnessExtractor]: Location invariant before [L3918-L3919] (my_dev == 0) && (data->shared.a == 0) [2024-01-29 22:54:15,723 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3958] (2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL [2024-01-29 22:54:15,723 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3958] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && (my_dev == 0) [2024-01-29 22:54:15,723 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3958] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483647LL - (long long )probe_ret) + (long long )ret >= 0LL) [2024-01-29 22:54:15,723 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3958] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:15,723 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3958] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:15,723 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3958] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && (ret == 0) [2024-01-29 22:54:15,724 INFO L98 nessWitnessExtractor]: Location invariant before [L3933-L3933] (unsigned long )status == 0UL [2024-01-29 22:54:15,724 INFO L98 nessWitnessExtractor]: Location invariant before [L3916-L3916] (my_dev == 0) && (data->shared.b == 0) [2024-01-29 22:54:15,724 INFO L98 nessWitnessExtractor]: Location invariant before [L3916-L3916] my_dev == 0 [2024-01-29 22:54:15,724 INFO L98 nessWitnessExtractor]: Location invariant before [L3916-L3916] (my_dev == 0) && (data->shared.a == 0) [2024-01-29 22:54:15,725 INFO L98 nessWitnessExtractor]: Location invariant before [L3924-L3924] res == 0 [2024-01-29 22:54:15,725 INFO L98 nessWitnessExtractor]: Location invariant before [L3917-L3917] my_dev == 0 [2024-01-29 22:54:15,725 INFO L98 nessWitnessExtractor]: Location invariant before [L3917-L3917] (my_dev == 0) && (data->shared.b == 0) [2024-01-29 22:54:15,725 INFO L98 nessWitnessExtractor]: Location invariant before [L3917-L3917] (my_dev == 0) && (data->shared.a == 0) [2024-01-29 22:54:15,725 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] res == 0 [2024-01-29 22:54:15,784 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-29 22:54:16,135 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_1-container_of-global.i[186210,186223] [2024-01-29 22:54:16,174 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-29 22:54:16,199 INFO L202 MainTranslator]: Completed pre-run [2024-01-29 22:54:16,262 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_1-container_of-global.i[186210,186223] [2024-01-29 22:54:16,271 WARN L424 MainDispatcher]: Unable to annotate void ldv_assert(int expression) { if (!expression) { ERROR: {reach_error();abort();}}; return; } with a witness entry 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-01-29 22:54:16,405 WARN L424 MainDispatcher]: Unable to annotate void my_drv_disconnect(struct my_data *data) { void *status; pthread_join(t1, &status); pthread_join(t2, &status); pthread_mutex_destroy(&data->lock); } with a witness entry Start Parsing Local Start Parsing Local [2024-01-29 22:54:16,408 ERROR L324 MainTranslator]: Incorrect Syntax: Undeclared variable in ACSL expression: probe_ret [2024-01-29 22:54:16,408 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@d8d9e3b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.01 10:54:16, skipping insertion in model container [2024-01-29 22:54:16,408 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-01-29 22:54:16,409 INFO L186 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2024-01-29 22:54:16,410 INFO L158 Benchmark]: Toolchain (without parser) took 811.85ms. Allocated memory was 119.5MB in the beginning and 151.0MB in the end (delta: 31.5MB). Free memory was 58.8MB in the beginning and 96.6MB in the end (delta: -37.8MB). Peak memory consumption was 36.8MB. Max. memory is 16.1GB. [2024-01-29 22:54:16,414 INFO L158 Benchmark]: Witness Parser took 0.18ms. Allocated memory is still 119.5MB. Free memory is still 91.9MB. There was no memory consumed. Max. memory is 16.1GB. [2024-01-29 22:54:16,415 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 119.5MB. Free memory is still 85.7MB. There was no memory consumed. Max. memory is 16.1GB. [2024-01-29 22:54:16,415 INFO L158 Benchmark]: CACSL2BoogieTranslator took 808.00ms. Allocated memory was 119.5MB in the beginning and 151.0MB in the end (delta: 31.5MB). Free memory was 58.5MB in the beginning and 96.6MB in the end (delta: -38.1MB). Peak memory consumption was 34.7MB. Max. memory is 16.1GB. [2024-01-29 22:54:16,416 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Witness Parser took 0.18ms. Allocated memory is still 119.5MB. Free memory is still 91.9MB. There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.14ms. Allocated memory is still 119.5MB. Free memory is still 85.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 808.00ms. Allocated memory was 119.5MB in the beginning and 151.0MB in the end (delta: 31.5MB). Free memory was 58.5MB in the beginning and 96.6MB in the end (delta: -38.1MB). Peak memory consumption was 34.7MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - SyntaxErrorResult [Line: 3943]: Incorrect Syntax Undeclared variable in ACSL expression: probe_ret RESULT: Ultimate could not prove your program: Incorrect Syntax Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/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/ldv-races/race-3_1-container_of-global.i ./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/race-3_1-container_of-global.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --witnessparser.only.consider.loop.invariants false --- Real Ultimate output --- This is Ultimate 0.2.4-dev-8857f20-m [2024-01-29 22:54:18,238 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-01-29 22:54:18,322 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2024-01-29 22:54:18,328 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-01-29 22:54:18,328 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-01-29 22:54:18,358 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-01-29 22:54:18,359 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-01-29 22:54:18,359 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-01-29 22:54:18,359 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-01-29 22:54:18,362 INFO L153 SettingsManager]: * Use memory slicer=true [2024-01-29 22:54:18,363 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-01-29 22:54:18,363 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-01-29 22:54:18,364 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-01-29 22:54:18,365 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-01-29 22:54:18,365 INFO L153 SettingsManager]: * Use SBE=true [2024-01-29 22:54:18,365 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-01-29 22:54:18,365 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-01-29 22:54:18,366 INFO L153 SettingsManager]: * sizeof long=4 [2024-01-29 22:54:18,366 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-01-29 22:54:18,366 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-01-29 22:54:18,366 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-01-29 22:54:18,366 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-01-29 22:54:18,367 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-01-29 22:54:18,367 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2024-01-29 22:54:18,367 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-01-29 22:54:18,367 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-01-29 22:54:18,367 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-01-29 22:54:18,368 INFO L153 SettingsManager]: * sizeof long double=12 [2024-01-29 22:54:18,368 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-01-29 22:54:18,368 INFO L153 SettingsManager]: * Use constant arrays=true [2024-01-29 22:54:18,369 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-01-29 22:54:18,369 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-01-29 22:54:18,369 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-01-29 22:54:18,369 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-01-29 22:54:18,370 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-01-29 22:54:18,370 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-01-29 22:54:18,370 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-01-29 22:54:18,371 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-01-29 22:54:18,371 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-01-29 22:54:18,371 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-01-29 22:54:18,371 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-01-29 22:54:18,371 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-01-29 22:54:18,372 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-01-29 22:54:18,372 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-01-29 22:54:18,372 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-01-29 22:54:18,372 INFO L153 SettingsManager]: * Logic for external solver=AUFBV [2024-01-29 22:54:18,372 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-01-29 22:54:18,638 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-01-29 22:54:18,653 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-01-29 22:54:18,655 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-01-29 22:54:18,656 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-01-29 22:54:18,657 INFO L274 PluginConnector]: Witness Parser initialized [2024-01-29 22:54:18,658 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/race-3_1-container_of-global.yml/witness.yml [2024-01-29 22:54:18,779 INFO L270 PluginConnector]: Initializing CDTParser... [2024-01-29 22:54:18,785 INFO L274 PluginConnector]: CDTParser initialized [2024-01-29 22:54:18,786 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/ldv-races/race-3_1-container_of-global.i [2024-01-29 22:54:19,967 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-01-29 22:54:20,233 INFO L384 CDTParser]: Found 1 translation units. [2024-01-29 22:54:20,234 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_1-container_of-global.i [2024-01-29 22:54:20,263 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/871e2cd81/5eb9fffc25d34672b7d9df9324991d80/FLAGbd9520d84 [2024-01-29 22:54:20,276 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/871e2cd81/5eb9fffc25d34672b7d9df9324991d80 [2024-01-29 22:54:20,276 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-01-29 22:54:20,277 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-01-29 22:54:20,279 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-01-29 22:54:20,279 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-01-29 22:54:20,283 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-01-29 22:54:20,283 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 29.01 10:54:18" (1/2) ... [2024-01-29 22:54:20,284 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3345e3cd and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:54:20, skipping insertion in model container [2024-01-29 22:54:20,284 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 29.01 10:54:18" (1/2) ... [2024-01-29 22:54:20,285 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@892395f and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:54:20, skipping insertion in model container [2024-01-29 22:54:20,285 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.01 10:54:20" (2/2) ... [2024-01-29 22:54:20,286 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3345e3cd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.01 10:54:20, skipping insertion in model container [2024-01-29 22:54:20,286 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.01 10:54:20" (2/2) ... [2024-01-29 22:54:20,286 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-01-29 22:54:20,401 INFO L96 nessWitnessExtractor]: Found the following entries in the witness: [2024-01-29 22:54:20,403 INFO L98 nessWitnessExtractor]: Location invariant before [L3885-L3885] (expression == 1) && ((expression == 1 && my_dev == 0) || ((0 <= expression && expression <= 1) && (expression == 0 || expression == 1))) [2024-01-29 22:54:20,403 INFO L98 nessWitnessExtractor]: Location invariant before [L3885-L3885] expression == 1 [2024-01-29 22:54:20,403 INFO L98 nessWitnessExtractor]: Location invariant before [L3885-L3885] ((expression == 1) && ((expression == 1 && my_dev == 0) || ((0 <= expression && expression <= 1) && (expression == 0 || expression == 1)))) && (expression == 0) [2024-01-29 22:54:20,403 INFO L98 nessWitnessExtractor]: Location invariant before [L3903-L3903] (unsigned long )arg == 0UL [2024-01-29 22:54:20,403 INFO L98 nessWitnessExtractor]: Location invariant after [L3926-L3927] ((my_dev == 0) && (data->shared.b == 0)) && (res != 0) [2024-01-29 22:54:20,403 INFO L98 nessWitnessExtractor]: Location invariant after [L3926-L3927] (my_dev == 0) && (data->shared.b == 0) [2024-01-29 22:54:20,403 INFO L98 nessWitnessExtractor]: Location invariant after [L3926-L3927] my_dev == 0 [2024-01-29 22:54:20,403 INFO L98 nessWitnessExtractor]: Location invariant after [L3926-L3927] (my_dev == 0) && (data->shared.a == 0) [2024-01-29 22:54:20,404 INFO L98 nessWitnessExtractor]: Location invariant before [L3923-L3923] (res == 0) && (data->shared.a == 0) [2024-01-29 22:54:20,404 INFO L98 nessWitnessExtractor]: Location invariant before [L3923-L3923] ((res == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-29 22:54:20,404 INFO L98 nessWitnessExtractor]: Location invariant before [L3923-L3923] res == 0 [2024-01-29 22:54:20,404 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] (0 == data->shared.a) && (my_dev == 0) [2024-01-29 22:54:20,404 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] ((0 == data->shared.a) && (my_dev == 0)) && (data->shared.b == 0) [2024-01-29 22:54:20,404 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] ((0 == data->shared.a) && (my_dev == 0)) && (data->shared.a == 0) [2024-01-29 22:54:20,404 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] ((0 == data->shared.a) && (my_dev == 0)) && (data->shared.a == data->shared.b) [2024-01-29 22:54:20,404 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] 0 == data->shared.a [2024-01-29 22:54:20,405 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] (0 == data->shared.a) && (0 == data->shared.b) [2024-01-29 22:54:20,405 INFO L98 nessWitnessExtractor]: Location invariant before [L3906-L3906] (unsigned long )arg == 0UL [2024-01-29 22:54:20,405 INFO L98 nessWitnessExtractor]: Location invariant before [L3943-L3943] (((4294967296LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((4294967295LL + (long long )probe_ret) - (long long )ret >= 0LL)) && (my_dev == 0) [2024-01-29 22:54:20,405 INFO L98 nessWitnessExtractor]: Location invariant before [L3943-L3943] ((4294967296LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((4294967295LL + (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:20,406 INFO L98 nessWitnessExtractor]: Location invariant before [L3943-L3943] (4294967296LL + (long long )probe_ret) + (long long )ret >= 0LL [2024-01-29 22:54:20,406 INFO L98 nessWitnessExtractor]: Location invariant before [L3943-L3943] ((4294967296LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((4294967295LL - (long long )probe_ret) + (long long )ret >= 0LL) [2024-01-29 22:54:20,406 INFO L98 nessWitnessExtractor]: Location invariant before [L3943-L3943] (((4294967296LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((4294967295LL + (long long )probe_ret) - (long long )ret >= 0LL)) && ((4294967294LL - (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:20,406 INFO L98 nessWitnessExtractor]: Location invariant before [L3956-L3956] (ret == 0) && ((((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && -1 == data.shared.b) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.a == data.shared.b) && data.shared.b == -1) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:20,406 INFO L98 nessWitnessExtractor]: Location invariant before [L3956-L3956] ret == 0 [2024-01-29 22:54:20,406 INFO L98 nessWitnessExtractor]: Location invariant before [L3914-L3914] (0 == data->shared.a) && (my_dev == 0) [2024-01-29 22:54:20,406 INFO L98 nessWitnessExtractor]: Location invariant before [L3914-L3914] 0 == data->shared.a [2024-01-29 22:54:20,406 INFO L98 nessWitnessExtractor]: Location invariant before [L3914-L3914] ((0 == data->shared.a) && (my_dev == 0)) && (data->shared.a == 0) [2024-01-29 22:54:20,407 INFO L98 nessWitnessExtractor]: Location invariant before [L3913-L3913] my_dev == 0 [2024-01-29 22:54:20,407 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] ret == 0 [2024-01-29 22:54:20,407 INFO L98 nessWitnessExtractor]: Location invariant before [L3953-L3953] (ret == 0) && (((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && my_dev == 0) && probe_ret == -1) && data.shared.a == 0) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:20,407 INFO L98 nessWitnessExtractor]: Location invariant before [L3955-L3955] (ret == 0) && ((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:20,408 INFO L98 nessWitnessExtractor]: Location invariant before [L3955-L3955] ret == 0 [2024-01-29 22:54:20,408 INFO L98 nessWitnessExtractor]: Location invariant before [L3907-L3907] (unsigned long )arg == 0UL [2024-01-29 22:54:20,409 INFO L98 nessWitnessExtractor]: Location invariant before [L3905-L3905] (unsigned long )arg == 0UL [2024-01-29 22:54:20,409 INFO L98 nessWitnessExtractor]: Location invariant before [L3949-L3949] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL) [2024-01-29 22:54:20,409 INFO L98 nessWitnessExtractor]: Location invariant before [L3949-L3949] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && (ret == 0) [2024-01-29 22:54:20,409 INFO L98 nessWitnessExtractor]: Location invariant before [L3949-L3949] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && (probe_ret == 0) [2024-01-29 22:54:20,409 INFO L98 nessWitnessExtractor]: Location invariant before [L3949-L3949] (0LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-29 22:54:20,409 INFO L98 nessWitnessExtractor]: Location invariant before [L3949-L3949] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && ((0LL - (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:20,410 INFO L98 nessWitnessExtractor]: Location invariant before [L3949-L3949] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && ((long long )probe_ret - (long long )ret >= 0LL) [2024-01-29 22:54:20,410 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] (((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL)) && (ret == 0) [2024-01-29 22:54:20,410 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:20,410 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] (2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL [2024-01-29 22:54:20,410 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] (((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL)) && (my_dev == 0) [2024-01-29 22:54:20,410 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483647LL - (long long )probe_ret) + (long long )ret >= 0LL) [2024-01-29 22:54:20,410 INFO L98 nessWitnessExtractor]: Location invariant before [L3947-L3947] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:20,411 INFO L98 nessWitnessExtractor]: Location invariant before [L3921-L3921] ((my_dev == 0) && (res == 0)) && (data->shared.b == 0) [2024-01-29 22:54:20,411 INFO L98 nessWitnessExtractor]: Location invariant before [L3921-L3921] (my_dev == 0) && (res == 0) [2024-01-29 22:54:20,411 INFO L98 nessWitnessExtractor]: Location invariant before [L3921-L3921] my_dev == 0 [2024-01-29 22:54:20,411 INFO L98 nessWitnessExtractor]: Location invariant before [L3921-L3921] ((my_dev == 0) && (res == 0)) && (data->shared.a == 0) [2024-01-29 22:54:20,411 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3954] (ret == 0) && (((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && my_dev == 0) && probe_ret == -1) && data.shared.a == 0) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:20,412 INFO L98 nessWitnessExtractor]: Location invariant before [L3954-L3954] ret == 0 [2024-01-29 22:54:20,412 INFO L98 nessWitnessExtractor]: Location invariant before [L3902-L3902] (unsigned long )arg == 0UL [2024-01-29 22:54:20,413 INFO L98 nessWitnessExtractor]: Location invariant before [L3918-L3919] (my_dev == 0) && (data->shared.a == 0) [2024-01-29 22:54:20,413 INFO L98 nessWitnessExtractor]: Location invariant before [L3918-L3919] my_dev == 0 [2024-01-29 22:54:20,413 INFO L98 nessWitnessExtractor]: Location invariant before [L3918-L3919] ((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-29 22:54:20,413 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3958] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:20,413 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3958] (2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL [2024-01-29 22:54:20,413 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3958] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483647LL - (long long )probe_ret) + (long long )ret >= 0LL) [2024-01-29 22:54:20,413 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3958] ((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:20,413 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3958] (((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL)) && (my_dev == 0) [2024-01-29 22:54:20,414 INFO L98 nessWitnessExtractor]: Location invariant before [L3944-L3958] (((2147483648LL + (long long )probe_ret) + (long long )ret >= 0LL) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL)) && (ret == 0) [2024-01-29 22:54:20,414 INFO L98 nessWitnessExtractor]: Location invariant before [L3924-L3924] res == 0 [2024-01-29 22:54:20,414 INFO L98 nessWitnessExtractor]: Location invariant before [L3904-L3904] (unsigned long )arg == 0UL [2024-01-29 22:54:20,414 INFO L98 nessWitnessExtractor]: Location invariant after [L3930-L3935] (unsigned long )status == 0UL [2024-01-29 22:54:20,414 INFO L98 nessWitnessExtractor]: Location invariant before [L3951-L3951] (0LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-29 22:54:20,414 INFO L98 nessWitnessExtractor]: Location invariant before [L3951-L3951] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && (ret == 0) [2024-01-29 22:54:20,414 INFO L98 nessWitnessExtractor]: Location invariant before [L3951-L3951] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && (probe_ret == 0) [2024-01-29 22:54:20,414 INFO L98 nessWitnessExtractor]: Location invariant before [L3951-L3951] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL) [2024-01-29 22:54:20,414 INFO L98 nessWitnessExtractor]: Location invariant before [L3951-L3951] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret - (long long )ret >= 0LL) [2024-01-29 22:54:20,415 INFO L98 nessWitnessExtractor]: Location invariant before [L3951-L3951] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((0LL - (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:20,415 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] ret == 0 [2024-01-29 22:54:20,415 INFO L98 nessWitnessExtractor]: Location invariant before [L3957-L3957] (ret == 0) && ((((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && -1 == data.shared.b) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.a == data.shared.b) && data.shared.b == -1) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:20,415 INFO L98 nessWitnessExtractor]: Location invariant before [L3916-L3916] my_dev == 0 [2024-01-29 22:54:20,415 INFO L98 nessWitnessExtractor]: Location invariant before [L3916-L3916] (my_dev == 0) && (data->shared.b == 0) [2024-01-29 22:54:20,415 INFO L98 nessWitnessExtractor]: Location invariant before [L3916-L3916] (my_dev == 0) && (data->shared.a == 0) [2024-01-29 22:54:20,415 INFO L98 nessWitnessExtractor]: Location invariant before [L3950-L3950] ((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL) [2024-01-29 22:54:20,415 INFO L98 nessWitnessExtractor]: Location invariant before [L3950-L3950] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && (probe_ret == 0) [2024-01-29 22:54:20,416 INFO L98 nessWitnessExtractor]: Location invariant before [L3950-L3950] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && ((0LL - (long long )probe_ret) - (long long )ret >= 0LL) [2024-01-29 22:54:20,416 INFO L98 nessWitnessExtractor]: Location invariant before [L3950-L3950] (0LL - (long long )probe_ret) + (long long )ret >= 0LL [2024-01-29 22:54:20,416 INFO L98 nessWitnessExtractor]: Location invariant before [L3950-L3950] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && ((long long )probe_ret - (long long )ret >= 0LL) [2024-01-29 22:54:20,416 INFO L98 nessWitnessExtractor]: Location invariant before [L3950-L3950] (((0LL - (long long )probe_ret) + (long long )ret >= 0LL) && ((long long )probe_ret + (long long )ret >= 0LL)) && (ret == 0) [2024-01-29 22:54:20,416 INFO L98 nessWitnessExtractor]: Location invariant before [L3948-L3952] ret == 0 [2024-01-29 22:54:20,416 INFO L98 nessWitnessExtractor]: Location invariant before [L3948-L3952] (ret == 0) && (((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && my_dev == 0) && probe_ret == -1) && data.shared.a == 0) && data.shared.b == 0) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:20,416 INFO L98 nessWitnessExtractor]: Location invariant before [L3917-L3917] ((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-29 22:54:20,416 INFO L98 nessWitnessExtractor]: Location invariant before [L3917-L3917] (my_dev == 0) && (data->shared.a == 0) [2024-01-29 22:54:20,416 INFO L98 nessWitnessExtractor]: Location invariant before [L3917-L3917] my_dev == 0 [2024-01-29 22:54:20,417 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] (ret == 0) && ((((((((((((1LL + (long long )probe_ret) + (long long )ret >= 0LL && (-1LL - (long long )probe_ret) + (long long )ret >= 0LL) && (1LL + (long long )probe_ret) - (long long )ret >= 0LL) && (-1LL - (long long )probe_ret) - (long long )ret >= 0LL) && -1 == data.shared.a) && -1 == data.shared.b) && my_dev == 0) && probe_ret == -1) && data.shared.a == -1) && data.shared.a == data.shared.b) && data.shared.b == -1) || (((((0LL - (long long )probe_ret) + (long long )ret >= 0LL && (long long )probe_ret + (long long )ret >= 0LL) && (0LL - (long long )probe_ret) - (long long )ret >= 0LL) && (long long )probe_ret - (long long )ret >= 0LL) && probe_ret == 0)) [2024-01-29 22:54:20,417 INFO L98 nessWitnessExtractor]: Location invariant before [L3959-L3959] ret == 0 [2024-01-29 22:54:20,417 INFO L98 nessWitnessExtractor]: Location invariant before [L3937-L3937] my_dev == 0 [2024-01-29 22:54:20,418 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3928] (my_dev == 0) && (data->shared.a == 0) [2024-01-29 22:54:20,418 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3928] ((my_dev == 0) && (data->shared.a == 0)) && (res != 0) [2024-01-29 22:54:20,418 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3928] my_dev == 0 [2024-01-29 22:54:20,418 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3928] ((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-29 22:54:20,418 INFO L98 nessWitnessExtractor]: Location invariant before [L3912-L3912] my_dev == 0 [2024-01-29 22:54:20,418 INFO L98 nessWitnessExtractor]: Location invariant before [L3933-L3933] (unsigned long )status == 0UL [2024-01-29 22:54:20,418 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] res == 0 [2024-01-29 22:54:20,419 INFO L98 nessWitnessExtractor]: Location invariant before [L3934-L3934] (unsigned long )status == 0UL [2024-01-29 22:54:20,465 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-29 22:54:20,762 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_1-container_of-global.i[186210,186223] [2024-01-29 22:54:20,796 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-29 22:54:20,812 INFO L199 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2024-01-29 22:54:20,828 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-29 22:54:20,865 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_1-container_of-global.i[186210,186223] [2024-01-29 22:54:20,872 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-29 22:54:20,878 INFO L202 MainTranslator]: Completed pre-run [2024-01-29 22:54:20,926 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_1-container_of-global.i[186210,186223] [2024-01-29 22:54:20,935 WARN L424 MainDispatcher]: Unable to annotate void ldv_assert(int expression) { if (!expression) { ERROR: {reach_error();abort();}}; return; } with a witness entry 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-01-29 22:54:21,076 WARN L424 MainDispatcher]: Unable to annotate void my_drv_disconnect(struct my_data *data) { void *status; pthread_join(t1, &status); pthread_join(t2, &status); pthread_mutex_destroy(&data->lock); } with a witness entry Start Parsing Local Start Parsing Local [2024-01-29 22:54:21,078 ERROR L324 MainTranslator]: Incorrect Syntax: Undeclared variable in ACSL expression: probe_ret [2024-01-29 22:54:21,078 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@892395f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.01 10:54:21, skipping insertion in model container [2024-01-29 22:54:21,078 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-01-29 22:54:21,079 INFO L186 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2024-01-29 22:54:21,080 INFO L158 Benchmark]: Toolchain (without parser) took 802.04ms. Allocated memory was 71.3MB in the beginning and 88.1MB in the end (delta: 16.8MB). Free memory was 44.7MB in the beginning and 41.0MB in the end (delta: 3.7MB). Peak memory consumption was 25.3MB. Max. memory is 16.1GB. [2024-01-29 22:54:21,080 INFO L158 Benchmark]: Witness Parser took 0.18ms. Allocated memory is still 71.3MB. Free memory is still 51.3MB. There was no memory consumed. Max. memory is 16.1GB. [2024-01-29 22:54:21,081 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 71.3MB. Free memory is still 55.0MB. There was no memory consumed. Max. memory is 16.1GB. [2024-01-29 22:54:21,081 INFO L158 Benchmark]: CACSL2BoogieTranslator took 799.34ms. Allocated memory was 71.3MB in the beginning and 88.1MB in the end (delta: 16.8MB). Free memory was 44.5MB in the beginning and 41.0MB in the end (delta: 3.5MB). Peak memory consumption was 25.3MB. Max. memory is 16.1GB. [2024-01-29 22:54:21,082 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Witness Parser took 0.18ms. Allocated memory is still 71.3MB. Free memory is still 51.3MB. There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.15ms. Allocated memory is still 71.3MB. Free memory is still 55.0MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 799.34ms. Allocated memory was 71.3MB in the beginning and 88.1MB in the end (delta: 16.8MB). Free memory was 44.5MB in the beginning and 41.0MB in the end (delta: 3.5MB). Peak memory consumption was 25.3MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - SyntaxErrorResult [Line: 3943]: Incorrect Syntax Undeclared variable in ACSL expression: probe_ret RESULT: Ultimate could not prove your program: Incorrect Syntax Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: UNKNOWN