./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/goblint-regression/28-race_reach_03-munge_racing.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --validate ./goblint.2024-02-07_10-47-16.files/SV-COMP24_unreach-call/28-race_reach_03-munge_racing.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 958ec4d9 Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/goblint-regression/28-race_reach_03-munge_racing.i ./goblint.2024-02-07_10-47-16.files/SV-COMP24_unreach-call/28-race_reach_03-munge_racing.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --witnessparser.only.consider.loop.invariants false --- Real Ultimate output --- This is Ultimate 0.2.4-dev-958ec4d-m [2024-02-07 14:53:56,332 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-02-07 14:53:56,398 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-02-07 14:53:56,406 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-02-07 14:53:56,406 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-02-07 14:53:56,421 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-02-07 14:53:56,422 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-02-07 14:53:56,422 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-02-07 14:53:56,422 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-02-07 14:53:56,423 INFO L153 SettingsManager]: * Use memory slicer=true [2024-02-07 14:53:56,423 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-02-07 14:53:56,423 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-02-07 14:53:56,424 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-02-07 14:53:56,424 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-02-07 14:53:56,424 INFO L153 SettingsManager]: * Use SBE=true [2024-02-07 14:53:56,425 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-02-07 14:53:56,425 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-02-07 14:53:56,425 INFO L153 SettingsManager]: * sizeof long=4 [2024-02-07 14:53:56,425 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-02-07 14:53:56,426 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-02-07 14:53:56,426 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-02-07 14:53:56,426 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-02-07 14:53:56,427 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-02-07 14:53:56,427 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-02-07 14:53:56,427 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-02-07 14:53:56,427 INFO L153 SettingsManager]: * sizeof long double=12 [2024-02-07 14:53:56,428 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-02-07 14:53:56,428 INFO L153 SettingsManager]: * Use constant arrays=true [2024-02-07 14:53:56,428 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-02-07 14:53:56,428 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-02-07 14:53:56,429 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-02-07 14:53:56,429 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-02-07 14:53:56,429 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-02-07 14:53:56,430 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-02-07 14:53:56,430 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-02-07 14:53:56,430 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-02-07 14:53:56,430 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-02-07 14:53:56,431 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-02-07 14:53:56,431 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-02-07 14:53:56,431 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-02-07 14:53:56,431 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-02-07 14:53:56,432 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-02-07 14:53:56,432 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-02-07 14:53:56,432 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false [2024-02-07 14:53:56,645 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-02-07 14:53:56,666 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-02-07 14:53:56,668 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-02-07 14:53:56,670 INFO L270 PluginConnector]: Initializing CDTParser... [2024-02-07 14:53:56,670 INFO L274 PluginConnector]: CDTParser initialized [2024-02-07 14:53:56,671 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/goblint-regression/28-race_reach_03-munge_racing.i [2024-02-07 14:53:57,757 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-02-07 14:53:57,957 INFO L384 CDTParser]: Found 1 translation units. [2024-02-07 14:53:57,958 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/28-race_reach_03-munge_racing.i [2024-02-07 14:53:57,968 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/504cea35d/60eb1ddf8bf7497d9bdb28bf45155c4a/FLAG0780c36a0 [2024-02-07 14:53:57,982 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/504cea35d/60eb1ddf8bf7497d9bdb28bf45155c4a [2024-02-07 14:53:57,985 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-02-07 14:53:57,985 INFO L274 PluginConnector]: Witness Parser initialized [2024-02-07 14:53:57,986 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/./goblint.2024-02-07_10-47-16.files/SV-COMP24_unreach-call/28-race_reach_03-munge_racing.yml/witness.yml [2024-02-07 14:53:58,060 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-02-07 14:53:58,061 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-02-07 14:53:58,062 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-02-07 14:53:58,062 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-02-07 14:53:58,065 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-02-07 14:53:58,066 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.02 02:53:57" (1/2) ... [2024-02-07 14:53:58,067 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1c00a85c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.02 02:53:58, skipping insertion in model container [2024-02-07 14:53:58,067 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.02 02:53:57" (1/2) ... [2024-02-07 14:53:58,068 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@33c3a6a3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.02 02:53:58, skipping insertion in model container [2024-02-07 14:53:58,069 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 07.02 02:53:58" (2/2) ... [2024-02-07 14:53:58,069 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1c00a85c and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58, skipping insertion in model container [2024-02-07 14:53:58,069 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 07.02 02:53:58" (2/2) ... [2024-02-07 14:53:58,070 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-02-07 14:53:58,107 INFO L74 edCorrectnessWitness]: Found the following entries in the witness: [2024-02-07 14:53:58,108 INFO L76 edCorrectnessWitness]: Location invariant before [L714-L714] (((((((((((((((((((((((((25 <= i && i <= 9999) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12) || i == 11) || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (0 == i && i == 0) [2024-02-07 14:53:58,108 INFO L76 edCorrectnessWitness]: Location invariant after [L702-L702] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,108 INFO L76 edCorrectnessWitness]: Location invariant after [L702-L702] (global <= 2147483646) && (m == & mutex1 || m == & mutex2) [2024-02-07 14:53:58,108 INFO L76 edCorrectnessWitness]: Location invariant before [L702-L702] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,111 INFO L76 edCorrectnessWitness]: Location invariant before [L702-L702] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,112 INFO L76 edCorrectnessWitness]: Location invariant after [L715-L715] (((((((((((((((((((((((((25 <= i && i <= 9999) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12) || i == 11) || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (0 == i && i == 0) [2024-02-07 14:53:58,112 INFO L76 edCorrectnessWitness]: Location invariant after [L715-L715] ((((((((((((((((((((((((i == 9 || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (0 == i && i == 0)) || (25 <= i && i <= 9999)) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12) || i == 11) || i == 10 [2024-02-07 14:53:58,112 INFO L76 edCorrectnessWitness]: Location invariant before [L702-L702] (global <= 2147483646) && (m == & mutex1 || m == & mutex2) [2024-02-07 14:53:58,113 INFO L76 edCorrectnessWitness]: Location invariant after [L702-L702] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,113 INFO L76 edCorrectnessWitness]: Location invariant before [L702-L702] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,113 INFO L76 edCorrectnessWitness]: Location invariant before [L702-L702] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,113 INFO L76 edCorrectnessWitness]: Location invariant after [L702-L702] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,113 INFO L76 edCorrectnessWitness]: Location invariant before [L702-L702] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,113 INFO L76 edCorrectnessWitness]: Location invariant before [L703-L703] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,113 INFO L76 edCorrectnessWitness]: Location invariant before [L715-L715] ((((((((((((((((((((((((i == 9 || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (0 == i && i == 0)) || (25 <= i && i <= 9999)) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12) || i == 11) || i == 10 [2024-02-07 14:53:58,114 INFO L76 edCorrectnessWitness]: Location invariant before [L702-L702] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,114 INFO L76 edCorrectnessWitness]: Location invariant after [L702-L702] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,114 INFO L76 edCorrectnessWitness]: Location invariant after [L714-L714] (((((((((((((((((((((((((25 <= i && i <= 9999) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12) || i == 11) || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (0 == i && i == 0) [2024-02-07 14:53:58,114 INFO L76 edCorrectnessWitness]: Location invariant before [L702-L702] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,114 INFO L76 edCorrectnessWitness]: Location invariant before [L702-L702] (-2147483647 <= global) && (m == & mutex1 || m == & mutex2) [2024-02-07 14:53:58,114 INFO L76 edCorrectnessWitness]: Location invariant before [L715-L715] (((((((((((((((((((((((((25 <= i && i <= 9999) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12) || i == 11) || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (0 == i && i == 0) [2024-02-07 14:53:58,115 INFO L76 edCorrectnessWitness]: Location invariant before [L714-L714] (((((((((((((((((((((((((25 <= i && i <= 9999) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12) || i == 11) || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (0 == i && i == 0) [2024-02-07 14:53:58,115 INFO L76 edCorrectnessWitness]: Location invariant after [L702-L702] (-2147483647 <= global) && (m == & mutex1 || m == & mutex2) [2024-02-07 14:53:58,115 INFO L76 edCorrectnessWitness]: Location invariant before [L702-L702] m == & mutex1 || m == & mutex2 [2024-02-07 14:53:58,115 INFO L76 edCorrectnessWitness]: Location invariant after [L714-L714] (((((((((((((((((((((((((25 <= i && i <= 9999) || i == 24) || i == 23) || i == 22) || i == 21) || i == 20) || i == 19) || i == 18) || i == 17) || i == 16) || i == 15) || i == 14) || i == 13) || i == 12) || i == 11) || i == 10) || i == 9) || i == 8) || i == 7) || i == 6) || i == 5) || i == 4) || i == 3) || i == 2) || i == 1) || (0 == i && i == 0) [2024-02-07 14:53:58,157 INFO L178 MainTranslator]: Built tables and reachable declarations [2024-02-07 14:53:58,436 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/28-race_reach_03-munge_racing.i[30176,30189] [2024-02-07 14:53:58,452 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-02-07 14:53:58,460 INFO L203 MainTranslator]: Completed pre-run [2024-02-07 14:53:58,490 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/28-race_reach_03-munge_racing.i[30176,30189] Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local [2024-02-07 14:53:58,607 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-02-07 14:53:58,634 INFO L207 MainTranslator]: Completed translation [2024-02-07 14:53:58,634 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58 WrapperNode [2024-02-07 14:53:58,634 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-02-07 14:53:58,635 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-02-07 14:53:58,635 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-02-07 14:53:58,635 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-02-07 14:53:58,641 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (1/1) ... [2024-02-07 14:53:58,667 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (1/1) ... [2024-02-07 14:53:58,691 INFO L138 Inliner]: procedures = 173, calls = 47, calls flagged for inlining = 5, calls inlined = 6, statements flattened = 248 [2024-02-07 14:53:58,692 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-02-07 14:53:58,692 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-02-07 14:53:58,693 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-02-07 14:53:58,693 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-02-07 14:53:58,709 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (1/1) ... [2024-02-07 14:53:58,709 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (1/1) ... [2024-02-07 14:53:58,712 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (1/1) ... [2024-02-07 14:53:58,729 INFO L175 MemorySlicer]: Split 21 memory accesses to 5 slices as follows [2, 5, 2, 10, 2]. 48 percent of accesses are in the largest equivalence class. The 17 initializations are split as follows [2, 5, 0, 10, 0]. The 2 writes are split as follows [0, 0, 1, 0, 1]. [2024-02-07 14:53:58,729 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (1/1) ... [2024-02-07 14:53:58,729 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (1/1) ... [2024-02-07 14:53:58,736 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (1/1) ... [2024-02-07 14:53:58,739 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (1/1) ... [2024-02-07 14:53:58,741 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (1/1) ... [2024-02-07 14:53:58,742 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (1/1) ... [2024-02-07 14:53:58,746 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-02-07 14:53:58,747 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-02-07 14:53:58,747 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-02-07 14:53:58,747 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-02-07 14:53:58,748 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (1/1) ... [2024-02-07 14:53:58,761 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-02-07 14:53:58,767 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-07 14:53:58,779 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-02-07 14:53:58,786 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-02-07 14:53:58,809 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-02-07 14:53:58,810 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-02-07 14:53:58,810 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2024-02-07 14:53:58,810 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2024-02-07 14:53:58,810 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#4 [2024-02-07 14:53:58,811 INFO L130 BoogieDeclarations]: Found specification of procedure t2_fun [2024-02-07 14:53:58,811 INFO L138 BoogieDeclarations]: Found implementation of procedure t2_fun [2024-02-07 14:53:58,811 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-02-07 14:53:58,811 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-02-07 14:53:58,811 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2024-02-07 14:53:58,812 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2024-02-07 14:53:58,814 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#4 [2024-02-07 14:53:58,814 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2024-02-07 14:53:58,814 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-02-07 14:53:58,814 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-02-07 14:53:58,814 INFO L130 BoogieDeclarations]: Found specification of procedure t1_fun [2024-02-07 14:53:58,814 INFO L138 BoogieDeclarations]: Found implementation of procedure t1_fun [2024-02-07 14:53:58,814 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-02-07 14:53:58,815 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-02-07 14:53:58,815 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-02-07 14:53:58,815 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-02-07 14:53:58,815 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-02-07 14:53:58,815 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2024-02-07 14:53:58,815 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexUnlock [2024-02-07 14:53:58,815 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-02-07 14:53:58,815 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-02-07 14:53:58,817 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-02-07 14:53:58,946 INFO L244 CfgBuilder]: Building ICFG [2024-02-07 14:53:58,948 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-02-07 14:53:59,352 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-02-07 14:53:59,353 INFO L293 CfgBuilder]: Performing block encoding [2024-02-07 14:53:59,476 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-02-07 14:53:59,477 INFO L320 CfgBuilder]: Removed 24 assume(true) statements. [2024-02-07 14:53:59,477 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.02 02:53:59 BoogieIcfgContainer [2024-02-07 14:53:59,477 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-02-07 14:53:59,481 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-02-07 14:53:59,481 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-02-07 14:53:59,483 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-02-07 14:53:59,484 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.02 02:53:57" (1/4) ... [2024-02-07 14:53:59,485 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@21a0a2bd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.02 02:53:59, skipping insertion in model container [2024-02-07 14:53:59,486 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 07.02 02:53:58" (2/4) ... [2024-02-07 14:53:59,486 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@21a0a2bd and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 07.02 02:53:59, skipping insertion in model container [2024-02-07 14:53:59,486 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 07.02 02:53:58" (3/4) ... [2024-02-07 14:53:59,487 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@21a0a2bd and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 07.02 02:53:59, skipping insertion in model container [2024-02-07 14:53:59,487 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.02 02:53:59" (4/4) ... [2024-02-07 14:53:59,488 INFO L112 eAbstractionObserver]: Analyzing ICFG 28-race_reach_03-munge_racing.i [2024-02-07 14:53:59,501 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-02-07 14:53:59,501 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 28 error locations. [2024-02-07 14:53:59,502 INFO L518 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-02-07 14:53:59,594 INFO L144 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2024-02-07 14:53:59,630 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 124 places, 147 transitions, 314 flow [2024-02-07 14:53:59,684 INFO L124 PetriNetUnfolderBase]: 44/247 cut-off events. [2024-02-07 14:53:59,684 INFO L125 PetriNetUnfolderBase]: For 8/8 co-relation queries the response was YES. [2024-02-07 14:53:59,689 INFO L83 FinitePrefix]: Finished finitePrefix Result has 264 conditions, 247 events. 44/247 cut-off events. For 8/8 co-relation queries the response was YES. Maximal size of possible extension queue 21. Compared 1331 event pairs, 0 based on Foata normal form. 0/152 useless extension candidates. Maximal degree in co-relation 152. Up to 8 conditions per place. [2024-02-07 14:53:59,689 INFO L82 GeneralOperation]: Start removeDead. Operand has 124 places, 147 transitions, 314 flow [2024-02-07 14:53:59,697 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 124 places, 147 transitions, 314 flow [2024-02-07 14:53:59,704 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-02-07 14:53:59,708 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;@475c3ac, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-02-07 14:53:59,709 INFO L358 AbstractCegarLoop]: Starting to check reachability of 54 error locations. [2024-02-07 14:53:59,712 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-07 14:53:59,713 INFO L124 PetriNetUnfolderBase]: 0/12 cut-off events. [2024-02-07 14:53:59,713 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-02-07 14:53:59,713 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-02-07 14:53:59,714 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1] [2024-02-07 14:53:59,714 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [t2_funErr0ASSERT_VIOLATIONWITNESS_INVARIANT, t2_funErr11ASSERT_VIOLATIONWITNESS_INVARIANT, t2_funErr7ASSERT_VIOLATIONWITNESS_INVARIANT (and 51 more)] === [2024-02-07 14:53:59,718 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-02-07 14:53:59,718 INFO L85 PathProgramCache]: Analyzing trace with hash 596850345, now seen corresponding path program 1 times [2024-02-07 14:53:59,725 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-07 14:53:59,725 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1250316767] [2024-02-07 14:53:59,725 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-07 14:53:59,726 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-07 14:53:59,809 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-07 14:53:59,997 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-07 14:53:59,998 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-07 14:53:59,998 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1250316767] [2024-02-07 14:53:59,999 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1250316767] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-07 14:53:59,999 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-07 14:53:59,999 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-02-07 14:54:00,001 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [302218755] [2024-02-07 14:54:00,002 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-07 14:54:00,008 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-02-07 14:54:00,013 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-07 14:54:00,038 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-02-07 14:54:00,039 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-02-07 14:54:00,042 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 63 out of 147 [2024-02-07 14:54:00,046 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 124 places, 147 transitions, 314 flow. Second operand has 4 states, 4 states have (on average 64.25) internal successors, (257), 4 states have internal predecessors, (257), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-07 14:54:00,047 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-02-07 14:54:00,047 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 63 of 147 [2024-02-07 14:54:00,048 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-02-07 14:54:00,192 INFO L124 PetriNetUnfolderBase]: 61/252 cut-off events. [2024-02-07 14:54:00,193 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-02-07 14:54:00,193 INFO L83 FinitePrefix]: Finished finitePrefix Result has 397 conditions, 252 events. 61/252 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 16. Compared 1121 event pairs, 34 based on Foata normal form. 40/264 useless extension candidates. Maximal degree in co-relation 393. Up to 117 conditions per place. [2024-02-07 14:54:00,195 INFO L140 encePairwiseOnDemand]: 132/147 looper letters, 42 selfloop transitions, 2 changer transitions 0/74 dead transitions. [2024-02-07 14:54:00,195 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 60 places, 74 transitions, 240 flow [2024-02-07 14:54:00,197 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-02-07 14:54:00,199 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-02-07 14:54:00,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 321 transitions. [2024-02-07 14:54:00,213 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.5459183673469388 [2024-02-07 14:54:00,215 INFO L175 Difference]: Start difference. First operand has 124 places, 147 transitions, 314 flow. Second operand 4 states and 321 transitions. [2024-02-07 14:54:00,216 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 60 places, 74 transitions, 240 flow [2024-02-07 14:54:00,220 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 60 places, 74 transitions, 240 flow, removed 0 selfloop flow, removed 0 redundant places. [2024-02-07 14:54:00,222 INFO L231 Difference]: Finished difference. Result has 60 places, 54 transitions, 116 flow [2024-02-07 14:54:00,223 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=147, PETRI_DIFFERENCE_MINUEND_FLOW=112, PETRI_DIFFERENCE_MINUEND_PLACES=57, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=54, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=52, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=116, PETRI_PLACES=60, PETRI_TRANSITIONS=54} [2024-02-07 14:54:00,226 INFO L281 CegarLoopForPetriNet]: 124 programPoint places, -64 predicate places. [2024-02-07 14:54:00,227 INFO L495 AbstractCegarLoop]: Abstraction has has 60 places, 54 transitions, 116 flow [2024-02-07 14:54:00,227 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 64.25) internal successors, (257), 4 states have internal predecessors, (257), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-07 14:54:00,227 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-02-07 14:54:00,227 INFO L208 CegarLoopForPetriNet]: trace histogram [2, 1, 1, 1, 1, 1] [2024-02-07 14:54:00,228 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-02-07 14:54:00,228 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [t2_funErr0ASSERT_VIOLATIONWITNESS_INVARIANT, t2_funErr11ASSERT_VIOLATIONWITNESS_INVARIANT, t2_funErr7ASSERT_VIOLATIONWITNESS_INVARIANT (and 51 more)] === [2024-02-07 14:54:00,229 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-02-07 14:54:00,229 INFO L85 PathProgramCache]: Analyzing trace with hash -1952415695, now seen corresponding path program 1 times [2024-02-07 14:54:00,229 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-07 14:54:00,229 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [228643564] [2024-02-07 14:54:00,229 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-07 14:54:00,230 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-07 14:54:00,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-07 14:54:00,282 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-02-07 14:54:00,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-02-07 14:54:00,323 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-02-07 14:54:00,323 INFO L360 BasicCegarLoop]: Counterexample is feasible [2024-02-07 14:54:00,324 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (53 of 54 remaining) [2024-02-07 14:54:00,326 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr0ASSERT_VIOLATIONWITNESS_INVARIANT (52 of 54 remaining) [2024-02-07 14:54:00,327 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr11ASSERT_VIOLATIONWITNESS_INVARIANT (51 of 54 remaining) [2024-02-07 14:54:00,327 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr7ASSERT_VIOLATIONWITNESS_INVARIANT (50 of 54 remaining) [2024-02-07 14:54:00,327 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr1ASSERT_VIOLATIONWITNESS_INVARIANT (49 of 54 remaining) [2024-02-07 14:54:00,327 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr4ASSERT_VIOLATIONWITNESS_INVARIANT (48 of 54 remaining) [2024-02-07 14:54:00,328 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr8ASSERT_VIOLATIONWITNESS_INVARIANT (47 of 54 remaining) [2024-02-07 14:54:00,328 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr2ASSERT_VIOLATIONWITNESS_INVARIANT (46 of 54 remaining) [2024-02-07 14:54:00,328 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr5ASSERT_VIOLATIONWITNESS_INVARIANT (45 of 54 remaining) [2024-02-07 14:54:00,328 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr3ASSERT_VIOLATIONWITNESS_INVARIANT (44 of 54 remaining) [2024-02-07 14:54:00,328 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr9ASSERT_VIOLATIONERROR_FUNCTION (43 of 54 remaining) [2024-02-07 14:54:00,329 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr6ASSERT_VIOLATIONWITNESS_INVARIANT (42 of 54 remaining) [2024-02-07 14:54:00,329 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr10ASSERT_VIOLATIONWITNESS_INVARIANT (41 of 54 remaining) [2024-02-07 14:54:00,329 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT (40 of 54 remaining) [2024-02-07 14:54:00,329 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT (39 of 54 remaining) [2024-02-07 14:54:00,329 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (38 of 54 remaining) [2024-02-07 14:54:00,329 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr3ASSERT_VIOLATIONWITNESS_INVARIANT (37 of 54 remaining) [2024-02-07 14:54:00,330 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (36 of 54 remaining) [2024-02-07 14:54:00,330 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr0ASSERT_VIOLATIONWITNESS_INVARIANT (35 of 54 remaining) [2024-02-07 14:54:00,330 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr11ASSERT_VIOLATIONWITNESS_INVARIANT (34 of 54 remaining) [2024-02-07 14:54:00,330 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr7ASSERT_VIOLATIONWITNESS_INVARIANT (33 of 54 remaining) [2024-02-07 14:54:00,330 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr1ASSERT_VIOLATIONWITNESS_INVARIANT (32 of 54 remaining) [2024-02-07 14:54:00,331 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr4ASSERT_VIOLATIONWITNESS_INVARIANT (31 of 54 remaining) [2024-02-07 14:54:00,331 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr8ASSERT_VIOLATIONWITNESS_INVARIANT (30 of 54 remaining) [2024-02-07 14:54:00,331 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr2ASSERT_VIOLATIONWITNESS_INVARIANT (29 of 54 remaining) [2024-02-07 14:54:00,331 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr5ASSERT_VIOLATIONWITNESS_INVARIANT (28 of 54 remaining) [2024-02-07 14:54:00,331 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr3ASSERT_VIOLATIONWITNESS_INVARIANT (27 of 54 remaining) [2024-02-07 14:54:00,332 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr9ASSERT_VIOLATIONERROR_FUNCTION (26 of 54 remaining) [2024-02-07 14:54:00,332 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr6ASSERT_VIOLATIONWITNESS_INVARIANT (25 of 54 remaining) [2024-02-07 14:54:00,332 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr10ASSERT_VIOLATIONWITNESS_INVARIANT (24 of 54 remaining) [2024-02-07 14:54:00,332 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr0ASSERT_VIOLATIONWITNESS_INVARIANT (23 of 54 remaining) [2024-02-07 14:54:00,332 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr11ASSERT_VIOLATIONWITNESS_INVARIANT (22 of 54 remaining) [2024-02-07 14:54:00,333 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr7ASSERT_VIOLATIONWITNESS_INVARIANT (21 of 54 remaining) [2024-02-07 14:54:00,333 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr1ASSERT_VIOLATIONWITNESS_INVARIANT (20 of 54 remaining) [2024-02-07 14:54:00,333 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr4ASSERT_VIOLATIONWITNESS_INVARIANT (19 of 54 remaining) [2024-02-07 14:54:00,333 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr8ASSERT_VIOLATIONWITNESS_INVARIANT (18 of 54 remaining) [2024-02-07 14:54:00,333 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr2ASSERT_VIOLATIONWITNESS_INVARIANT (17 of 54 remaining) [2024-02-07 14:54:00,333 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr5ASSERT_VIOLATIONWITNESS_INVARIANT (16 of 54 remaining) [2024-02-07 14:54:00,334 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr3ASSERT_VIOLATIONWITNESS_INVARIANT (15 of 54 remaining) [2024-02-07 14:54:00,334 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr9ASSERT_VIOLATIONERROR_FUNCTION (14 of 54 remaining) [2024-02-07 14:54:00,334 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr6ASSERT_VIOLATIONWITNESS_INVARIANT (13 of 54 remaining) [2024-02-07 14:54:00,334 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t2_funErr10ASSERT_VIOLATIONWITNESS_INVARIANT (12 of 54 remaining) [2024-02-07 14:54:00,334 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr0ASSERT_VIOLATIONWITNESS_INVARIANT (11 of 54 remaining) [2024-02-07 14:54:00,335 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr11ASSERT_VIOLATIONWITNESS_INVARIANT (10 of 54 remaining) [2024-02-07 14:54:00,335 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr7ASSERT_VIOLATIONWITNESS_INVARIANT (9 of 54 remaining) [2024-02-07 14:54:00,335 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr1ASSERT_VIOLATIONWITNESS_INVARIANT (8 of 54 remaining) [2024-02-07 14:54:00,335 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr4ASSERT_VIOLATIONWITNESS_INVARIANT (7 of 54 remaining) [2024-02-07 14:54:00,335 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr8ASSERT_VIOLATIONWITNESS_INVARIANT (6 of 54 remaining) [2024-02-07 14:54:00,335 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr2ASSERT_VIOLATIONWITNESS_INVARIANT (5 of 54 remaining) [2024-02-07 14:54:00,336 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr5ASSERT_VIOLATIONWITNESS_INVARIANT (4 of 54 remaining) [2024-02-07 14:54:00,336 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr3ASSERT_VIOLATIONWITNESS_INVARIANT (3 of 54 remaining) [2024-02-07 14:54:00,336 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr9ASSERT_VIOLATIONERROR_FUNCTION (2 of 54 remaining) [2024-02-07 14:54:00,336 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr6ASSERT_VIOLATIONWITNESS_INVARIANT (1 of 54 remaining) [2024-02-07 14:54:00,336 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t1_funErr10ASSERT_VIOLATIONWITNESS_INVARIANT (0 of 54 remaining) [2024-02-07 14:54:00,337 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-02-07 14:54:00,337 INFO L445 BasicCegarLoop]: Path program histogram: [1, 1] [2024-02-07 14:54:00,339 WARN L234 ceAbstractionStarter]: 1 thread instances were not sufficient, I will increase this number and restart the analysis [2024-02-07 14:54:00,339 INFO L518 ceAbstractionStarter]: Constructing petrified ICFG for 2 thread instances. [2024-02-07 14:54:00,419 INFO L144 ThreadInstanceAdder]: Constructed 8 joinOtherThreadTransitions. [2024-02-07 14:54:00,423 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 224 places, 271 transitions, 586 flow [2024-02-07 14:54:00,550 INFO L124 PetriNetUnfolderBase]: 153/751 cut-off events. [2024-02-07 14:54:00,551 INFO L125 PetriNetUnfolderBase]: For 72/80 co-relation queries the response was YES. [2024-02-07 14:54:00,560 INFO L83 FinitePrefix]: Finished finitePrefix Result has 840 conditions, 751 events. 153/751 cut-off events. For 72/80 co-relation queries the response was YES. Maximal size of possible extension queue 48. Compared 5332 event pairs, 1 based on Foata normal form. 0/477 useless extension candidates. Maximal degree in co-relation 472. Up to 32 conditions per place. [2024-02-07 14:54:00,561 INFO L82 GeneralOperation]: Start removeDead. Operand has 224 places, 271 transitions, 586 flow [2024-02-07 14:54:00,575 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 224 places, 271 transitions, 586 flow [2024-02-07 14:54:00,577 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-02-07 14:54:00,578 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;@475c3ac, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-02-07 14:54:00,578 INFO L358 AbstractCegarLoop]: Starting to check reachability of 78 error locations. [2024-02-07 14:54:00,580 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-07 14:54:00,580 INFO L124 PetriNetUnfolderBase]: 0/12 cut-off events. [2024-02-07 14:54:00,580 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-02-07 14:54:00,581 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-02-07 14:54:00,581 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1] [2024-02-07 14:54:00,581 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [t2_funErr0ASSERT_VIOLATIONWITNESS_INVARIANT, t2_funErr11ASSERT_VIOLATIONWITNESS_INVARIANT, t2_funErr7ASSERT_VIOLATIONWITNESS_INVARIANT (and 75 more)] === [2024-02-07 14:54:00,581 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-02-07 14:54:00,581 INFO L85 PathProgramCache]: Analyzing trace with hash 853672749, now seen corresponding path program 1 times [2024-02-07 14:54:00,581 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-07 14:54:00,582 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [556170361] [2024-02-07 14:54:00,582 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-07 14:54:00,582 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-07 14:54:00,603 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-07 14:54:00,665 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-07 14:54:00,666 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-07 14:54:00,666 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [556170361] [2024-02-07 14:54:00,666 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [556170361] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-07 14:54:00,666 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-07 14:54:00,666 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-02-07 14:54:00,667 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1458861372] [2024-02-07 14:54:00,667 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-07 14:54:00,667 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-02-07 14:54:00,667 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-07 14:54:00,668 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-02-07 14:54:00,668 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-02-07 14:54:00,673 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 121 out of 271 [2024-02-07 14:54:00,675 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 224 places, 271 transitions, 586 flow. Second operand has 4 states, 4 states have (on average 122.25) internal successors, (489), 4 states have internal predecessors, (489), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-07 14:54:00,675 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-02-07 14:54:00,675 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 121 of 271 [2024-02-07 14:54:00,675 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand