./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread/fib_unsafe-6.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/fib_unsafe-6.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 59af5db6 Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/pthread/fib_unsafe-6.i ./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/fib_unsafe-6.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-59af5db-m [2024-02-02 09:22:43,542 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-02-02 09:22:43,592 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-02-02 09:22:43,595 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-02-02 09:22:43,595 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-02-02 09:22:43,626 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-02-02 09:22:43,627 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-02-02 09:22:43,627 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-02-02 09:22:43,627 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-02-02 09:22:43,628 INFO L153 SettingsManager]: * Use memory slicer=true [2024-02-02 09:22:43,628 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-02-02 09:22:43,628 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-02-02 09:22:43,628 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-02-02 09:22:43,629 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-02-02 09:22:43,629 INFO L153 SettingsManager]: * Use SBE=true [2024-02-02 09:22:43,629 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-02-02 09:22:43,629 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-02-02 09:22:43,630 INFO L153 SettingsManager]: * sizeof long=4 [2024-02-02 09:22:43,630 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-02-02 09:22:43,630 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-02-02 09:22:43,630 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-02-02 09:22:43,633 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-02-02 09:22:43,633 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-02-02 09:22:43,634 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-02-02 09:22:43,637 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-02-02 09:22:43,637 INFO L153 SettingsManager]: * sizeof long double=12 [2024-02-02 09:22:43,637 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-02-02 09:22:43,637 INFO L153 SettingsManager]: * Use constant arrays=true [2024-02-02 09:22:43,638 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-02-02 09:22:43,638 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-02-02 09:22:43,639 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-02-02 09:22:43,639 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-02-02 09:22:43,639 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-02-02 09:22:43,639 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-02-02 09:22:43,640 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-02-02 09:22:43,640 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-02-02 09:22:43,640 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-02-02 09:22:43,640 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-02-02 09:22:43,640 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-02-02 09:22:43,641 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-02-02 09:22:43,641 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-02-02 09:22:43,641 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-02-02 09:22:43,641 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-02-02 09:22:43,641 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false [2024-02-02 09:22:43,886 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-02-02 09:22:43,911 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-02-02 09:22:43,913 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-02-02 09:22:43,913 INFO L270 PluginConnector]: Initializing CDTParser... [2024-02-02 09:22:43,914 INFO L274 PluginConnector]: CDTParser initialized [2024-02-02 09:22:43,915 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread/fib_unsafe-6.i [2024-02-02 09:22:44,835 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-02-02 09:22:45,022 INFO L384 CDTParser]: Found 1 translation units. [2024-02-02 09:22:45,022 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread/fib_unsafe-6.i [2024-02-02 09:22:45,031 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a1d5bd210/3343cb2882cc4d62988eabf022f25021/FLAG5ebd6e242 [2024-02-02 09:22:45,041 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a1d5bd210/3343cb2882cc4d62988eabf022f25021 [2024-02-02 09:22:45,043 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-02-02 09:22:45,043 INFO L274 PluginConnector]: Witness Parser initialized [2024-02-02 09:22:45,044 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/fib_unsafe-6.yml/witness.yml [2024-02-02 09:22:45,168 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-02-02 09:22:45,169 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-02-02 09:22:45,174 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-02-02 09:22:45,174 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-02-02 09:22:45,177 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-02-02 09:22:45,178 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 02.02 09:22:45" (1/2) ... [2024-02-02 09:22:45,179 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@61a96604 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.02 09:22:45, skipping insertion in model container [2024-02-02 09:22:45,179 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 02.02 09:22:45" (1/2) ... [2024-02-02 09:22:45,180 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@29868451 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.02 09:22:45, skipping insertion in model container [2024-02-02 09:22:45,181 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 02.02 09:22:45" (2/2) ... [2024-02-02 09:22:45,181 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@61a96604 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 09:22:45, skipping insertion in model container [2024-02-02 09:22:45,181 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 02.02 09:22:45" (2/2) ... [2024-02-02 09:22:45,182 INFO L86 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-02-02 09:22:45,261 INFO L99 nessWitnessExtractor]: Found the following entries in the witness: [2024-02-02 09:22:45,263 INFO L101 nessWitnessExtractor]: Location invariant before [L688-L688] (unsigned long )arg == 0UL [2024-02-02 09:22:45,263 INFO L101 nessWitnessExtractor]: Location invariant before [L715-L715] ((((((((i == 0) && (j == 0)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:45,263 INFO L101 nessWitnessExtractor]: Location invariant before [L727-L727] (0 <= correct) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:45,263 INFO L101 nessWitnessExtractor]: Loop invariant at [L695-L699] (unsigned long )arg == 0UL [2024-02-02 09:22:45,263 INFO L101 nessWitnessExtractor]: Location invariant before [L714-L714] ((((((((i == 0) && (j == 0)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:45,264 INFO L101 nessWitnessExtractor]: Location invariant before [L720-L720] ((((((((i == 1) && (j == 1)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:45,264 INFO L101 nessWitnessExtractor]: Location invariant before [L724-L724] (((((1 <= i) && (1 <= j)) && (2 <= correct)) && (i <= 2147483646)) && (correct != 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:45,264 INFO L101 nessWitnessExtractor]: Location invariant before [L725-L725] (((0 <= correct) && (1 <= i)) && (1 <= j)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:45,264 INFO L101 nessWitnessExtractor]: Loop invariant at [L687-L691] (unsigned long )arg == 0UL [2024-02-02 09:22:45,265 INFO L101 nessWitnessExtractor]: Location invariant before [L716-L716] ((((((((i == 1) && (j == 0)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:45,265 INFO L101 nessWitnessExtractor]: Location invariant before [L726-L726] (0 <= correct) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:45,265 INFO L101 nessWitnessExtractor]: Location invariant before [L717-L717] ((((((((i == 1) && (j == 0)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:45,265 INFO L101 nessWitnessExtractor]: Location invariant before [L723-L723] (0 <= correct) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:45,265 INFO L101 nessWitnessExtractor]: Location invariant before [L700-L700] (unsigned long )arg == 0UL [2024-02-02 09:22:45,265 INFO L101 nessWitnessExtractor]: Location invariant before [L721-L721] assert_cond == (_Bool)0 || assert_cond == (_Bool)1 [2024-02-02 09:22:45,265 INFO L101 nessWitnessExtractor]: Location invariant before [L681-L681] ((((expression == 0) && (expression == 1)) && (0 <= expression)) && (expression <= 1)) && (expression == 0 || expression == 1) [2024-02-02 09:22:45,265 INFO L101 nessWitnessExtractor]: Location invariant before [L698-L698] ((1 <= i) && (2 <= j)) && ((unsigned long )arg == 0UL) [2024-02-02 09:22:45,266 INFO L101 nessWitnessExtractor]: Location invariant before [L690-L690] ((1 <= j) && (2 <= i)) && ((unsigned long )arg == 0UL) [2024-02-02 09:22:45,266 INFO L101 nessWitnessExtractor]: Location invariant before [L696-L696] (unsigned long )arg == 0UL [2024-02-02 09:22:45,266 INFO L101 nessWitnessExtractor]: Location invariant before [L719-L719] ((((((((i == 1) && (j == 1)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:45,266 INFO L101 nessWitnessExtractor]: Location invariant before [L697-L697] ((1 <= i) && (1 <= j)) && ((unsigned long )arg == 0UL) [2024-02-02 09:22:45,266 INFO L101 nessWitnessExtractor]: Location invariant before [L689-L689] ((1 <= i) && (1 <= j)) && ((unsigned long )arg == 0UL) [2024-02-02 09:22:45,267 INFO L101 nessWitnessExtractor]: Location invariant before [L692-L692] (unsigned long )arg == 0UL [2024-02-02 09:22:45,267 INFO L101 nessWitnessExtractor]: Location invariant before [L722-L722] assert_cond == (_Bool)0 || assert_cond == (_Bool)1 [2024-02-02 09:22:45,267 INFO L101 nessWitnessExtractor]: Location invariant before [L718-L718] ((((((((i == 1) && (j == 0)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:45,305 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-02-02 09:22:45,579 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread/fib_unsafe-6.i[30243,30256] [2024-02-02 09:22:45,596 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-02-02 09:22:45,603 INFO L202 MainTranslator]: Completed pre-run [2024-02-02 09:22:45,632 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread/fib_unsafe-6.i[30243,30256] [2024-02-02 09:22:45,639 WARN L424 MainDispatcher]: Unable to annotate void __VERIFIER_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 [2024-02-02 09:22:45,676 ERROR L324 MainTranslator]: Incorrect Syntax: Undeclared variable in ACSL expression: assert_cond [2024-02-02 09:22:45,676 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@29868451 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 09:22:45, skipping insertion in model container [2024-02-02 09:22:45,676 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-02-02 09:22:45,677 INFO L186 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2024-02-02 09:22:45,678 INFO L158 Benchmark]: Toolchain (without parser) took 508.44ms. Allocated memory is still 172.0MB. Free memory was 136.2MB in the beginning and 116.6MB in the end (delta: 19.7MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. [2024-02-02 09:22:45,678 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 172.0MB. Free memory was 141.5MB in the beginning and 141.3MB in the end (delta: 153.9kB). There was no memory consumed. Max. memory is 16.1GB. [2024-02-02 09:22:45,679 INFO L158 Benchmark]: Witness Parser took 0.14ms. Allocated memory is still 172.0MB. Free memory is still 141.7MB. There was no memory consumed. Max. memory is 16.1GB. [2024-02-02 09:22:45,679 INFO L158 Benchmark]: CACSL2BoogieTranslator took 502.91ms. Allocated memory is still 172.0MB. Free memory was 136.2MB in the beginning and 116.6MB in the end (delta: 19.7MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. [2024-02-02 09:22:45,680 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.15ms. Allocated memory is still 172.0MB. Free memory was 141.5MB in the beginning and 141.3MB in the end (delta: 153.9kB). There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.14ms. Allocated memory is still 172.0MB. Free memory is still 141.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 502.91ms. Allocated memory is still 172.0MB. Free memory was 136.2MB in the beginning and 116.6MB in the end (delta: 19.7MB). Peak memory consumption was 21.0MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - SyntaxErrorResult [Line: 714]: Incorrect Syntax Undeclared variable in ACSL expression: assert_cond 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/pthread/fib_unsafe-6.i ./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/fib_unsafe-6.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-59af5db-m [2024-02-02 09:22:47,641 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-02-02 09:22:47,714 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2024-02-02 09:22:47,722 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-02-02 09:22:47,723 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-02-02 09:22:47,750 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-02-02 09:22:47,751 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-02-02 09:22:47,751 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-02-02 09:22:47,752 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-02-02 09:22:47,755 INFO L153 SettingsManager]: * Use memory slicer=true [2024-02-02 09:22:47,755 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-02-02 09:22:47,755 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-02-02 09:22:47,756 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-02-02 09:22:47,757 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-02-02 09:22:47,757 INFO L153 SettingsManager]: * Use SBE=true [2024-02-02 09:22:47,758 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-02-02 09:22:47,758 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-02-02 09:22:47,758 INFO L153 SettingsManager]: * sizeof long=4 [2024-02-02 09:22:47,758 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-02-02 09:22:47,758 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-02-02 09:22:47,759 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-02-02 09:22:47,760 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-02-02 09:22:47,760 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-02-02 09:22:47,760 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2024-02-02 09:22:47,760 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2024-02-02 09:22:47,760 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-02-02 09:22:47,761 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2024-02-02 09:22:47,761 INFO L153 SettingsManager]: * sizeof long double=12 [2024-02-02 09:22:47,761 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-02-02 09:22:47,761 INFO L153 SettingsManager]: * Use constant arrays=true [2024-02-02 09:22:47,762 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-02-02 09:22:47,762 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-02-02 09:22:47,762 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-02-02 09:22:47,763 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-02-02 09:22:47,763 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-02-02 09:22:47,763 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-02-02 09:22:47,764 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-02-02 09:22:47,764 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-02-02 09:22:47,764 INFO L153 SettingsManager]: * Trace refinement strategy=WOLF [2024-02-02 09:22:47,764 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2024-02-02 09:22:47,764 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-02-02 09:22:47,764 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-02-02 09:22:47,765 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-02-02 09:22:47,765 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-02-02 09:22:47,765 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-02-02 09:22:47,765 INFO L153 SettingsManager]: * Logic for external solver=AUFBV [2024-02-02 09:22:47,765 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false [2024-02-02 09:22:48,044 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-02-02 09:22:48,062 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-02-02 09:22:48,065 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-02-02 09:22:48,066 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-02-02 09:22:48,067 INFO L274 PluginConnector]: Witness Parser initialized [2024-02-02 09:22:48,068 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/fib_unsafe-6.yml/witness.yml [2024-02-02 09:22:48,229 INFO L270 PluginConnector]: Initializing CDTParser... [2024-02-02 09:22:48,230 INFO L274 PluginConnector]: CDTParser initialized [2024-02-02 09:22:48,231 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread/fib_unsafe-6.i [2024-02-02 09:22:49,295 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-02-02 09:22:49,526 INFO L384 CDTParser]: Found 1 translation units. [2024-02-02 09:22:49,526 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread/fib_unsafe-6.i [2024-02-02 09:22:49,540 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9a6493274/173fb2817af64083b77a4998d16884b6/FLAG3957f2c30 [2024-02-02 09:22:49,555 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9a6493274/173fb2817af64083b77a4998d16884b6 [2024-02-02 09:22:49,556 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-02-02 09:22:49,557 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-02-02 09:22:49,560 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-02-02 09:22:49,560 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-02-02 09:22:49,563 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-02-02 09:22:49,564 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 02.02 09:22:48" (1/2) ... [2024-02-02 09:22:49,565 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6feeb497 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 09:22:49, skipping insertion in model container [2024-02-02 09:22:49,565 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 02.02 09:22:48" (1/2) ... [2024-02-02 09:22:49,566 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@275cd5e1 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 09:22:49, skipping insertion in model container [2024-02-02 09:22:49,566 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 02.02 09:22:49" (2/2) ... [2024-02-02 09:22:49,567 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6feeb497 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.02 09:22:49, skipping insertion in model container [2024-02-02 09:22:49,567 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 02.02 09:22:49" (2/2) ... [2024-02-02 09:22:49,567 INFO L86 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-02-02 09:22:49,657 INFO L99 nessWitnessExtractor]: Found the following entries in the witness: [2024-02-02 09:22:49,658 INFO L101 nessWitnessExtractor]: Location invariant before [L688-L688] (unsigned long )arg == 0UL [2024-02-02 09:22:49,658 INFO L101 nessWitnessExtractor]: Loop invariant at [L687-L691] (unsigned long )arg == 0UL [2024-02-02 09:22:49,659 INFO L101 nessWitnessExtractor]: Location invariant before [L718-L718] ((((((((i == 1) && (j == 0)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:49,659 INFO L101 nessWitnessExtractor]: Location invariant before [L698-L698] ((1 <= i) && (2 <= j)) && ((unsigned long )arg == 0UL) [2024-02-02 09:22:49,659 INFO L101 nessWitnessExtractor]: Loop invariant at [L695-L699] (unsigned long )arg == 0UL [2024-02-02 09:22:49,659 INFO L101 nessWitnessExtractor]: Location invariant before [L696-L696] (unsigned long )arg == 0UL [2024-02-02 09:22:49,659 INFO L101 nessWitnessExtractor]: Location invariant before [L725-L725] (((0 <= correct) && (1 <= i)) && (1 <= j)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:49,659 INFO L101 nessWitnessExtractor]: Location invariant before [L721-L721] assert_cond == (_Bool)0 || assert_cond == (_Bool)1 [2024-02-02 09:22:49,659 INFO L101 nessWitnessExtractor]: Location invariant before [L700-L700] (unsigned long )arg == 0UL [2024-02-02 09:22:49,659 INFO L101 nessWitnessExtractor]: Location invariant before [L726-L726] (0 <= correct) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:49,660 INFO L101 nessWitnessExtractor]: Location invariant before [L697-L697] ((1 <= i) && (1 <= j)) && ((unsigned long )arg == 0UL) [2024-02-02 09:22:49,660 INFO L101 nessWitnessExtractor]: Location invariant before [L715-L715] ((((((((i == 0) && (j == 0)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:49,660 INFO L101 nessWitnessExtractor]: Location invariant before [L689-L689] ((1 <= i) && (1 <= j)) && ((unsigned long )arg == 0UL) [2024-02-02 09:22:49,660 INFO L101 nessWitnessExtractor]: Location invariant before [L690-L690] ((1 <= j) && (2 <= i)) && ((unsigned long )arg == 0UL) [2024-02-02 09:22:49,660 INFO L101 nessWitnessExtractor]: Location invariant before [L681-L681] ((((expression == 0) && (expression == 1)) && (0 <= expression)) && (expression <= 1)) && (expression == 0 || expression == 1) [2024-02-02 09:22:49,660 INFO L101 nessWitnessExtractor]: Location invariant before [L727-L727] (0 <= correct) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:49,660 INFO L101 nessWitnessExtractor]: Location invariant before [L724-L724] (((((1 <= i) && (1 <= j)) && (2 <= correct)) && (i <= 2147483646)) && (correct != 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:49,660 INFO L101 nessWitnessExtractor]: Location invariant before [L714-L714] ((((((((i == 0) && (j == 0)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:49,661 INFO L101 nessWitnessExtractor]: Location invariant before [L720-L720] ((((((((i == 1) && (j == 1)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:49,661 INFO L101 nessWitnessExtractor]: Location invariant before [L716-L716] ((((((((i == 1) && (j == 0)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:49,661 INFO L101 nessWitnessExtractor]: Location invariant before [L722-L722] assert_cond == (_Bool)0 || assert_cond == (_Bool)1 [2024-02-02 09:22:49,661 INFO L101 nessWitnessExtractor]: Location invariant before [L719-L719] ((((((((i == 1) && (j == 1)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:49,662 INFO L101 nessWitnessExtractor]: Location invariant before [L723-L723] (0 <= correct) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:49,662 INFO L101 nessWitnessExtractor]: Location invariant before [L717-L717] ((((((((i == 1) && (j == 0)) && (p == 0)) && (q == 0)) && (cur == 1)) && (prev == 0)) && (next == 0)) && (x == 0)) && (assert_cond == (_Bool)0 || assert_cond == (_Bool)1) [2024-02-02 09:22:49,662 INFO L101 nessWitnessExtractor]: Location invariant before [L692-L692] (unsigned long )arg == 0UL [2024-02-02 09:22:49,703 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-02-02 09:22:49,957 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread/fib_unsafe-6.i[30243,30256] [2024-02-02 09:22:49,975 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-02-02 09:22:49,987 INFO L202 MainTranslator]: Completed pre-run [2024-02-02 09:22:50,015 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread/fib_unsafe-6.i[30243,30256] [2024-02-02 09:22:50,016 WARN L424 MainDispatcher]: Unable to annotate void __VERIFIER_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 [2024-02-02 09:22:50,062 ERROR L324 MainTranslator]: Incorrect Syntax: Undeclared variable in ACSL expression: assert_cond [2024-02-02 09:22:50,063 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@275cd5e1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.02 09:22:50, skipping insertion in model container [2024-02-02 09:22:50,063 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-02-02 09:22:50,063 INFO L186 ToolchainWalker]: Toolchain execution was canceled (user or tool) before executing de.uni_freiburg.informatik.ultimate.boogie.procedureinliner [2024-02-02 09:22:50,066 INFO L158 Benchmark]: Toolchain (without parser) took 508.16ms. Allocated memory was 56.6MB in the beginning and 75.5MB in the end (delta: 18.9MB). Free memory was 24.2MB in the beginning and 38.4MB in the end (delta: -14.3MB). Peak memory consumption was 5.4MB. Max. memory is 16.1GB. [2024-02-02 09:22:50,066 INFO L158 Benchmark]: Witness Parser took 0.16ms. Allocated memory is still 56.6MB. Free memory was 33.1MB in the beginning and 33.1MB in the end (delta: 49.5kB). There was no memory consumed. Max. memory is 16.1GB. [2024-02-02 09:22:50,067 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 56.6MB. Free memory was 40.7MB in the beginning and 40.6MB in the end (delta: 85.3kB). There was no memory consumed. Max. memory is 16.1GB. [2024-02-02 09:22:50,067 INFO L158 Benchmark]: CACSL2BoogieTranslator took 503.28ms. Allocated memory was 56.6MB in the beginning and 75.5MB in the end (delta: 18.9MB). Free memory was 23.9MB in the beginning and 38.4MB in the end (delta: -14.6MB). Peak memory consumption was 5.4MB. Max. memory is 16.1GB. [2024-02-02 09:22:50,069 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.16ms. Allocated memory is still 56.6MB. Free memory was 33.1MB in the beginning and 33.1MB in the end (delta: 49.5kB). There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.14ms. Allocated memory is still 56.6MB. Free memory was 40.7MB in the beginning and 40.6MB in the end (delta: 85.3kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 503.28ms. Allocated memory was 56.6MB in the beginning and 75.5MB in the end (delta: 18.9MB). Free memory was 23.9MB in the beginning and 38.4MB in the end (delta: -14.6MB). Peak memory consumption was 5.4MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - SyntaxErrorResult [Line: 714]: Incorrect Syntax Undeclared variable in ACSL expression: assert_cond 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