./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread/queue_longest.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --cacsl2boogietranslator.check.unreachability.of.reach_error.function false --validate ./goblint.2024-06-19_11-23-25.files/mutex-meet-rel/queue_longest.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/pthread/queue_longest.i ./goblint.2024-06-19_11-23-25.files/mutex-meet-rel/queue_longest.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 --cacsl2boogietranslator.check.unreachability.of.reach_error.function false --- Real Ultimate output --- This is Ultimate 0.2.4-tmp.fs.goblint-validation-7724a2d-m [2024-06-27 23:05:09,180 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-06-27 23:05:09,240 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-06-27 23:05:09,243 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-06-27 23:05:09,248 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-06-27 23:05:09,276 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-06-27 23:05:09,280 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-06-27 23:05:09,280 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-06-27 23:05:09,281 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-06-27 23:05:09,285 INFO L153 SettingsManager]: * Use memory slicer=true [2024-06-27 23:05:09,285 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-06-27 23:05:09,285 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-06-27 23:05:09,286 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-06-27 23:05:09,287 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-06-27 23:05:09,288 INFO L153 SettingsManager]: * Use SBE=true [2024-06-27 23:05:09,288 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-06-27 23:05:09,288 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-06-27 23:05:09,289 INFO L153 SettingsManager]: * sizeof long=4 [2024-06-27 23:05:09,289 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-06-27 23:05:09,289 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-06-27 23:05:09,289 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-06-27 23:05:09,290 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-06-27 23:05:09,291 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-06-27 23:05:09,291 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-06-27 23:05:09,292 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-06-27 23:05:09,292 INFO L153 SettingsManager]: * sizeof long double=12 [2024-06-27 23:05:09,292 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-06-27 23:05:09,292 INFO L153 SettingsManager]: * Use constant arrays=true [2024-06-27 23:05:09,293 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-06-27 23:05:09,293 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-06-27 23:05:09,294 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-06-27 23:05:09,294 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-06-27 23:05:09,294 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-27 23:05:09,295 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-06-27 23:05:09,295 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-06-27 23:05:09,295 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-06-27 23:05:09,295 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-06-27 23:05:09,295 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-06-27 23:05:09,296 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-06-27 23:05:09,296 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-06-27 23:05:09,296 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-06-27 23:05:09,296 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-06-27 23:05:09,297 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-06-27 23:05:09,297 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 Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Check unreachability of reach_error function -> false [2024-06-27 23:05:09,555 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-06-27 23:05:09,578 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-06-27 23:05:09,581 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-06-27 23:05:09,582 INFO L270 PluginConnector]: Initializing CDTParser... [2024-06-27 23:05:09,582 INFO L274 PluginConnector]: CDTParser initialized [2024-06-27 23:05:09,583 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread/queue_longest.i [2024-06-27 23:05:10,815 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-06-27 23:05:11,114 INFO L384 CDTParser]: Found 1 translation units. [2024-06-27 23:05:11,114 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread/queue_longest.i [2024-06-27 23:05:11,134 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/060e399a6/6407f5f42c384fbea317fc55a5e15cda/FLAG92723c342 [2024-06-27 23:05:11,149 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/060e399a6/6407f5f42c384fbea317fc55a5e15cda [2024-06-27 23:05:11,152 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-06-27 23:05:11,152 INFO L274 PluginConnector]: Witness Parser initialized [2024-06-27 23:05:11,155 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-rel/queue_longest.yml/witness.yml [2024-06-27 23:05:11,286 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-06-27 23:05:11,287 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-06-27 23:05:11,290 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-06-27 23:05:11,290 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-06-27 23:05:11,294 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-06-27 23:05:11,295 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.06 11:05:11" (1/2) ... [2024-06-27 23:05:11,303 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@319b8b86 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 11:05:11, skipping insertion in model container [2024-06-27 23:05:11,303 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.06 11:05:11" (1/2) ... [2024-06-27 23:05:11,305 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@1074439a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.06 11:05:11, skipping insertion in model container [2024-06-27 23:05:11,305 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 27.06 11:05:11" (2/2) ... [2024-06-27 23:05:11,306 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@319b8b86 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:11, skipping insertion in model container [2024-06-27 23:05:11,306 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 27.06 11:05:11" (2/2) ... [2024-06-27 23:05:11,306 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-06-27 23:05:11,342 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-06-27 23:05:11,344 INFO L97 edCorrectnessWitness]: Location invariant before [L1063-L1063] ! multithreaded || (m_locked || ((-1LL + (long long )dequeue_flag) + (long long )enqueue_flag >= 0LL && (1LL - (long long )dequeue_flag) - (long long )enqueue_flag >= 0LL)) [2024-06-27 23:05:11,344 INFO L97 edCorrectnessWitness]: Location invariant before [L1064-L1064] ! multithreaded || (m_locked || ((-1LL + (long long )dequeue_flag) + (long long )enqueue_flag >= 0LL && (1LL - (long long )dequeue_flag) - (long long )enqueue_flag >= 0LL)) [2024-06-27 23:05:11,344 INFO L103 edCorrectnessWitness]: ghost_variable multithreaded = 0 [2024-06-27 23:05:11,344 INFO L103 edCorrectnessWitness]: ghost_variable m_locked = 0 [2024-06-27 23:05:11,344 INFO L106 edCorrectnessWitness]: ghost_update [L1008-L1008] m_locked = 1; [2024-06-27 23:05:11,345 INFO L106 edCorrectnessWitness]: ghost_update [L1017-L1017] m_locked = 0; [2024-06-27 23:05:11,345 INFO L106 edCorrectnessWitness]: ghost_update [L1029-L1029] m_locked = 0; [2024-06-27 23:05:11,345 INFO L106 edCorrectnessWitness]: ghost_update [L1062-L1062] multithreaded = 1; [2024-06-27 23:05:11,346 INFO L106 edCorrectnessWitness]: ghost_update [L1020-L1020] m_locked = 1; [2024-06-27 23:05:11,346 INFO L106 edCorrectnessWitness]: ghost_update [L1048-L1048] m_locked = 0; [2024-06-27 23:05:11,346 INFO L106 edCorrectnessWitness]: ghost_update [L1039-L1039] m_locked = 1; [2024-06-27 23:05:11,390 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-06-27 23:05:11,807 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-27 23:05:11,819 INFO L202 MainTranslator]: Completed pre-run 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-27 23:05:11,952 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-27 23:05:12,000 INFO L206 MainTranslator]: Completed translation [2024-06-27 23:05:12,001 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12 WrapperNode [2024-06-27 23:05:12,001 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-06-27 23:05:12,002 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-06-27 23:05:12,002 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-06-27 23:05:12,002 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-06-27 23:05:12,008 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (1/1) ... [2024-06-27 23:05:12,027 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (1/1) ... [2024-06-27 23:05:12,061 INFO L138 Inliner]: procedures = 274, calls = 56, calls flagged for inlining = 11, calls inlined = 11, statements flattened = 257 [2024-06-27 23:05:12,068 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-06-27 23:05:12,069 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-06-27 23:05:12,069 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-06-27 23:05:12,069 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-06-27 23:05:12,079 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (1/1) ... [2024-06-27 23:05:12,079 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (1/1) ... [2024-06-27 23:05:12,084 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (1/1) ... [2024-06-27 23:05:12,104 INFO L175 MemorySlicer]: Split 43 memory accesses to 4 slices as follows [2, 5, 4, 32]. 74 percent of accesses are in the largest equivalence class. The 7 initializations are split as follows [2, 5, 0, 0]. The 18 writes are split as follows [0, 0, 3, 15]. [2024-06-27 23:05:12,104 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (1/1) ... [2024-06-27 23:05:12,105 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (1/1) ... [2024-06-27 23:05:12,119 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (1/1) ... [2024-06-27 23:05:12,134 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (1/1) ... [2024-06-27 23:05:12,137 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (1/1) ... [2024-06-27 23:05:12,139 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (1/1) ... [2024-06-27 23:05:12,142 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-06-27 23:05:12,142 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-06-27 23:05:12,143 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-06-27 23:05:12,143 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-06-27 23:05:12,143 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (1/1) ... [2024-06-27 23:05:12,156 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-27 23:05:12,163 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-27 23:05:12,183 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-27 23:05:12,197 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-27 23:05:12,223 INFO L130 BoogieDeclarations]: Found specification of procedure t1 [2024-06-27 23:05:12,223 INFO L138 BoogieDeclarations]: Found implementation of procedure t1 [2024-06-27 23:05:12,223 INFO L130 BoogieDeclarations]: Found specification of procedure t2 [2024-06-27 23:05:12,223 INFO L138 BoogieDeclarations]: Found implementation of procedure t2 [2024-06-27 23:05:12,224 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexUnlock [2024-06-27 23:05:12,224 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-06-27 23:05:12,224 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-06-27 23:05:12,224 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2024-06-27 23:05:12,224 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2024-06-27 23:05:12,224 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-06-27 23:05:12,225 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-06-27 23:05:12,225 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2024-06-27 23:05:12,225 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2024-06-27 23:05:12,225 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2024-06-27 23:05:12,225 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-06-27 23:05:12,225 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-06-27 23:05:12,225 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-06-27 23:05:12,226 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-06-27 23:05:12,226 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-06-27 23:05:12,226 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-06-27 23:05:12,226 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-06-27 23:05:12,227 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-06-27 23:05:12,409 INFO L244 CfgBuilder]: Building ICFG [2024-06-27 23:05:12,411 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-06-27 23:05:12,767 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-06-27 23:05:12,767 INFO L293 CfgBuilder]: Performing block encoding [2024-06-27 23:05:13,046 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-06-27 23:05:13,046 INFO L320 CfgBuilder]: Removed 2 assume(true) statements. [2024-06-27 23:05:13,046 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.06 11:05:13 BoogieIcfgContainer [2024-06-27 23:05:13,047 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-06-27 23:05:13,049 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-06-27 23:05:13,049 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-06-27 23:05:13,052 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-06-27 23:05:13,052 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.06 11:05:11" (1/4) ... [2024-06-27 23:05:13,052 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@51b0116b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.06 11:05:13, skipping insertion in model container [2024-06-27 23:05:13,053 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 27.06 11:05:11" (2/4) ... [2024-06-27 23:05:13,053 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@51b0116b and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 27.06 11:05:13, skipping insertion in model container [2024-06-27 23:05:13,053 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 27.06 11:05:12" (3/4) ... [2024-06-27 23:05:13,053 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@51b0116b and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 27.06 11:05:13, skipping insertion in model container [2024-06-27 23:05:13,053 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.06 11:05:13" (4/4) ... [2024-06-27 23:05:13,054 INFO L112 eAbstractionObserver]: Analyzing ICFG queue_longest.i [2024-06-27 23:05:13,070 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-06-27 23:05:13,071 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 2 error locations. [2024-06-27 23:05:13,071 INFO L522 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-06-27 23:05:13,127 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2024-06-27 23:05:13,154 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 42 places, 39 transitions, 92 flow [2024-06-27 23:05:13,180 INFO L124 PetriNetUnfolderBase]: 4/37 cut-off events. [2024-06-27 23:05:13,180 INFO L125 PetriNetUnfolderBase]: For 2/2 co-relation queries the response was YES. [2024-06-27 23:05:13,183 INFO L83 FinitePrefix]: Finished finitePrefix Result has 46 conditions, 37 events. 4/37 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 6. Compared 66 event pairs, 0 based on Foata normal form. 0/31 useless extension candidates. Maximal degree in co-relation 33. Up to 2 conditions per place. [2024-06-27 23:05:13,184 INFO L82 GeneralOperation]: Start removeDead. Operand has 42 places, 39 transitions, 92 flow [2024-06-27 23:05:13,187 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 38 places, 35 transitions, 79 flow [2024-06-27 23:05:13,200 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-06-27 23:05:13,208 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;@2f7ae37c, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-06-27 23:05:13,209 INFO L358 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2024-06-27 23:05:13,214 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-06-27 23:05:13,215 INFO L124 PetriNetUnfolderBase]: 0/5 cut-off events. [2024-06-27 23:05:13,215 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-06-27 23:05:13,215 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 23:05:13,216 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1] [2024-06-27 23:05:13,216 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 23:05:13,261 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 23:05:13,261 INFO L85 PathProgramCache]: Analyzing trace with hash 653520595, now seen corresponding path program 1 times [2024-06-27 23:05:13,279 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 23:05:13,280 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [679351360] [2024-06-27 23:05:13,280 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 23:05:13,281 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 23:05:13,469 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 23:05:13,703 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-27 23:05:13,704 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 23:05:13,704 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [679351360] [2024-06-27 23:05:13,705 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [679351360] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 23:05:13,705 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 23:05:13,705 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-06-27 23:05:13,707 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [984859367] [2024-06-27 23:05:13,707 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 23:05:13,715 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-06-27 23:05:13,719 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 23:05:13,739 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-06-27 23:05:13,739 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-06-27 23:05:13,747 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 39 [2024-06-27 23:05:13,749 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 38 places, 35 transitions, 79 flow. Second operand has 3 states, 3 states have (on average 8.333333333333334) internal successors, (25), 3 states have internal predecessors, (25), 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-27 23:05:13,749 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 23:05:13,749 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 39 [2024-06-27 23:05:13,751 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 23:05:14,099 INFO L124 PetriNetUnfolderBase]: 429/790 cut-off events. [2024-06-27 23:05:14,100 INFO L125 PetriNetUnfolderBase]: For 51/51 co-relation queries the response was YES. [2024-06-27 23:05:14,120 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1557 conditions, 790 events. 429/790 cut-off events. For 51/51 co-relation queries the response was YES. Maximal size of possible extension queue 31. Compared 3289 event pairs, 228 based on Foata normal form. 81/830 useless extension candidates. Maximal degree in co-relation 1486. Up to 410 conditions per place. [2024-06-27 23:05:14,126 INFO L140 encePairwiseOnDemand]: 34/39 looper letters, 36 selfloop transitions, 2 changer transitions 5/48 dead transitions. [2024-06-27 23:05:14,127 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 40 places, 48 transitions, 197 flow [2024-06-27 23:05:14,128 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-06-27 23:05:14,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-06-27 23:05:14,147 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 67 transitions. [2024-06-27 23:05:14,149 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.5726495726495726 [2024-06-27 23:05:14,150 INFO L175 Difference]: Start difference. First operand has 38 places, 35 transitions, 79 flow. Second operand 3 states and 67 transitions. [2024-06-27 23:05:14,151 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 40 places, 48 transitions, 197 flow [2024-06-27 23:05:14,155 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 37 places, 48 transitions, 189 flow, removed 0 selfloop flow, removed 3 redundant places. [2024-06-27 23:05:14,158 INFO L231 Difference]: Finished difference. Result has 38 places, 32 transitions, 79 flow [2024-06-27 23:05:14,161 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=72, PETRI_DIFFERENCE_MINUEND_PLACES=35, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=34, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=32, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=79, PETRI_PLACES=38, PETRI_TRANSITIONS=32} [2024-06-27 23:05:14,166 INFO L281 CegarLoopForPetriNet]: 38 programPoint places, 0 predicate places. [2024-06-27 23:05:14,167 INFO L495 AbstractCegarLoop]: Abstraction has has 38 places, 32 transitions, 79 flow [2024-06-27 23:05:14,167 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 8.333333333333334) internal successors, (25), 3 states have internal predecessors, (25), 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-27 23:05:14,167 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 23:05:14,168 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 23:05:14,168 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-06-27 23:05:14,168 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 23:05:14,169 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 23:05:14,169 INFO L85 PathProgramCache]: Analyzing trace with hash 562365676, now seen corresponding path program 1 times [2024-06-27 23:05:14,169 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 23:05:14,170 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1907337264] [2024-06-27 23:05:14,170 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 23:05:14,170 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 23:05:14,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 23:05:14,347 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-27 23:05:14,347 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 23:05:14,347 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1907337264] [2024-06-27 23:05:14,348 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1907337264] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 23:05:14,348 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 23:05:14,348 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-27 23:05:14,348 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2021691259] [2024-06-27 23:05:14,349 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 23:05:14,350 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-06-27 23:05:14,350 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 23:05:14,350 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-06-27 23:05:14,351 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-06-27 23:05:14,362 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 39 [2024-06-27 23:05:14,363 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 38 places, 32 transitions, 79 flow. Second operand has 4 states, 4 states have (on average 9.5) internal successors, (38), 4 states have internal predecessors, (38), 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-27 23:05:14,363 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 23:05:14,363 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 39 [2024-06-27 23:05:14,363 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 23:05:14,587 INFO L124 PetriNetUnfolderBase]: 484/907 cut-off events. [2024-06-27 23:05:14,588 INFO L125 PetriNetUnfolderBase]: For 52/52 co-relation queries the response was YES. [2024-06-27 23:05:14,589 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1867 conditions, 907 events. 484/907 cut-off events. For 52/52 co-relation queries the response was YES. Maximal size of possible extension queue 39. Compared 3969 event pairs, 180 based on Foata normal form. 20/927 useless extension candidates. Maximal degree in co-relation 1042. Up to 442 conditions per place. [2024-06-27 23:05:14,592 INFO L140 encePairwiseOnDemand]: 29/39 looper letters, 43 selfloop transitions, 8 changer transitions 0/55 dead transitions. [2024-06-27 23:05:14,592 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 40 places, 55 transitions, 234 flow [2024-06-27 23:05:14,594 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-06-27 23:05:14,594 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-06-27 23:05:14,596 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 81 transitions. [2024-06-27 23:05:14,597 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.4153846153846154 [2024-06-27 23:05:14,602 INFO L175 Difference]: Start difference. First operand has 38 places, 32 transitions, 79 flow. Second operand 5 states and 81 transitions. [2024-06-27 23:05:14,602 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 40 places, 55 transitions, 234 flow [2024-06-27 23:05:14,604 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 39 places, 55 transitions, 231 flow, removed 0 selfloop flow, removed 1 redundant places. [2024-06-27 23:05:14,605 INFO L231 Difference]: Finished difference. Result has 41 places, 38 transitions, 134 flow [2024-06-27 23:05:14,606 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=77, PETRI_DIFFERENCE_MINUEND_PLACES=35, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=32, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=24, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=134, PETRI_PLACES=41, PETRI_TRANSITIONS=38} [2024-06-27 23:05:14,606 INFO L281 CegarLoopForPetriNet]: 38 programPoint places, 3 predicate places. [2024-06-27 23:05:14,606 INFO L495 AbstractCegarLoop]: Abstraction has has 41 places, 38 transitions, 134 flow [2024-06-27 23:05:14,607 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 9.5) internal successors, (38), 4 states have internal predecessors, (38), 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-27 23:05:14,607 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 23:05:14,607 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 23:05:14,607 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-06-27 23:05:14,608 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 23:05:14,608 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 23:05:14,608 INFO L85 PathProgramCache]: Analyzing trace with hash 253468679, now seen corresponding path program 1 times [2024-06-27 23:05:14,609 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 23:05:14,609 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1194785201] [2024-06-27 23:05:14,609 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 23:05:14,609 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 23:05:14,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 23:05:14,908 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-27 23:05:14,908 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 23:05:14,908 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1194785201] [2024-06-27 23:05:14,908 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1194785201] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 23:05:14,909 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 23:05:14,909 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-06-27 23:05:14,909 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [623478689] [2024-06-27 23:05:14,909 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 23:05:14,910 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-06-27 23:05:14,910 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 23:05:14,910 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-06-27 23:05:14,911 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-06-27 23:05:14,918 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 39 [2024-06-27 23:05:14,918 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 41 places, 38 transitions, 134 flow. Second operand has 4 states, 4 states have (on average 10.5) internal successors, (42), 4 states have internal predecessors, (42), 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-27 23:05:14,918 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 23:05:14,918 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 39 [2024-06-27 23:05:14,918 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 23:05:15,166 INFO L124 PetriNetUnfolderBase]: 597/1149 cut-off events. [2024-06-27 23:05:15,166 INFO L125 PetriNetUnfolderBase]: For 562/566 co-relation queries the response was YES. [2024-06-27 23:05:15,168 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2794 conditions, 1149 events. 597/1149 cut-off events. For 562/566 co-relation queries the response was YES. Maximal size of possible extension queue 39. Compared 5137 event pairs, 291 based on Foata normal form. 27/1174 useless extension candidates. Maximal degree in co-relation 2315. Up to 705 conditions per place. [2024-06-27 23:05:15,172 INFO L140 encePairwiseOnDemand]: 34/39 looper letters, 47 selfloop transitions, 4 changer transitions 0/56 dead transitions. [2024-06-27 23:05:15,172 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 43 places, 56 transitions, 296 flow [2024-06-27 23:05:15,173 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-06-27 23:05:15,173 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-06-27 23:05:15,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 70 transitions. [2024-06-27 23:05:15,174 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.44871794871794873 [2024-06-27 23:05:15,174 INFO L175 Difference]: Start difference. First operand has 41 places, 38 transitions, 134 flow. Second operand 4 states and 70 transitions. [2024-06-27 23:05:15,174 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 43 places, 56 transitions, 296 flow [2024-06-27 23:05:15,176 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 41 places, 56 transitions, 293 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-06-27 23:05:15,177 INFO L231 Difference]: Finished difference. Result has 43 places, 39 transitions, 152 flow [2024-06-27 23:05:15,177 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=125, PETRI_DIFFERENCE_MINUEND_PLACES=38, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=37, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=33, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=152, PETRI_PLACES=43, PETRI_TRANSITIONS=39} [2024-06-27 23:05:15,178 INFO L281 CegarLoopForPetriNet]: 38 programPoint places, 5 predicate places. [2024-06-27 23:05:15,178 INFO L495 AbstractCegarLoop]: Abstraction has has 43 places, 39 transitions, 152 flow [2024-06-27 23:05:15,179 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 10.5) internal successors, (42), 4 states have internal predecessors, (42), 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-27 23:05:15,179 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 23:05:15,179 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 23:05:15,179 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-06-27 23:05:15,179 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 23:05:15,180 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 23:05:15,180 INFO L85 PathProgramCache]: Analyzing trace with hash -1785586291, now seen corresponding path program 1 times [2024-06-27 23:05:15,180 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 23:05:15,180 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2084754866] [2024-06-27 23:05:15,181 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 23:05:15,181 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 23:05:15,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 23:05:15,313 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-27 23:05:15,313 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 23:05:15,313 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2084754866] [2024-06-27 23:05:15,313 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2084754866] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 23:05:15,314 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 23:05:15,314 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-06-27 23:05:15,314 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1375353821] [2024-06-27 23:05:15,314 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 23:05:15,315 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-27 23:05:15,315 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 23:05:15,315 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-27 23:05:15,316 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2024-06-27 23:05:15,328 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 39 [2024-06-27 23:05:15,328 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 39 transitions, 152 flow. Second operand has 5 states, 5 states have (on average 10.2) internal successors, (51), 5 states have internal predecessors, (51), 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-27 23:05:15,328 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 23:05:15,328 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 39 [2024-06-27 23:05:15,328 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 23:05:15,527 INFO L124 PetriNetUnfolderBase]: 328/666 cut-off events. [2024-06-27 23:05:15,527 INFO L125 PetriNetUnfolderBase]: For 384/388 co-relation queries the response was YES. [2024-06-27 23:05:15,529 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1687 conditions, 666 events. 328/666 cut-off events. For 384/388 co-relation queries the response was YES. Maximal size of possible extension queue 23. Compared 2596 event pairs, 127 based on Foata normal form. 40/706 useless extension candidates. Maximal degree in co-relation 1088. Up to 321 conditions per place. [2024-06-27 23:05:15,531 INFO L140 encePairwiseOnDemand]: 31/39 looper letters, 32 selfloop transitions, 8 changer transitions 0/44 dead transitions. [2024-06-27 23:05:15,531 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 47 places, 44 transitions, 232 flow [2024-06-27 23:05:15,532 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-06-27 23:05:15,532 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-06-27 23:05:15,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 70 transitions. [2024-06-27 23:05:15,536 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.358974358974359 [2024-06-27 23:05:15,536 INFO L175 Difference]: Start difference. First operand has 43 places, 39 transitions, 152 flow. Second operand 5 states and 70 transitions. [2024-06-27 23:05:15,536 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 47 places, 44 transitions, 232 flow [2024-06-27 23:05:15,541 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 44 places, 44 transitions, 216 flow, removed 1 selfloop flow, removed 3 redundant places. [2024-06-27 23:05:15,542 INFO L231 Difference]: Finished difference. Result has 44 places, 33 transitions, 128 flow [2024-06-27 23:05:15,543 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=112, PETRI_DIFFERENCE_MINUEND_PLACES=40, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=33, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=8, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=25, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=128, PETRI_PLACES=44, PETRI_TRANSITIONS=33} [2024-06-27 23:05:15,544 INFO L281 CegarLoopForPetriNet]: 38 programPoint places, 6 predicate places. [2024-06-27 23:05:15,544 INFO L495 AbstractCegarLoop]: Abstraction has has 44 places, 33 transitions, 128 flow [2024-06-27 23:05:15,544 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 10.2) internal successors, (51), 5 states have internal predecessors, (51), 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-27 23:05:15,545 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 23:05:15,545 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 23:05:15,545 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-06-27 23:05:15,545 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 23:05:15,546 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 23:05:15,546 INFO L85 PathProgramCache]: Analyzing trace with hash 1621658360, now seen corresponding path program 1 times [2024-06-27 23:05:15,546 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 23:05:15,546 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [860187770] [2024-06-27 23:05:15,546 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 23:05:15,546 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 23:05:15,607 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 23:05:15,897 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-27 23:05:15,898 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 23:05:15,898 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [860187770] [2024-06-27 23:05:15,898 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [860187770] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 23:05:15,898 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 23:05:15,899 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-06-27 23:05:15,899 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1556981729] [2024-06-27 23:05:15,899 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 23:05:15,899 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-06-27 23:05:15,900 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 23:05:15,900 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-06-27 23:05:15,900 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2024-06-27 23:05:15,908 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 5 out of 39 [2024-06-27 23:05:15,908 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 44 places, 33 transitions, 128 flow. Second operand has 6 states, 6 states have (on average 8.666666666666666) internal successors, (52), 6 states have internal predecessors, (52), 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-27 23:05:15,908 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 23:05:15,908 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 5 of 39 [2024-06-27 23:05:15,908 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 23:05:16,306 INFO L124 PetriNetUnfolderBase]: 864/1623 cut-off events. [2024-06-27 23:05:16,308 INFO L125 PetriNetUnfolderBase]: For 1161/1163 co-relation queries the response was YES. [2024-06-27 23:05:16,311 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3930 conditions, 1623 events. 864/1623 cut-off events. For 1161/1163 co-relation queries the response was YES. Maximal size of possible extension queue 55. Compared 8001 event pairs, 373 based on Foata normal form. 11/1632 useless extension candidates. Maximal degree in co-relation 1763. Up to 717 conditions per place. [2024-06-27 23:05:16,314 INFO L140 encePairwiseOnDemand]: 31/39 looper letters, 27 selfloop transitions, 3 changer transitions 53/86 dead transitions. [2024-06-27 23:05:16,315 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 51 places, 86 transitions, 480 flow [2024-06-27 23:05:16,316 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-06-27 23:05:16,316 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-06-27 23:05:16,317 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 121 transitions. [2024-06-27 23:05:16,317 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.38782051282051283 [2024-06-27 23:05:16,317 INFO L175 Difference]: Start difference. First operand has 44 places, 33 transitions, 128 flow. Second operand 8 states and 121 transitions. [2024-06-27 23:05:16,318 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 51 places, 86 transitions, 480 flow [2024-06-27 23:05:16,320 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 47 places, 86 transitions, 438 flow, removed 0 selfloop flow, removed 4 redundant places. [2024-06-27 23:05:16,321 INFO L231 Difference]: Finished difference. Result has 52 places, 32 transitions, 130 flow [2024-06-27 23:05:16,321 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=112, PETRI_DIFFERENCE_MINUEND_PLACES=40, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=33, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=30, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=130, PETRI_PLACES=52, PETRI_TRANSITIONS=32} [2024-06-27 23:05:16,323 INFO L281 CegarLoopForPetriNet]: 38 programPoint places, 14 predicate places. [2024-06-27 23:05:16,323 INFO L495 AbstractCegarLoop]: Abstraction has has 52 places, 32 transitions, 130 flow [2024-06-27 23:05:16,323 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 8.666666666666666) internal successors, (52), 6 states have internal predecessors, (52), 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-27 23:05:16,324 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-27 23:05:16,324 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-27 23:05:16,324 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2024-06-27 23:05:16,324 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2024-06-27 23:05:16,325 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-27 23:05:16,325 INFO L85 PathProgramCache]: Analyzing trace with hash 51909574, now seen corresponding path program 2 times [2024-06-27 23:05:16,325 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-27 23:05:16,325 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1818172627] [2024-06-27 23:05:16,326 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-27 23:05:16,326 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-27 23:05:16,401 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-27 23:05:16,638 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-27 23:05:16,638 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-27 23:05:16,638 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1818172627] [2024-06-27 23:05:16,638 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1818172627] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-27 23:05:16,639 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-27 23:05:16,639 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-27 23:05:16,639 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1671670222] [2024-06-27 23:05:16,639 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-27 23:05:16,640 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-27 23:05:16,640 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-27 23:05:16,640 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-27 23:05:16,640 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-06-27 23:05:16,648 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 39 [2024-06-27 23:05:16,649 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 52 places, 32 transitions, 130 flow. Second operand has 5 states, 5 states have (on average 11.2) internal successors, (56), 5 states have internal predecessors, (56), 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-27 23:05:16,649 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-27 23:05:16,649 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 39 [2024-06-27 23:05:16,649 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-27 23:05:16,763 INFO L124 PetriNetUnfolderBase]: 241/494 cut-off events. [2024-06-27 23:05:16,763 INFO L125 PetriNetUnfolderBase]: For 402/404 co-relation queries the response was YES. [2024-06-27 23:05:16,764 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1181 conditions, 494 events. 241/494 cut-off events. For 402/404 co-relation queries the response was YES. Maximal size of possible extension queue 21. Compared 1870 event pairs, 130 based on Foata normal form. 9/503 useless extension candidates. Maximal degree in co-relation 1133. Up to 285 conditions per place. [2024-06-27 23:05:16,765 INFO L140 encePairwiseOnDemand]: 35/39 looper letters, 0 selfloop transitions, 0 changer transitions 42/42 dead transitions. [2024-06-27 23:05:16,765 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 49 places, 42 transitions, 228 flow [2024-06-27 23:05:16,765 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-06-27 23:05:16,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-06-27 23:05:16,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 66 transitions. [2024-06-27 23:05:16,766 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.4230769230769231 [2024-06-27 23:05:16,766 INFO L175 Difference]: Start difference. First operand has 52 places, 32 transitions, 130 flow. Second operand 4 states and 66 transitions. [2024-06-27 23:05:16,767 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 49 places, 42 transitions, 228 flow [2024-06-27 23:05:16,768 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 41 places, 42 transitions, 204 flow, removed 5 selfloop flow, removed 8 redundant places. [2024-06-27 23:05:16,768 INFO L231 Difference]: Finished difference. Result has 41 places, 0 transitions, 0 flow [2024-06-27 23:05:16,769 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=100, PETRI_DIFFERENCE_MINUEND_PLACES=38, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=31, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=31, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=0, PETRI_PLACES=41, PETRI_TRANSITIONS=0} [2024-06-27 23:05:16,769 INFO L281 CegarLoopForPetriNet]: 38 programPoint places, 3 predicate places. [2024-06-27 23:05:16,769 INFO L495 AbstractCegarLoop]: Abstraction has has 41 places, 0 transitions, 0 flow [2024-06-27 23:05:16,770 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 11.2) internal successors, (56), 5 states have internal predecessors, (56), 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-27 23:05:16,772 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT (3 of 4 remaining) [2024-06-27 23:05:16,772 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT (2 of 4 remaining) [2024-06-27 23:05:16,773 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 4 remaining) [2024-06-27 23:05:16,773 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 4 remaining) [2024-06-27 23:05:16,773 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2024-06-27 23:05:16,773 INFO L445 BasicCegarLoop]: Path program histogram: [2, 1, 1, 1, 1] [2024-06-27 23:05:16,776 INFO L229 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-06-27 23:05:16,776 INFO L179 ceAbstractionStarter]: Computing trace abstraction results [2024-06-27 23:05:16,780 INFO L507 ceAbstractionStarter]: Automizer considered 2 witness invariants [2024-06-27 23:05:16,780 INFO L508 ceAbstractionStarter]: WitnessConsidered=2 [2024-06-27 23:05:16,780 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.06 11:05:16 BasicIcfg [2024-06-27 23:05:16,781 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-06-27 23:05:16,781 INFO L158 Benchmark]: Toolchain (without parser) took 5494.23ms. Allocated memory was 172.0MB in the beginning and 297.8MB in the end (delta: 125.8MB). Free memory was 142.0MB in the beginning and 146.2MB in the end (delta: -4.3MB). Peak memory consumption was 121.0MB. Max. memory is 16.1GB. [2024-06-27 23:05:16,781 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 130.0MB. Free memory is still 89.0MB. There was no memory consumed. Max. memory is 16.1GB. [2024-06-27 23:05:16,782 INFO L158 Benchmark]: Witness Parser took 0.18ms. Allocated memory is still 130.0MB. Free memory is still 58.0MB. There was no memory consumed. Max. memory is 16.1GB. [2024-06-27 23:05:16,782 INFO L158 Benchmark]: CACSL2BoogieTranslator took 711.71ms. Allocated memory is still 172.0MB. Free memory was 141.7MB in the beginning and 107.1MB in the end (delta: 34.7MB). Peak memory consumption was 38.5MB. Max. memory is 16.1GB. [2024-06-27 23:05:16,782 INFO L158 Benchmark]: Boogie Procedure Inliner took 66.68ms. Allocated memory is still 172.0MB. Free memory was 107.1MB in the beginning and 103.9MB in the end (delta: 3.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-06-27 23:05:16,783 INFO L158 Benchmark]: Boogie Preprocessor took 72.80ms. Allocated memory is still 172.0MB. Free memory was 103.9MB in the beginning and 99.7MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-06-27 23:05:16,783 INFO L158 Benchmark]: RCFGBuilder took 904.35ms. Allocated memory is still 172.0MB. Free memory was 99.7MB in the beginning and 108.1MB in the end (delta: -8.3MB). Peak memory consumption was 58.8MB. Max. memory is 16.1GB. [2024-06-27 23:05:16,784 INFO L158 Benchmark]: TraceAbstraction took 3731.97ms. Allocated memory was 172.0MB in the beginning and 297.8MB in the end (delta: 125.8MB). Free memory was 107.0MB in the beginning and 146.2MB in the end (delta: -39.2MB). Peak memory consumption was 86.6MB. Max. memory is 16.1GB. [2024-06-27 23:05:16,785 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.16ms. Allocated memory is still 130.0MB. Free memory is still 89.0MB. There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.18ms. Allocated memory is still 130.0MB. Free memory is still 58.0MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 711.71ms. Allocated memory is still 172.0MB. Free memory was 141.7MB in the beginning and 107.1MB in the end (delta: 34.7MB). Peak memory consumption was 38.5MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 66.68ms. Allocated memory is still 172.0MB. Free memory was 107.1MB in the beginning and 103.9MB in the end (delta: 3.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 72.80ms. Allocated memory is still 172.0MB. Free memory was 103.9MB in the beginning and 99.7MB in the end (delta: 4.2MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * RCFGBuilder took 904.35ms. Allocated memory is still 172.0MB. Free memory was 99.7MB in the beginning and 108.1MB in the end (delta: -8.3MB). Peak memory consumption was 58.8MB. Max. memory is 16.1GB. * TraceAbstraction took 3731.97ms. Allocated memory was 172.0MB in the beginning and 297.8MB in the end (delta: 125.8MB). Free memory was 107.0MB in the beginning and 146.2MB in the end (delta: -39.2MB). Peak memory consumption was 86.6MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 1063]: invariant of correctness witness holds For all program executions holds that invariant of correctness witness holds at this location - PositiveResult [Line: 1064]: invariant of correctness witness holds For all program executions holds that invariant of correctness witness holds at this location - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 5 procedures, 60 locations, 4 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 3.6s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 1.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 209 SdHoareTripleChecker+Valid, 0.6s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 190 mSDsluCounter, 7 SdHoareTripleChecker+Invalid, 0.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 33 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 631 IncrementalHoareTripleChecker+Invalid, 664 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 33 mSolverCounterUnsat, 7 mSDtfsCounter, 631 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 23 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=152occurred in iteration=3, InterpolantAutomatonStates: 29, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 1.2s InterpolantComputationTime, 107 NumberOfCodeBlocks, 107 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 101 ConstructedInterpolants, 0 QuantifiedInterpolants, 563 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 6 InterpolantComputations, 6 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 2 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2024-06-27 23:05:16,816 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE