./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-atomic/read_write_lock-1-pthread.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-nonrel/read_write_lock-1-pthread.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-atomic/read_write_lock-1-pthread.i ./goblint.2024-06-19_11-23-25.files/mutex-meet-nonrel/read_write_lock-1-pthread.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-28 02:21:40,859 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-06-28 02:21:40,926 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-06-28 02:21:40,930 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-06-28 02:21:40,931 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-06-28 02:21:40,954 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-06-28 02:21:40,955 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-06-28 02:21:40,955 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-06-28 02:21:40,956 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-06-28 02:21:40,959 INFO L153 SettingsManager]: * Use memory slicer=true [2024-06-28 02:21:40,959 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-06-28 02:21:40,960 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-06-28 02:21:40,961 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-06-28 02:21:40,962 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-06-28 02:21:40,962 INFO L153 SettingsManager]: * Use SBE=true [2024-06-28 02:21:40,962 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-06-28 02:21:40,962 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-06-28 02:21:40,962 INFO L153 SettingsManager]: * sizeof long=4 [2024-06-28 02:21:40,963 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-06-28 02:21:40,963 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-06-28 02:21:40,963 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-06-28 02:21:40,963 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-06-28 02:21:40,964 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-06-28 02:21:40,964 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-06-28 02:21:40,964 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-06-28 02:21:40,964 INFO L153 SettingsManager]: * sizeof long double=12 [2024-06-28 02:21:40,964 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-06-28 02:21:40,965 INFO L153 SettingsManager]: * Use constant arrays=true [2024-06-28 02:21:40,965 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-06-28 02:21:40,965 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-06-28 02:21:40,966 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-06-28 02:21:40,967 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-06-28 02:21:40,967 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-28 02:21:40,967 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-06-28 02:21:40,967 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-06-28 02:21:40,967 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-06-28 02:21:40,967 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-06-28 02:21:40,968 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-06-28 02:21:40,968 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-06-28 02:21:40,968 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-06-28 02:21:40,968 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-06-28 02:21:40,968 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-06-28 02:21:40,968 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-06-28 02:21:40,969 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-28 02:21:41,218 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-06-28 02:21:41,235 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-06-28 02:21:41,237 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-06-28 02:21:41,238 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-06-28 02:21:41,239 INFO L274 PluginConnector]: Witness Parser initialized [2024-06-28 02:21:41,240 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/read_write_lock-1-pthread.yml/witness.yml [2024-06-28 02:21:41,326 INFO L270 PluginConnector]: Initializing CDTParser... [2024-06-28 02:21:41,326 INFO L274 PluginConnector]: CDTParser initialized [2024-06-28 02:21:41,326 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/pthread-atomic/read_write_lock-1-pthread.i [2024-06-28 02:21:42,282 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-06-28 02:21:42,531 INFO L384 CDTParser]: Found 1 translation units. [2024-06-28 02:21:42,539 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-atomic/read_write_lock-1-pthread.i [2024-06-28 02:21:42,552 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1b50f933c/8fce7f90a9594e64b0da84ecc615087d/FLAGc53dbeb94 [2024-06-28 02:21:42,562 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/1b50f933c/8fce7f90a9594e64b0da84ecc615087d [2024-06-28 02:21:42,567 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-06-28 02:21:42,569 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-06-28 02:21:42,571 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-06-28 02:21:42,571 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-06-28 02:21:42,575 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-06-28 02:21:42,575 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 28.06 02:21:41" (1/2) ... [2024-06-28 02:21:42,576 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5ce1ff5a and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 28.06 02:21:42, skipping insertion in model container [2024-06-28 02:21:42,576 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 28.06 02:21:41" (1/2) ... [2024-06-28 02:21:42,578 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@34174684 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 28.06 02:21:42, skipping insertion in model container [2024-06-28 02:21:42,578 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.06 02:21:42" (2/2) ... [2024-06-28 02:21:42,578 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5ce1ff5a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:42, skipping insertion in model container [2024-06-28 02:21:42,578 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.06 02:21:42" (2/2) ... [2024-06-28 02:21:42,579 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-06-28 02:21:42,613 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-06-28 02:21:42,615 INFO L97 edCorrectnessWitness]: Location invariant before [L717-L717] (((! multithreaded || (y == 0 || y == 3)) && (! multithreaded || (rwlock_locked || (x == 0 || x == 3)))) && (! multithreaded || (y == 0 || y == 3))) && (! multithreaded || (x == 0 || x == 3)) [2024-06-28 02:21:42,615 INFO L97 edCorrectnessWitness]: Location invariant before [L718-L718] (((! multithreaded || (y == 0 || y == 3)) && (! multithreaded || (rwlock_locked || (x == 0 || x == 3)))) && (! multithreaded || (y == 0 || y == 3))) && (! multithreaded || (x == 0 || x == 3)) [2024-06-28 02:21:42,615 INFO L97 edCorrectnessWitness]: Location invariant before [L719-L719] (((! multithreaded || (y == 0 || y == 3)) && (! multithreaded || (rwlock_locked || (x == 0 || x == 3)))) && (! multithreaded || (y == 0 || y == 3))) && (! multithreaded || (x == 0 || x == 3)) [2024-06-28 02:21:42,615 INFO L97 edCorrectnessWitness]: Location invariant before [L720-L720] (((! multithreaded || (y == 0 || y == 3)) && (! multithreaded || (rwlock_locked || (x == 0 || x == 3)))) && (! multithreaded || (y == 0 || y == 3))) && (! multithreaded || (x == 0 || x == 3)) [2024-06-28 02:21:42,615 INFO L103 edCorrectnessWitness]: ghost_variable rwlock_locked = 0 [2024-06-28 02:21:42,616 INFO L103 edCorrectnessWitness]: ghost_variable multithreaded = 0 [2024-06-28 02:21:42,616 INFO L106 edCorrectnessWitness]: ghost_update [L697-L697] rwlock_locked = 1; [2024-06-28 02:21:42,616 INFO L106 edCorrectnessWitness]: ghost_update [L692-L692] rwlock_locked = 0; [2024-06-28 02:21:42,617 INFO L106 edCorrectnessWitness]: ghost_update [L690-L690] rwlock_locked = 1; [2024-06-28 02:21:42,617 INFO L106 edCorrectnessWitness]: ghost_update [L711-L711] rwlock_locked = 0; [2024-06-28 02:21:42,617 INFO L106 edCorrectnessWitness]: ghost_update [L716-L716] multithreaded = 1; [2024-06-28 02:21:42,652 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-06-28 02:21:42,945 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-28 02:21:42,960 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-28 02:21:43,043 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-28 02:21:43,076 INFO L206 MainTranslator]: Completed translation [2024-06-28 02:21:43,077 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43 WrapperNode [2024-06-28 02:21:43,077 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-06-28 02:21:43,078 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-06-28 02:21:43,078 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-06-28 02:21:43,079 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-06-28 02:21:43,084 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (1/1) ... [2024-06-28 02:21:43,108 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (1/1) ... [2024-06-28 02:21:43,141 INFO L138 Inliner]: procedures = 165, calls = 35, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 94 [2024-06-28 02:21:43,142 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-06-28 02:21:43,142 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-06-28 02:21:43,142 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-06-28 02:21:43,143 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-06-28 02:21:43,151 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (1/1) ... [2024-06-28 02:21:43,151 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (1/1) ... [2024-06-28 02:21:43,156 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (1/1) ... [2024-06-28 02:21:43,169 INFO L175 MemorySlicer]: Split 13 memory accesses to 2 slices as follows [2, 11]. 85 percent of accesses are in the largest equivalence class. The 13 initializations are split as follows [2, 11]. The 0 writes are split as follows [0, 0]. [2024-06-28 02:21:43,175 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (1/1) ... [2024-06-28 02:21:43,176 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (1/1) ... [2024-06-28 02:21:43,179 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (1/1) ... [2024-06-28 02:21:43,180 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (1/1) ... [2024-06-28 02:21:43,182 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (1/1) ... [2024-06-28 02:21:43,183 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (1/1) ... [2024-06-28 02:21:43,192 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-06-28 02:21:43,192 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-06-28 02:21:43,192 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-06-28 02:21:43,192 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-06-28 02:21:43,193 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (1/1) ... [2024-06-28 02:21:43,197 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-28 02:21:43,204 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-28 02:21:43,225 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 02:21:43,247 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 02:21:43,293 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsRwLockUnlock [2024-06-28 02:21:43,293 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsRwLockReadLock [2024-06-28 02:21:43,293 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-06-28 02:21:43,294 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-06-28 02:21:43,294 INFO L130 BoogieDeclarations]: Found specification of procedure reader [2024-06-28 02:21:43,294 INFO L138 BoogieDeclarations]: Found implementation of procedure reader [2024-06-28 02:21:43,294 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsRwLockWriteLock [2024-06-28 02:21:43,294 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-06-28 02:21:43,295 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-06-28 02:21:43,295 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-06-28 02:21:43,297 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-06-28 02:21:43,297 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-06-28 02:21:43,297 INFO L130 BoogieDeclarations]: Found specification of procedure writer [2024-06-28 02:21:43,297 INFO L138 BoogieDeclarations]: Found implementation of procedure writer [2024-06-28 02:21:43,298 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 02:21:43,404 INFO L244 CfgBuilder]: Building ICFG [2024-06-28 02:21:43,406 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-06-28 02:21:43,546 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-06-28 02:21:43,546 INFO L293 CfgBuilder]: Performing block encoding [2024-06-28 02:21:43,633 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-06-28 02:21:43,633 INFO L320 CfgBuilder]: Removed 0 assume(true) statements. [2024-06-28 02:21:43,634 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.06 02:21:43 BoogieIcfgContainer [2024-06-28 02:21:43,634 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-06-28 02:21:43,635 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-06-28 02:21:43,636 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-06-28 02:21:43,638 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-06-28 02:21:43,639 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 28.06 02:21:41" (1/4) ... [2024-06-28 02:21:43,640 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@14afb74 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 28.06 02:21:43, skipping insertion in model container [2024-06-28 02:21:43,640 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.06 02:21:42" (2/4) ... [2024-06-28 02:21:43,640 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@14afb74 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.06 02:21:43, skipping insertion in model container [2024-06-28 02:21:43,640 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.06 02:21:43" (3/4) ... [2024-06-28 02:21:43,641 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@14afb74 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.06 02:21:43, skipping insertion in model container [2024-06-28 02:21:43,641 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.06 02:21:43" (4/4) ... [2024-06-28 02:21:43,642 INFO L112 eAbstractionObserver]: Analyzing ICFG read_write_lock-1-pthread.i [2024-06-28 02:21:43,654 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-06-28 02:21:43,655 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 4 error locations. [2024-06-28 02:21:43,655 INFO L522 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-06-28 02:21:43,708 INFO L144 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2024-06-28 02:21:43,740 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 70 places, 57 transitions, 142 flow [2024-06-28 02:21:43,778 INFO L124 PetriNetUnfolderBase]: 0/53 cut-off events. [2024-06-28 02:21:43,779 INFO L125 PetriNetUnfolderBase]: For 4/4 co-relation queries the response was YES. [2024-06-28 02:21:43,780 INFO L83 FinitePrefix]: Finished finitePrefix Result has 70 conditions, 53 events. 0/53 cut-off events. For 4/4 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 96 event pairs, 0 based on Foata normal form. 0/49 useless extension candidates. Maximal degree in co-relation 0. Up to 2 conditions per place. [2024-06-28 02:21:43,780 INFO L82 GeneralOperation]: Start removeDead. Operand has 70 places, 57 transitions, 142 flow [2024-06-28 02:21:43,783 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 60 places, 47 transitions, 106 flow [2024-06-28 02:21:43,789 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-06-28 02:21:43,794 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;@1a837598, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-06-28 02:21:43,796 INFO L358 AbstractCegarLoop]: Starting to check reachability of 8 error locations. [2024-06-28 02:21:43,799 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-06-28 02:21:43,804 INFO L124 PetriNetUnfolderBase]: 0/6 cut-off events. [2024-06-28 02:21:43,804 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-06-28 02:21:43,804 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-28 02:21:43,805 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1] [2024-06-28 02:21:43,806 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 5 more)] === [2024-06-28 02:21:43,810 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-28 02:21:43,811 INFO L85 PathProgramCache]: Analyzing trace with hash 232617876, now seen corresponding path program 1 times [2024-06-28 02:21:43,818 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-28 02:21:43,819 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [985194938] [2024-06-28 02:21:43,819 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-28 02:21:43,820 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-28 02:21:43,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-28 02:21:44,021 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 02:21:44,022 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-28 02:21:44,023 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [985194938] [2024-06-28 02:21:44,024 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [985194938] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-28 02:21:44,024 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-28 02:21:44,024 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-06-28 02:21:44,025 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1460273623] [2024-06-28 02:21:44,026 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-28 02:21:44,032 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-06-28 02:21:44,036 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-28 02:21:44,058 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-06-28 02:21:44,059 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-06-28 02:21:44,082 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 16 out of 57 [2024-06-28 02:21:44,084 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 60 places, 47 transitions, 106 flow. Second operand has 3 states, 3 states have (on average 17.333333333333332) internal successors, (52), 3 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-28 02:21:44,084 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-28 02:21:44,084 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 16 of 57 [2024-06-28 02:21:44,085 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-28 02:21:45,561 INFO L124 PetriNetUnfolderBase]: 12730/17816 cut-off events. [2024-06-28 02:21:45,561 INFO L125 PetriNetUnfolderBase]: For 198/198 co-relation queries the response was YES. [2024-06-28 02:21:45,598 INFO L83 FinitePrefix]: Finished finitePrefix Result has 35464 conditions, 17816 events. 12730/17816 cut-off events. For 198/198 co-relation queries the response was YES. Maximal size of possible extension queue 585. Compared 102155 event pairs, 6115 based on Foata normal form. 36/17349 useless extension candidates. Maximal degree in co-relation 35451. Up to 16861 conditions per place. [2024-06-28 02:21:45,690 INFO L140 encePairwiseOnDemand]: 48/57 looper letters, 51 selfloop transitions, 5 changer transitions 0/67 dead transitions. [2024-06-28 02:21:45,690 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 62 places, 67 transitions, 267 flow [2024-06-28 02:21:45,691 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-06-28 02:21:45,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-06-28 02:21:45,699 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 108 transitions. [2024-06-28 02:21:45,702 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.631578947368421 [2024-06-28 02:21:45,703 INFO L175 Difference]: Start difference. First operand has 60 places, 47 transitions, 106 flow. Second operand 3 states and 108 transitions. [2024-06-28 02:21:45,704 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 62 places, 67 transitions, 267 flow [2024-06-28 02:21:45,708 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 58 places, 67 transitions, 260 flow, removed 0 selfloop flow, removed 4 redundant places. [2024-06-28 02:21:45,714 INFO L231 Difference]: Finished difference. Result has 59 places, 51 transitions, 141 flow [2024-06-28 02:21:45,715 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=57, PETRI_DIFFERENCE_MINUEND_FLOW=102, PETRI_DIFFERENCE_MINUEND_PLACES=56, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=47, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=42, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=141, PETRI_PLACES=59, PETRI_TRANSITIONS=51} [2024-06-28 02:21:45,718 INFO L281 CegarLoopForPetriNet]: 60 programPoint places, -1 predicate places. [2024-06-28 02:21:45,719 INFO L495 AbstractCegarLoop]: Abstraction has has 59 places, 51 transitions, 141 flow [2024-06-28 02:21:45,719 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 17.333333333333332) internal successors, (52), 3 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-28 02:21:45,719 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-28 02:21:45,719 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-06-28 02:21:45,720 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-06-28 02:21:45,720 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 5 more)] === [2024-06-28 02:21:45,721 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-28 02:21:45,721 INFO L85 PathProgramCache]: Analyzing trace with hash -2103995352, now seen corresponding path program 1 times [2024-06-28 02:21:45,721 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-28 02:21:45,721 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2099292936] [2024-06-28 02:21:45,721 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-28 02:21:45,722 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-28 02:21:45,734 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-28 02:21:45,783 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 02:21:45,783 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-28 02:21:45,783 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2099292936] [2024-06-28 02:21:45,783 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2099292936] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-28 02:21:45,783 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-28 02:21:45,784 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-06-28 02:21:45,784 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1218081400] [2024-06-28 02:21:45,784 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-28 02:21:45,785 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-06-28 02:21:45,785 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-28 02:21:45,785 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-06-28 02:21:45,785 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2024-06-28 02:21:45,809 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 16 out of 57 [2024-06-28 02:21:45,809 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 59 places, 51 transitions, 141 flow. Second operand has 4 states, 4 states have (on average 17.5) internal successors, (70), 4 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 02:21:45,809 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-28 02:21:45,810 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 16 of 57 [2024-06-28 02:21:45,810 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-28 02:21:46,924 INFO L124 PetriNetUnfolderBase]: 11888/17400 cut-off events. [2024-06-28 02:21:46,924 INFO L125 PetriNetUnfolderBase]: For 2775/2937 co-relation queries the response was YES. [2024-06-28 02:21:46,966 INFO L83 FinitePrefix]: Finished finitePrefix Result has 37895 conditions, 17400 events. 11888/17400 cut-off events. For 2775/2937 co-relation queries the response was YES. Maximal size of possible extension queue 560. Compared 104520 event pairs, 2765 based on Foata normal form. 306/17473 useless extension candidates. Maximal degree in co-relation 37883. Up to 13685 conditions per place. [2024-06-28 02:21:47,032 INFO L140 encePairwiseOnDemand]: 48/57 looper letters, 69 selfloop transitions, 7 changer transitions 0/87 dead transitions. [2024-06-28 02:21:47,032 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 61 places, 87 transitions, 381 flow [2024-06-28 02:21:47,033 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-06-28 02:21:47,034 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-06-28 02:21:47,036 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 144 transitions. [2024-06-28 02:21:47,037 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.631578947368421 [2024-06-28 02:21:47,038 INFO L175 Difference]: Start difference. First operand has 59 places, 51 transitions, 141 flow. Second operand 4 states and 144 transitions. [2024-06-28 02:21:47,038 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 61 places, 87 transitions, 381 flow [2024-06-28 02:21:47,041 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 60 places, 87 transitions, 376 flow, removed 0 selfloop flow, removed 1 redundant places. [2024-06-28 02:21:47,043 INFO L231 Difference]: Finished difference. Result has 61 places, 52 transitions, 168 flow [2024-06-28 02:21:47,044 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=57, PETRI_DIFFERENCE_MINUEND_FLOW=132, PETRI_DIFFERENCE_MINUEND_PLACES=57, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=50, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=43, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=168, PETRI_PLACES=61, PETRI_TRANSITIONS=52} [2024-06-28 02:21:47,044 INFO L281 CegarLoopForPetriNet]: 60 programPoint places, 1 predicate places. [2024-06-28 02:21:47,045 INFO L495 AbstractCegarLoop]: Abstraction has has 61 places, 52 transitions, 168 flow [2024-06-28 02:21:47,049 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 17.5) internal successors, (70), 4 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 02:21:47,049 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-28 02:21:47,050 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-28 02:21:47,050 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-06-28 02:21:47,050 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 5 more)] === [2024-06-28 02:21:47,052 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-28 02:21:47,052 INFO L85 PathProgramCache]: Analyzing trace with hash 409186666, now seen corresponding path program 1 times [2024-06-28 02:21:47,052 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-28 02:21:47,053 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [634013627] [2024-06-28 02:21:47,053 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-28 02:21:47,053 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-28 02:21:47,083 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-28 02:21:47,162 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 02:21:47,163 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-28 02:21:47,163 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [634013627] [2024-06-28 02:21:47,163 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [634013627] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-28 02:21:47,163 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-28 02:21:47,164 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-28 02:21:47,164 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1583339836] [2024-06-28 02:21:47,164 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-28 02:21:47,164 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-28 02:21:47,165 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-28 02:21:47,165 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-28 02:21:47,165 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2024-06-28 02:21:47,188 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 15 out of 57 [2024-06-28 02:21:47,189 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 61 places, 52 transitions, 168 flow. Second operand has 5 states, 5 states have (on average 17.2) internal successors, (86), 5 states have internal predecessors, (86), 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 02:21:47,189 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-28 02:21:47,189 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 15 of 57 [2024-06-28 02:21:47,189 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-28 02:21:48,516 INFO L124 PetriNetUnfolderBase]: 13786/19734 cut-off events. [2024-06-28 02:21:48,517 INFO L125 PetriNetUnfolderBase]: For 7464/7802 co-relation queries the response was YES. [2024-06-28 02:21:48,550 INFO L83 FinitePrefix]: Finished finitePrefix Result has 45759 conditions, 19734 events. 13786/19734 cut-off events. For 7464/7802 co-relation queries the response was YES. Maximal size of possible extension queue 658. Compared 117529 event pairs, 5441 based on Foata normal form. 220/19726 useless extension candidates. Maximal degree in co-relation 45745. Up to 15806 conditions per place. [2024-06-28 02:21:48,615 INFO L140 encePairwiseOnDemand]: 48/57 looper letters, 90 selfloop transitions, 17 changer transitions 0/117 dead transitions. [2024-06-28 02:21:48,615 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 66 places, 117 transitions, 564 flow [2024-06-28 02:21:48,615 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-06-28 02:21:48,615 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-06-28 02:21:48,616 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 195 transitions. [2024-06-28 02:21:48,616 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.5701754385964912 [2024-06-28 02:21:48,617 INFO L175 Difference]: Start difference. First operand has 61 places, 52 transitions, 168 flow. Second operand 6 states and 195 transitions. [2024-06-28 02:21:48,617 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 66 places, 117 transitions, 564 flow [2024-06-28 02:21:48,619 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 64 places, 117 transitions, 550 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-06-28 02:21:48,620 INFO L231 Difference]: Finished difference. Result has 66 places, 65 transitions, 278 flow [2024-06-28 02:21:48,620 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=57, PETRI_DIFFERENCE_MINUEND_FLOW=158, PETRI_DIFFERENCE_MINUEND_PLACES=59, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=52, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=7, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=43, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=278, PETRI_PLACES=66, PETRI_TRANSITIONS=65} [2024-06-28 02:21:48,621 INFO L281 CegarLoopForPetriNet]: 60 programPoint places, 6 predicate places. [2024-06-28 02:21:48,621 INFO L495 AbstractCegarLoop]: Abstraction has has 66 places, 65 transitions, 278 flow [2024-06-28 02:21:48,621 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 17.2) internal successors, (86), 5 states have internal predecessors, (86), 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 02:21:48,621 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-28 02:21:48,621 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-28 02:21:48,621 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-06-28 02:21:48,622 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 5 more)] === [2024-06-28 02:21:48,622 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-28 02:21:48,622 INFO L85 PathProgramCache]: Analyzing trace with hash 871727710, now seen corresponding path program 1 times [2024-06-28 02:21:48,622 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-28 02:21:48,622 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [986957606] [2024-06-28 02:21:48,623 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-28 02:21:48,623 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-28 02:21:48,631 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-28 02:21:48,701 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 02:21:48,701 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-28 02:21:48,701 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [986957606] [2024-06-28 02:21:48,702 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [986957606] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-28 02:21:48,702 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-28 02:21:48,702 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-28 02:21:48,702 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1445502051] [2024-06-28 02:21:48,702 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-28 02:21:48,703 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-06-28 02:21:48,703 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-28 02:21:48,704 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-06-28 02:21:48,704 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-06-28 02:21:48,705 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 22 out of 57 [2024-06-28 02:21:48,706 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 66 places, 65 transitions, 278 flow. Second operand has 3 states, 3 states have (on average 25.333333333333332) internal successors, (76), 3 states have internal predecessors, (76), 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 02:21:48,706 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-28 02:21:48,706 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 22 of 57 [2024-06-28 02:21:48,706 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-28 02:21:48,875 INFO L124 PetriNetUnfolderBase]: 1219/2252 cut-off events. [2024-06-28 02:21:48,875 INFO L125 PetriNetUnfolderBase]: For 965/1229 co-relation queries the response was YES. [2024-06-28 02:21:48,881 INFO L83 FinitePrefix]: Finished finitePrefix Result has 6122 conditions, 2252 events. 1219/2252 cut-off events. For 965/1229 co-relation queries the response was YES. Maximal size of possible extension queue 122. Compared 13901 event pairs, 205 based on Foata normal form. 1147/3284 useless extension candidates. Maximal degree in co-relation 6106. Up to 1556 conditions per place. [2024-06-28 02:21:48,887 INFO L140 encePairwiseOnDemand]: 49/57 looper letters, 45 selfloop transitions, 2 changer transitions 3/75 dead transitions. [2024-06-28 02:21:48,888 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 64 places, 75 transitions, 396 flow [2024-06-28 02:21:48,888 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-06-28 02:21:48,888 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-06-28 02:21:48,889 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 116 transitions. [2024-06-28 02:21:48,889 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.6783625730994152 [2024-06-28 02:21:48,890 INFO L175 Difference]: Start difference. First operand has 66 places, 65 transitions, 278 flow. Second operand 3 states and 116 transitions. [2024-06-28 02:21:48,890 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 64 places, 75 transitions, 396 flow [2024-06-28 02:21:48,895 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 64 places, 75 transitions, 390 flow, removed 3 selfloop flow, removed 0 redundant places. [2024-06-28 02:21:48,896 INFO L231 Difference]: Finished difference. Result has 65 places, 59 transitions, 266 flow [2024-06-28 02:21:48,896 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=57, PETRI_DIFFERENCE_MINUEND_FLOW=252, PETRI_DIFFERENCE_MINUEND_PLACES=62, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=59, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=57, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=266, PETRI_PLACES=65, PETRI_TRANSITIONS=59} [2024-06-28 02:21:48,898 INFO L281 CegarLoopForPetriNet]: 60 programPoint places, 5 predicate places. [2024-06-28 02:21:48,898 INFO L495 AbstractCegarLoop]: Abstraction has has 65 places, 59 transitions, 266 flow [2024-06-28 02:21:48,898 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 25.333333333333332) internal successors, (76), 3 states have internal predecessors, (76), 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 02:21:48,898 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-28 02:21:48,898 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-28 02:21:48,898 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-06-28 02:21:48,898 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 5 more)] === [2024-06-28 02:21:48,899 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-28 02:21:48,899 INFO L85 PathProgramCache]: Analyzing trace with hash -1105478316, now seen corresponding path program 2 times [2024-06-28 02:21:48,899 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-28 02:21:48,899 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [110804803] [2024-06-28 02:21:48,900 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-28 02:21:48,900 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-28 02:21:48,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-28 02:21:48,972 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 02:21:48,973 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-28 02:21:48,973 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [110804803] [2024-06-28 02:21:48,973 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [110804803] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-28 02:21:48,973 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-28 02:21:48,973 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-28 02:21:48,974 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [635928764] [2024-06-28 02:21:48,974 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-28 02:21:48,974 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-06-28 02:21:48,974 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-28 02:21:48,975 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-06-28 02:21:48,975 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-06-28 02:21:48,975 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 22 out of 57 [2024-06-28 02:21:48,975 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 65 places, 59 transitions, 266 flow. Second operand has 3 states, 3 states have (on average 25.333333333333332) internal successors, (76), 3 states have internal predecessors, (76), 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 02:21:48,976 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-28 02:21:48,976 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 22 of 57 [2024-06-28 02:21:48,976 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-28 02:21:49,036 INFO L124 PetriNetUnfolderBase]: 168/433 cut-off events. [2024-06-28 02:21:49,036 INFO L125 PetriNetUnfolderBase]: For 484/488 co-relation queries the response was YES. [2024-06-28 02:21:49,038 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1054 conditions, 433 events. 168/433 cut-off events. For 484/488 co-relation queries the response was YES. Maximal size of possible extension queue 29. Compared 2035 event pairs, 18 based on Foata normal form. 123/552 useless extension candidates. Maximal degree in co-relation 1036. Up to 275 conditions per place. [2024-06-28 02:21:49,041 INFO L140 encePairwiseOnDemand]: 51/57 looper letters, 27 selfloop transitions, 2 changer transitions 7/54 dead transitions. [2024-06-28 02:21:49,041 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 61 places, 54 transitions, 262 flow [2024-06-28 02:21:49,042 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-06-28 02:21:49,042 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-06-28 02:21:49,042 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 106 transitions. [2024-06-28 02:21:49,043 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.6198830409356725 [2024-06-28 02:21:49,044 INFO L175 Difference]: Start difference. First operand has 65 places, 59 transitions, 266 flow. Second operand 3 states and 106 transitions. [2024-06-28 02:21:49,044 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 61 places, 54 transitions, 262 flow [2024-06-28 02:21:49,047 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 58 places, 54 transitions, 253 flow, removed 0 selfloop flow, removed 3 redundant places. [2024-06-28 02:21:49,049 INFO L231 Difference]: Finished difference. Result has 59 places, 38 transitions, 139 flow [2024-06-28 02:21:49,049 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=57, PETRI_DIFFERENCE_MINUEND_FLOW=143, PETRI_DIFFERENCE_MINUEND_PLACES=56, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=40, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=38, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=139, PETRI_PLACES=59, PETRI_TRANSITIONS=38} [2024-06-28 02:21:49,050 INFO L281 CegarLoopForPetriNet]: 60 programPoint places, -1 predicate places. [2024-06-28 02:21:49,051 INFO L495 AbstractCegarLoop]: Abstraction has has 59 places, 38 transitions, 139 flow [2024-06-28 02:21:49,051 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 25.333333333333332) internal successors, (76), 3 states have internal predecessors, (76), 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 02:21:49,051 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-28 02:21:49,051 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-28 02:21:49,051 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2024-06-28 02:21:49,051 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr3ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 5 more)] === [2024-06-28 02:21:49,052 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-28 02:21:49,052 INFO L85 PathProgramCache]: Analyzing trace with hash -1794637472, now seen corresponding path program 1 times [2024-06-28 02:21:49,052 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-28 02:21:49,052 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1983116275] [2024-06-28 02:21:49,053 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-28 02:21:49,053 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-28 02:21:49,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-28 02:21:49,127 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 02:21:49,128 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-28 02:21:49,128 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1983116275] [2024-06-28 02:21:49,128 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1983116275] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-28 02:21:49,128 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-28 02:21:49,128 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-28 02:21:49,129 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [236387341] [2024-06-28 02:21:49,129 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-28 02:21:49,129 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-28 02:21:49,129 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-28 02:21:49,129 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-28 02:21:49,130 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2024-06-28 02:21:49,154 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 15 out of 57 [2024-06-28 02:21:49,155 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 59 places, 38 transitions, 139 flow. Second operand has 5 states, 5 states have (on average 18.4) internal successors, (92), 5 states have internal predecessors, (92), 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 02:21:49,155 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-28 02:21:49,155 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 15 of 57 [2024-06-28 02:21:49,155 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-28 02:21:49,205 INFO L124 PetriNetUnfolderBase]: 101/280 cut-off events. [2024-06-28 02:21:49,205 INFO L125 PetriNetUnfolderBase]: For 161/161 co-relation queries the response was YES. [2024-06-28 02:21:49,206 INFO L83 FinitePrefix]: Finished finitePrefix Result has 649 conditions, 280 events. 101/280 cut-off events. For 161/161 co-relation queries the response was YES. Maximal size of possible extension queue 16. Compared 1148 event pairs, 26 based on Foata normal form. 12/290 useless extension candidates. Maximal degree in co-relation 633. Up to 68 conditions per place. [2024-06-28 02:21:49,206 INFO L140 encePairwiseOnDemand]: 52/57 looper letters, 0 selfloop transitions, 0 changer transitions 55/55 dead transitions. [2024-06-28 02:21:49,206 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 57 places, 55 transitions, 269 flow [2024-06-28 02:21:49,207 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-06-28 02:21:49,207 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-06-28 02:21:49,207 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 131 transitions. [2024-06-28 02:21:49,207 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.3830409356725146 [2024-06-28 02:21:49,208 INFO L175 Difference]: Start difference. First operand has 59 places, 38 transitions, 139 flow. Second operand 6 states and 131 transitions. [2024-06-28 02:21:49,208 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 57 places, 55 transitions, 269 flow [2024-06-28 02:21:49,208 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 54 places, 55 transitions, 249 flow, removed 8 selfloop flow, removed 3 redundant places. [2024-06-28 02:21:49,209 INFO L231 Difference]: Finished difference. Result has 54 places, 0 transitions, 0 flow [2024-06-28 02:21:49,209 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=57, PETRI_DIFFERENCE_MINUEND_FLOW=115, PETRI_DIFFERENCE_MINUEND_PLACES=49, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=37, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=37, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=0, PETRI_PLACES=54, PETRI_TRANSITIONS=0} [2024-06-28 02:21:49,209 INFO L281 CegarLoopForPetriNet]: 60 programPoint places, -6 predicate places. [2024-06-28 02:21:49,210 INFO L495 AbstractCegarLoop]: Abstraction has has 54 places, 0 transitions, 0 flow [2024-06-28 02:21:49,210 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 18.4) internal successors, (92), 5 states have internal predecessors, (92), 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 02:21:49,212 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT (7 of 8 remaining) [2024-06-28 02:21:49,212 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT (6 of 8 remaining) [2024-06-28 02:21:49,212 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr2ASSERT_VIOLATIONWITNESS_INVARIANT (5 of 8 remaining) [2024-06-28 02:21:49,212 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr3ASSERT_VIOLATIONWITNESS_INVARIANT (4 of 8 remaining) [2024-06-28 02:21:49,213 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (3 of 8 remaining) [2024-06-28 02:21:49,213 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 8 remaining) [2024-06-28 02:21:49,213 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 8 remaining) [2024-06-28 02:21:49,213 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr3INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 8 remaining) [2024-06-28 02:21:49,213 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2024-06-28 02:21:49,213 INFO L445 BasicCegarLoop]: Path program histogram: [2, 1, 1, 1, 1] [2024-06-28 02:21:49,216 INFO L229 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-06-28 02:21:49,216 INFO L179 ceAbstractionStarter]: Computing trace abstraction results [2024-06-28 02:21:49,219 INFO L507 ceAbstractionStarter]: Automizer considered 4 witness invariants [2024-06-28 02:21:49,219 INFO L508 ceAbstractionStarter]: WitnessConsidered=4 [2024-06-28 02:21:49,220 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.06 02:21:49 BasicIcfg [2024-06-28 02:21:49,220 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-06-28 02:21:49,221 INFO L158 Benchmark]: Toolchain (without parser) took 6652.32ms. Allocated memory was 174.1MB in the beginning and 813.7MB in the end (delta: 639.6MB). Free memory was 142.4MB in the beginning and 251.7MB in the end (delta: -109.3MB). Peak memory consumption was 529.4MB. Max. memory is 16.1GB. [2024-06-28 02:21:49,221 INFO L158 Benchmark]: Witness Parser took 0.15ms. Allocated memory is still 109.1MB. Free memory is still 81.5MB. There was no memory consumed. Max. memory is 16.1GB. [2024-06-28 02:21:49,221 INFO L158 Benchmark]: CDTParser took 0.13ms. Allocated memory is still 109.1MB. Free memory is still 77.0MB. There was no memory consumed. Max. memory is 16.1GB. [2024-06-28 02:21:49,221 INFO L158 Benchmark]: CACSL2BoogieTranslator took 506.56ms. Allocated memory is still 174.1MB. Free memory was 141.3MB in the beginning and 114.1MB in the end (delta: 27.2MB). Peak memory consumption was 27.3MB. Max. memory is 16.1GB. [2024-06-28 02:21:49,222 INFO L158 Benchmark]: Boogie Procedure Inliner took 63.46ms. Allocated memory is still 174.1MB. Free memory was 114.1MB in the beginning and 112.1MB in the end (delta: 2.0MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-06-28 02:21:49,222 INFO L158 Benchmark]: Boogie Preprocessor took 49.44ms. Allocated memory is still 174.1MB. Free memory was 112.1MB in the beginning and 110.0MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-06-28 02:21:49,222 INFO L158 Benchmark]: RCFGBuilder took 441.72ms. Allocated memory is still 174.1MB. Free memory was 110.0MB in the beginning and 112.8MB in the end (delta: -2.8MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-06-28 02:21:49,222 INFO L158 Benchmark]: TraceAbstraction took 5584.87ms. Allocated memory was 174.1MB in the beginning and 813.7MB in the end (delta: 639.6MB). Free memory was 112.8MB in the beginning and 251.7MB in the end (delta: -138.9MB). Peak memory consumption was 502.8MB. Max. memory is 16.1GB. [2024-06-28 02:21:49,224 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Witness Parser took 0.15ms. Allocated memory is still 109.1MB. Free memory is still 81.5MB. There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.13ms. Allocated memory is still 109.1MB. Free memory is still 77.0MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 506.56ms. Allocated memory is still 174.1MB. Free memory was 141.3MB in the beginning and 114.1MB in the end (delta: 27.2MB). Peak memory consumption was 27.3MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 63.46ms. Allocated memory is still 174.1MB. Free memory was 114.1MB in the beginning and 112.1MB in the end (delta: 2.0MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 49.44ms. Allocated memory is still 174.1MB. Free memory was 112.1MB in the beginning and 110.0MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 441.72ms. Allocated memory is still 174.1MB. Free memory was 110.0MB in the beginning and 112.8MB in the end (delta: -2.8MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * TraceAbstraction took 5584.87ms. Allocated memory was 174.1MB in the beginning and 813.7MB in the end (delta: 639.6MB). Free memory was 112.8MB in the beginning and 251.7MB in the end (delta: -138.9MB). Peak memory consumption was 502.8MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 717]: invariant of correctness witness holds For all program executions holds that invariant of correctness witness holds at this location - PositiveResult [Line: 718]: invariant of correctness witness holds For all program executions holds that invariant of correctness witness holds at this location - PositiveResult [Line: 719]: invariant of correctness witness holds For all program executions holds that invariant of correctness witness holds at this location - PositiveResult [Line: 720]: 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 7 procedures, 79 locations, 8 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: 5.5s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 4.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.1s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 334 SdHoareTripleChecker+Valid, 0.4s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 259 mSDsluCounter, 45 SdHoareTripleChecker+Invalid, 0.3s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 17 mSDsCounter, 29 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 632 IncrementalHoareTripleChecker+Invalid, 661 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 29 mSolverCounterUnsat, 28 mSDtfsCounter, 632 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 17 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=278occurred in iteration=3, InterpolantAutomatonStates: 25, 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.1s SatisfiabilityAnalysisTime, 0.4s InterpolantComputationTime, 77 NumberOfCodeBlocks, 77 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 71 ConstructedInterpolants, 0 QuantifiedInterpolants, 244 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 4 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2024-06-28 02:21:49,243 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