./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/goblint-regression/13-privatized_31-traces-mine-vs-mutex_true.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/protection/13-privatized_31-traces-mine-vs-mutex_true.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version eb4cb34f Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/goblint-regression/13-privatized_31-traces-mine-vs-mutex_true.i ./goblint.2024-06-19_11-23-25.files/protection/13-privatized_31-traces-mine-vs-mutex_true.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --traceabstraction.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --witnessparser.only.consider.loop.invariants false --cacsl2boogietranslator.check.unreachability.of.reach_error.function false --- Real Ultimate output --- This is Ultimate 0.2.4-tmp.fs.goblint-validation-eb4cb34-m [2024-06-21 16:05:03,577 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-06-21 16:05:03,653 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-06-21 16:05:03,658 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-06-21 16:05:03,658 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-06-21 16:05:03,686 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-06-21 16:05:03,687 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-06-21 16:05:03,687 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-06-21 16:05:03,688 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-06-21 16:05:03,691 INFO L153 SettingsManager]: * Use memory slicer=true [2024-06-21 16:05:03,692 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-06-21 16:05:03,692 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-06-21 16:05:03,692 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-06-21 16:05:03,693 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-06-21 16:05:03,694 INFO L153 SettingsManager]: * Use SBE=true [2024-06-21 16:05:03,694 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-06-21 16:05:03,694 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-06-21 16:05:03,694 INFO L153 SettingsManager]: * sizeof long=4 [2024-06-21 16:05:03,695 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-06-21 16:05:03,695 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-06-21 16:05:03,695 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-06-21 16:05:03,696 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-06-21 16:05:03,696 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-06-21 16:05:03,696 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-06-21 16:05:03,696 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-06-21 16:05:03,697 INFO L153 SettingsManager]: * sizeof long double=12 [2024-06-21 16:05:03,697 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-06-21 16:05:03,697 INFO L153 SettingsManager]: * Use constant arrays=true [2024-06-21 16:05:03,698 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-06-21 16:05:03,698 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-06-21 16:05:03,699 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-06-21 16:05:03,699 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-06-21 16:05:03,699 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-21 16:05:03,700 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-06-21 16:05:03,700 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-06-21 16:05:03,700 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-06-21 16:05:03,700 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-06-21 16:05:03,700 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-06-21 16:05:03,701 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-06-21 16:05:03,701 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-06-21 16:05:03,701 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-06-21 16:05:03,701 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-06-21 16:05:03,702 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-06-21 16:05:03,702 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-21 16:05:03,993 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-06-21 16:05:04,015 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-06-21 16:05:04,018 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-06-21 16:05:04,019 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-06-21 16:05:04,019 INFO L274 PluginConnector]: Witness Parser initialized [2024-06-21 16:05:04,021 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/./goblint.2024-06-19_11-23-25.files/protection/13-privatized_31-traces-mine-vs-mutex_true.yml/witness.yml [2024-06-21 16:05:04,118 INFO L270 PluginConnector]: Initializing CDTParser... [2024-06-21 16:05:04,118 INFO L274 PluginConnector]: CDTParser initialized [2024-06-21 16:05:04,119 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/goblint-regression/13-privatized_31-traces-mine-vs-mutex_true.i [2024-06-21 16:05:05,275 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-06-21 16:05:05,485 INFO L384 CDTParser]: Found 1 translation units. [2024-06-21 16:05:05,486 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/13-privatized_31-traces-mine-vs-mutex_true.i [2024-06-21 16:05:05,500 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/2ef816182/15232530edde4bb6aace07864401cc4a/FLAG39775ce56 [2024-06-21 16:05:05,513 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/2ef816182/15232530edde4bb6aace07864401cc4a [2024-06-21 16:05:05,513 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-06-21 16:05:05,515 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-06-21 16:05:05,516 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-06-21 16:05:05,516 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-06-21 16:05:05,521 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-06-21 16:05:05,522 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 21.06 04:05:04" (1/2) ... [2024-06-21 16:05:05,523 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3edba093 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 21.06 04:05:05, skipping insertion in model container [2024-06-21 16:05:05,523 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 21.06 04:05:04" (1/2) ... [2024-06-21 16:05:05,524 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@6ab4066c and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 21.06 04:05:05, skipping insertion in model container [2024-06-21 16:05:05,525 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 21.06 04:05:05" (2/2) ... [2024-06-21 16:05:05,525 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3edba093 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:05, skipping insertion in model container [2024-06-21 16:05:05,525 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 21.06 04:05:05" (2/2) ... [2024-06-21 16:05:05,528 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-06-21 16:05:05,565 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-06-21 16:05:05,567 INFO L97 edCorrectnessWitness]: Location invariant before [L698-L698] ! multithreaded || 0 <= g [2024-06-21 16:05:05,567 INFO L103 edCorrectnessWitness]: ghost_variable B_locked = 0 [2024-06-21 16:05:05,567 INFO L103 edCorrectnessWitness]: ghost_variable multithreaded = 0 [2024-06-21 16:05:05,568 INFO L103 edCorrectnessWitness]: ghost_variable A_locked = 0 [2024-06-21 16:05:05,568 INFO L106 edCorrectnessWitness]: ghost_update [L689-L689] B_locked = 1; [2024-06-21 16:05:05,569 INFO L106 edCorrectnessWitness]: ghost_update [L700-L700] A_locked = 1; [2024-06-21 16:05:05,569 INFO L106 edCorrectnessWitness]: ghost_update [L701-L701] B_locked = 1; [2024-06-21 16:05:05,569 INFO L106 edCorrectnessWitness]: ghost_update [L699-L699] B_locked = 0; [2024-06-21 16:05:05,570 INFO L106 edCorrectnessWitness]: ghost_update [L685-L685] A_locked = 1; [2024-06-21 16:05:05,570 INFO L106 edCorrectnessWitness]: ghost_update [L703-L703] B_locked = 0; [2024-06-21 16:05:05,571 INFO L106 edCorrectnessWitness]: ghost_update [L697-L697] multithreaded = 1; [2024-06-21 16:05:05,571 INFO L106 edCorrectnessWitness]: ghost_update [L692-L692] A_locked = 0; [2024-06-21 16:05:05,571 INFO L106 edCorrectnessWitness]: ghost_update [L688-L688] B_locked = 0; [2024-06-21 16:05:05,572 INFO L106 edCorrectnessWitness]: ghost_update [L686-L686] B_locked = 1; [2024-06-21 16:05:05,572 INFO L106 edCorrectnessWitness]: ghost_update [L691-L691] B_locked = 0; [2024-06-21 16:05:05,572 INFO L106 edCorrectnessWitness]: ghost_update [L698-L698] B_locked = 1; [2024-06-21 16:05:05,572 INFO L106 edCorrectnessWitness]: ghost_update [L704-L704] A_locked = 0; [2024-06-21 16:05:05,612 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-06-21 16:05:05,948 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-21 16:05:05,963 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 Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local [2024-06-21 16:05:06,036 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-21 16:05:06,075 INFO L206 MainTranslator]: Completed translation [2024-06-21 16:05:06,076 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06 WrapperNode [2024-06-21 16:05:06,076 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-06-21 16:05:06,078 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-06-21 16:05:06,078 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-06-21 16:05:06,078 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-06-21 16:05:06,084 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (1/1) ... [2024-06-21 16:05:06,114 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (1/1) ... [2024-06-21 16:05:06,201 INFO L138 Inliner]: procedures = 162, calls = 33, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 71 [2024-06-21 16:05:06,201 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-06-21 16:05:06,202 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-06-21 16:05:06,202 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-06-21 16:05:06,202 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-06-21 16:05:06,211 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (1/1) ... [2024-06-21 16:05:06,212 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (1/1) ... [2024-06-21 16:05:06,219 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (1/1) ... [2024-06-21 16:05:06,242 INFO L175 MemorySlicer]: Split 12 memory accesses to 3 slices as follows [2, 5, 5]. 42 percent of accesses are in the largest equivalence class. The 12 initializations are split as follows [2, 5, 5]. The 0 writes are split as follows [0, 0, 0]. [2024-06-21 16:05:06,243 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (1/1) ... [2024-06-21 16:05:06,244 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (1/1) ... [2024-06-21 16:05:06,256 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (1/1) ... [2024-06-21 16:05:06,258 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (1/1) ... [2024-06-21 16:05:06,264 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (1/1) ... [2024-06-21 16:05:06,265 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (1/1) ... [2024-06-21 16:05:06,267 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-06-21 16:05:06,271 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-06-21 16:05:06,272 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-06-21 16:05:06,272 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-06-21 16:05:06,273 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (1/1) ... [2024-06-21 16:05:06,278 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-21 16:05:06,285 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-21 16:05:06,301 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-21 16:05:06,311 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-21 16:05:06,336 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2024-06-21 16:05:06,336 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-06-21 16:05:06,336 INFO L130 BoogieDeclarations]: Found specification of procedure t_fun [2024-06-21 16:05:06,337 INFO L138 BoogieDeclarations]: Found implementation of procedure t_fun [2024-06-21 16:05:06,337 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-06-21 16:05:06,337 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-06-21 16:05:06,337 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-06-21 16:05:06,337 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexUnlock [2024-06-21 16:05:06,337 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-06-21 16:05:06,337 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-06-21 16:05:06,338 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-06-21 16:05:06,446 INFO L244 CfgBuilder]: Building ICFG [2024-06-21 16:05:06,447 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-06-21 16:05:06,596 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-06-21 16:05:06,596 INFO L293 CfgBuilder]: Performing block encoding [2024-06-21 16:05:06,785 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-06-21 16:05:06,786 INFO L320 CfgBuilder]: Removed 0 assume(true) statements. [2024-06-21 16:05:06,787 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 21.06 04:05:06 BoogieIcfgContainer [2024-06-21 16:05:06,787 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-06-21 16:05:06,790 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-06-21 16:05:06,790 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-06-21 16:05:06,793 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-06-21 16:05:06,793 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 21.06 04:05:04" (1/4) ... [2024-06-21 16:05:06,794 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@20685b6b and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 21.06 04:05:06, skipping insertion in model container [2024-06-21 16:05:06,794 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 21.06 04:05:05" (2/4) ... [2024-06-21 16:05:06,794 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@20685b6b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 21.06 04:05:06, skipping insertion in model container [2024-06-21 16:05:06,794 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 04:05:06" (3/4) ... [2024-06-21 16:05:06,796 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@20685b6b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 21.06 04:05:06, skipping insertion in model container [2024-06-21 16:05:06,796 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 21.06 04:05:06" (4/4) ... [2024-06-21 16:05:06,797 INFO L112 eAbstractionObserver]: Analyzing ICFG 13-privatized_31-traces-mine-vs-mutex_true.i [2024-06-21 16:05:06,815 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-06-21 16:05:06,815 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-06-21 16:05:06,815 INFO L522 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-06-21 16:05:06,853 INFO L144 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2024-06-21 16:05:06,888 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 38 places, 34 transitions, 75 flow [2024-06-21 16:05:06,915 INFO L124 PetriNetUnfolderBase]: 0/33 cut-off events. [2024-06-21 16:05:06,915 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2024-06-21 16:05:06,917 INFO L83 FinitePrefix]: Finished finitePrefix Result has 38 conditions, 33 events. 0/33 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 28 event pairs, 0 based on Foata normal form. 0/32 useless extension candidates. Maximal degree in co-relation 0. Up to 2 conditions per place. [2024-06-21 16:05:06,917 INFO L82 GeneralOperation]: Start removeDead. Operand has 38 places, 34 transitions, 75 flow [2024-06-21 16:05:06,920 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 22 places, 18 transitions, 39 flow [2024-06-21 16:05:06,927 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-06-21 16:05:06,933 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;@324f3542, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-06-21 16:05:06,933 INFO L358 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2024-06-21 16:05:06,936 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-06-21 16:05:06,937 INFO L124 PetriNetUnfolderBase]: 0/5 cut-off events. [2024-06-21 16:05:06,937 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-06-21 16:05:06,937 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-21 16:05:06,938 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1] [2024-06-21 16:05:06,938 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-06-21 16:05:06,942 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-21 16:05:06,943 INFO L85 PathProgramCache]: Analyzing trace with hash 245394365, now seen corresponding path program 1 times [2024-06-21 16:05:06,954 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-21 16:05:06,955 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2130531517] [2024-06-21 16:05:06,956 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-21 16:05:06,956 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-21 16:05:07,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-21 16:05:07,212 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-21 16:05:07,213 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-21 16:05:07,213 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2130531517] [2024-06-21 16:05:07,214 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2130531517] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-21 16:05:07,214 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-21 16:05:07,215 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-06-21 16:05:07,217 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [704786356] [2024-06-21 16:05:07,217 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-21 16:05:07,225 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-06-21 16:05:07,229 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-21 16:05:07,259 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-06-21 16:05:07,260 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-06-21 16:05:07,272 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 12 out of 34 [2024-06-21 16:05:07,276 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 22 places, 18 transitions, 39 flow. Second operand has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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-21 16:05:07,276 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-21 16:05:07,276 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 12 of 34 [2024-06-21 16:05:07,277 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-21 16:05:07,358 INFO L124 PetriNetUnfolderBase]: 15/51 cut-off events. [2024-06-21 16:05:07,359 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2024-06-21 16:05:07,360 INFO L83 FinitePrefix]: Finished finitePrefix Result has 99 conditions, 51 events. 15/51 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 69 event pairs, 8 based on Foata normal form. 3/51 useless extension candidates. Maximal degree in co-relation 89. Up to 35 conditions per place. [2024-06-21 16:05:07,361 INFO L140 encePairwiseOnDemand]: 31/34 looper letters, 12 selfloop transitions, 2 changer transitions 0/19 dead transitions. [2024-06-21 16:05:07,362 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 24 places, 19 transitions, 69 flow [2024-06-21 16:05:07,363 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-06-21 16:05:07,366 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-06-21 16:05:07,370 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 51 transitions. [2024-06-21 16:05:07,372 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.5 [2024-06-21 16:05:07,374 INFO L175 Difference]: Start difference. First operand has 22 places, 18 transitions, 39 flow. Second operand 3 states and 51 transitions. [2024-06-21 16:05:07,375 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 24 places, 19 transitions, 69 flow [2024-06-21 16:05:07,376 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 23 places, 19 transitions, 68 flow, removed 0 selfloop flow, removed 1 redundant places. [2024-06-21 16:05:07,378 INFO L231 Difference]: Finished difference. Result has 24 places, 18 transitions, 46 flow [2024-06-21 16:05:07,380 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=34, PETRI_DIFFERENCE_MINUEND_FLOW=38, PETRI_DIFFERENCE_MINUEND_PLACES=21, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=18, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=16, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=46, PETRI_PLACES=24, PETRI_TRANSITIONS=18} [2024-06-21 16:05:07,383 INFO L281 CegarLoopForPetriNet]: 22 programPoint places, 2 predicate places. [2024-06-21 16:05:07,383 INFO L495 AbstractCegarLoop]: Abstraction has has 24 places, 18 transitions, 46 flow [2024-06-21 16:05:07,383 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 13.333333333333334) internal successors, (40), 3 states have internal predecessors, (40), 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-21 16:05:07,384 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-21 16:05:07,384 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-21 16:05:07,384 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-06-21 16:05:07,384 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-06-21 16:05:07,385 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-21 16:05:07,385 INFO L85 PathProgramCache]: Analyzing trace with hash -130121290, now seen corresponding path program 1 times [2024-06-21 16:05:07,385 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-21 16:05:07,386 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1446987251] [2024-06-21 16:05:07,386 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-21 16:05:07,386 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-21 16:05:07,404 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-21 16:05:07,463 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-21 16:05:07,464 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-21 16:05:07,464 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1446987251] [2024-06-21 16:05:07,464 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1446987251] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-21 16:05:07,465 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-21 16:05:07,465 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-06-21 16:05:07,465 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [236224022] [2024-06-21 16:05:07,465 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-21 16:05:07,466 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-06-21 16:05:07,467 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-21 16:05:07,467 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-06-21 16:05:07,467 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-06-21 16:05:07,472 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 12 out of 34 [2024-06-21 16:05:07,472 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 24 places, 18 transitions, 46 flow. Second operand has 4 states, 4 states have (on average 13.75) internal successors, (55), 4 states have internal predecessors, (55), 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-21 16:05:07,473 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-21 16:05:07,473 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 12 of 34 [2024-06-21 16:05:07,473 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-21 16:05:07,513 INFO L124 PetriNetUnfolderBase]: 12/44 cut-off events. [2024-06-21 16:05:07,514 INFO L125 PetriNetUnfolderBase]: For 7/7 co-relation queries the response was YES. [2024-06-21 16:05:07,514 INFO L83 FinitePrefix]: Finished finitePrefix Result has 96 conditions, 44 events. 12/44 cut-off events. For 7/7 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 50 event pairs, 5 based on Foata normal form. 3/44 useless extension candidates. Maximal degree in co-relation 84. Up to 20 conditions per place. [2024-06-21 16:05:07,515 INFO L140 encePairwiseOnDemand]: 30/34 looper letters, 12 selfloop transitions, 3 changer transitions 0/20 dead transitions. [2024-06-21 16:05:07,515 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 27 places, 20 transitions, 80 flow [2024-06-21 16:05:07,516 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-06-21 16:05:07,516 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2024-06-21 16:05:07,517 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 64 transitions. [2024-06-21 16:05:07,518 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.47058823529411764 [2024-06-21 16:05:07,518 INFO L175 Difference]: Start difference. First operand has 24 places, 18 transitions, 46 flow. Second operand 4 states and 64 transitions. [2024-06-21 16:05:07,518 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 27 places, 20 transitions, 80 flow [2024-06-21 16:05:07,518 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 25 places, 20 transitions, 76 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-06-21 16:05:07,519 INFO L231 Difference]: Finished difference. Result has 26 places, 18 transitions, 52 flow [2024-06-21 16:05:07,519 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=34, PETRI_DIFFERENCE_MINUEND_FLOW=42, PETRI_DIFFERENCE_MINUEND_PLACES=22, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=18, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=15, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=52, PETRI_PLACES=26, PETRI_TRANSITIONS=18} [2024-06-21 16:05:07,520 INFO L281 CegarLoopForPetriNet]: 22 programPoint places, 4 predicate places. [2024-06-21 16:05:07,520 INFO L495 AbstractCegarLoop]: Abstraction has has 26 places, 18 transitions, 52 flow [2024-06-21 16:05:07,521 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 13.75) internal successors, (55), 4 states have internal predecessors, (55), 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-21 16:05:07,521 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-21 16:05:07,521 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-21 16:05:07,521 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-06-21 16:05:07,521 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-06-21 16:05:07,521 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-21 16:05:07,521 INFO L85 PathProgramCache]: Analyzing trace with hash -834523148, now seen corresponding path program 1 times [2024-06-21 16:05:07,522 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-21 16:05:07,522 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2034941094] [2024-06-21 16:05:07,522 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-21 16:05:07,522 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-21 16:05:07,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-21 16:05:07,623 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-21 16:05:07,623 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-21 16:05:07,623 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2034941094] [2024-06-21 16:05:07,624 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2034941094] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-21 16:05:07,624 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-21 16:05:07,624 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-06-21 16:05:07,624 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1698841684] [2024-06-21 16:05:07,624 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-21 16:05:07,625 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-06-21 16:05:07,625 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-21 16:05:07,626 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-06-21 16:05:07,626 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2024-06-21 16:05:07,632 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 12 out of 34 [2024-06-21 16:05:07,633 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 26 places, 18 transitions, 52 flow. Second operand has 5 states, 5 states have (on average 14.0) internal successors, (70), 5 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-21 16:05:07,633 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-21 16:05:07,633 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 12 of 34 [2024-06-21 16:05:07,633 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-21 16:05:07,672 INFO L124 PetriNetUnfolderBase]: 9/37 cut-off events. [2024-06-21 16:05:07,672 INFO L125 PetriNetUnfolderBase]: For 14/14 co-relation queries the response was YES. [2024-06-21 16:05:07,675 INFO L83 FinitePrefix]: Finished finitePrefix Result has 83 conditions, 37 events. 9/37 cut-off events. For 14/14 co-relation queries the response was YES. Maximal size of possible extension queue 2. Compared 33 event pairs, 2 based on Foata normal form. 4/39 useless extension candidates. Maximal degree in co-relation 70. Up to 12 conditions per place. [2024-06-21 16:05:07,676 INFO L140 encePairwiseOnDemand]: 30/34 looper letters, 0 selfloop transitions, 0 changer transitions 19/19 dead transitions. [2024-06-21 16:05:07,676 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 29 places, 19 transitions, 78 flow [2024-06-21 16:05:07,676 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-06-21 16:05:07,676 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2024-06-21 16:05:07,677 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 75 transitions. [2024-06-21 16:05:07,678 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.4411764705882353 [2024-06-21 16:05:07,678 INFO L175 Difference]: Start difference. First operand has 26 places, 18 transitions, 52 flow. Second operand 5 states and 75 transitions. [2024-06-21 16:05:07,678 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 29 places, 19 transitions, 78 flow [2024-06-21 16:05:07,679 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 24 places, 19 transitions, 68 flow, removed 0 selfloop flow, removed 5 redundant places. [2024-06-21 16:05:07,679 INFO L231 Difference]: Finished difference. Result has 24 places, 0 transitions, 0 flow [2024-06-21 16:05:07,679 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=34, PETRI_DIFFERENCE_MINUEND_FLOW=36, PETRI_DIFFERENCE_MINUEND_PLACES=20, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=17, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=17, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=0, PETRI_PLACES=24, PETRI_TRANSITIONS=0} [2024-06-21 16:05:07,682 INFO L281 CegarLoopForPetriNet]: 22 programPoint places, 2 predicate places. [2024-06-21 16:05:07,682 INFO L495 AbstractCegarLoop]: Abstraction has has 24 places, 0 transitions, 0 flow [2024-06-21 16:05:07,682 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 14.0) internal successors, (70), 5 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-21 16:05:07,684 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT (1 of 2 remaining) [2024-06-21 16:05:07,687 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 2 remaining) [2024-06-21 16:05:07,687 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-06-21 16:05:07,688 INFO L445 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2024-06-21 16:05:07,691 INFO L229 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-06-21 16:05:07,692 INFO L179 ceAbstractionStarter]: Computing trace abstraction results [2024-06-21 16:05:07,696 INFO L507 ceAbstractionStarter]: Automizer considered 1 witness invariants [2024-06-21 16:05:07,696 INFO L508 ceAbstractionStarter]: WitnessConsidered=1 [2024-06-21 16:05:07,698 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 21.06 04:05:07 BasicIcfg [2024-06-21 16:05:07,698 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-06-21 16:05:07,703 INFO L158 Benchmark]: Toolchain (without parser) took 2184.14ms. Allocated memory was 151.0MB in the beginning and 182.5MB in the end (delta: 31.5MB). Free memory was 92.5MB in the beginning and 116.6MB in the end (delta: -24.1MB). Peak memory consumption was 7.4MB. Max. memory is 16.1GB. [2024-06-21 16:05:07,704 INFO L158 Benchmark]: Witness Parser took 0.19ms. Allocated memory is still 92.3MB. Free memory was 53.6MB in the beginning and 53.5MB in the end (delta: 69.9kB). There was no memory consumed. Max. memory is 16.1GB. [2024-06-21 16:05:07,705 INFO L158 Benchmark]: CDTParser took 0.17ms. Allocated memory is still 92.3MB. Free memory is still 49.7MB. There was no memory consumed. Max. memory is 16.1GB. [2024-06-21 16:05:07,705 INFO L158 Benchmark]: CACSL2BoogieTranslator took 560.33ms. Allocated memory is still 151.0MB. Free memory was 92.0MB in the beginning and 110.7MB in the end (delta: -18.7MB). Peak memory consumption was 17.9MB. Max. memory is 16.1GB. [2024-06-21 16:05:07,705 INFO L158 Benchmark]: Boogie Procedure Inliner took 124.05ms. Allocated memory is still 151.0MB. Free memory was 110.3MB in the beginning and 120.7MB in the end (delta: -10.4MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. [2024-06-21 16:05:07,706 INFO L158 Benchmark]: Boogie Preprocessor took 68.61ms. Allocated memory is still 151.0MB. Free memory was 120.7MB in the beginning and 118.1MB in the end (delta: 2.6MB). There was no memory consumed. Max. memory is 16.1GB. [2024-06-21 16:05:07,708 INFO L158 Benchmark]: RCFGBuilder took 516.19ms. Allocated memory is still 151.0MB. Free memory was 118.1MB in the beginning and 89.2MB in the end (delta: 28.8MB). Peak memory consumption was 29.4MB. Max. memory is 16.1GB. [2024-06-21 16:05:07,709 INFO L158 Benchmark]: TraceAbstraction took 908.45ms. Allocated memory was 151.0MB in the beginning and 182.5MB in the end (delta: 31.5MB). Free memory was 88.5MB in the beginning and 116.6MB in the end (delta: -28.1MB). Peak memory consumption was 5.5MB. Max. memory is 16.1GB. [2024-06-21 16:05:07,711 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.19ms. Allocated memory is still 92.3MB. Free memory was 53.6MB in the beginning and 53.5MB in the end (delta: 69.9kB). There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.17ms. Allocated memory is still 92.3MB. Free memory is still 49.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 560.33ms. Allocated memory is still 151.0MB. Free memory was 92.0MB in the beginning and 110.7MB in the end (delta: -18.7MB). Peak memory consumption was 17.9MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 124.05ms. Allocated memory is still 151.0MB. Free memory was 110.3MB in the beginning and 120.7MB in the end (delta: -10.4MB). Peak memory consumption was 6.3MB. Max. memory is 16.1GB. * Boogie Preprocessor took 68.61ms. Allocated memory is still 151.0MB. Free memory was 120.7MB in the beginning and 118.1MB in the end (delta: 2.6MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 516.19ms. Allocated memory is still 151.0MB. Free memory was 118.1MB in the beginning and 89.2MB in the end (delta: 28.8MB). Peak memory consumption was 29.4MB. Max. memory is 16.1GB. * TraceAbstraction took 908.45ms. Allocated memory was 151.0MB in the beginning and 182.5MB in the end (delta: 31.5MB). Free memory was 88.5MB in the beginning and 116.6MB in the end (delta: -28.1MB). Peak memory consumption was 5.5MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 698]: 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 3 procedures, 50 locations, 2 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: 0.8s, OverallIterations: 3, TraceHistogramMax: 1, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 25 SdHoareTripleChecker+Valid, 0.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 17 mSDsluCounter, 5 SdHoareTripleChecker+Invalid, 0.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 1 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 99 IncrementalHoareTripleChecker+Invalid, 100 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 1 mSolverCounterUnsat, 5 mSDtfsCounter, 99 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 6 GetRequests, 0 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=52occurred in iteration=2, InterpolantAutomatonStates: 12, 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.3s InterpolantComputationTime, 29 NumberOfCodeBlocks, 29 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 26 ConstructedInterpolants, 0 QuantifiedInterpolants, 78 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 3 InterpolantComputations, 3 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 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2024-06-21 16:05:07,739 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE