./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 3d25acf6 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-3d25acf-m [2024-01-30 14:19:54,488 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-01-30 14:19:54,564 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-01-30 14:19:54,569 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-01-30 14:19:54,570 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-01-30 14:19:54,589 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-01-30 14:19:54,590 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-01-30 14:19:54,590 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-01-30 14:19:54,591 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-01-30 14:19:54,591 INFO L153 SettingsManager]: * Use memory slicer=true [2024-01-30 14:19:54,591 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-01-30 14:19:54,592 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-01-30 14:19:54,592 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-01-30 14:19:54,593 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-01-30 14:19:54,593 INFO L153 SettingsManager]: * Use SBE=true [2024-01-30 14:19:54,593 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-01-30 14:19:54,594 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-01-30 14:19:54,594 INFO L153 SettingsManager]: * sizeof long=4 [2024-01-30 14:19:54,594 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-01-30 14:19:54,595 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-01-30 14:19:54,595 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-01-30 14:19:54,595 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-01-30 14:19:54,596 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-01-30 14:19:54,596 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-01-30 14:19:54,596 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-01-30 14:19:54,596 INFO L153 SettingsManager]: * sizeof long double=12 [2024-01-30 14:19:54,597 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-01-30 14:19:54,597 INFO L153 SettingsManager]: * Use constant arrays=true [2024-01-30 14:19:54,597 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-01-30 14:19:54,597 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-01-30 14:19:54,598 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-01-30 14:19:54,598 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-01-30 14:19:54,598 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-01-30 14:19:54,598 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-01-30 14:19:54,599 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-01-30 14:19:54,599 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-01-30 14:19:54,599 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-01-30 14:19:54,599 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-01-30 14:19:54,599 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-01-30 14:19:54,600 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-01-30 14:19:54,600 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-01-30 14:19:54,600 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-01-30 14:19:54,600 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-01-30 14:19:54,601 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-30 14:19:54,844 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-01-30 14:19:54,870 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-01-30 14:19:54,872 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-01-30 14:19:54,873 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-01-30 14:19:54,874 INFO L274 PluginConnector]: Witness Parser initialized [2024-01-30 14:19:54,875 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-30 14:19:55,006 INFO L270 PluginConnector]: Initializing CDTParser... [2024-01-30 14:19:55,008 INFO L274 PluginConnector]: CDTParser initialized [2024-01-30 14:19:55,009 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-30 14:19:56,146 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-01-30 14:19:56,468 INFO L384 CDTParser]: Found 1 translation units. [2024-01-30 14:19:56,469 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_1-container_of-global.i [2024-01-30 14:19:56,517 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/38e55b8c9/ae3324fdea184008bdb84dd51e39fb54/FLAG161e33859 [2024-01-30 14:19:56,530 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/38e55b8c9/ae3324fdea184008bdb84dd51e39fb54 [2024-01-30 14:19:56,530 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-01-30 14:19:56,531 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-01-30 14:19:56,533 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-01-30 14:19:56,533 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-01-30 14:19:56,537 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-01-30 14:19:56,538 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 30.01 02:19:55" (1/2) ... [2024-01-30 14:19:56,539 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@35a89deb and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 30.01 02:19:56, skipping insertion in model container [2024-01-30 14:19:56,539 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 30.01 02:19:55" (1/2) ... [2024-01-30 14:19:56,540 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@3dc82f27 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 30.01 02:19:56, skipping insertion in model container [2024-01-30 14:19:56,540 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 30.01 02:19:56" (2/2) ... [2024-01-30 14:19:56,541 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@35a89deb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 30.01 02:19:56, skipping insertion in model container [2024-01-30 14:19:56,541 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 30.01 02:19:56" (2/2) ... [2024-01-30 14:19:56,541 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-01-30 14:19:56,666 INFO L96 nessWitnessExtractor]: Found the following entries in the witness: [2024-01-30 14:19:56,667 INFO L98 nessWitnessExtractor]: Location invariant after [L3930-L3935] (unsigned long )status == 0UL [2024-01-30 14:19:56,667 INFO L98 nessWitnessExtractor]: Location invariant before [L3912-L3912] my_dev == 0 [2024-01-30 14:19:56,667 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)) && ((long long )probe_ret - (long long )ret >= 0LL)) && (ret == 0)) && (probe_ret == 0) [2024-01-30 14:19:56,667 INFO L98 nessWitnessExtractor]: Location invariant before [L3937-L3937] my_dev == 0 [2024-01-30 14:19:56,667 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-30 14:19:56,667 INFO L98 nessWitnessExtractor]: Location invariant before [L3916-L3916] ((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-30 14:19:56,667 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-30 14:19:56,668 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)) && ((long long )probe_ret - (long long )ret >= 0LL)) && (ret == 0)) && (probe_ret == 0) [2024-01-30 14:19:56,668 INFO L98 nessWitnessExtractor]: Location invariant before [L3921-L3921] (((my_dev == 0) && (res == 0)) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-30 14:19:56,668 INFO L98 nessWitnessExtractor]: Location invariant before [L3924-L3924] res == 0 [2024-01-30 14:19:56,668 INFO L98 nessWitnessExtractor]: Location invariant before [L3905-L3905] (unsigned long )arg == 0UL [2024-01-30 14:19:56,668 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-30 14:19:56,668 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)) && ((0LL - (long long )probe_ret) - (long long )ret >= 0LL)) && ((long long )probe_ret - (long long )ret >= 0LL)) && (ret == 0)) && (probe_ret == 0) [2024-01-30 14:19:56,668 INFO L98 nessWitnessExtractor]: Location invariant before [L3918-L3919] ((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-30 14:19:56,669 INFO L98 nessWitnessExtractor]: Location invariant before [L3933-L3933] (unsigned long )status == 0UL [2024-01-30 14:19:56,669 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-30 14:19:56,669 INFO L98 nessWitnessExtractor]: Location invariant before [L3907-L3907] (unsigned long )arg == 0UL [2024-01-30 14:19:56,669 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] res == 0 [2024-01-30 14:19:56,669 INFO L98 nessWitnessExtractor]: Location invariant before [L3923-L3923] ((res == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-30 14:19:56,669 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3928] (((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0)) && (res != 0) [2024-01-30 14:19:56,669 INFO L98 nessWitnessExtractor]: Location invariant before [L3917-L3917] ((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-30 14:19:56,669 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-30 14:19:56,670 INFO L98 nessWitnessExtractor]: Location invariant before [L3903-L3903] (unsigned long )arg == 0UL [2024-01-30 14:19:56,670 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)) && ((2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL)) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL)) && (my_dev == 0)) && (ret == 0) [2024-01-30 14:19:56,670 INFO L98 nessWitnessExtractor]: Location invariant before [L3914-L3914] ((0 == data->shared.a) && (my_dev == 0)) && (data->shared.a == 0) [2024-01-30 14:19:56,670 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-30 14:19:56,670 INFO L98 nessWitnessExtractor]: Location invariant before [L3906-L3906] (unsigned long )arg == 0UL [2024-01-30 14:19:56,670 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] (((((0 == data->shared.a) && (0 == data->shared.b)) && (my_dev == 0)) && (data->shared.a == 0)) && (data->shared.a == data->shared.b)) && (data->shared.b == 0) [2024-01-30 14:19:56,670 INFO L98 nessWitnessExtractor]: Location invariant after [L3926-L3927] (((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0)) && (res != 0) [2024-01-30 14:19:56,671 INFO L98 nessWitnessExtractor]: Location invariant before [L3904-L3904] (unsigned long )arg == 0UL [2024-01-30 14:19:56,671 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-30 14:19:56,671 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)) && ((4294967295LL + (long long )probe_ret) - (long long )ret >= 0LL)) && ((4294967294LL - (long long )probe_ret) - (long long )ret >= 0LL)) && (my_dev == 0) [2024-01-30 14:19:56,671 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-30 14:19:56,671 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)) && ((2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL)) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL)) && (my_dev == 0)) && (ret == 0) [2024-01-30 14:19:56,671 INFO L98 nessWitnessExtractor]: Location invariant before [L3934-L3934] (unsigned long )status == 0UL [2024-01-30 14:19:56,671 INFO L98 nessWitnessExtractor]: Location invariant before [L3902-L3902] (unsigned long )arg == 0UL [2024-01-30 14:19:56,671 INFO L98 nessWitnessExtractor]: Location invariant before [L3913-L3913] my_dev == 0 [2024-01-30 14:19:56,724 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-30 14:19:57,240 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-30 14:19:57,290 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-30 14:19:57,304 INFO L202 MainTranslator]: Completed pre-run [2024-01-30 14:19:57,333 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-30 14:19:57,334 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 [2024-01-30 14:19:57,456 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-30 14:19:57,459 ERROR L324 MainTranslator]: Incorrect Syntax: Undeclared variable in ACSL expression: probe_ret [2024-01-30 14:19:57,459 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@3dc82f27 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 30.01 02:19:57, skipping insertion in model container [2024-01-30 14:19:57,466 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-01-30 14:19:57,467 INFO L186 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2024-01-30 14:19:57,472 INFO L158 Benchmark]: Toolchain (without parser) took 939.37ms. Allocated memory is still 136.3MB. Free memory was 79.9MB in the beginning and 88.5MB in the end (delta: -8.6MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. [2024-01-30 14:19:57,472 INFO L158 Benchmark]: Witness Parser took 0.17ms. Allocated memory is still 100.7MB. Free memory is still 66.3MB. There was no memory consumed. Max. memory is 16.1GB. [2024-01-30 14:19:57,473 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 100.7MB. Free memory is still 60.2MB. There was no memory consumed. Max. memory is 16.1GB. [2024-01-30 14:19:57,473 INFO L158 Benchmark]: CACSL2BoogieTranslator took 933.93ms. Allocated memory is still 136.3MB. Free memory was 79.9MB in the beginning and 88.5MB in the end (delta: -8.6MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. [2024-01-30 14:19:57,474 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.17ms. Allocated memory is still 100.7MB. Free memory is still 66.3MB. There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.18ms. Allocated memory is still 100.7MB. Free memory is still 60.2MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 933.93ms. Allocated memory is still 136.3MB. Free memory was 79.9MB in the beginning and 88.5MB in the end (delta: -8.6MB). Peak memory consumption was 21.0MB. 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-3d25acf-m [2024-01-30 14:19:59,607 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-01-30 14:19:59,692 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2024-01-30 14:19:59,696 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-01-30 14:19:59,697 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-01-30 14:19:59,729 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-01-30 14:19:59,730 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-01-30 14:19:59,730 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-01-30 14:19:59,731 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-01-30 14:19:59,735 INFO L153 SettingsManager]: * Use memory slicer=true [2024-01-30 14:19:59,735 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-01-30 14:19:59,736 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-01-30 14:19:59,737 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-01-30 14:19:59,738 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-01-30 14:19:59,738 INFO L153 SettingsManager]: * Use SBE=true [2024-01-30 14:19:59,739 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-01-30 14:19:59,739 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-01-30 14:19:59,739 INFO L153 SettingsManager]: * sizeof long=4 [2024-01-30 14:19:59,740 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-01-30 14:19:59,740 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-01-30 14:19:59,740 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-01-30 14:19:59,741 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-01-30 14:19:59,741 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-01-30 14:19:59,742 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2024-01-30 14:19:59,742 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-01-30 14:19:59,742 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-01-30 14:19:59,742 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-01-30 14:19:59,743 INFO L153 SettingsManager]: * sizeof long double=12 [2024-01-30 14:19:59,743 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-01-30 14:19:59,743 INFO L153 SettingsManager]: * Use constant arrays=true [2024-01-30 14:19:59,744 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-01-30 14:19:59,745 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-01-30 14:19:59,745 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-01-30 14:19:59,745 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-01-30 14:19:59,745 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-01-30 14:19:59,746 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-01-30 14:19:59,746 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-01-30 14:19:59,747 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-01-30 14:19:59,747 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-01-30 14:19:59,747 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-01-30 14:19:59,747 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-01-30 14:19:59,747 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-01-30 14:19:59,748 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-01-30 14:19:59,748 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-01-30 14:19:59,748 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-01-30 14:19:59,748 INFO L153 SettingsManager]: * Logic for external solver=AUFBV [2024-01-30 14:19:59,749 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-30 14:20:00,089 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-01-30 14:20:00,115 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-01-30 14:20:00,117 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-01-30 14:20:00,119 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-01-30 14:20:00,120 INFO L274 PluginConnector]: Witness Parser initialized [2024-01-30 14:20:00,122 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-30 14:20:00,302 INFO L270 PluginConnector]: Initializing CDTParser... [2024-01-30 14:20:00,303 INFO L274 PluginConnector]: CDTParser initialized [2024-01-30 14:20:00,303 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-30 14:20:01,691 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-01-30 14:20:01,991 INFO L384 CDTParser]: Found 1 translation units. [2024-01-30 14:20:01,991 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/ldv-races/race-3_1-container_of-global.i [2024-01-30 14:20:02,021 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1c2929665/3262286a74a54f0bad0fdd8834e655db/FLAG674b054ac [2024-01-30 14:20:02,042 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1c2929665/3262286a74a54f0bad0fdd8834e655db [2024-01-30 14:20:02,042 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-01-30 14:20:02,044 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-01-30 14:20:02,046 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-01-30 14:20:02,046 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-01-30 14:20:02,050 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-01-30 14:20:02,051 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 30.01 02:20:00" (1/2) ... [2024-01-30 14:20:02,052 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@c6c0bf9 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 30.01 02:20:02, skipping insertion in model container [2024-01-30 14:20:02,052 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 30.01 02:20:00" (1/2) ... [2024-01-30 14:20:02,054 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@7d40694 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 30.01 02:20:02, skipping insertion in model container [2024-01-30 14:20:02,054 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 30.01 02:20:02" (2/2) ... [2024-01-30 14:20:02,054 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@c6c0bf9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 30.01 02:20:02, skipping insertion in model container [2024-01-30 14:20:02,055 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 30.01 02:20:02" (2/2) ... [2024-01-30 14:20:02,055 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-01-30 14:20:02,175 INFO L96 nessWitnessExtractor]: Found the following entries in the witness: [2024-01-30 14:20:02,176 INFO L98 nessWitnessExtractor]: Location invariant before [L3912-L3912] my_dev == 0 [2024-01-30 14:20:02,176 INFO L98 nessWitnessExtractor]: Location invariant after [L3926-L3927] (((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0)) && (res != 0) [2024-01-30 14:20:02,176 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)) && ((2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL)) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL)) && (my_dev == 0)) && (ret == 0) [2024-01-30 14:20:02,176 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-30 14:20:02,177 INFO L98 nessWitnessExtractor]: Location invariant before [L3918-L3919] ((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-30 14:20:02,177 INFO L98 nessWitnessExtractor]: Location invariant before [L3906-L3906] (unsigned long )arg == 0UL [2024-01-30 14:20:02,177 INFO L98 nessWitnessExtractor]: Location invariant before [L3933-L3933] (unsigned long )status == 0UL [2024-01-30 14:20:02,177 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-30 14:20:02,177 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-30 14:20:02,177 INFO L98 nessWitnessExtractor]: Location invariant before [L3902-L3902] (unsigned long )arg == 0UL [2024-01-30 14:20:02,178 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)) && ((4294967295LL + (long long )probe_ret) - (long long )ret >= 0LL)) && ((4294967294LL - (long long )probe_ret) - (long long )ret >= 0LL)) && (my_dev == 0) [2024-01-30 14:20:02,178 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-30 14:20:02,178 INFO L98 nessWitnessExtractor]: Location invariant before [L3925-L3925] res == 0 [2024-01-30 14:20:02,178 INFO L98 nessWitnessExtractor]: Location invariant after [L3930-L3935] (unsigned long )status == 0UL [2024-01-30 14:20:02,178 INFO L98 nessWitnessExtractor]: Location invariant before [L3923-L3923] ((res == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-30 14:20:02,178 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)) && ((long long )probe_ret - (long long )ret >= 0LL)) && (ret == 0)) && (probe_ret == 0) [2024-01-30 14:20:02,178 INFO L98 nessWitnessExtractor]: Location invariant before [L3904-L3904] (unsigned long )arg == 0UL [2024-01-30 14:20:02,179 INFO L98 nessWitnessExtractor]: Location invariant before [L3905-L3905] (unsigned long )arg == 0UL [2024-01-30 14:20:02,179 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-30 14:20:02,179 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)) && ((long long )probe_ret - (long long )ret >= 0LL)) && (ret == 0)) && (probe_ret == 0) [2024-01-30 14:20:02,180 INFO L98 nessWitnessExtractor]: Location invariant before [L3924-L3924] res == 0 [2024-01-30 14:20:02,180 INFO L98 nessWitnessExtractor]: Location invariant before [L3914-L3914] ((0 == data->shared.a) && (my_dev == 0)) && (data->shared.a == 0) [2024-01-30 14:20:02,180 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-30 14:20:02,180 INFO L98 nessWitnessExtractor]: Location invariant before [L3937-L3937] my_dev == 0 [2024-01-30 14:20:02,180 INFO L98 nessWitnessExtractor]: Location invariant before [L3916-L3916] ((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-30 14:20:02,180 INFO L98 nessWitnessExtractor]: Location invariant before [L3915-L3915] (((((0 == data->shared.a) && (0 == data->shared.b)) && (my_dev == 0)) && (data->shared.a == 0)) && (data->shared.a == data->shared.b)) && (data->shared.b == 0) [2024-01-30 14:20:02,181 INFO L98 nessWitnessExtractor]: Location invariant before [L3917-L3917] ((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-30 14:20:02,181 INFO L98 nessWitnessExtractor]: Location invariant before [L3921-L3921] (((my_dev == 0) && (res == 0)) && (data->shared.a == 0)) && (data->shared.b == 0) [2024-01-30 14:20:02,181 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)) && ((0LL - (long long )probe_ret) - (long long )ret >= 0LL)) && ((long long )probe_ret - (long long )ret >= 0LL)) && (ret == 0)) && (probe_ret == 0) [2024-01-30 14:20:02,181 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-30 14:20:02,181 INFO L98 nessWitnessExtractor]: Location invariant before [L3934-L3934] (unsigned long )status == 0UL [2024-01-30 14:20:02,182 INFO L98 nessWitnessExtractor]: Location invariant before [L3903-L3903] (unsigned long )arg == 0UL [2024-01-30 14:20:02,182 INFO L98 nessWitnessExtractor]: Location invariant before [L3913-L3913] my_dev == 0 [2024-01-30 14:20:02,182 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-30 14:20:02,184 INFO L98 nessWitnessExtractor]: Location invariant before [L3928-L3928] (((my_dev == 0) && (data->shared.a == 0)) && (data->shared.b == 0)) && (res != 0) [2024-01-30 14:20:02,184 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)) && ((2147483648LL + (long long )probe_ret) - (long long )ret >= 0LL)) && ((2147483647LL - (long long )probe_ret) - (long long )ret >= 0LL)) && (my_dev == 0)) && (ret == 0) [2024-01-30 14:20:02,184 INFO L98 nessWitnessExtractor]: Location invariant before [L3907-L3907] (unsigned long )arg == 0UL [2024-01-30 14:20:02,258 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-30 14:20:02,679 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-30 14:20:02,727 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-30 14:20:02,749 INFO L199 MainTranslator]: Restarting translation with changed settings: SettingsChange [mNewPreferredMemoryModel=HoenickeLindenmann_1ByteResolution] [2024-01-30 14:20:02,771 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-30 14:20:02,817 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-30 14:20:02,826 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-30 14:20:02,835 INFO L202 MainTranslator]: Completed pre-run [2024-01-30 14:20:02,871 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-30 14:20:02,877 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 [2024-01-30 14:20:03,021 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-30 14:20:03,025 ERROR L324 MainTranslator]: Incorrect Syntax: Undeclared variable in ACSL expression: probe_ret [2024-01-30 14:20:03,025 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@7d40694 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 30.01 02:20:03, skipping insertion in model container [2024-01-30 14:20:03,025 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-01-30 14:20:03,026 INFO L186 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2024-01-30 14:20:03,028 INFO L158 Benchmark]: Toolchain (without parser) took 982.96ms. Allocated memory was 71.3MB in the beginning and 92.3MB in the end (delta: 21.0MB). Free memory was 45.1MB in the beginning and 60.3MB in the end (delta: -15.2MB). Peak memory consumption was 34.8MB. Max. memory is 16.1GB. [2024-01-30 14:20:03,028 INFO L158 Benchmark]: Witness Parser took 0.21ms. Allocated memory is still 71.3MB. Free memory is still 51.5MB. There was no memory consumed. Max. memory is 16.1GB. [2024-01-30 14:20:03,029 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 71.3MB. Free memory is still 55.2MB. There was no memory consumed. Max. memory is 16.1GB. [2024-01-30 14:20:03,029 INFO L158 Benchmark]: CACSL2BoogieTranslator took 979.60ms. Allocated memory was 71.3MB in the beginning and 92.3MB in the end (delta: 21.0MB). Free memory was 44.9MB in the beginning and 60.3MB in the end (delta: -15.5MB). Peak memory consumption was 34.8MB. Max. memory is 16.1GB. [2024-01-30 14:20:03,030 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.21ms. Allocated memory is still 71.3MB. Free memory is still 51.5MB. There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.10ms. Allocated memory is still 71.3MB. Free memory is still 55.2MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 979.60ms. Allocated memory was 71.3MB in the beginning and 92.3MB in the end (delta: 21.0MB). Free memory was 44.9MB in the beginning and 60.3MB in the end (delta: -15.5MB). Peak memory consumption was 34.8MB. 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