./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/goblint-regression/13-privatized_04-priv_multi_true.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --validate ./goblint.2024-06-19_11-23-25.files/mutex-meet-nonrel/13-privatized_04-priv_multi_true.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 7724a2de 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/13-privatized_04-priv_multi_true.i ./goblint.2024-06-19_11-23-25.files/mutex-meet-nonrel/13-privatized_04-priv_multi_true.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-tmp.fs.goblint-validation-7724a2d-m [2024-06-28 01:05:19,465 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-06-28 01:05:19,525 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-06-28 01:05:19,532 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-06-28 01:05:19,532 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-06-28 01:05:19,560 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-06-28 01:05:19,562 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-06-28 01:05:19,562 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-06-28 01:05:19,563 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-06-28 01:05:19,566 INFO L153 SettingsManager]: * Use memory slicer=true [2024-06-28 01:05:19,566 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-06-28 01:05:19,566 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-06-28 01:05:19,567 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-06-28 01:05:19,568 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-06-28 01:05:19,568 INFO L153 SettingsManager]: * Use SBE=true [2024-06-28 01:05:19,569 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-06-28 01:05:19,569 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-06-28 01:05:19,569 INFO L153 SettingsManager]: * sizeof long=4 [2024-06-28 01:05:19,569 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-06-28 01:05:19,570 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-06-28 01:05:19,570 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-06-28 01:05:19,570 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-06-28 01:05:19,570 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-06-28 01:05:19,570 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-06-28 01:05:19,571 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-06-28 01:05:19,571 INFO L153 SettingsManager]: * sizeof long double=12 [2024-06-28 01:05:19,571 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-06-28 01:05:19,571 INFO L153 SettingsManager]: * Use constant arrays=true [2024-06-28 01:05:19,572 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-06-28 01:05:19,572 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-06-28 01:05:19,573 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-06-28 01:05:19,573 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-06-28 01:05:19,573 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-28 01:05:19,573 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-06-28 01:05:19,574 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-06-28 01:05:19,574 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-06-28 01:05:19,574 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-06-28 01:05:19,574 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-06-28 01:05:19,574 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-06-28 01:05:19,575 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-06-28 01:05:19,575 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-06-28 01:05:19,575 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-06-28 01:05:19,575 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-06-28 01:05:19,575 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-06-28 01:05:19,797 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-06-28 01:05:19,813 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-06-28 01:05:19,815 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-06-28 01:05:19,816 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-06-28 01:05:19,816 INFO L274 PluginConnector]: Witness Parser initialized [2024-06-28 01:05:19,817 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/./goblint.2024-06-19_11-23-25.files/mutex-meet-nonrel/13-privatized_04-priv_multi_true.yml/witness.yml [2024-06-28 01:05:19,958 INFO L270 PluginConnector]: Initializing CDTParser... [2024-06-28 01:05:19,959 INFO L274 PluginConnector]: CDTParser initialized [2024-06-28 01:05:19,960 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/goblint-regression/13-privatized_04-priv_multi_true.i [2024-06-28 01:05:20,907 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-06-28 01:05:21,159 INFO L384 CDTParser]: Found 1 translation units. [2024-06-28 01:05:21,159 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/13-privatized_04-priv_multi_true.i [2024-06-28 01:05:21,189 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f3437b553/2d8cc07b73054ede9f32836f0b680a75/FLAG65fcec573 [2024-06-28 01:05:21,198 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f3437b553/2d8cc07b73054ede9f32836f0b680a75 [2024-06-28 01:05:21,199 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-06-28 01:05:21,199 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-06-28 01:05:21,200 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-06-28 01:05:21,200 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-06-28 01:05:21,204 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-06-28 01:05:21,204 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 28.06 01:05:19" (1/2) ... [2024-06-28 01:05:21,205 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@710e44aa and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 28.06 01:05:21, skipping insertion in model container [2024-06-28 01:05:21,205 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 28.06 01:05:19" (1/2) ... [2024-06-28 01:05:21,206 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@7f76368e and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 28.06 01:05:21, skipping insertion in model container [2024-06-28 01:05:21,206 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.06 01:05:21" (2/2) ... [2024-06-28 01:05:21,207 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@710e44aa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21, skipping insertion in model container [2024-06-28 01:05:21,207 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.06 01:05:21" (2/2) ... [2024-06-28 01:05:21,207 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-06-28 01:05:21,269 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-06-28 01:05:21,270 INFO L97 edCorrectnessWitness]: Location invariant before [L1203-L1203] (((! multithreaded || (B == 5 || B == 6)) && (! multithreaded || (mutex_B_locked || B == 5))) && (! multithreaded || (1 <= A && A <= 100))) && (! multithreaded || (mutex_A_locked || (A == 5 && B == 5))) [2024-06-28 01:05:21,270 INFO L97 edCorrectnessWitness]: Location invariant before [L1204-L1204] (((! multithreaded || (B == 5 || B == 6)) && (! multithreaded || (mutex_B_locked || B == 5))) && (! multithreaded || (1 <= A && A <= 100))) && (! multithreaded || (mutex_A_locked || (A == 5 && B == 5))) [2024-06-28 01:05:21,270 INFO L97 edCorrectnessWitness]: Location invariant before [L1205-L1212] (((! multithreaded || (B == 5 || B == 6)) && (! multithreaded || (mutex_B_locked || B == 5))) && (! multithreaded || (1 <= A && A <= 100))) && (! multithreaded || (mutex_A_locked || (A == 5 && B == 5))) [2024-06-28 01:05:21,270 INFO L103 edCorrectnessWitness]: ghost_variable multithreaded = 0 [2024-06-28 01:05:21,270 INFO L103 edCorrectnessWitness]: ghost_variable mutex_A_locked = 0 [2024-06-28 01:05:21,271 INFO L103 edCorrectnessWitness]: ghost_variable mutex_B_locked = 0 [2024-06-28 01:05:21,271 INFO L106 edCorrectnessWitness]: ghost_update [L1206-L1206] mutex_A_locked = 1; [2024-06-28 01:05:21,271 INFO L106 edCorrectnessWitness]: ghost_update [L1202-L1202] multithreaded = 1; [2024-06-28 01:05:21,271 INFO L106 edCorrectnessWitness]: ghost_update [L1209-L1209] mutex_B_locked = 0; [2024-06-28 01:05:21,271 INFO L106 edCorrectnessWitness]: ghost_update [L1161-L1161] mutex_A_locked = 0; [2024-06-28 01:05:21,271 INFO L106 edCorrectnessWitness]: ghost_update [L1171-L1171] mutex_B_locked = 1; [2024-06-28 01:05:21,271 INFO L106 edCorrectnessWitness]: ghost_update [L1187-L1187] mutex_B_locked = 1; [2024-06-28 01:05:21,272 INFO L106 edCorrectnessWitness]: ghost_update [L1190-L1190] mutex_B_locked = 0; [2024-06-28 01:05:21,272 INFO L106 edCorrectnessWitness]: ghost_update [L1176-L1176] mutex_A_locked = 0; [2024-06-28 01:05:21,272 INFO L106 edCorrectnessWitness]: ghost_update [L1174-L1174] mutex_B_locked = 0; [2024-06-28 01:05:21,272 INFO L106 edCorrectnessWitness]: ghost_update [L1210-L1210] mutex_A_locked = 0; [2024-06-28 01:05:21,272 INFO L106 edCorrectnessWitness]: ghost_update [L1168-L1168] mutex_A_locked = 1; [2024-06-28 01:05:21,272 INFO L106 edCorrectnessWitness]: ghost_update [L1207-L1207] mutex_B_locked = 1; [2024-06-28 01:05:21,272 INFO L106 edCorrectnessWitness]: ghost_update [L1158-L1158] mutex_A_locked = 1; [2024-06-28 01:05:21,310 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-06-28 01:05:21,477 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/13-privatized_04-priv_multi_true.i[1087,1100] [2024-06-28 01:05:21,623 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-28 01:05:21,632 INFO L202 MainTranslator]: Completed pre-run Start Parsing Local Start Parsing Local Start Parsing Local [2024-06-28 01:05:21,660 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/13-privatized_04-priv_multi_true.i[1087,1100] 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-06-28 01:05:21,742 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-28 01:05:21,801 INFO L206 MainTranslator]: Completed translation [2024-06-28 01:05:21,802 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21 WrapperNode [2024-06-28 01:05:21,802 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-06-28 01:05:21,803 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-06-28 01:05:21,804 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-06-28 01:05:21,804 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-06-28 01:05:21,809 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (1/1) ... [2024-06-28 01:05:21,836 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (1/1) ... [2024-06-28 01:05:21,859 INFO L138 Inliner]: procedures = 271, calls = 37, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 114 [2024-06-28 01:05:21,860 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-06-28 01:05:21,860 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-06-28 01:05:21,861 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-06-28 01:05:21,861 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-06-28 01:05:21,869 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (1/1) ... [2024-06-28 01:05:21,869 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (1/1) ... [2024-06-28 01:05:21,874 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (1/1) ... [2024-06-28 01:05:21,896 INFO L175 MemorySlicer]: Split 12 memory accesses to 3 slices as follows [2, 5, 5]. 42 percent of accesses are in the largest equivalence class. The 12 initializations are split as follows [2, 5, 5]. The 0 writes are split as follows [0, 0, 0]. [2024-06-28 01:05:21,899 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (1/1) ... [2024-06-28 01:05:21,900 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (1/1) ... [2024-06-28 01:05:21,916 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (1/1) ... [2024-06-28 01:05:21,923 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (1/1) ... [2024-06-28 01:05:21,926 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (1/1) ... [2024-06-28 01:05:21,935 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (1/1) ... [2024-06-28 01:05:21,940 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-06-28 01:05:21,940 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-06-28 01:05:21,941 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-06-28 01:05:21,941 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-06-28 01:05:21,941 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (1/1) ... [2024-06-28 01:05:21,947 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-28 01:05:21,953 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-28 01:05:21,983 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-06-28 01:05:21,988 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-06-28 01:05:22,011 INFO L130 BoogieDeclarations]: Found specification of procedure generate [2024-06-28 01:05:22,012 INFO L138 BoogieDeclarations]: Found implementation of procedure generate [2024-06-28 01:05:22,012 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexUnlock [2024-06-28 01:05:22,012 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2024-06-28 01:05:22,012 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-06-28 01:05:22,013 INFO L130 BoogieDeclarations]: Found specification of procedure dispose [2024-06-28 01:05:22,013 INFO L138 BoogieDeclarations]: Found implementation of procedure dispose [2024-06-28 01:05:22,013 INFO L130 BoogieDeclarations]: Found specification of procedure process [2024-06-28 01:05:22,013 INFO L138 BoogieDeclarations]: Found implementation of procedure process [2024-06-28 01:05:22,013 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-06-28 01:05:22,013 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-06-28 01:05:22,013 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-06-28 01:05:22,014 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-06-28 01:05:22,014 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-06-28 01:05:22,015 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-06-28 01:05:22,211 INFO L244 CfgBuilder]: Building ICFG [2024-06-28 01:05:22,212 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-06-28 01:05:22,412 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-06-28 01:05:22,412 INFO L293 CfgBuilder]: Performing block encoding [2024-06-28 01:05:22,493 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-06-28 01:05:22,497 INFO L320 CfgBuilder]: Removed 4 assume(true) statements. [2024-06-28 01:05:22,497 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.06 01:05:22 BoogieIcfgContainer [2024-06-28 01:05:22,497 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-06-28 01:05:22,499 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-06-28 01:05:22,500 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-06-28 01:05:22,502 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-06-28 01:05:22,503 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 28.06 01:05:19" (1/4) ... [2024-06-28 01:05:22,504 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6ba3d095 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 28.06 01:05:22, skipping insertion in model container [2024-06-28 01:05:22,504 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.06 01:05:21" (2/4) ... [2024-06-28 01:05:22,505 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6ba3d095 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.06 01:05:22, skipping insertion in model container [2024-06-28 01:05:22,505 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 01:05:21" (3/4) ... [2024-06-28 01:05:22,505 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6ba3d095 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.06 01:05:22, skipping insertion in model container [2024-06-28 01:05:22,505 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.06 01:05:22" (4/4) ... [2024-06-28 01:05:22,506 INFO L112 eAbstractionObserver]: Analyzing ICFG 13-privatized_04-priv_multi_true.i [2024-06-28 01:05:22,520 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-06-28 01:05:22,520 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 5 error locations. [2024-06-28 01:05:22,520 INFO L522 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-06-28 01:05:22,552 INFO L144 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2024-06-28 01:05:22,576 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 72 places, 70 transitions, 152 flow [2024-06-28 01:05:22,597 INFO L124 PetriNetUnfolderBase]: 8/67 cut-off events. [2024-06-28 01:05:22,597 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-06-28 01:05:22,600 INFO L83 FinitePrefix]: Finished finitePrefix Result has 77 conditions, 67 events. 8/67 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 6. Compared 152 event pairs, 0 based on Foata normal form. 0/54 useless extension candidates. Maximal degree in co-relation 68. Up to 2 conditions per place. [2024-06-28 01:05:22,600 INFO L82 GeneralOperation]: Start removeDead. Operand has 72 places, 70 transitions, 152 flow [2024-06-28 01:05:22,602 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 69 places, 67 transitions, 143 flow [2024-06-28 01:05:22,609 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-06-28 01:05:22,614 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;@4d9cc1f2, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-06-28 01:05:22,614 INFO L358 AbstractCegarLoop]: Starting to check reachability of 9 error locations. [2024-06-28 01:05:22,617 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-06-28 01:05:22,617 INFO L124 PetriNetUnfolderBase]: 0/5 cut-off events. [2024-06-28 01:05:22,617 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-06-28 01:05:22,617 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-28 01:05:22,618 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1] [2024-06-28 01:05:22,618 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 6 more)] === [2024-06-28 01:05:22,662 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-28 01:05:22,662 INFO L85 PathProgramCache]: Analyzing trace with hash 395399727, now seen corresponding path program 1 times [2024-06-28 01:05:22,669 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-28 01:05:22,669 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1283774398] [2024-06-28 01:05:22,669 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-28 01:05:22,670 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-28 01:05:22,850 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-28 01:05:22,980 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-28 01:05:22,981 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-28 01:05:22,981 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1283774398] [2024-06-28 01:05:22,982 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1283774398] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-28 01:05:22,982 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-28 01:05:22,982 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-06-28 01:05:22,983 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [701657216] [2024-06-28 01:05:22,984 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-28 01:05:22,989 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-06-28 01:05:22,994 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-28 01:05:23,016 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-06-28 01:05:23,017 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-06-28 01:05:23,039 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 22 out of 70 [2024-06-28 01:05:23,041 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 69 places, 67 transitions, 143 flow. Second operand has 3 states, 3 states have (on average 23.333333333333332) internal successors, (70), 3 states have internal predecessors, (70), 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-06-28 01:05:23,042 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-28 01:05:23,042 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 22 of 70 [2024-06-28 01:05:23,043 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-28 01:05:24,900 INFO L124 PetriNetUnfolderBase]: 17029/25102 cut-off events. [2024-06-28 01:05:24,900 INFO L125 PetriNetUnfolderBase]: For 51/51 co-relation queries the response was YES. [2024-06-28 01:05:24,942 INFO L83 FinitePrefix]: Finished finitePrefix Result has 47113 conditions, 25102 events. 17029/25102 cut-off events. For 51/51 co-relation queries the response was YES. Maximal size of possible extension queue 684. Compared 160588 event pairs, 3212 based on Foata normal form. 2819/26126 useless extension candidates. Maximal degree in co-relation 47101. Up to 18925 conditions per place. [2024-06-28 01:05:25,042 INFO L140 encePairwiseOnDemand]: 59/70 looper letters, 68 selfloop transitions, 2 changer transitions 0/89 dead transitions. [2024-06-28 01:05:25,042 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 68 places, 89 transitions, 330 flow [2024-06-28 01:05:25,043 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-06-28 01:05:25,045 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-06-28 01:05:25,050 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 149 transitions. [2024-06-28 01:05:25,051 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.7095238095238096 [2024-06-28 01:05:25,053 INFO L175 Difference]: Start difference. First operand has 69 places, 67 transitions, 143 flow. Second operand 3 states and 149 transitions. [2024-06-28 01:05:25,053 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 68 places, 89 transitions, 330 flow [2024-06-28 01:05:25,056 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 65 places, 89 transitions, 326 flow, removed 0 selfloop flow, removed 3 redundant places. [2024-06-28 01:05:25,059 INFO L231 Difference]: Finished difference. Result has 66 places, 63 transitions, 148 flow [2024-06-28 01:05:25,060 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=70, PETRI_DIFFERENCE_MINUEND_FLOW=130, PETRI_DIFFERENCE_MINUEND_PLACES=63, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=62, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=60, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=148, PETRI_PLACES=66, PETRI_TRANSITIONS=63} [2024-06-28 01:05:25,062 INFO L281 CegarLoopForPetriNet]: 69 programPoint places, -3 predicate places. [2024-06-28 01:05:25,062 INFO L495 AbstractCegarLoop]: Abstraction has has 66 places, 63 transitions, 148 flow [2024-06-28 01:05:25,063 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 23.333333333333332) internal successors, (70), 3 states have internal predecessors, (70), 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-06-28 01:05:25,063 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-28 01:05:25,063 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-28 01:05:25,063 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-06-28 01:05:25,063 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 6 more)] === [2024-06-28 01:05:25,064 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-28 01:05:25,064 INFO L85 PathProgramCache]: Analyzing trace with hash 867111689, now seen corresponding path program 1 times [2024-06-28 01:05:25,064 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-28 01:05:25,064 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [333139186] [2024-06-28 01:05:25,065 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-28 01:05:25,065 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-28 01:05:25,088 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-28 01:05:25,280 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-28 01:05:25,280 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-28 01:05:25,280 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [333139186] [2024-06-28 01:05:25,281 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [333139186] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-28 01:05:25,281 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-28 01:05:25,281 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-28 01:05:25,281 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [622237504] [2024-06-28 01:05:25,281 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-28 01:05:25,282 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-28 01:05:25,282 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-28 01:05:25,283 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-28 01:05:25,283 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-06-28 01:05:25,286 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 22 out of 70 [2024-06-28 01:05:25,287 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 66 places, 63 transitions, 148 flow. Second operand has 5 states, 5 states have (on average 23.8) internal successors, (119), 5 states have internal predecessors, (119), 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-06-28 01:05:25,287 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-28 01:05:25,287 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 22 of 70 [2024-06-28 01:05:25,287 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-28 01:05:28,414 INFO L124 PetriNetUnfolderBase]: 34794/52613 cut-off events. [2024-06-28 01:05:28,414 INFO L125 PetriNetUnfolderBase]: For 3716/3716 co-relation queries the response was YES. [2024-06-28 01:05:28,534 INFO L83 FinitePrefix]: Finished finitePrefix Result has 102676 conditions, 52613 events. 34794/52613 cut-off events. For 3716/3716 co-relation queries the response was YES. Maximal size of possible extension queue 1529. Compared 388524 event pairs, 6180 based on Foata normal form. 1358/52448 useless extension candidates. Maximal degree in co-relation 102664. Up to 19892 conditions per place. [2024-06-28 01:05:28,710 INFO L140 encePairwiseOnDemand]: 55/70 looper letters, 122 selfloop transitions, 19 changer transitions 0/160 dead transitions. [2024-06-28 01:05:28,711 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 70 places, 160 transitions, 639 flow [2024-06-28 01:05:28,711 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-06-28 01:05:28,711 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-06-28 01:05:28,712 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 260 transitions. [2024-06-28 01:05:28,713 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.7428571428571429 [2024-06-28 01:05:28,713 INFO L175 Difference]: Start difference. First operand has 66 places, 63 transitions, 148 flow. Second operand 5 states and 260 transitions. [2024-06-28 01:05:28,713 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 70 places, 160 transitions, 639 flow [2024-06-28 01:05:28,715 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 69 places, 160 transitions, 636 flow, removed 0 selfloop flow, removed 1 redundant places. [2024-06-28 01:05:28,717 INFO L231 Difference]: Finished difference. Result has 72 places, 80 transitions, 301 flow [2024-06-28 01:05:28,717 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=70, PETRI_DIFFERENCE_MINUEND_FLOW=146, PETRI_DIFFERENCE_MINUEND_PLACES=65, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=63, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=4, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=51, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=301, PETRI_PLACES=72, PETRI_TRANSITIONS=80} [2024-06-28 01:05:28,718 INFO L281 CegarLoopForPetriNet]: 69 programPoint places, 3 predicate places. [2024-06-28 01:05:28,718 INFO L495 AbstractCegarLoop]: Abstraction has has 72 places, 80 transitions, 301 flow [2024-06-28 01:05:28,718 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 23.8) internal successors, (119), 5 states have internal predecessors, (119), 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-06-28 01:05:28,718 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-28 01:05:28,718 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-28 01:05:28,719 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-06-28 01:05:28,719 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 6 more)] === [2024-06-28 01:05:28,719 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-28 01:05:28,719 INFO L85 PathProgramCache]: Analyzing trace with hash 1826691487, now seen corresponding path program 1 times [2024-06-28 01:05:28,720 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-28 01:05:28,720 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1004442446] [2024-06-28 01:05:28,720 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-28 01:05:28,720 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-28 01:05:28,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-28 01:05:28,792 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-28 01:05:28,792 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-28 01:05:28,792 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1004442446] [2024-06-28 01:05:28,792 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1004442446] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-28 01:05:28,792 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-28 01:05:28,793 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-28 01:05:28,793 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1514782800] [2024-06-28 01:05:28,793 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-28 01:05:28,793 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-06-28 01:05:28,794 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-28 01:05:28,794 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-06-28 01:05:28,794 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-06-28 01:05:28,794 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 27 out of 70 [2024-06-28 01:05:28,795 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 72 places, 80 transitions, 301 flow. Second operand has 3 states, 3 states have (on average 31.0) internal successors, (93), 3 states have internal predecessors, (93), 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-06-28 01:05:28,795 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-28 01:05:28,795 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 27 of 70 [2024-06-28 01:05:28,795 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-28 01:05:33,579 INFO L124 PetriNetUnfolderBase]: 48811/78720 cut-off events. [2024-06-28 01:05:33,580 INFO L125 PetriNetUnfolderBase]: For 49950/51197 co-relation queries the response was YES. [2024-06-28 01:05:33,779 INFO L83 FinitePrefix]: Finished finitePrefix Result has 189260 conditions, 78720 events. 48811/78720 cut-off events. For 49950/51197 co-relation queries the response was YES. Maximal size of possible extension queue 2163. Compared 660137 event pairs, 12478 based on Foata normal form. 2881/79437 useless extension candidates. Maximal degree in co-relation 189244. Up to 41096 conditions per place. [2024-06-28 01:05:34,046 INFO L140 encePairwiseOnDemand]: 59/70 looper letters, 83 selfloop transitions, 19 changer transitions 0/125 dead transitions. [2024-06-28 01:05:34,047 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 74 places, 125 transitions, 665 flow [2024-06-28 01:05:34,047 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-06-28 01:05:34,047 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-06-28 01:05:34,048 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 157 transitions. [2024-06-28 01:05:34,048 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.7476190476190476 [2024-06-28 01:05:34,048 INFO L175 Difference]: Start difference. First operand has 72 places, 80 transitions, 301 flow. Second operand 3 states and 157 transitions. [2024-06-28 01:05:34,048 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 74 places, 125 transitions, 665 flow [2024-06-28 01:05:34,054 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 74 places, 125 transitions, 665 flow, removed 0 selfloop flow, removed 0 redundant places. [2024-06-28 01:05:34,055 INFO L231 Difference]: Finished difference. Result has 75 places, 93 transitions, 438 flow [2024-06-28 01:05:34,055 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=70, PETRI_DIFFERENCE_MINUEND_FLOW=301, PETRI_DIFFERENCE_MINUEND_PLACES=72, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=80, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=61, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=438, PETRI_PLACES=75, PETRI_TRANSITIONS=93} [2024-06-28 01:05:34,056 INFO L281 CegarLoopForPetriNet]: 69 programPoint places, 6 predicate places. [2024-06-28 01:05:34,056 INFO L495 AbstractCegarLoop]: Abstraction has has 75 places, 93 transitions, 438 flow [2024-06-28 01:05:34,056 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 31.0) internal successors, (93), 3 states have internal predecessors, (93), 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-06-28 01:05:34,056 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-28 01:05:34,057 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-28 01:05:34,057 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-06-28 01:05:34,057 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting disposeErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 6 more)] === [2024-06-28 01:05:34,057 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-28 01:05:34,057 INFO L85 PathProgramCache]: Analyzing trace with hash 80170298, now seen corresponding path program 1 times [2024-06-28 01:05:34,058 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-28 01:05:34,058 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [968239252] [2024-06-28 01:05:34,058 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-28 01:05:34,058 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-28 01:05:34,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-28 01:05:34,205 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-28 01:05:34,205 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-28 01:05:34,206 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [968239252] [2024-06-28 01:05:34,206 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [968239252] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-28 01:05:34,206 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-28 01:05:34,206 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-06-28 01:05:34,206 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1607952408] [2024-06-28 01:05:34,206 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-28 01:05:34,207 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-28 01:05:34,207 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-28 01:05:34,208 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-28 01:05:34,209 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-06-28 01:05:34,220 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 24 out of 70 [2024-06-28 01:05:34,221 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 75 places, 93 transitions, 438 flow. Second operand has 5 states, 5 states have (on average 26.8) internal successors, (134), 5 states have internal predecessors, (134), 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-06-28 01:05:34,221 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-28 01:05:34,221 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 24 of 70 [2024-06-28 01:05:34,221 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-28 01:05:39,895 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][149], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 91#true, 36#L1161true, 43#L1190-3true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:39,897 INFO L294 olderBase$Statistics]: this new event has 41 ancestors and is cut-off event [2024-06-28 01:05:39,897 INFO L297 olderBase$Statistics]: existing Event has 35 ancestors and is cut-off event [2024-06-28 01:05:39,897 INFO L297 olderBase$Statistics]: existing Event has 35 ancestors and is cut-off event [2024-06-28 01:05:39,897 INFO L297 olderBase$Statistics]: existing Event has 41 ancestors and is cut-off event [2024-06-28 01:05:39,898 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][149], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 91#true, 36#L1161true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 28#L19-1true, 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:39,898 INFO L294 olderBase$Statistics]: this new event has 42 ancestors and is cut-off event [2024-06-28 01:05:39,898 INFO L297 olderBase$Statistics]: existing Event has 36 ancestors and is cut-off event [2024-06-28 01:05:39,898 INFO L297 olderBase$Statistics]: existing Event has 36 ancestors and is cut-off event [2024-06-28 01:05:39,898 INFO L297 olderBase$Statistics]: existing Event has 42 ancestors and is cut-off event [2024-06-28 01:05:39,963 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][295], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 6#L19-5true, 36#L1161true, 95#(not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)), Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:39,963 INFO L294 olderBase$Statistics]: this new event has 43 ancestors and is cut-off event [2024-06-28 01:05:39,963 INFO L297 olderBase$Statistics]: existing Event has 37 ancestors and is cut-off event [2024-06-28 01:05:39,963 INFO L297 olderBase$Statistics]: existing Event has 37 ancestors and is cut-off event [2024-06-28 01:05:39,963 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-06-28 01:05:40,587 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][149], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 91#true, 36#L1161true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 35#L19-2true, 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:40,588 INFO L294 olderBase$Statistics]: this new event has 43 ancestors and is cut-off event [2024-06-28 01:05:40,588 INFO L297 olderBase$Statistics]: existing Event has 37 ancestors and is cut-off event [2024-06-28 01:05:40,588 INFO L297 olderBase$Statistics]: existing Event has 37 ancestors and is cut-off event [2024-06-28 01:05:40,588 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-06-28 01:05:41,335 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][149], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 91#true, 52#L1161-3true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 28#L19-1true, 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:41,336 INFO L294 olderBase$Statistics]: this new event has 43 ancestors and is cut-off event [2024-06-28 01:05:41,336 INFO L297 olderBase$Statistics]: existing Event has 37 ancestors and is cut-off event [2024-06-28 01:05:41,336 INFO L297 olderBase$Statistics]: existing Event has 37 ancestors and is cut-off event [2024-06-28 01:05:41,336 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-06-28 01:05:41,336 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][295], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 6#L19-5true, 52#L1161-3true, 95#(not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)), Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:41,336 INFO L294 olderBase$Statistics]: this new event has 44 ancestors and is cut-off event [2024-06-28 01:05:41,336 INFO L297 olderBase$Statistics]: existing Event has 38 ancestors and is cut-off event [2024-06-28 01:05:41,336 INFO L297 olderBase$Statistics]: existing Event has 38 ancestors and is cut-off event [2024-06-28 01:05:41,336 INFO L297 olderBase$Statistics]: existing Event has 44 ancestors and is cut-off event [2024-06-28 01:05:41,884 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][149], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 91#true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 27#L1157-6true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 28#L19-1true, 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:41,884 INFO L294 olderBase$Statistics]: this new event has 44 ancestors and is cut-off event [2024-06-28 01:05:41,884 INFO L297 olderBase$Statistics]: existing Event has 38 ancestors and is cut-off event [2024-06-28 01:05:41,885 INFO L297 olderBase$Statistics]: existing Event has 38 ancestors and is cut-off event [2024-06-28 01:05:41,885 INFO L297 olderBase$Statistics]: existing Event has 44 ancestors and is cut-off event [2024-06-28 01:05:41,885 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][295], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 6#L19-5true, 95#(not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)), Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 27#L1157-6true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:41,885 INFO L294 olderBase$Statistics]: this new event has 45 ancestors and is cut-off event [2024-06-28 01:05:41,885 INFO L297 olderBase$Statistics]: existing Event has 39 ancestors and is cut-off event [2024-06-28 01:05:41,885 INFO L297 olderBase$Statistics]: existing Event has 39 ancestors and is cut-off event [2024-06-28 01:05:41,885 INFO L297 olderBase$Statistics]: existing Event has 45 ancestors and is cut-off event [2024-06-28 01:05:41,886 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][149], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 91#true, 52#L1161-3true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 35#L19-2true, 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:41,886 INFO L294 olderBase$Statistics]: this new event has 44 ancestors and is cut-off event [2024-06-28 01:05:41,886 INFO L297 olderBase$Statistics]: existing Event has 44 ancestors and is cut-off event [2024-06-28 01:05:41,886 INFO L297 olderBase$Statistics]: existing Event has 38 ancestors and is cut-off event [2024-06-28 01:05:41,886 INFO L297 olderBase$Statistics]: existing Event has 38 ancestors and is cut-off event [2024-06-28 01:05:42,361 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][149], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 91#true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 67#L1158-3true, 28#L19-1true, 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:42,361 INFO L294 olderBase$Statistics]: this new event has 46 ancestors and is cut-off event [2024-06-28 01:05:42,361 INFO L297 olderBase$Statistics]: existing Event has 40 ancestors and is cut-off event [2024-06-28 01:05:42,361 INFO L297 olderBase$Statistics]: existing Event has 46 ancestors and is cut-off event [2024-06-28 01:05:42,361 INFO L297 olderBase$Statistics]: existing Event has 40 ancestors and is cut-off event [2024-06-28 01:05:42,361 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][149], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 91#true, 43#L1190-3true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 67#L1158-3true, 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:42,361 INFO L294 olderBase$Statistics]: this new event has 45 ancestors and is cut-off event [2024-06-28 01:05:42,361 INFO L297 olderBase$Statistics]: existing Event has 39 ancestors and is cut-off event [2024-06-28 01:05:42,362 INFO L297 olderBase$Statistics]: existing Event has 39 ancestors and is cut-off event [2024-06-28 01:05:42,362 INFO L297 olderBase$Statistics]: existing Event has 45 ancestors and is cut-off event [2024-06-28 01:05:42,377 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][295], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 6#L19-5true, 95#(not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)), Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 67#L1158-3true, 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:42,378 INFO L294 olderBase$Statistics]: this new event has 47 ancestors and is cut-off event [2024-06-28 01:05:42,378 INFO L297 olderBase$Statistics]: existing Event has 41 ancestors and is cut-off event [2024-06-28 01:05:42,378 INFO L297 olderBase$Statistics]: existing Event has 41 ancestors and is cut-off event [2024-06-28 01:05:42,378 INFO L297 olderBase$Statistics]: existing Event has 47 ancestors and is cut-off event [2024-06-28 01:05:42,568 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][149], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, 3#generateEXITtrue, generateThread1of1ForFork0InUse, 91#true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 28#L19-1true, 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:42,568 INFO L294 olderBase$Statistics]: this new event has 45 ancestors and is cut-off event [2024-06-28 01:05:42,568 INFO L297 olderBase$Statistics]: existing Event has 39 ancestors and is cut-off event [2024-06-28 01:05:42,569 INFO L297 olderBase$Statistics]: existing Event has 39 ancestors and is cut-off event [2024-06-28 01:05:42,569 INFO L297 olderBase$Statistics]: existing Event has 45 ancestors and is cut-off event [2024-06-28 01:05:42,569 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][295], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, 3#generateEXITtrue, 6#L19-5true, generateThread1of1ForFork0InUse, 95#(not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)), Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:42,569 INFO L294 olderBase$Statistics]: this new event has 46 ancestors and is cut-off event [2024-06-28 01:05:42,569 INFO L297 olderBase$Statistics]: existing Event has 46 ancestors and is cut-off event [2024-06-28 01:05:42,569 INFO L297 olderBase$Statistics]: existing Event has 40 ancestors and is cut-off event [2024-06-28 01:05:42,569 INFO L297 olderBase$Statistics]: existing Event has 40 ancestors and is cut-off event [2024-06-28 01:05:42,569 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][149], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 91#true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 27#L1157-6true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 35#L19-2true, 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:42,569 INFO L294 olderBase$Statistics]: this new event has 45 ancestors and is cut-off event [2024-06-28 01:05:42,569 INFO L297 olderBase$Statistics]: existing Event has 45 ancestors and is cut-off event [2024-06-28 01:05:42,569 INFO L297 olderBase$Statistics]: existing Event has 39 ancestors and is cut-off event [2024-06-28 01:05:42,569 INFO L297 olderBase$Statistics]: existing Event has 39 ancestors and is cut-off event [2024-06-28 01:05:42,789 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][149], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, 91#true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 35#L19-2true, 67#L1158-3true, 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:42,789 INFO L294 olderBase$Statistics]: this new event has 47 ancestors and is cut-off event [2024-06-28 01:05:42,789 INFO L297 olderBase$Statistics]: existing Event has 47 ancestors and is cut-off event [2024-06-28 01:05:42,789 INFO L297 olderBase$Statistics]: existing Event has 41 ancestors and is cut-off event [2024-06-28 01:05:42,789 INFO L297 olderBase$Statistics]: existing Event has 41 ancestors and is cut-off event [2024-06-28 01:05:43,218 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][149], [processThread1of1ForFork2InUse, disposeThread1of1ForFork1InUse, 79#true, 3#generateEXITtrue, generateThread1of1ForFork0InUse, 91#true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 35#L19-2true, 21#ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANTtrue, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:43,218 INFO L294 olderBase$Statistics]: this new event has 46 ancestors and is cut-off event [2024-06-28 01:05:43,218 INFO L297 olderBase$Statistics]: existing Event has 40 ancestors and is cut-off event [2024-06-28 01:05:43,218 INFO L297 olderBase$Statistics]: existing Event has 40 ancestors and is cut-off event [2024-06-28 01:05:43,218 INFO L297 olderBase$Statistics]: existing Event has 46 ancestors and is cut-off event [2024-06-28 01:05:46,651 INFO L124 PetriNetUnfolderBase]: 120752/184787 cut-off events. [2024-06-28 01:05:46,652 INFO L125 PetriNetUnfolderBase]: For 207465/210574 co-relation queries the response was YES. [2024-06-28 01:05:47,212 INFO L83 FinitePrefix]: Finished finitePrefix Result has 512727 conditions, 184787 events. 120752/184787 cut-off events. For 207465/210574 co-relation queries the response was YES. Maximal size of possible extension queue 4906. Compared 1583661 event pairs, 29350 based on Foata normal form. 435/178526 useless extension candidates. Maximal degree in co-relation 512709. Up to 72164 conditions per place. [2024-06-28 01:05:48,122 INFO L140 encePairwiseOnDemand]: 62/70 looper letters, 343 selfloop transitions, 18 changer transitions 0/381 dead transitions. [2024-06-28 01:05:48,122 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 82 places, 381 transitions, 2746 flow [2024-06-28 01:05:48,122 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-06-28 01:05:48,122 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-06-28 01:05:48,123 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 390 transitions. [2024-06-28 01:05:48,123 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.6964285714285714 [2024-06-28 01:05:48,124 INFO L175 Difference]: Start difference. First operand has 75 places, 93 transitions, 438 flow. Second operand 8 states and 390 transitions. [2024-06-28 01:05:48,124 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 82 places, 381 transitions, 2746 flow [2024-06-28 01:05:48,179 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 81 places, 381 transitions, 2634 flow, removed 0 selfloop flow, removed 1 redundant places. [2024-06-28 01:05:48,185 INFO L231 Difference]: Finished difference. Result has 87 places, 109 transitions, 585 flow [2024-06-28 01:05:48,185 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=70, PETRI_DIFFERENCE_MINUEND_FLOW=419, PETRI_DIFFERENCE_MINUEND_PLACES=74, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=93, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=85, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=585, PETRI_PLACES=87, PETRI_TRANSITIONS=109} [2024-06-28 01:05:48,187 INFO L281 CegarLoopForPetriNet]: 69 programPoint places, 18 predicate places. [2024-06-28 01:05:48,187 INFO L495 AbstractCegarLoop]: Abstraction has has 87 places, 109 transitions, 585 flow [2024-06-28 01:05:48,187 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 26.8) internal successors, (134), 5 states have internal predecessors, (134), 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-06-28 01:05:48,187 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-28 01:05:48,187 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-28 01:05:48,187 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-06-28 01:05:48,188 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr3ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 6 more)] === [2024-06-28 01:05:48,188 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-28 01:05:48,188 INFO L85 PathProgramCache]: Analyzing trace with hash -1804335813, now seen corresponding path program 1 times [2024-06-28 01:05:48,188 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-28 01:05:48,188 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1795672770] [2024-06-28 01:05:48,188 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-28 01:05:48,189 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-28 01:05:48,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-28 01:05:48,318 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-28 01:05:48,318 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-28 01:05:48,318 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1795672770] [2024-06-28 01:05:48,318 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1795672770] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-28 01:05:48,318 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-28 01:05:48,319 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-28 01:05:48,319 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [531230746] [2024-06-28 01:05:48,319 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-28 01:05:48,319 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-06-28 01:05:48,319 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-28 01:05:48,320 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-06-28 01:05:48,320 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-06-28 01:05:48,326 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 25 out of 70 [2024-06-28 01:05:48,327 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 87 places, 109 transitions, 585 flow. Second operand has 4 states, 4 states have (on average 28.5) internal successors, (114), 4 states have internal predecessors, (114), 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-06-28 01:05:48,327 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-28 01:05:48,327 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 25 of 70 [2024-06-28 01:05:48,327 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-28 01:05:58,161 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][165], [111#(not (= |ULTIMATE.start___VERIFIER_assert_~cond#1| 0)), processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), 91#true, Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 52#L1161-3true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 64#L19-5true, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:58,161 INFO L294 olderBase$Statistics]: this new event has 47 ancestors and is cut-off event [2024-06-28 01:05:58,161 INFO L297 olderBase$Statistics]: existing Event has 41 ancestors and is cut-off event [2024-06-28 01:05:58,161 INFO L297 olderBase$Statistics]: existing Event has 47 ancestors and is cut-off event [2024-06-28 01:05:58,161 INFO L297 olderBase$Statistics]: existing Event has 41 ancestors and is cut-off event [2024-06-28 01:05:58,161 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][83], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), 91#true, Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 108#true, 52#L1161-3true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, 34#L19-2true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:58,161 INFO L294 olderBase$Statistics]: this new event has 47 ancestors and is cut-off event [2024-06-28 01:05:58,161 INFO L297 olderBase$Statistics]: existing Event has 41 ancestors and is cut-off event [2024-06-28 01:05:58,161 INFO L297 olderBase$Statistics]: existing Event has 47 ancestors and is cut-off event [2024-06-28 01:05:58,161 INFO L297 olderBase$Statistics]: existing Event has 41 ancestors and is cut-off event [2024-06-28 01:05:58,604 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][165], [111#(not (= |ULTIMATE.start___VERIFIER_assert_~cond#1| 0)), processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 91#true, Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, 27#L1157-6true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 64#L19-5true, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:58,604 INFO L294 olderBase$Statistics]: this new event has 48 ancestors and is cut-off event [2024-06-28 01:05:58,604 INFO L297 olderBase$Statistics]: existing Event has 48 ancestors and is cut-off event [2024-06-28 01:05:58,604 INFO L297 olderBase$Statistics]: existing Event has 42 ancestors and is cut-off event [2024-06-28 01:05:58,604 INFO L297 olderBase$Statistics]: existing Event has 42 ancestors and is cut-off event [2024-06-28 01:05:58,604 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][83], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 91#true, 108#true, Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, 34#L19-2true, 27#L1157-6true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:58,604 INFO L294 olderBase$Statistics]: this new event has 48 ancestors and is cut-off event [2024-06-28 01:05:58,604 INFO L297 olderBase$Statistics]: existing Event has 48 ancestors and is cut-off event [2024-06-28 01:05:58,604 INFO L297 olderBase$Statistics]: existing Event has 42 ancestors and is cut-off event [2024-06-28 01:05:58,604 INFO L297 olderBase$Statistics]: existing Event has 42 ancestors and is cut-off event [2024-06-28 01:05:58,605 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][83], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), 91#true, Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 108#true, 52#L1161-3true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 48#L1209true, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:58,605 INFO L294 olderBase$Statistics]: this new event has 48 ancestors and is cut-off event [2024-06-28 01:05:58,605 INFO L297 olderBase$Statistics]: existing Event has 48 ancestors and is cut-off event [2024-06-28 01:05:58,605 INFO L297 olderBase$Statistics]: existing Event has 42 ancestors and is cut-off event [2024-06-28 01:05:58,605 INFO L297 olderBase$Statistics]: existing Event has 42 ancestors and is cut-off event [2024-06-28 01:05:59,342 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][165], [111#(not (= |ULTIMATE.start___VERIFIER_assert_~cond#1| 0)), processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, 3#generateEXITtrue, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 91#true, Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 64#L19-5true, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:59,342 INFO L294 olderBase$Statistics]: this new event has 49 ancestors and is cut-off event [2024-06-28 01:05:59,342 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-06-28 01:05:59,342 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-06-28 01:05:59,342 INFO L297 olderBase$Statistics]: existing Event has 49 ancestors and is cut-off event [2024-06-28 01:05:59,342 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][83], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, 3#generateEXITtrue, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 91#true, Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 108#true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, 34#L19-2true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:59,343 INFO L294 olderBase$Statistics]: this new event has 49 ancestors and is cut-off event [2024-06-28 01:05:59,343 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-06-28 01:05:59,343 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-06-28 01:05:59,343 INFO L297 olderBase$Statistics]: existing Event has 49 ancestors and is cut-off event [2024-06-28 01:05:59,343 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][83], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 91#true, 108#true, Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, 27#L1157-6true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 48#L1209true, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:59,344 INFO L294 olderBase$Statistics]: this new event has 49 ancestors and is cut-off event [2024-06-28 01:05:59,344 INFO L297 olderBase$Statistics]: existing Event has 49 ancestors and is cut-off event [2024-06-28 01:05:59,344 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-06-28 01:05:59,344 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-06-28 01:05:59,345 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][83], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 32#L1209-3true, Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), 91#true, Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 108#true, 52#L1161-3true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:59,345 INFO L294 olderBase$Statistics]: this new event has 49 ancestors and is cut-off event [2024-06-28 01:05:59,345 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-06-28 01:05:59,345 INFO L297 olderBase$Statistics]: existing Event has 49 ancestors and is cut-off event [2024-06-28 01:05:59,345 INFO L297 olderBase$Statistics]: existing Event has 43 ancestors and is cut-off event [2024-06-28 01:05:59,764 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][83], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, 3#generateEXITtrue, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 91#true, Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 108#true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 48#L1209true, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:59,764 INFO L294 olderBase$Statistics]: this new event has 50 ancestors and is cut-off event [2024-06-28 01:05:59,764 INFO L297 olderBase$Statistics]: existing Event has 44 ancestors and is cut-off event [2024-06-28 01:05:59,764 INFO L297 olderBase$Statistics]: existing Event has 44 ancestors and is cut-off event [2024-06-28 01:05:59,764 INFO L297 olderBase$Statistics]: existing Event has 50 ancestors and is cut-off event [2024-06-28 01:05:59,765 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][83], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 32#L1209-3true, Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 91#true, Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 108#true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, 27#L1157-6true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:05:59,765 INFO L294 olderBase$Statistics]: this new event has 50 ancestors and is cut-off event [2024-06-28 01:05:59,765 INFO L297 olderBase$Statistics]: existing Event has 44 ancestors and is cut-off event [2024-06-28 01:05:59,765 INFO L297 olderBase$Statistics]: existing Event has 50 ancestors and is cut-off event [2024-06-28 01:05:59,765 INFO L297 olderBase$Statistics]: existing Event has 44 ancestors and is cut-off event [2024-06-28 01:06:00,380 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][83], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 32#L1209-3true, Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, 3#generateEXITtrue, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 91#true, Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 108#true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:06:00,380 INFO L294 olderBase$Statistics]: this new event has 51 ancestors and is cut-off event [2024-06-28 01:06:00,380 INFO L297 olderBase$Statistics]: existing Event has 45 ancestors and is cut-off event [2024-06-28 01:06:00,380 INFO L297 olderBase$Statistics]: existing Event has 51 ancestors and is cut-off event [2024-06-28 01:06:00,380 INFO L297 olderBase$Statistics]: existing Event has 45 ancestors and is cut-off event [2024-06-28 01:06:01,014 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([462] L1158-->L1158-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_138| |v_~#mutex_A~0.base_72|))) (and (= |v_generateThread1of1ForFork0_#t~ret1_1| 0) (= 1 |v_#ghost~mutex_A_locked_64|) (= (store |v_#pthreadsMutex_138| |v_~#mutex_A~0.base_72| (store .cse0 |v_~#mutex_A~0.offset_72| 1)) |v_#pthreadsMutex_137|) (= (select .cse0 |v_~#mutex_A~0.offset_72|) 0))) InVars {#pthreadsMutex=|v_#pthreadsMutex_138|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_72|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_72|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_137|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_72|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_72|, generateThread1of1ForFork0_#t~ret1=|v_generateThread1of1ForFork0_#t~ret1_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_64|} AuxVars[] AssignedVars[#pthreadsMutex, #ghost~mutex_A_locked, generateThread1of1ForFork0_#t~ret1][55], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 32#L1209-3true, Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), 91#true, Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 108#true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 67#L1158-3true, 13#L1179true, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1)]) [2024-06-28 01:06:01,014 INFO L294 olderBase$Statistics]: this new event has 54 ancestors and is cut-off event [2024-06-28 01:06:01,014 INFO L297 olderBase$Statistics]: existing Event has 48 ancestors and is cut-off event [2024-06-28 01:06:01,014 INFO L297 olderBase$Statistics]: existing Event has 48 ancestors and is cut-off event [2024-06-28 01:06:01,014 INFO L297 olderBase$Statistics]: existing Event has 48 ancestors and is cut-off event [2024-06-28 01:06:01,519 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([401] L1210-->L1210-3: Formula: (and (= |v_ULTIMATE.start_main_#t~ret27#1_17| 0) (= 0 |v_#ghost~mutex_A_locked_24|) (= |v_#pthreadsMutex_81| (store |v_#pthreadsMutex_82| |v_~#mutex_A~0.base_28| (store (select |v_#pthreadsMutex_82| |v_~#mutex_A~0.base_28|) |v_~#mutex_A~0.offset_28| 0)))) InVars {#pthreadsMutex=|v_#pthreadsMutex_82|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_28|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_28|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_81|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_28|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_28|, ULTIMATE.start_main_#t~ret27#1=|v_ULTIMATE.start_main_#t~ret27#1_17|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_24|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_main_#t~ret27#1, #ghost~mutex_A_locked][130], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), 91#true, Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 108#true, 54#L1210-3true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, 27#L1157-6true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 13#L1179true, Black: 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1)]) [2024-06-28 01:06:01,519 INFO L294 olderBase$Statistics]: this new event has 54 ancestors and is cut-off event [2024-06-28 01:06:01,520 INFO L297 olderBase$Statistics]: existing Event has 48 ancestors and is cut-off event [2024-06-28 01:06:01,520 INFO L297 olderBase$Statistics]: existing Event has 48 ancestors and is cut-off event [2024-06-28 01:06:01,520 INFO L297 olderBase$Statistics]: existing Event has 48 ancestors and is cut-off event [2024-06-28 01:06:01,655 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][165], [111#(not (= |ULTIMATE.start___VERIFIER_assert_~cond#1| 0)), processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, Black: 91#true, Black: 93#(= 5 ~B~0), generateThread1of1ForFork0InUse, Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 36#L1161true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 57#L1194true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 64#L19-5true, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:06:01,655 INFO L294 olderBase$Statistics]: this new event has 55 ancestors and is cut-off event [2024-06-28 01:06:01,655 INFO L297 olderBase$Statistics]: existing Event has 49 ancestors and is cut-off event [2024-06-28 01:06:01,655 INFO L297 olderBase$Statistics]: existing Event has 49 ancestors and is cut-off event [2024-06-28 01:06:01,655 INFO L297 olderBase$Statistics]: existing Event has 55 ancestors and is cut-off event [2024-06-28 01:06:01,655 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][83], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, Black: 91#true, Black: 93#(= 5 ~B~0), generateThread1of1ForFork0InUse, Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 108#true, 36#L1161true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 57#L1194true, 34#L19-2true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:06:01,655 INFO L294 olderBase$Statistics]: this new event has 55 ancestors and is cut-off event [2024-06-28 01:06:01,655 INFO L297 olderBase$Statistics]: existing Event has 55 ancestors and is cut-off event [2024-06-28 01:06:01,655 INFO L297 olderBase$Statistics]: existing Event has 49 ancestors and is cut-off event [2024-06-28 01:06:01,655 INFO L297 olderBase$Statistics]: existing Event has 49 ancestors and is cut-off event [2024-06-28 01:06:01,701 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([401] L1210-->L1210-3: Formula: (and (= |v_ULTIMATE.start_main_#t~ret27#1_17| 0) (= 0 |v_#ghost~mutex_A_locked_24|) (= |v_#pthreadsMutex_81| (store |v_#pthreadsMutex_82| |v_~#mutex_A~0.base_28| (store (select |v_#pthreadsMutex_82| |v_~#mutex_A~0.base_28|) |v_~#mutex_A~0.offset_28| 0)))) InVars {#pthreadsMutex=|v_#pthreadsMutex_82|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_28|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_28|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_81|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_28|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_28|, ULTIMATE.start_main_#t~ret27#1=|v_ULTIMATE.start_main_#t~ret27#1_17|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_24|} AuxVars[] AssignedVars[#pthreadsMutex, ULTIMATE.start_main_#t~ret27#1, #ghost~mutex_A_locked][130], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, 3#generateEXITtrue, generateThread1of1ForFork0InUse, Black: 93#(= 5 ~B~0), 91#true, Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 108#true, 54#L1210-3true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 57#L1194true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 13#L1179true, Black: 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1)]) [2024-06-28 01:06:01,702 INFO L294 olderBase$Statistics]: this new event has 55 ancestors and is cut-off event [2024-06-28 01:06:01,702 INFO L297 olderBase$Statistics]: existing Event has 49 ancestors and is cut-off event [2024-06-28 01:06:01,702 INFO L297 olderBase$Statistics]: existing Event has 49 ancestors and is cut-off event [2024-06-28 01:06:01,702 INFO L297 olderBase$Statistics]: existing Event has 49 ancestors and is cut-off event [2024-06-28 01:06:01,808 INFO L292 olderBase$Statistics]: inserting event number 4 for the transition-marking pair ([431] L1168-->L1168-3: Formula: (let ((.cse0 (select |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24|))) (and (= (select .cse0 |v_~#mutex_A~0.offset_24|) 0) (= |v_processThread1of1ForFork2_#t~ret5_1| 0) (= |v_#pthreadsMutex_57| (store |v_#pthreadsMutex_58| |v_~#mutex_A~0.base_24| (store .cse0 |v_~#mutex_A~0.offset_24| 1))) (= 1 |v_#ghost~mutex_A_locked_20|))) InVars {#pthreadsMutex=|v_#pthreadsMutex_58|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|} OutVars{#pthreadsMutex=|v_#pthreadsMutex_57|, ~#mutex_A~0.base=|v_~#mutex_A~0.base_24|, ~#mutex_A~0.offset=|v_~#mutex_A~0.offset_24|, processThread1of1ForFork2_#t~ret5=|v_processThread1of1ForFork2_#t~ret5_1|, #ghost~mutex_A_locked=|v_#ghost~mutex_A_locked_20|} AuxVars[] AssignedVars[#pthreadsMutex, processThread1of1ForFork2_#t~ret5, #ghost~mutex_A_locked][83], [processThread1of1ForFork2InUse, Black: 101#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= |disposeThread1of1ForFork1_~p~0#1| 5)), Black: 99#(and (not (= |disposeThread1of1ForFork1___VERIFIER_assert_~cond#1| 0)) (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), disposeThread1of1ForFork1InUse, 79#true, Black: 91#true, Black: 93#(= 5 ~B~0), generateThread1of1ForFork0InUse, Black: 97#(and (= 5 ~B~0) (= |disposeThread1of1ForFork1_~p~0#1| 5)), 36#L1161true, 108#true, Black: 77#(and (= 5 ~B~0) (= 5 ~A~0)), 94#(= |disposeThread1of1ForFork1_~p~0#1| 5), 57#L1194true, Black: 83#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 6 ~A~0)), Black: 82#(and (= 5 ~B~0) (= |#ghost~mutex_A_locked| 1) (= 5 ~A~0)), Black: 81#(and (= 5 ~B~0) (= 5 ~A~0)), 48#L1209true, 89#(= (select (select |#pthreadsMutex| |~#mutex_A~0.base|) |~#mutex_A~0.offset|) 1), 55#L1168-3true]) [2024-06-28 01:06:01,808 INFO L294 olderBase$Statistics]: this new event has 56 ancestors and is cut-off event [2024-06-28 01:06:01,808 INFO L297 olderBase$Statistics]: existing Event has 50 ancestors and is cut-off event [2024-06-28 01:06:01,808 INFO L297 olderBase$Statistics]: existing Event has 56 ancestors and is cut-off event [2024-06-28 01:06:01,808 INFO L297 olderBase$Statistics]: existing Event has 50 ancestors and is cut-off event [2024-06-28 01:06:02,272 INFO L124 PetriNetUnfolderBase]: 129339/198365 cut-off events. [2024-06-28 01:06:02,272 INFO L125 PetriNetUnfolderBase]: For 317317/321549 co-relation queries the response was YES. [2024-06-28 01:06:03,378 INFO L83 FinitePrefix]: Finished finitePrefix Result has 601948 conditions, 198365 events. 129339/198365 cut-off events. For 317317/321549 co-relation queries the response was YES. Maximal size of possible extension queue 5032. Compared 1716689 event pairs, 31469 based on Foata normal form. 190/192312 useless extension candidates. Maximal degree in co-relation 601923. Up to 142647 conditions per place. [2024-06-28 01:06:04,179 INFO L140 encePairwiseOnDemand]: 63/70 looper letters, 189 selfloop transitions, 10 changer transitions 0/221 dead transitions. [2024-06-28 01:06:04,179 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 91 places, 221 transitions, 1587 flow [2024-06-28 01:06:04,179 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-06-28 01:06:04,180 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-06-28 01:06:04,180 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 231 transitions. [2024-06-28 01:06:04,180 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.66 [2024-06-28 01:06:04,180 INFO L175 Difference]: Start difference. First operand has 87 places, 109 transitions, 585 flow. Second operand 5 states and 231 transitions. [2024-06-28 01:06:04,180 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 91 places, 221 transitions, 1587 flow