./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 --validate ./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/read_write_lock-1-pthread.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 13967880 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.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/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 --- Real Ultimate output --- This is Ultimate 0.2.4-wip.fs.extract-columns-1396788-m [2024-02-02 16:07:10,962 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-02-02 16:07:11,029 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-02-02 16:07:11,033 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-02-02 16:07:11,034 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-02-02 16:07:11,059 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-02-02 16:07:11,060 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-02-02 16:07:11,061 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-02-02 16:07:11,061 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-02-02 16:07:11,064 INFO L153 SettingsManager]: * Use memory slicer=true [2024-02-02 16:07:11,064 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-02-02 16:07:11,065 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-02-02 16:07:11,065 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-02-02 16:07:11,066 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-02-02 16:07:11,067 INFO L153 SettingsManager]: * Use SBE=true [2024-02-02 16:07:11,067 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-02-02 16:07:11,067 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-02-02 16:07:11,067 INFO L153 SettingsManager]: * sizeof long=4 [2024-02-02 16:07:11,068 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-02-02 16:07:11,068 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-02-02 16:07:11,068 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-02-02 16:07:11,068 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-02-02 16:07:11,069 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-02-02 16:07:11,069 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-02-02 16:07:11,069 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-02-02 16:07:11,069 INFO L153 SettingsManager]: * sizeof long double=12 [2024-02-02 16:07:11,069 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-02-02 16:07:11,070 INFO L153 SettingsManager]: * Use constant arrays=true [2024-02-02 16:07:11,070 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-02-02 16:07:11,070 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-02-02 16:07:11,071 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-02-02 16:07:11,071 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-02-02 16:07:11,072 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-02-02 16:07:11,072 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-02-02 16:07:11,072 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-02-02 16:07:11,072 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-02-02 16:07:11,072 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-02-02 16:07:11,073 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-02-02 16:07:11,073 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-02-02 16:07:11,073 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-02-02 16:07:11,073 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-02-02 16:07:11,073 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-02-02 16:07:11,074 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-02-02 16:07:11,074 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false [2024-02-02 16:07:11,300 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-02-02 16:07:11,315 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-02-02 16:07:11,317 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-02-02 16:07:11,318 INFO L270 PluginConnector]: Initializing CDTParser... [2024-02-02 16:07:11,318 INFO L274 PluginConnector]: CDTParser initialized [2024-02-02 16:07:11,319 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-02-02 16:07:12,402 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-02-02 16:07:12,586 INFO L384 CDTParser]: Found 1 translation units. [2024-02-02 16:07:12,587 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-atomic/read_write_lock-1-pthread.i [2024-02-02 16:07:12,596 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/11c52b7fc/df6af0aacb954b96a58843e5bb54439e/FLAGfe1467857 [2024-02-02 16:07:12,607 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/11c52b7fc/df6af0aacb954b96a58843e5bb54439e [2024-02-02 16:07:12,609 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-02-02 16:07:12,610 INFO L274 PluginConnector]: Witness Parser initialized [2024-02-02 16:07:12,610 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/./goblint.2023-12-19_14-39-08.files/SV-COMP24_unreach-call/read_write_lock-1-pthread.yml/witness.yml [2024-02-02 16:07:12,763 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-02-02 16:07:12,764 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-02-02 16:07:12,765 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-02-02 16:07:12,765 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-02-02 16:07:12,769 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-02-02 16:07:12,769 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 02.02 04:07:12" (1/2) ... [2024-02-02 16:07:12,770 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@340f6976 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.02 04:07:12, skipping insertion in model container [2024-02-02 16:07:12,770 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 02.02 04:07:12" (1/2) ... [2024-02-02 16:07:12,772 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@85ae681 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.02 04:07:12, skipping insertion in model container [2024-02-02 16:07:12,772 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 02.02 04:07:12" (2/2) ... [2024-02-02 16:07:12,772 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@340f6976 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:12, skipping insertion in model container [2024-02-02 16:07:12,773 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 02.02 04:07:12" (2/2) ... [2024-02-02 16:07:12,773 INFO L86 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-02-02 16:07:12,931 INFO L99 nessWitnessExtractor]: Found the following entries in the witness: [2024-02-02 16:07:12,933 INFO L101 nessWitnessExtractor]: Location invariant before [L697-L697] (unsigned long )arg == 0UL [2024-02-02 16:07:12,933 INFO L101 nessWitnessExtractor]: Location invariant before [L690-L690] (unsigned long )arg == 0UL [2024-02-02 16:07:12,933 INFO L101 nessWitnessExtractor]: Location invariant before [L706-L706] (((((((((((((((0 <= y) && (0 <= l)) && (0 <= ly)) && (y <= 3)) && (y <= 127)) && (l <= 3)) && (l <= 127)) && (ly <= 3)) && (ly <= 127)) && (y % 3 == 0)) && (l % 3 == 0)) && (ly % 3 == 0)) && ((unsigned long )arg == 0UL)) && (y == 0 || y == 3)) && (l == 0 || l == 3)) && (ly == 0 || ly == 3) [2024-02-02 16:07:12,933 INFO L101 nessWitnessExtractor]: Location invariant before [L711-L711] (((((((((((((((0 <= l) && (0 <= ly)) && (0 <= lx)) && (l <= 3)) && (l <= 127)) && (ly <= 3)) && (ly <= 127)) && (lx <= 3)) && (lx <= 127)) && (l % 3 == 0)) && (ly % 3 == 0)) && (lx % 3 == 0)) && ((unsigned long )arg == 0UL)) && (l == 0 || l == 3)) && (ly == 0 || ly == 3)) && (lx == 0 || lx == 3) [2024-02-02 16:07:12,933 INFO L101 nessWitnessExtractor]: Location invariant before [L702-L702] ((((((((((0 <= y) && (0 <= l)) && (y <= 3)) && (y <= 127)) && (l <= 3)) && (l <= 127)) && (y % 3 == 0)) && (l % 3 == 0)) && ((unsigned long )arg == 0UL)) && (y == 0 || y == 3)) && (l == 0 || l == 3) [2024-02-02 16:07:12,934 INFO L101 nessWitnessExtractor]: Location invariant before [L692-L692] (x == 3) && ((unsigned long )arg == 0UL) [2024-02-02 16:07:12,934 INFO L101 nessWitnessExtractor]: Location invariant before [L710-L710] (((((((((((((((0 <= l) && (0 <= ly)) && (0 <= lx)) && (l <= 3)) && (l <= 127)) && (ly <= 3)) && (ly <= 127)) && (lx <= 3)) && (lx <= 127)) && (l % 3 == 0)) && (ly % 3 == 0)) && (lx % 3 == 0)) && ((unsigned long )arg == 0UL)) && (l == 0 || l == 3)) && (ly == 0 || ly == 3)) && (lx == 0 || lx == 3) [2024-02-02 16:07:12,934 INFO L101 nessWitnessExtractor]: Location invariant before [L709-L709] ((((((((((((((((((((0 <= y) && (0 <= l)) && (0 <= ly)) && (0 <= lx)) && (y <= 3)) && (y <= 127)) && (l <= 3)) && (l <= 127)) && (ly <= 3)) && (ly <= 127)) && (lx <= 3)) && (lx <= 127)) && (y % 3 == 0)) && (l % 3 == 0)) && (ly % 3 == 0)) && (lx % 3 == 0)) && ((unsigned long )arg == 0UL)) && (y == 0 || y == 3)) && (l == 0 || l == 3)) && (ly == 0 || ly == 3)) && (lx == 0 || lx == 3) [2024-02-02 16:07:12,934 INFO L101 nessWitnessExtractor]: Location invariant after [L705-L705] ((((((((((0 <= y) && (0 <= l)) && (y <= 3)) && (y <= 127)) && (l <= 3)) && (l <= 127)) && (y % 3 == 0)) && (l % 3 == 0)) && ((unsigned long )arg == 0UL)) && (y == 0 || y == 3)) && (l == 0 || l == 3) [2024-02-02 16:07:12,934 INFO L101 nessWitnessExtractor]: Location invariant before [L699-L699] (((((0 <= y) && (y <= 3)) && (y <= 127)) && (y % 3 == 0)) && ((unsigned long )arg == 0UL)) && (y == 0 || y == 3) [2024-02-02 16:07:12,934 INFO L101 nessWitnessExtractor]: Location invariant before [L708-L708] (((((((((((((((0 <= y) && (0 <= l)) && (0 <= ly)) && (y <= 3)) && (y <= 127)) && (l <= 3)) && (l <= 127)) && (ly <= 3)) && (ly <= 127)) && (y % 3 == 0)) && (l % 3 == 0)) && (ly % 3 == 0)) && ((unsigned long )arg == 0UL)) && (y == 0 || y == 3)) && (l == 0 || l == 3)) && (ly == 0 || ly == 3) [2024-02-02 16:07:12,935 INFO L101 nessWitnessExtractor]: Location invariant before [L710-L710] (((((((((((((((0 <= l) && (0 <= ly)) && (0 <= lx)) && (l <= 3)) && (l <= 127)) && (ly <= 3)) && (ly <= 127)) && (lx <= 3)) && (lx <= 127)) && (l % 3 == 0)) && (ly % 3 == 0)) && (lx % 3 == 0)) && ((unsigned long )arg == 0UL)) && (l == 0 || l == 3)) && (ly == 0 || ly == 3)) && (lx == 0 || lx == 3) [2024-02-02 16:07:12,935 INFO L101 nessWitnessExtractor]: Location invariant before [L701-L701] (((((0 <= l) && (l <= 3)) && (l <= 127)) && (l % 3 == 0)) && ((unsigned long )arg == 0UL)) && (l == 0 || l == 3) [2024-02-02 16:07:12,935 INFO L101 nessWitnessExtractor]: Location invariant before [L693-L693] (unsigned long )arg == 0UL [2024-02-02 16:07:12,935 INFO L101 nessWitnessExtractor]: Location invariant before [L705-L705] ((((((((((0 <= y) && (0 <= l)) && (y <= 3)) && (y <= 127)) && (l <= 3)) && (l <= 127)) && (y % 3 == 0)) && (l % 3 == 0)) && ((unsigned long )arg == 0UL)) && (y == 0 || y == 3)) && (l == 0 || l == 3) [2024-02-02 16:07:12,935 INFO L101 nessWitnessExtractor]: Location invariant before [L716-L716] ((((((((((((x == 0) && (y == 0)) && (rwlock.__data.__cur_writer == 0)) && (rwlock.__data.__flags == (unsigned char)0)) && (rwlock.__data.__pad2 == (unsigned char)0)) && (rwlock.__data.__pad3 == 0U)) && (rwlock.__data.__pad4 == 0U)) && (rwlock.__data.__readers == 0U)) && (rwlock.__data.__rwelision == (signed char)0)) && (rwlock.__data.__shared == (unsigned char)0)) && (rwlock.__data.__writers == 0U)) && (rwlock.__data.__writers_futex == 0U)) && (rwlock.__data.__wrphase_futex == 0U) [2024-02-02 16:07:12,935 INFO L101 nessWitnessExtractor]: Location invariant before [L707-L707] ((((((((((0 <= l) && (0 <= ly)) && (l <= 3)) && (l <= 127)) && (ly <= 3)) && (ly <= 127)) && (l % 3 == 0)) && (ly % 3 == 0)) && ((unsigned long )arg == 0UL)) && (l == 0 || l == 3)) && (ly == 0 || ly == 3) [2024-02-02 16:07:12,935 INFO L101 nessWitnessExtractor]: Location invariant before [L691-L691] (((((0 <= x) && (x <= 3)) && (x <= 127)) && (x % 3 == 0)) && ((unsigned long )arg == 0UL)) && (x == 0 || x == 3) [2024-02-02 16:07:12,935 INFO L101 nessWitnessExtractor]: Location invariant before [L712-L712] (((((((((((((((0 <= l) && (0 <= ly)) && (0 <= lx)) && (l <= 3)) && (l <= 127)) && (ly <= 3)) && (ly <= 127)) && (lx <= 3)) && (lx <= 127)) && (l % 3 == 0)) && (ly % 3 == 0)) && (lx % 3 == 0)) && ((unsigned long )arg == 0UL)) && (l == 0 || l == 3)) && (ly == 0 || ly == 3)) && (lx == 0 || lx == 3) [2024-02-02 16:07:12,936 INFO L101 nessWitnessExtractor]: Location invariant before [L704-L704] (((((0 <= l) && (l <= 3)) && (l <= 127)) && (l % 3 == 0)) && ((unsigned long )arg == 0UL)) && (l == 0 || l == 3) [2024-02-02 16:07:12,936 INFO L101 nessWitnessExtractor]: Location invariant before [L700-L700] ((((((((((0 <= y) && (0 <= l)) && (y <= 3)) && (y <= 127)) && (l <= 3)) && (l <= 127)) && (y % 3 == 0)) && (l % 3 == 0)) && ((unsigned long )arg == 0UL)) && (y == 0 || y == 3)) && (l == 0 || l == 3) [2024-02-02 16:07:12,936 INFO L101 nessWitnessExtractor]: Location invariant after [L710-L710] (((((((((((((((0 <= l) && (0 <= ly)) && (0 <= lx)) && (l <= 3)) && (l <= 127)) && (ly <= 3)) && (ly <= 127)) && (lx <= 3)) && (lx <= 127)) && (l % 3 == 0)) && (ly % 3 == 0)) && (lx % 3 == 0)) && ((unsigned long )arg == 0UL)) && (l == 0 || l == 3)) && (ly == 0 || ly == 3)) && (lx == 0 || lx == 3) [2024-02-02 16:07:12,936 INFO L101 nessWitnessExtractor]: Location invariant after [L708-L708] (((((((((((((((0 <= y) && (0 <= l)) && (0 <= ly)) && (y <= 3)) && (y <= 127)) && (l <= 3)) && (l <= 127)) && (ly <= 3)) && (ly <= 127)) && (y % 3 == 0)) && (l % 3 == 0)) && (ly % 3 == 0)) && ((unsigned long )arg == 0UL)) && (y == 0 || y == 3)) && (l == 0 || l == 3)) && (ly == 0 || ly == 3) [2024-02-02 16:07:12,936 INFO L101 nessWitnessExtractor]: Location invariant before [L703-L703] ((((((((((0 <= y) && (0 <= l)) && (y <= 3)) && (y <= 127)) && (l <= 3)) && (l <= 127)) && (y % 3 == 0)) && (l % 3 == 0)) && ((unsigned long )arg == 0UL)) && (y == 0 || y == 3)) && (l == 0 || l == 3) [2024-02-02 16:07:12,937 INFO L101 nessWitnessExtractor]: Location invariant before [L698-L698] (unsigned long )arg == 0UL [2024-02-02 16:07:12,974 INFO L179 MainTranslator]: Built tables and reachable declarations [2024-02-02 16:07:13,226 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-atomic/read_write_lock-1-pthread.i[30919,30932] [2024-02-02 16:07:13,239 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-02-02 16:07:13,255 INFO L204 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 Start Parsing Local [2024-02-02 16:07:13,354 WARN L424 MainDispatcher]: Unable to annotate int with a witness entry [2024-02-02 16:07:13,354 WARN L424 MainDispatcher]: Unable to annotate ly = y with a witness entry Start Parsing Local Start Parsing Local [2024-02-02 16:07:13,368 WARN L424 MainDispatcher]: Unable to annotate int with a witness entry [2024-02-02 16:07:13,369 WARN L424 MainDispatcher]: Unable to annotate lx = x with a witness entry Start Parsing Local Start Parsing Local [2024-02-02 16:07:13,373 WARN L239 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread-atomic/read_write_lock-1-pthread.i[30919,30932] Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local [2024-02-02 16:07:13,448 INFO L209 PostProcessor]: Analyzing one entry point: main [2024-02-02 16:07:13,478 INFO L208 MainTranslator]: Completed translation [2024-02-02 16:07:13,479 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:13 WrapperNode [2024-02-02 16:07:13,479 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-02-02 16:07:13,480 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-02-02 16:07:13,480 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-02-02 16:07:13,480 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-02-02 16:07:13,486 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 02.02 04:07:13" (1/1) ... [2024-02-02 16:07:13,522 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 02.02 04:07:13" (1/1) ... [2024-02-02 16:07:13,608 INFO L138 Inliner]: procedures = 166, calls = 538, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 1908 [2024-02-02 16:07:13,609 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-02-02 16:07:13,609 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-02-02 16:07:13,609 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-02-02 16:07:13,610 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-02-02 16:07:13,618 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:13" (1/1) ... [2024-02-02 16:07:13,636 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:13" (1/1) ... [2024-02-02 16:07:13,644 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:13" (1/1) ... [2024-02-02 16:07:13,679 INFO L175 MemorySlicer]: Split 505 memory accesses to 6 slices as follows [2, 2, 495, 2, 2, 2]. 98 percent of accesses are in the largest equivalence class. The 13 initializations are split as follows [2, 0, 11, 0, 0, 0]. The 4 writes are split as follows [0, 1, 0, 1, 1, 1]. [2024-02-02 16:07:13,680 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:13" (1/1) ... [2024-02-02 16:07:13,680 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:13" (1/1) ... [2024-02-02 16:07:13,718 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:13" (1/1) ... [2024-02-02 16:07:13,729 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:13" (1/1) ... [2024-02-02 16:07:13,735 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:13" (1/1) ... [2024-02-02 16:07:13,748 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:13" (1/1) ... [2024-02-02 16:07:13,757 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-02-02 16:07:13,761 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-02-02 16:07:13,762 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-02-02 16:07:13,762 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-02-02 16:07:13,763 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:13" (1/1) ... [2024-02-02 16:07:13,767 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-02-02 16:07:13,773 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-02-02 16:07:13,785 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-02-02 16:07:13,802 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-02-02 16:07:13,836 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsRwLockUnlock [2024-02-02 16:07:13,836 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2024-02-02 16:07:13,837 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2024-02-02 16:07:13,837 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2024-02-02 16:07:13,837 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2024-02-02 16:07:13,837 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#4 [2024-02-02 16:07:13,837 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#5 [2024-02-02 16:07:13,837 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2024-02-02 16:07:13,837 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2024-02-02 16:07:13,837 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2024-02-02 16:07:13,838 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2024-02-02 16:07:13,838 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#4 [2024-02-02 16:07:13,838 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#5 [2024-02-02 16:07:13,838 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsRwLockReadLock [2024-02-02 16:07:13,838 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-02-02 16:07:13,838 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-02-02 16:07:13,838 INFO L130 BoogieDeclarations]: Found specification of procedure reader [2024-02-02 16:07:13,838 INFO L138 BoogieDeclarations]: Found implementation of procedure reader [2024-02-02 16:07:13,838 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2024-02-02 16:07:13,839 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsRwLockWriteLock [2024-02-02 16:07:13,839 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-02-02 16:07:13,839 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-02-02 16:07:13,839 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-02-02 16:07:13,839 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-02-02 16:07:13,839 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-02-02 16:07:13,839 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2024-02-02 16:07:13,839 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#5 [2024-02-02 16:07:13,840 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-02-02 16:07:13,840 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-02-02 16:07:13,840 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-02-02 16:07:13,840 INFO L130 BoogieDeclarations]: Found specification of procedure writer [2024-02-02 16:07:13,840 INFO L138 BoogieDeclarations]: Found implementation of procedure writer [2024-02-02 16:07:13,841 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-02-02 16:07:14,003 INFO L244 CfgBuilder]: Building ICFG [2024-02-02 16:07:14,005 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-02-02 16:07:15,169 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-02-02 16:07:15,170 INFO L293 CfgBuilder]: Performing block encoding [2024-02-02 16:07:31,735 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-02-02 16:07:31,736 INFO L320 CfgBuilder]: Removed 0 assume(true) statements. [2024-02-02 16:07:31,737 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 02.02 04:07:31 BoogieIcfgContainer [2024-02-02 16:07:31,737 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-02-02 16:07:31,740 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-02-02 16:07:31,740 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-02-02 16:07:31,742 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-02-02 16:07:31,743 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 02.02 04:07:12" (1/4) ... [2024-02-02 16:07:31,743 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@32b9895d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 02.02 04:07:31, skipping insertion in model container [2024-02-02 16:07:31,744 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 02.02 04:07:12" (2/4) ... [2024-02-02 16:07:31,744 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@32b9895d and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 02.02 04:07:31, skipping insertion in model container [2024-02-02 16:07:31,745 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 02.02 04:07:13" (3/4) ... [2024-02-02 16:07:31,745 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@32b9895d and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 02.02 04:07:31, skipping insertion in model container [2024-02-02 16:07:31,745 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 02.02 04:07:31" (4/4) ... [2024-02-02 16:07:31,746 INFO L112 eAbstractionObserver]: Analyzing ICFG read_write_lock-1-pthread.i [2024-02-02 16:07:31,761 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-02-02 16:07:31,761 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 21 error locations. [2024-02-02 16:07:31,762 INFO L518 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-02-02 16:07:31,835 INFO L144 ThreadInstanceAdder]: Constructed 4 joinOtherThreadTransitions. [2024-02-02 16:07:31,860 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 134 places, 123 transitions, 274 flow [2024-02-02 16:07:32,374 INFO L124 PetriNetUnfolderBase]: 2/119 cut-off events. [2024-02-02 16:07:32,375 INFO L125 PetriNetUnfolderBase]: For 4/4 co-relation queries the response was YES. [2024-02-02 16:07:32,380 INFO L83 FinitePrefix]: Finished finitePrefix Result has 136 conditions, 119 events. 2/119 cut-off events. For 4/4 co-relation queries the response was YES. Maximal size of possible extension queue 8. Compared 410 event pairs, 0 based on Foata normal form. 0/76 useless extension candidates. Maximal degree in co-relation 113. Up to 2 conditions per place. [2024-02-02 16:07:32,380 INFO L82 GeneralOperation]: Start removeDead. Operand has 134 places, 123 transitions, 274 flow [2024-02-02 16:07:32,386 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 128 places, 117 transitions, 255 flow [2024-02-02 16:07:32,404 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-02-02 16:07:32,425 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;@61f448, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-02-02 16:07:32,425 INFO L358 AbstractCegarLoop]: Starting to check reachability of 65 error locations. [2024-02-02 16:07:32,523 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-02-02 16:07:32,528 INFO L124 PetriNetUnfolderBase]: 0/1 cut-off events. [2024-02-02 16:07:32,528 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-02-02 16:07:32,529 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-02-02 16:07:32,529 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1] [2024-02-02 16:07:32,530 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [readerErr0ASSERT_VIOLATIONWITNESS_INVARIANT, readerErr1ASSERT_VIOLATIONWITNESS_INVARIANT, readerErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 62 more)] === [2024-02-02 16:07:32,540 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-02-02 16:07:32,541 INFO L85 PathProgramCache]: Analyzing trace with hash 126791, now seen corresponding path program 1 times [2024-02-02 16:07:32,550 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-02 16:07:32,576 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [98127296] [2024-02-02 16:07:32,576 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-02 16:07:32,577 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-02 16:07:34,542 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-02 16:07:37,255 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-02 16:07:37,255 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-02 16:07:37,256 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [98127296] [2024-02-02 16:07:37,256 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [98127296] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-02 16:07:37,256 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-02 16:07:37,257 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-02-02 16:07:37,258 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [620092413] [2024-02-02 16:07:37,258 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-02 16:07:37,265 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-02-02 16:07:37,270 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-02 16:07:37,292 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-02-02 16:07:37,293 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-02-02 16:07:37,324 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 64 out of 123 [2024-02-02 16:07:37,326 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 128 places, 117 transitions, 255 flow. Second operand has 3 states, 3 states have (on average 64.66666666666667) internal successors, (194), 3 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-02 16:07:37,329 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-02-02 16:07:37,329 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 64 of 123 [2024-02-02 16:07:37,330 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-02-02 16:07:46,856 INFO L124 PetriNetUnfolderBase]: 52245/81801 cut-off events. [2024-02-02 16:07:46,856 INFO L125 PetriNetUnfolderBase]: For 2912/2912 co-relation queries the response was YES. [2024-02-02 16:07:47,064 INFO L83 FinitePrefix]: Finished finitePrefix Result has 154366 conditions, 81801 events. 52245/81801 cut-off events. For 2912/2912 co-relation queries the response was YES. Maximal size of possible extension queue 2723. Compared 731587 event pairs, 52245 based on Foata normal form. 1874/67385 useless extension candidates. Maximal degree in co-relation 134682. Up to 70095 conditions per place. [2024-02-02 16:07:47,532 INFO L140 encePairwiseOnDemand]: 116/123 looper letters, 50 selfloop transitions, 2 changer transitions 0/112 dead transitions. [2024-02-02 16:07:47,532 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 127 places, 112 transitions, 349 flow [2024-02-02 16:07:47,533 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-02-02 16:07:47,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-02-02 16:07:47,542 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 249 transitions. [2024-02-02 16:07:47,545 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.6747967479674797 [2024-02-02 16:07:47,547 INFO L175 Difference]: Start difference. First operand has 128 places, 117 transitions, 255 flow. Second operand 3 states and 249 transitions. [2024-02-02 16:07:47,548 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 127 places, 112 transitions, 349 flow [2024-02-02 16:07:47,806 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 120 places, 112 transitions, 336 flow, removed 0 selfloop flow, removed 7 redundant places. [2024-02-02 16:07:47,808 INFO L231 Difference]: Finished difference. Result has 120 places, 112 transitions, 236 flow [2024-02-02 16:07:47,825 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=123, PETRI_DIFFERENCE_MINUEND_FLOW=232, PETRI_DIFFERENCE_MINUEND_PLACES=118, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=112, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=110, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=236, PETRI_PLACES=120, PETRI_TRANSITIONS=112} [2024-02-02 16:07:47,827 INFO L281 CegarLoopForPetriNet]: 128 programPoint places, -8 predicate places. [2024-02-02 16:07:47,828 INFO L495 AbstractCegarLoop]: Abstraction has has 120 places, 112 transitions, 236 flow [2024-02-02 16:07:47,828 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 64.66666666666667) internal successors, (194), 3 states have internal predecessors, (194), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-02 16:07:47,828 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-02-02 16:07:47,828 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1] [2024-02-02 16:07:47,828 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-02-02 16:07:47,828 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting writerErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [readerErr0ASSERT_VIOLATIONWITNESS_INVARIANT, readerErr1ASSERT_VIOLATIONWITNESS_INVARIANT, readerErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 62 more)] === [2024-02-02 16:07:47,829 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-02-02 16:07:47,829 INFO L85 PathProgramCache]: Analyzing trace with hash -513667298, now seen corresponding path program 1 times [2024-02-02 16:07:47,829 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-02 16:07:47,829 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1109786214] [2024-02-02 16:07:47,829 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-02 16:07:47,829 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-02 16:07:48,669 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-02 16:07:48,855 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-02 16:07:48,855 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-02 16:07:48,855 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1109786214] [2024-02-02 16:07:48,856 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1109786214] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-02 16:07:48,856 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-02 16:07:48,856 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-02-02 16:07:48,857 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1473915213] [2024-02-02 16:07:48,857 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-02 16:07:48,858 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-02-02 16:07:48,859 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-02 16:07:48,859 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-02-02 16:07:48,859 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-02-02 16:07:48,879 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 64 out of 123 [2024-02-02 16:07:48,880 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 120 places, 112 transitions, 236 flow. Second operand has 4 states, 4 states have (on average 65.25) internal successors, (261), 4 states have internal predecessors, (261), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-02 16:07:48,880 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-02-02 16:07:48,880 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 64 of 123 [2024-02-02 16:07:48,880 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-02-02 16:07:55,580 INFO L124 PetriNetUnfolderBase]: 43103/77159 cut-off events. [2024-02-02 16:07:55,580 INFO L125 PetriNetUnfolderBase]: For 976/976 co-relation queries the response was YES. [2024-02-02 16:07:55,748 INFO L83 FinitePrefix]: Finished finitePrefix Result has 136108 conditions, 77159 events. 43103/77159 cut-off events. For 976/976 co-relation queries the response was YES. Maximal size of possible extension queue 2463. Compared 780111 event pairs, 33489 based on Foata normal form. 2130/61040 useless extension candidates. Maximal degree in co-relation 136099. Up to 51384 conditions per place. [2024-02-02 16:07:56,097 INFO L140 encePairwiseOnDemand]: 119/123 looper letters, 86 selfloop transitions, 2 changer transitions 0/147 dead transitions. [2024-02-02 16:07:56,098 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 121 places, 147 transitions, 486 flow [2024-02-02 16:07:56,098 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-02-02 16:07:56,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-02-02 16:07:56,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 346 transitions. [2024-02-02 16:07:56,102 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.7032520325203252 [2024-02-02 16:07:56,102 INFO L175 Difference]: Start difference. First operand has 120 places, 112 transitions, 236 flow. Second operand 4 states and 346 transitions. [2024-02-02 16:07:56,102 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 121 places, 147 transitions, 486 flow [2024-02-02 16:07:56,105 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 119 places, 147 transitions, 482 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-02-02 16:07:56,107 INFO L231 Difference]: Finished difference. Result has 119 places, 110 transitions, 232 flow [2024-02-02 16:07:56,107 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=123, PETRI_DIFFERENCE_MINUEND_FLOW=228, PETRI_DIFFERENCE_MINUEND_PLACES=116, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=110, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=108, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=232, PETRI_PLACES=119, PETRI_TRANSITIONS=110} [2024-02-02 16:07:56,108 INFO L281 CegarLoopForPetriNet]: 128 programPoint places, -9 predicate places. [2024-02-02 16:07:56,108 INFO L495 AbstractCegarLoop]: Abstraction has has 119 places, 110 transitions, 232 flow [2024-02-02 16:07:56,109 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 65.25) internal successors, (261), 4 states have internal predecessors, (261), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-02 16:07:56,109 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-02-02 16:07:56,109 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2024-02-02 16:07:56,109 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-02-02 16:07:56,109 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting readerErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [readerErr0ASSERT_VIOLATIONWITNESS_INVARIANT, readerErr1ASSERT_VIOLATIONWITNESS_INVARIANT, readerErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 62 more)] === [2024-02-02 16:07:56,112 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-02-02 16:07:56,112 INFO L85 PathProgramCache]: Analyzing trace with hash 284525680, now seen corresponding path program 1 times [2024-02-02 16:07:56,112 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-02 16:07:56,113 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1974869759] [2024-02-02 16:07:56,113 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-02 16:07:56,113 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-02 16:07:57,022 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-02 16:07:57,297 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-02 16:07:57,298 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-02 16:07:57,298 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1974869759] [2024-02-02 16:07:57,298 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1974869759] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-02 16:07:57,298 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-02 16:07:57,299 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-02-02 16:07:57,299 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [473925053] [2024-02-02 16:07:57,299 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-02 16:07:57,299 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-02-02 16:07:57,299 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-02 16:07:57,300 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-02-02 16:07:57,300 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-02-02 16:07:57,346 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 65 out of 123 [2024-02-02 16:07:57,346 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 119 places, 110 transitions, 232 flow. Second operand has 4 states, 4 states have (on average 66.75) internal successors, (267), 4 states have internal predecessors, (267), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-02 16:07:57,348 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-02-02 16:07:57,348 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 65 of 123 [2024-02-02 16:07:57,348 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-02-02 16:08:02,887 INFO L124 PetriNetUnfolderBase]: 36477/67859 cut-off events. [2024-02-02 16:08:02,887 INFO L125 PetriNetUnfolderBase]: For 910/910 co-relation queries the response was YES. [2024-02-02 16:08:03,014 INFO L83 FinitePrefix]: Finished finitePrefix Result has 117897 conditions, 67859 events. 36477/67859 cut-off events. For 910/910 co-relation queries the response was YES. Maximal size of possible extension queue 2215. Compared 704061 event pairs, 1151 based on Foata normal form. 1800/54059 useless extension candidates. Maximal degree in co-relation 117884. Up to 46586 conditions per place. [2024-02-02 16:08:03,275 INFO L140 encePairwiseOnDemand]: 119/123 looper letters, 80 selfloop transitions, 2 changer transitions 0/140 dead transitions. [2024-02-02 16:08:03,276 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 120 places, 140 transitions, 460 flow [2024-02-02 16:08:03,276 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-02-02 16:08:03,276 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-02-02 16:08:03,277 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 344 transitions. [2024-02-02 16:08:03,277 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.6991869918699187 [2024-02-02 16:08:03,277 INFO L175 Difference]: Start difference. First operand has 119 places, 110 transitions, 232 flow. Second operand 4 states and 344 transitions. [2024-02-02 16:08:03,277 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 120 places, 140 transitions, 460 flow [2024-02-02 16:08:03,279 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 118 places, 140 transitions, 457 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-02-02 16:08:03,280 INFO L231 Difference]: Finished difference. Result has 118 places, 108 transitions, 229 flow [2024-02-02 16:08:03,281 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=123, PETRI_DIFFERENCE_MINUEND_FLOW=225, PETRI_DIFFERENCE_MINUEND_PLACES=115, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=108, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=106, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=229, PETRI_PLACES=118, PETRI_TRANSITIONS=108} [2024-02-02 16:08:03,281 INFO L281 CegarLoopForPetriNet]: 128 programPoint places, -10 predicate places. [2024-02-02 16:08:03,281 INFO L495 AbstractCegarLoop]: Abstraction has has 118 places, 108 transitions, 229 flow [2024-02-02 16:08:03,282 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 66.75) internal successors, (267), 4 states have internal predecessors, (267), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-02 16:08:03,282 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-02-02 16:08:03,282 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2024-02-02 16:08:03,282 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-02-02 16:08:03,282 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting writerErr1ASSERT_VIOLATIONWITNESS_INVARIANT === [readerErr0ASSERT_VIOLATIONWITNESS_INVARIANT, readerErr1ASSERT_VIOLATIONWITNESS_INVARIANT, readerErr2ASSERT_VIOLATIONWITNESS_INVARIANT (and 62 more)] === [2024-02-02 16:08:03,283 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-02-02 16:08:03,283 INFO L85 PathProgramCache]: Analyzing trace with hash 310043467, now seen corresponding path program 1 times [2024-02-02 16:08:03,283 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-02-02 16:08:03,283 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2082967217] [2024-02-02 16:08:03,283 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-02-02 16:08:03,283 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-02-02 16:08:04,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-02-02 16:08:04,553 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-02-02 16:08:04,554 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-02-02 16:08:04,554 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2082967217] [2024-02-02 16:08:04,555 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2082967217] provided 1 perfect and 0 imperfect interpolant sequences [2024-02-02 16:08:04,555 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-02-02 16:08:04,555 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-02-02 16:08:04,555 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [708944005] [2024-02-02 16:08:04,555 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-02-02 16:08:04,556 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-02-02 16:08:04,556 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-02-02 16:08:04,557 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-02-02 16:08:04,557 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2024-02-02 16:08:04,575 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 60 out of 123 [2024-02-02 16:08:04,575 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 118 places, 108 transitions, 229 flow. Second operand has 5 states, 5 states have (on average 61.4) internal successors, (307), 5 states have internal predecessors, (307), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-02-02 16:08:04,575 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-02-02 16:08:04,575 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 60 of 123 [2024-02-02 16:08:04,576 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand