./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/weaver/popl20-proofs-counter-add-4-semi-Q67.wvr.c --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/popl20-proofs-counter-add-4-semi-Q67.wvr.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 8857f20b Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/weaver/popl20-proofs-counter-add-4-semi-Q67.wvr.c ./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/popl20-proofs-counter-add-4-semi-Q67.wvr.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --witnessparser.only.consider.loop.invariants false --- Real Ultimate output --- This is Ultimate 0.2.4-dev-8857f20-m [2024-01-29 22:59:17,664 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-01-29 22:59:17,741 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-01-29 22:59:17,747 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-01-29 22:59:17,748 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-01-29 22:59:17,780 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-01-29 22:59:17,781 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-01-29 22:59:17,781 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-01-29 22:59:17,782 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-01-29 22:59:17,786 INFO L153 SettingsManager]: * Use memory slicer=true [2024-01-29 22:59:17,786 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-01-29 22:59:17,787 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-01-29 22:59:17,788 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-01-29 22:59:17,789 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-01-29 22:59:17,789 INFO L153 SettingsManager]: * Use SBE=true [2024-01-29 22:59:17,790 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-01-29 22:59:17,790 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-01-29 22:59:17,790 INFO L153 SettingsManager]: * sizeof long=4 [2024-01-29 22:59:17,790 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-01-29 22:59:17,791 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-01-29 22:59:17,791 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-01-29 22:59:17,791 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-01-29 22:59:17,791 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-01-29 22:59:17,792 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-01-29 22:59:17,792 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-01-29 22:59:17,792 INFO L153 SettingsManager]: * sizeof long double=12 [2024-01-29 22:59:17,792 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-01-29 22:59:17,793 INFO L153 SettingsManager]: * Use constant arrays=true [2024-01-29 22:59:17,793 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-01-29 22:59:17,794 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-01-29 22:59:17,795 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-01-29 22:59:17,795 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-01-29 22:59:17,795 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-01-29 22:59:17,795 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-01-29 22:59:17,795 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-01-29 22:59:17,796 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-01-29 22:59:17,796 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-01-29 22:59:17,796 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-01-29 22:59:17,796 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-01-29 22:59:17,796 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-01-29 22:59:17,797 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-01-29 22:59:17,797 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-01-29 22:59:17,797 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-01-29 22:59:17,797 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false [2024-01-29 22:59:18,114 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-01-29 22:59:18,132 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-01-29 22:59:18,135 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-01-29 22:59:18,136 INFO L270 PluginConnector]: Initializing CDTParser... [2024-01-29 22:59:18,136 INFO L274 PluginConnector]: CDTParser initialized [2024-01-29 22:59:18,138 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/weaver/popl20-proofs-counter-add-4-semi-Q67.wvr.c [2024-01-29 22:59:19,257 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-01-29 22:59:19,439 INFO L384 CDTParser]: Found 1 translation units. [2024-01-29 22:59:19,441 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-proofs-counter-add-4-semi-Q67.wvr.c [2024-01-29 22:59:19,453 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ca46e6d6c/9dceaf5a61a947e4be3a0484e7ec71d9/FLAGed44228ea [2024-01-29 22:59:19,466 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/ca46e6d6c/9dceaf5a61a947e4be3a0484e7ec71d9 [2024-01-29 22:59:19,468 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-01-29 22:59:19,469 INFO L274 PluginConnector]: Witness Parser initialized [2024-01-29 22:59:19,470 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/popl20-proofs-counter-add-4-semi-Q67.wvr.yml/witness.yml [2024-01-29 22:59:19,642 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-01-29 22:59:19,643 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-01-29 22:59:19,644 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-01-29 22:59:19,645 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-01-29 22:59:19,649 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-01-29 22:59:19,662 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.01 10:59:19" (1/2) ... [2024-01-29 22:59:19,668 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7f022615 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.01 10:59:19, skipping insertion in model container [2024-01-29 22:59:19,668 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 29.01 10:59:19" (1/2) ... [2024-01-29 22:59:19,670 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@645ea695 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 29.01 10:59:19, skipping insertion in model container [2024-01-29 22:59:19,671 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 29.01 10:59:19" (2/2) ... [2024-01-29 22:59:19,671 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7f022615 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:19, skipping insertion in model container [2024-01-29 22:59:19,671 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 29.01 10:59:19" (2/2) ... [2024-01-29 22:59:19,672 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-01-29 22:59:19,719 INFO L96 nessWitnessExtractor]: Found the following entries in the witness: [2024-01-29 22:59:19,720 INFO L98 nessWitnessExtractor]: Location invariant before [L22-L25] ((i1 == 0) && (counter == 0)) && (j1 == 0) [2024-01-29 22:59:19,720 INFO L98 nessWitnessExtractor]: Location invariant before [L22-L25] (((i1 == 0) && (counter == 0)) && (j1 == 0)) && (M2 == 0) [2024-01-29 22:59:19,720 INFO L98 nessWitnessExtractor]: Location invariant before [L22-L25] (i1 == 0) && (counter == 0) [2024-01-29 22:59:19,721 INFO L98 nessWitnessExtractor]: Location invariant before [L22-L25] (((i1 == 0) && (counter == 0)) && (j1 == 0)) && (j2 == 0) [2024-01-29 22:59:19,721 INFO L98 nessWitnessExtractor]: Location invariant before [L22-L25] i1 == 0 [2024-01-29 22:59:19,721 INFO L98 nessWitnessExtractor]: Location invariant before [L22-L25] (i1 == 0) && (i2 == 0) [2024-01-29 22:59:19,721 INFO L98 nessWitnessExtractor]: Location invariant before [L89-L89] ((i1 == 0) && (i2 == 0)) && (counter == 0) [2024-01-29 22:59:19,721 INFO L98 nessWitnessExtractor]: Location invariant before [L89-L89] (((i1 == 0) && (i2 == 0)) && (counter == 0)) && (j2 == 0) [2024-01-29 22:59:19,721 INFO L98 nessWitnessExtractor]: Location invariant before [L89-L89] (((i1 == 0) && (i2 == 0)) && (counter == 0)) && (M1 == 0) [2024-01-29 22:59:19,722 INFO L98 nessWitnessExtractor]: Location invariant before [L89-L89] (((i1 == 0) && (i2 == 0)) && (counter == 0)) && (j1 == 0) [2024-01-29 22:59:19,722 INFO L98 nessWitnessExtractor]: Location invariant before [L89-L89] (((i1 == 0) && (i2 == 0)) && (counter == 0)) && (M2 == 0) [2024-01-29 22:59:19,722 INFO L98 nessWitnessExtractor]: Location invariant before [L89-L89] (i1 == 0) && (i2 == 0) [2024-01-29 22:59:19,722 INFO L98 nessWitnessExtractor]: Location invariant before [L89-L89] ((i1 == 0) && (i2 == 0)) && (N2 == 0) [2024-01-29 22:59:19,722 INFO L98 nessWitnessExtractor]: Location invariant before [L89-L89] i1 == 0 [2024-01-29 22:59:19,722 INFO L98 nessWitnessExtractor]: Location invariant before [L82-L82] (unsigned long )_argptr == 0UL [2024-01-29 22:59:19,723 INFO L98 nessWitnessExtractor]: Location invariant before [L92-L92] i1 == 0 [2024-01-29 22:59:19,723 INFO L98 nessWitnessExtractor]: Location invariant before [L92-L92] (i1 == 0) && (j2 == 0) [2024-01-29 22:59:19,723 INFO L98 nessWitnessExtractor]: Location invariant before [L92-L92] (i1 == 0) && (counter == 0) [2024-01-29 22:59:19,723 INFO L98 nessWitnessExtractor]: Location invariant before [L92-L92] (i1 == 0) && (i2 == 0) [2024-01-29 22:59:19,723 INFO L98 nessWitnessExtractor]: Location invariant before [L92-L92] (i1 == 0) && (j1 == 0) [2024-01-29 22:59:19,724 INFO L98 nessWitnessExtractor]: Location invariant before [L66-L66] (-2147483647 <= counter) && (0 <= i2) [2024-01-29 22:59:19,724 INFO L98 nessWitnessExtractor]: Location invariant before [L66-L66] ((-2147483647 <= counter) && (0 <= i2)) && (0 <= j1) [2024-01-29 22:59:19,724 INFO L98 nessWitnessExtractor]: Location invariant before [L66-L66] ((-2147483647 <= counter) && (0 <= i2)) && (0 <= j2) [2024-01-29 22:59:19,725 INFO L98 nessWitnessExtractor]: Location invariant before [L66-L66] ((-2147483647 <= counter) && (0 <= i2)) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,725 INFO L98 nessWitnessExtractor]: Location invariant before [L66-L66] -2147483647 <= counter [2024-01-29 22:59:19,725 INFO L98 nessWitnessExtractor]: Location invariant before [L66-L66] (-2147483647 <= counter) && (0 <= i1) [2024-01-29 22:59:19,725 INFO L98 nessWitnessExtractor]: Location invariant before [L41-L41] (unsigned long )_argptr == 0UL [2024-01-29 22:59:19,725 INFO L98 nessWitnessExtractor]: Location invariant before [L44-L44] ((-2147483647 <= counter) && (0 <= i2)) && (0 <= j2) [2024-01-29 22:59:19,725 INFO L98 nessWitnessExtractor]: Location invariant before [L44-L44] (-2147483647 <= counter) && (0 <= i2) [2024-01-29 22:59:19,726 INFO L98 nessWitnessExtractor]: Location invariant before [L44-L44] (((-2147483647 <= counter) && (0 <= i2)) && (0 <= j2)) && (1 <= i1) [2024-01-29 22:59:19,726 INFO L98 nessWitnessExtractor]: Location invariant before [L44-L44] (((-2147483647 <= counter) && (0 <= i2)) && (0 <= j2)) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,726 INFO L98 nessWitnessExtractor]: Location invariant before [L44-L44] ((-2147483647 <= counter) && (0 <= i2)) && (0 <= j1) [2024-01-29 22:59:19,726 INFO L98 nessWitnessExtractor]: Location invariant before [L44-L44] -2147483647 <= counter [2024-01-29 22:59:19,726 INFO L98 nessWitnessExtractor]: Location invariant before [L64-L64] (unsigned long )_argptr == 0UL [2024-01-29 22:59:19,726 INFO L98 nessWitnessExtractor]: Location invariant before [L52-L52] (unsigned long )_argptr == 0UL [2024-01-29 22:59:19,727 INFO L98 nessWitnessExtractor]: Location invariant before [L67-L67] -2147483647 <= counter [2024-01-29 22:59:19,727 INFO L98 nessWitnessExtractor]: Location invariant before [L67-L67] (-2147483647 <= counter) && (0 <= i2) [2024-01-29 22:59:19,728 INFO L98 nessWitnessExtractor]: Location invariant before [L67-L67] (-2147483647 <= counter) && (0 <= i1) [2024-01-29 22:59:19,729 INFO L98 nessWitnessExtractor]: Location invariant before [L67-L67] (-2147483647 <= counter) && (1 <= j1) [2024-01-29 22:59:19,729 INFO L98 nessWitnessExtractor]: Location invariant before [L67-L67] (-2147483647 <= counter) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,729 INFO L98 nessWitnessExtractor]: Location invariant before [L67-L67] (-2147483647 <= counter) && (0 <= j2) [2024-01-29 22:59:19,730 INFO L98 nessWitnessExtractor]: Location invariant before [L75-L75] (unsigned long )_argptr == 0UL [2024-01-29 22:59:19,730 INFO L98 nessWitnessExtractor]: Location invariant before [L54-L54] (0 <= i1) && (0 <= j1) [2024-01-29 22:59:19,730 INFO L98 nessWitnessExtractor]: Location invariant before [L54-L54] 0 <= i1 [2024-01-29 22:59:19,730 INFO L98 nessWitnessExtractor]: Location invariant before [L54-L54] ((0 <= i1) && (0 <= j1)) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,730 INFO L98 nessWitnessExtractor]: Location invariant before [L54-L54] ((0 <= i1) && (0 <= j1)) && (0 <= j2) [2024-01-29 22:59:19,731 INFO L98 nessWitnessExtractor]: Location invariant before [L54-L54] (0 <= i1) && (0 <= i2) [2024-01-29 22:59:19,731 INFO L98 nessWitnessExtractor]: Location invariant before [L53-L53] (0 <= i1) && (0 <= i2) [2024-01-29 22:59:19,731 INFO L98 nessWitnessExtractor]: Location invariant before [L53-L53] 0 <= i1 [2024-01-29 22:59:19,731 INFO L98 nessWitnessExtractor]: Location invariant before [L53-L53] ((0 <= i1) && (0 <= i2)) && (0 <= j1) [2024-01-29 22:59:19,731 INFO L98 nessWitnessExtractor]: Location invariant before [L53-L53] ((0 <= i1) && (0 <= i2)) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,732 INFO L98 nessWitnessExtractor]: Location invariant before [L53-L53] ((0 <= i1) && (0 <= i2)) && (0 <= j2) [2024-01-29 22:59:19,732 INFO L98 nessWitnessExtractor]: Location invariant before [L42-L42] (0 <= i1) && (0 <= i2) [2024-01-29 22:59:19,732 INFO L98 nessWitnessExtractor]: Location invariant before [L42-L42] ((0 <= i1) && (0 <= i2)) && (0 <= j1) [2024-01-29 22:59:19,732 INFO L98 nessWitnessExtractor]: Location invariant before [L42-L42] ((0 <= i1) && (0 <= i2)) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,733 INFO L98 nessWitnessExtractor]: Location invariant before [L42-L42] ((0 <= i1) && (0 <= i2)) && (0 <= j2) [2024-01-29 22:59:19,733 INFO L98 nessWitnessExtractor]: Location invariant before [L42-L42] 0 <= i1 [2024-01-29 22:59:19,734 INFO L98 nessWitnessExtractor]: Location invariant before [L76-L76] 0 <= i1 [2024-01-29 22:59:19,734 INFO L98 nessWitnessExtractor]: Location invariant before [L76-L76] (0 <= i1) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,735 INFO L98 nessWitnessExtractor]: Location invariant before [L76-L76] (0 <= i1) && (0 <= j2) [2024-01-29 22:59:19,735 INFO L98 nessWitnessExtractor]: Location invariant before [L76-L76] (0 <= i1) && (0 <= i2) [2024-01-29 22:59:19,735 INFO L98 nessWitnessExtractor]: Location invariant before [L76-L76] (0 <= i1) && (0 <= j1) [2024-01-29 22:59:19,735 INFO L98 nessWitnessExtractor]: Loop invariant at [L63-L68] (unsigned long )_argptr == 0UL [2024-01-29 22:59:19,735 INFO L98 nessWitnessExtractor]: Loop invariant at [L74-L80] (unsigned long )_argptr == 0UL [2024-01-29 22:59:19,736 INFO L98 nessWitnessExtractor]: Location invariant before [L79-L79] (0 <= i1) && (0 <= j1) [2024-01-29 22:59:19,736 INFO L98 nessWitnessExtractor]: Location invariant before [L79-L79] ((0 <= i1) && (0 <= j1)) && (counter <= 2147483646) [2024-01-29 22:59:19,736 INFO L98 nessWitnessExtractor]: Location invariant before [L79-L79] 0 <= i1 [2024-01-29 22:59:19,736 INFO L98 nessWitnessExtractor]: Location invariant before [L79-L79] (0 <= i1) && (0 <= i2) [2024-01-29 22:59:19,736 INFO L98 nessWitnessExtractor]: Location invariant before [L79-L79] ((0 <= i1) && (0 <= j1)) && (1 <= j2) [2024-01-29 22:59:19,736 INFO L98 nessWitnessExtractor]: Location invariant before [L79-L79] ((0 <= i1) && (0 <= j1)) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,736 INFO L98 nessWitnessExtractor]: Location invariant before [L56-L56] (0 <= i1) && (0 <= j2) [2024-01-29 22:59:19,737 INFO L98 nessWitnessExtractor]: Location invariant before [L56-L56] ((0 <= i1) && (0 <= j2)) && (1 <= i2) [2024-01-29 22:59:19,737 INFO L98 nessWitnessExtractor]: Location invariant before [L56-L56] 0 <= i1 [2024-01-29 22:59:19,737 INFO L98 nessWitnessExtractor]: Location invariant before [L56-L56] ((0 <= i1) && (0 <= j2)) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,737 INFO L98 nessWitnessExtractor]: Location invariant before [L56-L56] ((0 <= i1) && (0 <= j2)) && (counter <= 2147483646) [2024-01-29 22:59:19,737 INFO L98 nessWitnessExtractor]: Location invariant before [L56-L56] (0 <= i1) && (0 <= j1) [2024-01-29 22:59:19,737 INFO L98 nessWitnessExtractor]: Location invariant before [L90-L90] (i1 == 0) && (j1 == 0) [2024-01-29 22:59:19,738 INFO L98 nessWitnessExtractor]: Location invariant before [L90-L90] i1 == 0 [2024-01-29 22:59:19,738 INFO L98 nessWitnessExtractor]: Location invariant before [L90-L90] ((i1 == 0) && (j1 == 0)) && (M1 == 0) [2024-01-29 22:59:19,738 INFO L98 nessWitnessExtractor]: Location invariant before [L90-L90] (i1 == 0) && (counter == 0) [2024-01-29 22:59:19,738 INFO L98 nessWitnessExtractor]: Location invariant before [L90-L90] (i1 == 0) && (i2 == 0) [2024-01-29 22:59:19,738 INFO L98 nessWitnessExtractor]: Location invariant before [L90-L90] ((i1 == 0) && (j1 == 0)) && (M2 == 0) [2024-01-29 22:59:19,738 INFO L98 nessWitnessExtractor]: Location invariant before [L90-L90] ((i1 == 0) && (j1 == 0)) && (j2 == 0) [2024-01-29 22:59:19,738 INFO L98 nessWitnessExtractor]: Location invariant before [L47-L47] (unsigned long )_argptr == 0UL [2024-01-29 22:59:19,739 INFO L98 nessWitnessExtractor]: Location invariant before [L95-L95] ((i1 == 0) && (i2 == 0)) && (counter == 0) [2024-01-29 22:59:19,739 INFO L98 nessWitnessExtractor]: Location invariant before [L95-L95] (((i1 == 0) && (i2 == 0)) && (counter == 0)) && (j2 == 0) [2024-01-29 22:59:19,739 INFO L98 nessWitnessExtractor]: Location invariant before [L95-L95] (i1 == 0) && (i2 == 0) [2024-01-29 22:59:19,739 INFO L98 nessWitnessExtractor]: Location invariant before [L95-L95] (((i1 == 0) && (i2 == 0)) && (counter == 0)) && (j1 == 0) [2024-01-29 22:59:19,739 INFO L98 nessWitnessExtractor]: Location invariant before [L95-L95] i1 == 0 [2024-01-29 22:59:19,739 INFO L98 nessWitnessExtractor]: Location invariant before [L43-L43] ((-2147483647 <= counter) && (0 <= i1)) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,739 INFO L98 nessWitnessExtractor]: Location invariant before [L43-L43] (-2147483647 <= counter) && (0 <= i1) [2024-01-29 22:59:19,740 INFO L98 nessWitnessExtractor]: Location invariant before [L43-L43] ((-2147483647 <= counter) && (0 <= i1)) && (0 <= j1) [2024-01-29 22:59:19,740 INFO L98 nessWitnessExtractor]: Location invariant before [L43-L43] -2147483647 <= counter [2024-01-29 22:59:19,740 INFO L98 nessWitnessExtractor]: Location invariant before [L43-L43] ((-2147483647 <= counter) && (0 <= i1)) && (0 <= j2) [2024-01-29 22:59:19,740 INFO L98 nessWitnessExtractor]: Location invariant before [L43-L43] ((-2147483647 <= counter) && (0 <= i1)) && (0 <= i2) [2024-01-29 22:59:19,740 INFO L98 nessWitnessExtractor]: Location invariant before [L59-L59] (unsigned long )_argptr == 0UL [2024-01-29 22:59:19,740 INFO L98 nessWitnessExtractor]: Loop invariant at [L51-L57] (unsigned long )_argptr == 0UL [2024-01-29 22:59:19,740 INFO L98 nessWitnessExtractor]: Loop invariant at [L40-L45] (unsigned long )_argptr == 0UL [2024-01-29 22:59:19,741 INFO L98 nessWitnessExtractor]: Location invariant before [L65-L65] 0 <= i1 [2024-01-29 22:59:19,741 INFO L98 nessWitnessExtractor]: Location invariant before [L65-L65] (0 <= i1) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,741 INFO L98 nessWitnessExtractor]: Location invariant before [L65-L65] (0 <= i1) && (0 <= i2) [2024-01-29 22:59:19,741 INFO L98 nessWitnessExtractor]: Location invariant before [L65-L65] (0 <= i1) && (0 <= j2) [2024-01-29 22:59:19,741 INFO L98 nessWitnessExtractor]: Location invariant before [L65-L65] (0 <= i1) && (0 <= j1) [2024-01-29 22:59:19,741 INFO L98 nessWitnessExtractor]: Location invariant before [L91-L91] (i1 == 0) && (counter == 0) [2024-01-29 22:59:19,742 INFO L98 nessWitnessExtractor]: Location invariant before [L91-L91] ((i1 == 0) && (counter == 0)) && (j2 == 0) [2024-01-29 22:59:19,742 INFO L98 nessWitnessExtractor]: Location invariant before [L91-L91] ((i1 == 0) && (counter == 0)) && (j1 == 0) [2024-01-29 22:59:19,742 INFO L98 nessWitnessExtractor]: Location invariant before [L91-L91] i1 == 0 [2024-01-29 22:59:19,743 INFO L98 nessWitnessExtractor]: Location invariant before [L91-L91] (i1 == 0) && (i2 == 0) [2024-01-29 22:59:19,743 INFO L98 nessWitnessExtractor]: Location invariant before [L91-L91] ((i1 == 0) && (counter == 0)) && (M2 == 0) [2024-01-29 22:59:19,744 INFO L98 nessWitnessExtractor]: Location invariant before [L88-L88] ((i1 == 0) && (i2 == 0)) && (j2 == 0) [2024-01-29 22:59:19,745 INFO L98 nessWitnessExtractor]: Location invariant before [L88-L88] (((i1 == 0) && (i2 == 0)) && (j2 == 0)) && (M2 == 0) [2024-01-29 22:59:19,745 INFO L98 nessWitnessExtractor]: Location invariant before [L88-L88] (i1 == 0) && (i2 == 0) [2024-01-29 22:59:19,745 INFO L98 nessWitnessExtractor]: Location invariant before [L88-L88] ((i1 == 0) && (i2 == 0)) && (counter == 0) [2024-01-29 22:59:19,745 INFO L98 nessWitnessExtractor]: Location invariant before [L88-L88] ((i1 == 0) && (i2 == 0)) && (N1 == 0) [2024-01-29 22:59:19,745 INFO L98 nessWitnessExtractor]: Location invariant before [L88-L88] (((i1 == 0) && (i2 == 0)) && (j2 == 0)) && (M1 == 0) [2024-01-29 22:59:19,746 INFO L98 nessWitnessExtractor]: Location invariant before [L88-L88] ((i1 == 0) && (i2 == 0)) && (N2 == 0) [2024-01-29 22:59:19,746 INFO L98 nessWitnessExtractor]: Location invariant before [L88-L88] ((i1 == 0) && (i2 == 0)) && (j1 == 0) [2024-01-29 22:59:19,746 INFO L98 nessWitnessExtractor]: Location invariant before [L88-L88] i1 == 0 [2024-01-29 22:59:19,746 INFO L98 nessWitnessExtractor]: Location invariant before [L78-L78] ((0 <= i1) && (0 <= i2)) && (counter <= 2147483646) [2024-01-29 22:59:19,747 INFO L98 nessWitnessExtractor]: Location invariant before [L78-L78] (((0 <= i1) && (0 <= i2)) && (counter <= 2147483646)) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,747 INFO L98 nessWitnessExtractor]: Location invariant before [L78-L78] (0 <= i1) && (0 <= i2) [2024-01-29 22:59:19,747 INFO L98 nessWitnessExtractor]: Location invariant before [L78-L78] ((0 <= i1) && (0 <= i2)) && (0 <= j2) [2024-01-29 22:59:19,747 INFO L98 nessWitnessExtractor]: Location invariant before [L78-L78] ((0 <= i1) && (0 <= i2)) && (0 <= j1) [2024-01-29 22:59:19,747 INFO L98 nessWitnessExtractor]: Location invariant before [L78-L78] 0 <= i1 [2024-01-29 22:59:19,747 INFO L98 nessWitnessExtractor]: Location invariant before [L55-L55] 0 <= i1 [2024-01-29 22:59:19,747 INFO L98 nessWitnessExtractor]: Location invariant before [L55-L55] (0 <= i1) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,747 INFO L98 nessWitnessExtractor]: Location invariant before [L55-L55] (0 <= i1) && (0 <= j2) [2024-01-29 22:59:19,748 INFO L98 nessWitnessExtractor]: Location invariant before [L55-L55] (0 <= i1) && (0 <= j1) [2024-01-29 22:59:19,748 INFO L98 nessWitnessExtractor]: Location invariant before [L55-L55] (0 <= i1) && (0 <= i2) [2024-01-29 22:59:19,748 INFO L98 nessWitnessExtractor]: Location invariant before [L55-L55] (0 <= i1) && (counter <= 2147483646) [2024-01-29 22:59:19,748 INFO L98 nessWitnessExtractor]: Location invariant before [L70-L70] (unsigned long )_argptr == 0UL [2024-01-29 22:59:19,748 INFO L98 nessWitnessExtractor]: Location invariant before [L77-L77] (((0 <= i1) && (0 <= i2)) && (0 <= j1)) && (0 <= j2) [2024-01-29 22:59:19,748 INFO L98 nessWitnessExtractor]: Location invariant before [L77-L77] ((((0 <= i1) && (0 <= i2)) && (0 <= j1)) && (0 <= j2)) && ((unsigned long )_argptr == 0UL) [2024-01-29 22:59:19,749 INFO L98 nessWitnessExtractor]: Location invariant before [L77-L77] ((0 <= i1) && (0 <= i2)) && (0 <= j1) [2024-01-29 22:59:19,749 INFO L98 nessWitnessExtractor]: Location invariant before [L77-L77] (0 <= i1) && (0 <= i2) [2024-01-29 22:59:19,749 INFO L98 nessWitnessExtractor]: Location invariant before [L77-L77] 0 <= i1 [2024-01-29 22:59:19,772 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-01-29 22:59:19,916 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-proofs-counter-add-4-semi-Q67.wvr.c[2663,2676] [2024-01-29 22:59:19,919 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-29 22:59:19,926 INFO L202 MainTranslator]: Completed pre-run [2024-01-29 22:59:19,935 WARN L424 MainDispatcher]: Unable to annotate extern int pthread_create (pthread_t *__restrict __newthread, const pthread_attr_t *__restrict __attr, void *(*__start_routine) (void *), void *__restrict __arg) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 3))); with a witness entry Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local [2024-01-29 22:59:20,032 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-proofs-counter-add-4-semi-Q67.wvr.c[2663,2676] [2024-01-29 22:59:20,046 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-01-29 22:59:20,059 INFO L206 MainTranslator]: Completed translation [2024-01-29 22:59:20,059 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20 WrapperNode [2024-01-29 22:59:20,060 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-01-29 22:59:20,069 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-01-29 22:59:20,069 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-01-29 22:59:20,069 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-01-29 22:59:20,076 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (1/1) ... [2024-01-29 22:59:20,095 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (1/1) ... [2024-01-29 22:59:20,131 INFO L138 Inliner]: procedures = 22, calls = 42, calls flagged for inlining = 6, calls inlined = 6, statements flattened = 230 [2024-01-29 22:59:20,131 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-01-29 22:59:20,132 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-01-29 22:59:20,132 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-01-29 22:59:20,132 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-01-29 22:59:20,143 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (1/1) ... [2024-01-29 22:59:20,143 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (1/1) ... [2024-01-29 22:59:20,157 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (1/1) ... [2024-01-29 22:59:20,188 INFO L175 MemorySlicer]: Split 10 memory accesses to 5 slices as follows [2, 2, 2, 2, 2]. 20 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2, 0, 0, 0, 0]. The 4 writes are split as follows [0, 1, 1, 1, 1]. [2024-01-29 22:59:20,188 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (1/1) ... [2024-01-29 22:59:20,188 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (1/1) ... [2024-01-29 22:59:20,195 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (1/1) ... [2024-01-29 22:59:20,198 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (1/1) ... [2024-01-29 22:59:20,212 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (1/1) ... [2024-01-29 22:59:20,214 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (1/1) ... [2024-01-29 22:59:20,217 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-01-29 22:59:20,217 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-01-29 22:59:20,217 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-01-29 22:59:20,218 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-01-29 22:59:20,218 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (1/1) ... [2024-01-29 22:59:20,228 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-01-29 22:59:20,236 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-01-29 22:59:20,253 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-01-29 22:59:20,272 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-01-29 22:59:20,313 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-01-29 22:59:20,314 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2024-01-29 22:59:20,314 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2024-01-29 22:59:20,314 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2024-01-29 22:59:20,314 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2024-01-29 22:59:20,315 INFO L130 BoogieDeclarations]: Found specification of procedure thread3 [2024-01-29 22:59:20,317 INFO L138 BoogieDeclarations]: Found implementation of procedure thread3 [2024-01-29 22:59:20,318 INFO L130 BoogieDeclarations]: Found specification of procedure thread4 [2024-01-29 22:59:20,318 INFO L138 BoogieDeclarations]: Found implementation of procedure thread4 [2024-01-29 22:59:20,318 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-01-29 22:59:20,323 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-01-29 22:59:20,323 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-01-29 22:59:20,324 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-01-29 22:59:20,324 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2024-01-29 22:59:20,324 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-01-29 22:59:20,324 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-01-29 22:59:20,324 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-01-29 22:59:20,324 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2024-01-29 22:59:20,325 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2024-01-29 22:59:20,325 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#4 [2024-01-29 22:59:20,325 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-01-29 22:59:20,325 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-01-29 22:59:20,325 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-01-29 22:59:20,325 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-01-29 22:59:20,325 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-01-29 22:59:20,325 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-01-29 22:59:20,326 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2024-01-29 22:59:20,326 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2024-01-29 22:59:20,326 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#4 [2024-01-29 22:59:20,326 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-01-29 22:59:20,328 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-01-29 22:59:20,484 INFO L244 CfgBuilder]: Building ICFG [2024-01-29 22:59:20,486 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-01-29 22:59:21,089 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-01-29 22:59:21,089 INFO L293 CfgBuilder]: Performing block encoding [2024-01-29 22:59:21,816 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-01-29 22:59:21,816 INFO L320 CfgBuilder]: Removed 4 assume(true) statements. [2024-01-29 22:59:21,818 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.01 10:59:21 BoogieIcfgContainer [2024-01-29 22:59:21,818 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-01-29 22:59:21,821 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-01-29 22:59:21,821 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-01-29 22:59:21,824 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-01-29 22:59:21,824 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 29.01 10:59:19" (1/4) ... [2024-01-29 22:59:21,825 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5d830da6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 29.01 10:59:21, skipping insertion in model container [2024-01-29 22:59:21,825 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 29.01 10:59:19" (2/4) ... [2024-01-29 22:59:21,826 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5d830da6 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 29.01 10:59:21, skipping insertion in model container [2024-01-29 22:59:21,826 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 29.01 10:59:20" (3/4) ... [2024-01-29 22:59:21,827 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5d830da6 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 29.01 10:59:21, skipping insertion in model container [2024-01-29 22:59:21,827 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 29.01 10:59:21" (4/4) ... [2024-01-29 22:59:21,828 INFO L112 eAbstractionObserver]: Analyzing ICFG popl20-proofs-counter-add-4-semi-Q67.wvr.c [2024-01-29 22:59:21,845 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-01-29 22:59:21,846 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 135 error locations. [2024-01-29 22:59:21,846 INFO L518 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-01-29 22:59:21,981 INFO L144 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2024-01-29 22:59:22,033 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 238 places, 229 transitions, 486 flow [2024-01-29 22:59:22,103 INFO L124 PetriNetUnfolderBase]: 4/225 cut-off events. [2024-01-29 22:59:22,103 INFO L125 PetriNetUnfolderBase]: For 4/4 co-relation queries the response was YES. [2024-01-29 22:59:22,109 INFO L83 FinitePrefix]: Finished finitePrefix Result has 242 conditions, 225 events. 4/225 cut-off events. For 4/4 co-relation queries the response was YES. Maximal size of possible extension queue 30. Compared 831 event pairs, 0 based on Foata normal form. 0/86 useless extension candidates. Maximal degree in co-relation 185. Up to 2 conditions per place. [2024-01-29 22:59:22,109 INFO L82 GeneralOperation]: Start removeDead. Operand has 238 places, 229 transitions, 486 flow [2024-01-29 22:59:22,117 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 233 places, 224 transitions, 472 flow [2024-01-29 22:59:22,125 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-01-29 22:59:22,131 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@66b5a804, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-01-29 22:59:22,132 INFO L358 AbstractCegarLoop]: Starting to check reachability of 233 error locations. [2024-01-29 22:59:22,133 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-01-29 22:59:22,134 INFO L124 PetriNetUnfolderBase]: 0/1 cut-off events. [2024-01-29 22:59:22,134 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-01-29 22:59:22,134 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-01-29 22:59:22,135 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1] [2024-01-29 22:59:22,135 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [thread1Err0ASSERT_VIOLATIONWITNESS_INVARIANT, thread1Err1ASSERT_VIOLATIONWITNESS_INVARIANT, thread1Err20ASSERT_VIOLATIONWITNESS_INVARIANT (and 230 more)] === [2024-01-29 22:59:22,139 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-01-29 22:59:22,140 INFO L85 PathProgramCache]: Analyzing trace with hash 47046, now seen corresponding path program 1 times [2024-01-29 22:59:22,149 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-01-29 22:59:22,149 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1866364690] [2024-01-29 22:59:22,150 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-29 22:59:22,150 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-01-29 22:59:22,241 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-01-29 22:59:22,346 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-01-29 22:59:22,347 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-01-29 22:59:22,347 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1866364690] [2024-01-29 22:59:22,348 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1866364690] provided 1 perfect and 0 imperfect interpolant sequences [2024-01-29 22:59:22,348 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-01-29 22:59:22,349 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-01-29 22:59:22,350 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [450077425] [2024-01-29 22:59:22,351 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-01-29 22:59:22,359 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-01-29 22:59:22,365 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-01-29 22:59:22,393 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-01-29 22:59:22,394 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-01-29 22:59:22,522 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 75 out of 229 [2024-01-29 22:59:22,525 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 233 places, 224 transitions, 472 flow. Second operand has 3 states, 3 states have (on average 75.66666666666667) internal successors, (227), 3 states have internal predecessors, (227), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-01-29 22:59:22,525 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-01-29 22:59:22,525 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 75 of 229 [2024-01-29 22:59:22,526 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-01-29 22:59:33,525 INFO L124 PetriNetUnfolderBase]: 75665/112843 cut-off events. [2024-01-29 22:59:33,526 INFO L125 PetriNetUnfolderBase]: For 2525/2525 co-relation queries the response was YES. [2024-01-29 22:59:33,842 INFO L83 FinitePrefix]: Finished finitePrefix Result has 216851 conditions, 112843 events. 75665/112843 cut-off events. For 2525/2525 co-relation queries the response was YES. Maximal size of possible extension queue 12551. Compared 1108191 event pairs, 33897 based on Foata normal form. 0/55497 useless extension candidates. Maximal degree in co-relation 194365. Up to 54471 conditions per place. [2024-01-29 22:59:34,761 INFO L140 encePairwiseOnDemand]: 161/229 looper letters, 131 selfloop transitions, 2 changer transitions 0/204 dead transitions. [2024-01-29 22:59:34,761 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 170 places, 204 transitions, 719 flow [2024-01-29 22:59:34,763 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-01-29 22:59:34,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-01-29 22:59:34,777 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 483 transitions. [2024-01-29 22:59:34,780 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.7030567685589519 [2024-01-29 22:59:34,782 INFO L175 Difference]: Start difference. First operand has 233 places, 224 transitions, 472 flow. Second operand 3 states and 483 transitions. [2024-01-29 22:59:34,784 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 170 places, 204 transitions, 719 flow [2024-01-29 22:59:35,640 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 162 places, 204 transitions, 689 flow, removed 0 selfloop flow, removed 8 redundant places. [2024-01-29 22:59:35,644 INFO L231 Difference]: Finished difference. Result has 163 places, 160 transitions, 338 flow [2024-01-29 22:59:35,646 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=229, PETRI_DIFFERENCE_MINUEND_FLOW=326, PETRI_DIFFERENCE_MINUEND_PLACES=160, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=159, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=157, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=338, PETRI_PLACES=163, PETRI_TRANSITIONS=160} [2024-01-29 22:59:35,650 INFO L281 CegarLoopForPetriNet]: 233 programPoint places, -70 predicate places. [2024-01-29 22:59:35,650 INFO L495 AbstractCegarLoop]: Abstraction has has 163 places, 160 transitions, 338 flow [2024-01-29 22:59:35,650 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 75.66666666666667) internal successors, (227), 3 states have internal predecessors, (227), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-01-29 22:59:35,650 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-01-29 22:59:35,651 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1] [2024-01-29 22:59:35,651 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-01-29 22:59:35,651 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [thread1Err0ASSERT_VIOLATIONWITNESS_INVARIANT, thread1Err1ASSERT_VIOLATIONWITNESS_INVARIANT, thread1Err20ASSERT_VIOLATIONWITNESS_INVARIANT (and 230 more)] === [2024-01-29 22:59:35,652 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-01-29 22:59:35,652 INFO L85 PathProgramCache]: Analyzing trace with hash 1459831, now seen corresponding path program 1 times [2024-01-29 22:59:35,653 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-01-29 22:59:35,654 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [731980386] [2024-01-29 22:59:35,654 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-01-29 22:59:35,655 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-01-29 22:59:35,680 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-01-29 22:59:35,762 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-01-29 22:59:35,763 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-01-29 22:59:35,763 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [731980386] [2024-01-29 22:59:35,764 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [731980386] provided 1 perfect and 0 imperfect interpolant sequences [2024-01-29 22:59:35,764 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-01-29 22:59:35,764 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-01-29 22:59:35,765 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1536429401] [2024-01-29 22:59:35,765 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-01-29 22:59:35,766 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-01-29 22:59:35,766 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-01-29 22:59:35,767 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-01-29 22:59:35,768 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-01-29 22:59:35,884 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 97 out of 229 [2024-01-29 22:59:35,885 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 163 places, 160 transitions, 338 flow. Second operand has 3 states, 3 states have (on average 97.66666666666667) internal successors, (293), 3 states have internal predecessors, (293), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-01-29 22:59:35,885 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-01-29 22:59:35,885 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 97 of 229 [2024-01-29 22:59:35,887 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand