./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/goblint-regression/13-privatized_24-multiple-protecting_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/mutex-meet-nonrel/13-privatized_24-multiple-protecting_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_24-multiple-protecting_true.i ./goblint.2024-06-19_11-23-25.files/mutex-meet-nonrel/13-privatized_24-multiple-protecting_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 20:25:44,566 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-06-21 20:25:44,667 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2024-06-21 20:25:44,674 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-06-21 20:25:44,675 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-06-21 20:25:44,718 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-06-21 20:25:44,719 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-06-21 20:25:44,719 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-06-21 20:25:44,720 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2024-06-21 20:25:44,723 INFO L153 SettingsManager]: * Use memory slicer=true [2024-06-21 20:25:44,724 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-06-21 20:25:44,724 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-06-21 20:25:44,725 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-06-21 20:25:44,726 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-06-21 20:25:44,727 INFO L153 SettingsManager]: * Use SBE=true [2024-06-21 20:25:44,727 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-06-21 20:25:44,727 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-06-21 20:25:44,727 INFO L153 SettingsManager]: * sizeof long=4 [2024-06-21 20:25:44,728 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-06-21 20:25:44,728 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-06-21 20:25:44,728 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-06-21 20:25:44,729 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-06-21 20:25:44,729 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-06-21 20:25:44,729 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-06-21 20:25:44,729 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-06-21 20:25:44,729 INFO L153 SettingsManager]: * sizeof long double=12 [2024-06-21 20:25:44,730 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-06-21 20:25:44,730 INFO L153 SettingsManager]: * Use constant arrays=true [2024-06-21 20:25:44,731 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-06-21 20:25:44,731 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-06-21 20:25:44,732 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-06-21 20:25:44,732 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-06-21 20:25:44,732 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-21 20:25:44,733 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-06-21 20:25:44,733 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-06-21 20:25:44,733 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-06-21 20:25:44,733 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-06-21 20:25:44,734 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-06-21 20:25:44,734 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-06-21 20:25:44,734 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-06-21 20:25:44,734 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-06-21 20:25:44,734 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-06-21 20:25:44,735 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-06-21 20:25:44,735 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 20:25:44,988 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-06-21 20:25:45,009 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-06-21 20:25:45,013 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-06-21 20:25:45,014 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-06-21 20:25:45,014 INFO L274 PluginConnector]: Witness Parser initialized [2024-06-21 20:25:45,015 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/./goblint.2024-06-19_11-23-25.files/mutex-meet-nonrel/13-privatized_24-multiple-protecting_true.yml/witness.yml [2024-06-21 20:25:45,197 INFO L270 PluginConnector]: Initializing CDTParser... [2024-06-21 20:25:45,197 INFO L274 PluginConnector]: CDTParser initialized [2024-06-21 20:25:45,198 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/goblint-regression/13-privatized_24-multiple-protecting_true.i [2024-06-21 20:25:46,395 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-06-21 20:25:46,614 INFO L384 CDTParser]: Found 1 translation units. [2024-06-21 20:25:46,615 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/13-privatized_24-multiple-protecting_true.i [2024-06-21 20:25:46,632 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/aa731019a/d0bd2d890ef74107b17142703c3ae269/FLAGc8879ec9c [2024-06-21 20:25:46,649 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/aa731019a/d0bd2d890ef74107b17142703c3ae269 [2024-06-21 20:25:46,650 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-06-21 20:25:46,651 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-06-21 20:25:46,654 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-06-21 20:25:46,654 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-06-21 20:25:46,658 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-06-21 20:25:46,659 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 21.06 08:25:45" (1/2) ... [2024-06-21 20:25:46,660 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7255efe6 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 21.06 08:25:46, skipping insertion in model container [2024-06-21 20:25:46,660 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 21.06 08:25:45" (1/2) ... [2024-06-21 20:25:46,662 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@11d3d2b7 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 21.06 08:25:46, skipping insertion in model container [2024-06-21 20:25:46,663 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 21.06 08:25:46" (2/2) ... [2024-06-21 20:25:46,663 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7255efe6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:46, skipping insertion in model container [2024-06-21 20:25:46,664 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 21.06 08:25:46" (2/2) ... [2024-06-21 20:25:46,664 INFO L83 nessWitnessExtractor]: Extracting all invariants from correctness witness [2024-06-21 20:25:46,715 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-06-21 20:25:46,716 INFO L97 edCorrectnessWitness]: Location invariant before [L707-L707] ((((! multithreaded || (mutex2_locked || g2 == 0)) && (! multithreaded || (g1 == 0 || g1 == 1))) && (! multithreaded || (mutex1_locked || g1 == 0))) && (! multithreaded || (__global_lock_locked || ((g1 == 0 || g1 == 1) && (g2 == 0 || g2 == 1))))) && (! multithreaded || (g2 == 0 || g2 == 1)) [2024-06-21 20:25:46,716 INFO L103 edCorrectnessWitness]: ghost_variable mutex1_locked = 0 [2024-06-21 20:25:46,717 INFO L103 edCorrectnessWitness]: ghost_variable __global_lock_locked = 0 [2024-06-21 20:25:46,717 INFO L103 edCorrectnessWitness]: ghost_variable multithreaded = 0 [2024-06-21 20:25:46,717 INFO L103 edCorrectnessWitness]: ghost_variable mutex2_locked = 0 [2024-06-21 20:25:46,718 INFO L106 edCorrectnessWitness]: ghost_update [L695-L695] __global_lock_locked = 1; [2024-06-21 20:25:46,718 INFO L106 edCorrectnessWitness]: ghost_update [L708-L708] __global_lock_locked = 1; [2024-06-21 20:25:46,718 INFO L106 edCorrectnessWitness]: ghost_update [L698-L698] __global_lock_locked = 1; [2024-06-21 20:25:46,718 INFO L106 edCorrectnessWitness]: ghost_update [L707-L707] mutex1_locked = 1; [2024-06-21 20:25:46,718 INFO L106 edCorrectnessWitness]: ghost_update [L714-L714] __global_lock_locked = 0; [2024-06-21 20:25:46,719 INFO L106 edCorrectnessWitness]: ghost_update [L717-L717] __global_lock_locked = 0; [2024-06-21 20:25:46,719 INFO L106 edCorrectnessWitness]: ghost_update [L686-L686] mutex1_locked = 1; [2024-06-21 20:25:46,719 INFO L106 edCorrectnessWitness]: ghost_update [L719-L719] __global_lock_locked = 1; [2024-06-21 20:25:46,719 INFO L106 edCorrectnessWitness]: ghost_update [L712-L712] __global_lock_locked = 1; [2024-06-21 20:25:46,719 INFO L106 edCorrectnessWitness]: ghost_update [L722-L722] mutex1_locked = 0; [2024-06-21 20:25:46,719 INFO L106 edCorrectnessWitness]: ghost_update [L718-L718] mutex2_locked = 0; [2024-06-21 20:25:46,720 INFO L106 edCorrectnessWitness]: ghost_update [L715-L715] __global_lock_locked = 1; [2024-06-21 20:25:46,720 INFO L106 edCorrectnessWitness]: ghost_update [L687-L687] __global_lock_locked = 1; [2024-06-21 20:25:46,720 INFO L106 edCorrectnessWitness]: ghost_update [L701-L701] mutex2_locked = 0; [2024-06-21 20:25:46,720 INFO L106 edCorrectnessWitness]: ghost_update [L700-L700] __global_lock_locked = 0; [2024-06-21 20:25:46,721 INFO L106 edCorrectnessWitness]: ghost_update [L690-L690] __global_lock_locked = 1; [2024-06-21 20:25:46,721 INFO L106 edCorrectnessWitness]: ghost_update [L694-L694] mutex2_locked = 1; [2024-06-21 20:25:46,721 INFO L106 edCorrectnessWitness]: ghost_update [L692-L692] __global_lock_locked = 0; [2024-06-21 20:25:46,721 INFO L106 edCorrectnessWitness]: ghost_update [L711-L711] mutex2_locked = 1; [2024-06-21 20:25:46,721 INFO L106 edCorrectnessWitness]: ghost_update [L721-L721] __global_lock_locked = 0; [2024-06-21 20:25:46,722 INFO L106 edCorrectnessWitness]: ghost_update [L706-L706] multithreaded = 1; [2024-06-21 20:25:46,722 INFO L106 edCorrectnessWitness]: ghost_update [L693-L693] mutex1_locked = 0; [2024-06-21 20:25:46,722 INFO L106 edCorrectnessWitness]: ghost_update [L710-L710] __global_lock_locked = 0; [2024-06-21 20:25:46,722 INFO L106 edCorrectnessWitness]: ghost_update [L689-L689] __global_lock_locked = 0; [2024-06-21 20:25:46,722 INFO L106 edCorrectnessWitness]: ghost_update [L697-L697] __global_lock_locked = 0; [2024-06-21 20:25:46,762 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-06-21 20:25:47,031 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-21 20:25:47,042 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 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 20:25:47,126 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-06-21 20:25:47,159 INFO L206 MainTranslator]: Completed translation [2024-06-21 20:25:47,159 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47 WrapperNode [2024-06-21 20:25:47,160 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-06-21 20:25:47,161 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-06-21 20:25:47,162 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-06-21 20:25:47,163 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-06-21 20:25:47,170 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (1/1) ... [2024-06-21 20:25:47,202 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (1/1) ... [2024-06-21 20:25:47,235 INFO L138 Inliner]: procedures = 162, calls = 54, calls flagged for inlining = 7, calls inlined = 10, statements flattened = 128 [2024-06-21 20:25:47,235 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-06-21 20:25:47,236 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-06-21 20:25:47,237 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-06-21 20:25:47,237 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-06-21 20:25:47,246 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (1/1) ... [2024-06-21 20:25:47,247 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (1/1) ... [2024-06-21 20:25:47,260 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (1/1) ... [2024-06-21 20:25:47,280 INFO L175 MemorySlicer]: Split 17 memory accesses to 4 slices as follows [2, 5, 5, 5]. 29 percent of accesses are in the largest equivalence class. The 17 initializations are split as follows [2, 5, 5, 5]. The 0 writes are split as follows [0, 0, 0, 0]. [2024-06-21 20:25:47,286 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (1/1) ... [2024-06-21 20:25:47,286 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (1/1) ... [2024-06-21 20:25:47,290 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (1/1) ... [2024-06-21 20:25:47,297 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (1/1) ... [2024-06-21 20:25:47,299 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (1/1) ... [2024-06-21 20:25:47,304 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (1/1) ... [2024-06-21 20:25:47,307 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-06-21 20:25:47,312 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-06-21 20:25:47,312 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-06-21 20:25:47,312 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-06-21 20:25:47,313 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (1/1) ... [2024-06-21 20:25:47,318 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-06-21 20:25:47,325 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2024-06-21 20:25:47,341 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 20:25:47,360 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 20:25:47,372 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2024-06-21 20:25:47,373 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-06-21 20:25:47,373 INFO L130 BoogieDeclarations]: Found specification of procedure t_fun [2024-06-21 20:25:47,373 INFO L138 BoogieDeclarations]: Found implementation of procedure t_fun [2024-06-21 20:25:47,373 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2024-06-21 20:25:47,374 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2024-06-21 20:25:47,374 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2024-06-21 20:25:47,374 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2024-06-21 20:25:47,374 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexUnlock [2024-06-21 20:25:47,375 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-06-21 20:25:47,378 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-06-21 20:25:47,379 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 20:25:47,515 INFO L244 CfgBuilder]: Building ICFG [2024-06-21 20:25:47,516 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-06-21 20:25:47,795 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-06-21 20:25:47,795 INFO L293 CfgBuilder]: Performing block encoding [2024-06-21 20:25:48,006 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-06-21 20:25:48,006 INFO L320 CfgBuilder]: Removed 0 assume(true) statements. [2024-06-21 20:25:48,007 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 21.06 08:25:48 BoogieIcfgContainer [2024-06-21 20:25:48,007 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-06-21 20:25:48,010 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-06-21 20:25:48,010 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-06-21 20:25:48,013 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-06-21 20:25:48,013 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 21.06 08:25:45" (1/4) ... [2024-06-21 20:25:48,013 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68e63891 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 21.06 08:25:48, skipping insertion in model container [2024-06-21 20:25:48,014 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 21.06 08:25:46" (2/4) ... [2024-06-21 20:25:48,018 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68e63891 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 21.06 08:25:48, skipping insertion in model container [2024-06-21 20:25:48,019 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 21.06 08:25:47" (3/4) ... [2024-06-21 20:25:48,019 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68e63891 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 21.06 08:25:48, skipping insertion in model container [2024-06-21 20:25:48,019 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 21.06 08:25:48" (4/4) ... [2024-06-21 20:25:48,020 INFO L112 eAbstractionObserver]: Analyzing ICFG 13-privatized_24-multiple-protecting_true.i [2024-06-21 20:25:48,037 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-06-21 20:25:48,037 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-06-21 20:25:48,037 INFO L522 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-06-21 20:25:48,075 INFO L144 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2024-06-21 20:25:48,111 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 62 places, 58 transitions, 123 flow [2024-06-21 20:25:48,145 INFO L124 PetriNetUnfolderBase]: 0/57 cut-off events. [2024-06-21 20:25:48,146 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2024-06-21 20:25:48,147 INFO L83 FinitePrefix]: Finished finitePrefix Result has 62 conditions, 57 events. 0/57 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 53 event pairs, 0 based on Foata normal form. 0/56 useless extension candidates. Maximal degree in co-relation 0. Up to 2 conditions per place. [2024-06-21 20:25:48,148 INFO L82 GeneralOperation]: Start removeDead. Operand has 62 places, 58 transitions, 123 flow [2024-06-21 20:25:48,152 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 34 places, 30 transitions, 63 flow [2024-06-21 20:25:48,169 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-06-21 20:25:48,176 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;@4f1f3bcc, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-06-21 20:25:48,176 INFO L358 AbstractCegarLoop]: Starting to check reachability of 2 error locations. [2024-06-21 20:25:48,180 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-06-21 20:25:48,180 INFO L124 PetriNetUnfolderBase]: 0/5 cut-off events. [2024-06-21 20:25:48,180 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-06-21 20:25:48,181 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-21 20:25:48,181 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1] [2024-06-21 20:25:48,182 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-06-21 20:25:48,186 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-21 20:25:48,186 INFO L85 PathProgramCache]: Analyzing trace with hash 446008547, now seen corresponding path program 1 times [2024-06-21 20:25:48,195 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-21 20:25:48,195 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2091682239] [2024-06-21 20:25:48,195 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-21 20:25:48,196 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-21 20:25:48,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-21 20:25:48,503 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 20:25:48,504 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-21 20:25:48,504 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2091682239] [2024-06-21 20:25:48,505 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2091682239] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-21 20:25:48,505 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-21 20:25:48,505 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-06-21 20:25:48,506 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1489073001] [2024-06-21 20:25:48,507 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-21 20:25:48,515 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-06-21 20:25:48,520 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-21 20:25:48,547 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-06-21 20:25:48,547 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-06-21 20:25:48,558 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 19 out of 58 [2024-06-21 20:25:48,561 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 34 places, 30 transitions, 63 flow. Second operand has 3 states, 3 states have (on average 20.333333333333332) internal successors, (61), 3 states have internal predecessors, (61), 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 20:25:48,561 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-21 20:25:48,562 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 19 of 58 [2024-06-21 20:25:48,562 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-21 20:25:48,642 INFO L124 PetriNetUnfolderBase]: 31/103 cut-off events. [2024-06-21 20:25:48,642 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2024-06-21 20:25:48,644 INFO L83 FinitePrefix]: Finished finitePrefix Result has 191 conditions, 103 events. 31/103 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 155 event pairs, 16 based on Foata normal form. 3/103 useless extension candidates. Maximal degree in co-relation 181. Up to 75 conditions per place. [2024-06-21 20:25:48,645 INFO L140 encePairwiseOnDemand]: 55/58 looper letters, 20 selfloop transitions, 2 changer transitions 0/31 dead transitions. [2024-06-21 20:25:48,645 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 36 places, 31 transitions, 109 flow [2024-06-21 20:25:48,648 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-06-21 20:25:48,651 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2024-06-21 20:25:48,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 80 transitions. [2024-06-21 20:25:48,657 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.45977011494252873 [2024-06-21 20:25:48,659 INFO L175 Difference]: Start difference. First operand has 34 places, 30 transitions, 63 flow. Second operand 3 states and 80 transitions. [2024-06-21 20:25:48,659 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 36 places, 31 transitions, 109 flow [2024-06-21 20:25:48,661 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 35 places, 31 transitions, 108 flow, removed 0 selfloop flow, removed 1 redundant places. [2024-06-21 20:25:48,663 INFO L231 Difference]: Finished difference. Result has 36 places, 30 transitions, 70 flow [2024-06-21 20:25:48,665 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=58, PETRI_DIFFERENCE_MINUEND_FLOW=62, PETRI_DIFFERENCE_MINUEND_PLACES=33, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=30, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=28, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=70, PETRI_PLACES=36, PETRI_TRANSITIONS=30} [2024-06-21 20:25:48,669 INFO L281 CegarLoopForPetriNet]: 34 programPoint places, 2 predicate places. [2024-06-21 20:25:48,669 INFO L495 AbstractCegarLoop]: Abstraction has has 36 places, 30 transitions, 70 flow [2024-06-21 20:25:48,669 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 20.333333333333332) internal successors, (61), 3 states have internal predecessors, (61), 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 20:25:48,669 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-21 20:25:48,670 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-21 20:25:48,670 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-06-21 20:25:48,670 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-06-21 20:25:48,670 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-21 20:25:48,671 INFO L85 PathProgramCache]: Analyzing trace with hash 1678425963, now seen corresponding path program 1 times [2024-06-21 20:25:48,671 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-21 20:25:48,671 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [746050939] [2024-06-21 20:25:48,671 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-21 20:25:48,671 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-21 20:25:48,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-21 20:25:48,918 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 20:25:48,918 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-21 20:25:48,918 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [746050939] [2024-06-21 20:25:48,919 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [746050939] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-21 20:25:48,920 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-21 20:25:48,920 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-06-21 20:25:48,920 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [898675887] [2024-06-21 20:25:48,920 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-21 20:25:48,922 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-06-21 20:25:48,922 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-21 20:25:48,923 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-06-21 20:25:48,924 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2024-06-21 20:25:48,944 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 18 out of 58 [2024-06-21 20:25:48,945 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 36 places, 30 transitions, 70 flow. Second operand has 6 states, 6 states have (on average 19.333333333333332) internal successors, (116), 6 states have internal predecessors, (116), 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 20:25:48,945 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-21 20:25:48,946 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 18 of 58 [2024-06-21 20:25:48,946 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-21 20:25:49,072 INFO L124 PetriNetUnfolderBase]: 23/84 cut-off events. [2024-06-21 20:25:49,072 INFO L125 PetriNetUnfolderBase]: For 14/14 co-relation queries the response was YES. [2024-06-21 20:25:49,073 INFO L83 FinitePrefix]: Finished finitePrefix Result has 170 conditions, 84 events. 23/84 cut-off events. For 14/14 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 102 event pairs, 6 based on Foata normal form. 8/90 useless extension candidates. Maximal degree in co-relation 157. Up to 35 conditions per place. [2024-06-21 20:25:49,074 INFO L140 encePairwiseOnDemand]: 50/58 looper letters, 20 selfloop transitions, 7 changer transitions 0/35 dead transitions. [2024-06-21 20:25:49,075 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 42 places, 35 transitions, 134 flow [2024-06-21 20:25:49,075 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-06-21 20:25:49,075 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2024-06-21 20:25:49,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 156 transitions. [2024-06-21 20:25:49,081 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.3842364532019704 [2024-06-21 20:25:49,082 INFO L175 Difference]: Start difference. First operand has 36 places, 30 transitions, 70 flow. Second operand 7 states and 156 transitions. [2024-06-21 20:25:49,082 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 42 places, 35 transitions, 134 flow [2024-06-21 20:25:49,084 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 40 places, 35 transitions, 130 flow, removed 0 selfloop flow, removed 2 redundant places. [2024-06-21 20:25:49,085 INFO L231 Difference]: Finished difference. Result has 43 places, 30 transitions, 94 flow [2024-06-21 20:25:49,086 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=58, PETRI_DIFFERENCE_MINUEND_FLOW=66, PETRI_DIFFERENCE_MINUEND_PLACES=34, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=30, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=7, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=23, PETRI_DIFFERENCE_SUBTRAHEND_STATES=7, PETRI_FLOW=94, PETRI_PLACES=43, PETRI_TRANSITIONS=30} [2024-06-21 20:25:49,086 INFO L281 CegarLoopForPetriNet]: 34 programPoint places, 9 predicate places. [2024-06-21 20:25:49,087 INFO L495 AbstractCegarLoop]: Abstraction has has 43 places, 30 transitions, 94 flow [2024-06-21 20:25:49,090 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 19.333333333333332) internal successors, (116), 6 states have internal predecessors, (116), 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 20:25:49,090 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-21 20:25:49,090 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-21 20:25:49,090 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-06-21 20:25:49,091 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-06-21 20:25:49,091 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-21 20:25:49,091 INFO L85 PathProgramCache]: Analyzing trace with hash 1147197609, now seen corresponding path program 1 times [2024-06-21 20:25:49,092 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-21 20:25:49,093 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1229652338] [2024-06-21 20:25:49,093 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-21 20:25:49,093 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-21 20:25:49,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-21 20:25:49,347 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-06-21 20:25:49,347 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-21 20:25:49,347 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1229652338] [2024-06-21 20:25:49,347 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1229652338] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-21 20:25:49,347 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-21 20:25:49,348 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-06-21 20:25:49,348 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1505649735] [2024-06-21 20:25:49,348 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-21 20:25:49,348 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2024-06-21 20:25:49,348 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-21 20:25:49,349 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-06-21 20:25:49,349 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2024-06-21 20:25:49,358 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 19 out of 58 [2024-06-21 20:25:49,359 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 30 transitions, 94 flow. Second operand has 7 states, 7 states have (on average 21.142857142857142) internal successors, (148), 7 states have internal predecessors, (148), 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 20:25:49,359 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-21 20:25:49,359 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 19 of 58 [2024-06-21 20:25:49,359 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-21 20:25:49,433 INFO L124 PetriNetUnfolderBase]: 22/81 cut-off events. [2024-06-21 20:25:49,434 INFO L125 PetriNetUnfolderBase]: For 80/80 co-relation queries the response was YES. [2024-06-21 20:25:49,434 INFO L83 FinitePrefix]: Finished finitePrefix Result has 200 conditions, 81 events. 22/81 cut-off events. For 80/80 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 94 event pairs, 10 based on Foata normal form. 1/80 useless extension candidates. Maximal degree in co-relation 183. Up to 30 conditions per place. [2024-06-21 20:25:49,435 INFO L140 encePairwiseOnDemand]: 50/58 looper letters, 19 selfloop transitions, 7 changer transitions 0/35 dead transitions. [2024-06-21 20:25:49,435 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 49 places, 35 transitions, 156 flow [2024-06-21 20:25:49,435 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2024-06-21 20:25:49,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2024-06-21 20:25:49,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 160 transitions. [2024-06-21 20:25:49,437 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.39408866995073893 [2024-06-21 20:25:49,437 INFO L175 Difference]: Start difference. First operand has 43 places, 30 transitions, 94 flow. Second operand 7 states and 160 transitions. [2024-06-21 20:25:49,437 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 49 places, 35 transitions, 156 flow [2024-06-21 20:25:49,438 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 43 places, 35 transitions, 142 flow, removed 0 selfloop flow, removed 6 redundant places. [2024-06-21 20:25:49,439 INFO L231 Difference]: Finished difference. Result has 44 places, 30 transitions, 98 flow [2024-06-21 20:25:49,439 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=58, PETRI_DIFFERENCE_MINUEND_FLOW=80, PETRI_DIFFERENCE_MINUEND_PLACES=37, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=30, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=7, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=23, PETRI_DIFFERENCE_SUBTRAHEND_STATES=7, PETRI_FLOW=98, PETRI_PLACES=44, PETRI_TRANSITIONS=30} [2024-06-21 20:25:49,439 INFO L281 CegarLoopForPetriNet]: 34 programPoint places, 10 predicate places. [2024-06-21 20:25:49,440 INFO L495 AbstractCegarLoop]: Abstraction has has 44 places, 30 transitions, 98 flow [2024-06-21 20:25:49,440 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 21.142857142857142) internal successors, (148), 7 states have internal predecessors, (148), 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 20:25:49,440 INFO L200 CegarLoopForPetriNet]: Found error trace [2024-06-21 20:25:49,440 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-06-21 20:25:49,440 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-06-21 20:25:49,441 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-06-21 20:25:49,441 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-06-21 20:25:49,441 INFO L85 PathProgramCache]: Analyzing trace with hash -1257679106, now seen corresponding path program 1 times [2024-06-21 20:25:49,441 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-06-21 20:25:49,441 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [352019362] [2024-06-21 20:25:49,442 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-06-21 20:25:49,442 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-06-21 20:25:49,459 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-06-21 20:25:49,713 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 20:25:49,713 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-06-21 20:25:49,713 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [352019362] [2024-06-21 20:25:49,714 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [352019362] provided 1 perfect and 0 imperfect interpolant sequences [2024-06-21 20:25:49,714 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-06-21 20:25:49,714 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-06-21 20:25:49,714 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [989552131] [2024-06-21 20:25:49,714 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-06-21 20:25:49,715 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2024-06-21 20:25:49,716 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-06-21 20:25:49,717 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2024-06-21 20:25:49,717 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2024-06-21 20:25:49,727 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 18 out of 58 [2024-06-21 20:25:49,728 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 44 places, 30 transitions, 98 flow. Second operand has 7 states, 7 states have (on average 20.428571428571427) internal successors, (143), 7 states have internal predecessors, (143), 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 20:25:49,728 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-06-21 20:25:49,728 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 18 of 58 [2024-06-21 20:25:49,729 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-06-21 20:25:49,821 INFO L124 PetriNetUnfolderBase]: 17/69 cut-off events. [2024-06-21 20:25:49,822 INFO L125 PetriNetUnfolderBase]: For 97/97 co-relation queries the response was YES. [2024-06-21 20:25:49,822 INFO L83 FinitePrefix]: Finished finitePrefix Result has 158 conditions, 69 events. 17/69 cut-off events. For 97/97 co-relation queries the response was YES. Maximal size of possible extension queue 2. Compared 64 event pairs, 5 based on Foata normal form. 6/73 useless extension candidates. Maximal degree in co-relation 140. Up to 18 conditions per place. [2024-06-21 20:25:49,823 INFO L140 encePairwiseOnDemand]: 49/58 looper letters, 0 selfloop transitions, 0 changer transitions 34/34 dead transitions. [2024-06-21 20:25:49,823 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 50 places, 34 transitions, 148 flow [2024-06-21 20:25:49,824 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2024-06-21 20:25:49,824 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2024-06-21 20:25:49,827 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 173 transitions. [2024-06-21 20:25:49,828 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.3728448275862069 [2024-06-21 20:25:49,828 INFO L175 Difference]: Start difference. First operand has 44 places, 30 transitions, 98 flow. Second operand 8 states and 173 transitions. [2024-06-21 20:25:49,828 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 50 places, 34 transitions, 148 flow [2024-06-21 20:25:49,830 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 39 places, 34 transitions, 122 flow, removed 0 selfloop flow, removed 11 redundant places. [2024-06-21 20:25:49,830 INFO L231 Difference]: Finished difference. Result has 39 places, 0 transitions, 0 flow [2024-06-21 20:25:49,830 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=58, PETRI_DIFFERENCE_MINUEND_FLOW=60, PETRI_DIFFERENCE_MINUEND_PLACES=32, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=29, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=29, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=0, PETRI_PLACES=39, PETRI_TRANSITIONS=0} [2024-06-21 20:25:49,832 INFO L281 CegarLoopForPetriNet]: 34 programPoint places, 5 predicate places. [2024-06-21 20:25:49,832 INFO L495 AbstractCegarLoop]: Abstraction has has 39 places, 0 transitions, 0 flow [2024-06-21 20:25:49,832 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 20.428571428571427) internal successors, (143), 7 states have internal predecessors, (143), 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 20:25:49,835 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT (1 of 2 remaining) [2024-06-21 20:25:49,835 INFO L805 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 2 remaining) [2024-06-21 20:25:49,835 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-06-21 20:25:49,836 INFO L445 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1] [2024-06-21 20:25:49,839 INFO L229 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-06-21 20:25:49,839 INFO L179 ceAbstractionStarter]: Computing trace abstraction results [2024-06-21 20:25:49,847 INFO L507 ceAbstractionStarter]: Automizer considered 1 witness invariants [2024-06-21 20:25:49,847 INFO L508 ceAbstractionStarter]: WitnessConsidered=1 [2024-06-21 20:25:49,848 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 21.06 08:25:49 BasicIcfg [2024-06-21 20:25:49,848 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-06-21 20:25:49,853 INFO L158 Benchmark]: Toolchain (without parser) took 3202.13ms. Allocated memory was 151.0MB in the beginning and 218.1MB in the end (delta: 67.1MB). Free memory was 93.0MB in the beginning and 138.2MB in the end (delta: -45.2MB). Peak memory consumption was 24.3MB. Max. memory is 16.1GB. [2024-06-21 20:25:49,853 INFO L158 Benchmark]: Witness Parser took 0.94ms. Allocated memory is still 151.0MB. Free memory is still 116.3MB. There was no memory consumed. Max. memory is 16.1GB. [2024-06-21 20:25:49,854 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 151.0MB. Free memory is still 110.8MB. There was no memory consumed. Max. memory is 16.1GB. [2024-06-21 20:25:49,854 INFO L158 Benchmark]: CACSL2BoogieTranslator took 506.23ms. Allocated memory is still 151.0MB. Free memory was 92.7MB in the beginning and 63.0MB in the end (delta: 29.7MB). Peak memory consumption was 29.4MB. Max. memory is 16.1GB. [2024-06-21 20:25:49,855 INFO L158 Benchmark]: Boogie Procedure Inliner took 74.56ms. Allocated memory is still 151.0MB. Free memory was 63.0MB in the beginning and 60.5MB in the end (delta: 2.5MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2024-06-21 20:25:49,858 INFO L158 Benchmark]: Boogie Preprocessor took 75.12ms. Allocated memory is still 151.0MB. Free memory was 60.5MB in the beginning and 58.0MB in the end (delta: 2.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-06-21 20:25:49,859 INFO L158 Benchmark]: RCFGBuilder took 695.40ms. Allocated memory is still 151.0MB. Free memory was 58.0MB in the beginning and 89.0MB in the end (delta: -31.0MB). Peak memory consumption was 23.1MB. Max. memory is 16.1GB. [2024-06-21 20:25:49,861 INFO L158 Benchmark]: TraceAbstraction took 1838.82ms. Allocated memory was 151.0MB in the beginning and 218.1MB in the end (delta: 67.1MB). Free memory was 88.5MB in the beginning and 138.2MB in the end (delta: -49.8MB). Peak memory consumption was 20.5MB. Max. memory is 16.1GB. [2024-06-21 20:25:49,862 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.94ms. Allocated memory is still 151.0MB. Free memory is still 116.3MB. There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.11ms. Allocated memory is still 151.0MB. Free memory is still 110.8MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 506.23ms. Allocated memory is still 151.0MB. Free memory was 92.7MB in the beginning and 63.0MB in the end (delta: 29.7MB). Peak memory consumption was 29.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 74.56ms. Allocated memory is still 151.0MB. Free memory was 63.0MB in the beginning and 60.5MB in the end (delta: 2.5MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 75.12ms. Allocated memory is still 151.0MB. Free memory was 60.5MB in the beginning and 58.0MB in the end (delta: 2.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 695.40ms. Allocated memory is still 151.0MB. Free memory was 58.0MB in the beginning and 89.0MB in the end (delta: -31.0MB). Peak memory consumption was 23.1MB. Max. memory is 16.1GB. * TraceAbstraction took 1838.82ms. Allocated memory was 151.0MB in the beginning and 218.1MB in the end (delta: 67.1MB). Free memory was 88.5MB in the beginning and 138.2MB in the end (delta: -49.8MB). Peak memory consumption was 20.5MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 707]: 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, 86 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: 1.7s, OverallIterations: 4, TraceHistogramMax: 1, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.5s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.1s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 60 SdHoareTripleChecker+Valid, 0.3s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 49 mSDsluCounter, 3 SdHoareTripleChecker+Invalid, 0.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 1 mSDsCounter, 12 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 386 IncrementalHoareTripleChecker+Invalid, 398 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 12 mSolverCounterUnsat, 2 mSDtfsCounter, 386 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 19 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=98occurred in iteration=3, InterpolantAutomatonStates: 25, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.9s InterpolantComputationTime, 60 NumberOfCodeBlocks, 60 NumberOfCodeBlocksAsserted, 4 NumberOfCheckSat, 56 ConstructedInterpolants, 0 QuantifiedInterpolants, 497 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 4 InterpolantComputations, 4 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 20:25:49,905 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