./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread/sync01.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --validate ./goblint.2024-09-02_08-21-23.files/protection-ghost/sync01.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version e94c40da Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/GemCutterReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/pthread/sync01.i ./goblint.2024-09-02_08-21-23.files/protection-ghost/sync01.yml/witness.yml -s /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf --cacsl2boogietranslator.entry.function main --traceabstraction.positions.where.we.compute.the.hoare.annotation None --witnessparser.only.consider.loop.invariants false --- Real Ultimate output --- This is Ultimate 0.2.4-dev-e94c40d-m [2024-09-23 06:29:36,642 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-09-23 06:29:36,740 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf [2024-09-23 06:29:36,746 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-09-23 06:29:36,749 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-09-23 06:29:36,782 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-09-23 06:29:36,785 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-09-23 06:29:36,785 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-09-23 06:29:36,786 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-09-23 06:29:36,787 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-09-23 06:29:36,787 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-09-23 06:29:36,788 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-09-23 06:29:36,788 INFO L153 SettingsManager]: * Use SBE=true [2024-09-23 06:29:36,789 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-09-23 06:29:36,790 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-09-23 06:29:36,793 INFO L153 SettingsManager]: * sizeof long=4 [2024-09-23 06:29:36,793 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-09-23 06:29:36,793 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-09-23 06:29:36,794 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-09-23 06:29:36,794 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-09-23 06:29:36,794 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-09-23 06:29:36,798 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-09-23 06:29:36,799 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-09-23 06:29:36,799 INFO L153 SettingsManager]: * sizeof long double=12 [2024-09-23 06:29:36,799 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-09-23 06:29:36,799 INFO L153 SettingsManager]: * Use constant arrays=true [2024-09-23 06:29:36,800 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-09-23 06:29:36,800 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-09-23 06:29:36,800 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-09-23 06:29:36,800 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-09-23 06:29:36,800 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-09-23 06:29:36,801 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-09-23 06:29:36,801 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-09-23 06:29:36,804 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-09-23 06:29:36,805 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-09-23 06:29:36,805 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-09-23 06:29:36,805 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-09-23 06:29:36,805 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-09-23 06:29:36,805 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-09-23 06:29:36,806 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-09-23 06:29:36,806 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-09-23 06:29:36,807 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode 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/UGemCutter-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: Positions where we compute the Hoare Annotation -> None Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessparser: Only consider loop invariants -> false [2024-09-23 06:29:37,090 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-09-23 06:29:37,119 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-09-23 06:29:37,123 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-09-23 06:29:37,125 INFO L270 PluginConnector]: Initializing CDTParser... [2024-09-23 06:29:37,126 INFO L274 PluginConnector]: CDTParser initialized [2024-09-23 06:29:37,127 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread/sync01.i [2024-09-23 06:29:38,779 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-09-23 06:29:39,060 INFO L384 CDTParser]: Found 1 translation units. [2024-09-23 06:29:39,063 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread/sync01.i [2024-09-23 06:29:39,083 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/86474b8a7/86dd8d6057c543d38488aa7e8eab2012/FLAG1c4452fc6 [2024-09-23 06:29:39,098 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/86474b8a7/86dd8d6057c543d38488aa7e8eab2012 [2024-09-23 06:29:39,101 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-09-23 06:29:39,102 INFO L274 PluginConnector]: Witness Parser initialized [2024-09-23 06:29:39,103 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/./goblint.2024-09-02_08-21-23.files/protection-ghost/sync01.yml/witness.yml [2024-09-23 06:29:39,237 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-09-23 06:29:39,239 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-09-23 06:29:39,240 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-09-23 06:29:39,240 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-09-23 06:29:39,245 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-09-23 06:29:39,245 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.09 06:29:39" (1/2) ... [2024-09-23 06:29:39,246 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7f17f759 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.09 06:29:39, skipping insertion in model container [2024-09-23 06:29:39,246 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 23.09 06:29:39" (1/2) ... [2024-09-23 06:29:39,248 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@4a48c97a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 23.09 06:29:39, skipping insertion in model container [2024-09-23 06:29:39,248 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 23.09 06:29:39" (2/2) ... [2024-09-23 06:29:39,248 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7f17f759 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:39, skipping insertion in model container [2024-09-23 06:29:39,248 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 23.09 06:29:39" (2/2) ... [2024-09-23 06:29:39,510 INFO L93 nessWitnessExtractor]: Found the following entries in the witness: [2024-09-23 06:29:39,510 INFO L1541 ArrayList]: Location invariant before [L961-L961] ! multithreaded || (0 <= num && num <= 1) [2024-09-23 06:29:39,511 INFO L1541 ArrayList]: Location invariant before [L962-L962] ! multithreaded || (0 <= num && num <= 1) [2024-09-23 06:29:39,511 INFO L1541 ArrayList]: ghost_variable m_locked = 0 [2024-09-23 06:29:39,511 INFO L1541 ArrayList]: ghost_variable multithreaded = 0 [2024-09-23 06:29:39,511 INFO L1541 ArrayList]: ghost_update [L945-L945] m_locked = 1; [2024-09-23 06:29:39,511 INFO L1541 ArrayList]: ghost_update [L935-L935] m_locked = 1; [2024-09-23 06:29:39,511 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,511 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,512 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,512 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,512 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,512 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,512 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,512 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,512 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,513 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,513 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,513 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,513 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,513 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,513 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,513 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,514 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,514 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,514 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,514 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,515 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,515 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,515 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,515 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,516 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,516 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,516 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,516 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,516 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,516 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,516 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,517 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,517 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,517 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,518 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,519 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,519 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,519 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,519 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,519 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,519 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,519 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,519 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,519 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,519 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,520 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,520 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,520 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,520 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,520 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,520 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 0; [2024-09-23 06:29:39,520 INFO L1541 ArrayList]: ghost_update [L937-L937] m_locked = 1; [2024-09-23 06:29:39,520 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,520 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,520 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,520 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,521 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,521 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,521 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,521 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,521 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,521 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,521 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,522 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,523 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,523 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,523 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,523 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,523 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,523 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,523 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,523 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,524 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,524 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,524 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,524 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,524 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,524 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,524 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,524 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,525 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,525 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,525 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,525 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,525 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,525 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,525 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,525 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,526 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,526 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,526 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,526 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,526 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,527 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,527 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,527 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,527 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,527 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,527 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,527 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,527 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,528 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,528 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 0; [2024-09-23 06:29:39,528 INFO L1541 ArrayList]: ghost_update [L947-L947] m_locked = 1; [2024-09-23 06:29:39,528 INFO L1541 ArrayList]: ghost_update [L960-L960] multithreaded = 1; [2024-09-23 06:29:39,528 INFO L1541 ArrayList]: ghost_update [L949-L949] m_locked = 0; [2024-09-23 06:29:39,528 INFO L1541 ArrayList]: ghost_update [L939-L939] m_locked = 0; [2024-09-23 06:29:39,584 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-09-23 06:29:40,004 WARN L248 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread/sync01.i[42004,42017] [2024-09-23 06:29:40,009 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-09-23 06:29:40,026 INFO L200 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 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 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 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-09-23 06:29:40,166 WARN L248 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/pthread/sync01.i[42004,42017] [2024-09-23 06:29:40,167 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-09-23 06:29:40,232 INFO L204 MainTranslator]: Completed translation [2024-09-23 06:29:40,235 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40 WrapperNode [2024-09-23 06:29:40,235 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-09-23 06:29:40,236 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-09-23 06:29:40,238 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-09-23 06:29:40,238 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-09-23 06:29:40,245 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40" (1/1) ... [2024-09-23 06:29:40,271 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40" (1/1) ... [2024-09-23 06:29:40,301 INFO L138 Inliner]: procedures = 268, calls = 22, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 70 [2024-09-23 06:29:40,302 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-09-23 06:29:40,303 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-09-23 06:29:40,303 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-09-23 06:29:40,303 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-09-23 06:29:40,312 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40" (1/1) ... [2024-09-23 06:29:40,312 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40" (1/1) ... [2024-09-23 06:29:40,316 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40" (1/1) ... [2024-09-23 06:29:40,320 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40" (1/1) ... [2024-09-23 06:29:40,330 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40" (1/1) ... [2024-09-23 06:29:40,337 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40" (1/1) ... [2024-09-23 06:29:40,343 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40" (1/1) ... [2024-09-23 06:29:40,349 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40" (1/1) ... [2024-09-23 06:29:40,352 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-09-23 06:29:40,356 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-09-23 06:29:40,360 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-09-23 06:29:40,360 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-09-23 06:29:40,361 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40" (1/1) ... [2024-09-23 06:29:40,369 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-09-23 06:29:40,379 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-23 06:29:40,398 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2024-09-23 06:29:40,403 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2024-09-23 06:29:40,453 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexUnlock [2024-09-23 06:29:40,453 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2024-09-23 06:29:40,453 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2024-09-23 06:29:40,454 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2024-09-23 06:29:40,454 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2024-09-23 06:29:40,454 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2024-09-23 06:29:40,454 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-09-23 06:29:40,454 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-09-23 06:29:40,454 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-09-23 06:29:40,455 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-09-23 06:29:40,456 WARN L211 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-09-23 06:29:40,602 INFO L242 CfgBuilder]: Building ICFG [2024-09-23 06:29:40,605 INFO L268 CfgBuilder]: Building CFG for each procedure with an implementation [2024-09-23 06:29:40,919 INFO L287 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-09-23 06:29:40,924 INFO L291 CfgBuilder]: Performing block encoding [2024-09-23 06:29:41,134 INFO L313 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-09-23 06:29:41,135 INFO L318 CfgBuilder]: Removed 2 assume(true) statements. [2024-09-23 06:29:41,135 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.09 06:29:41 BoogieIcfgContainer [2024-09-23 06:29:41,136 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-09-23 06:29:41,138 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-09-23 06:29:41,138 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-09-23 06:29:41,143 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-09-23 06:29:41,143 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 23.09 06:29:39" (1/4) ... [2024-09-23 06:29:41,144 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@25a0b0ab and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 23.09 06:29:41, skipping insertion in model container [2024-09-23 06:29:41,144 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 23.09 06:29:39" (2/4) ... [2024-09-23 06:29:41,145 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@25a0b0ab and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 23.09 06:29:41, skipping insertion in model container [2024-09-23 06:29:41,145 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 23.09 06:29:40" (3/4) ... [2024-09-23 06:29:41,146 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@25a0b0ab and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 23.09 06:29:41, skipping insertion in model container [2024-09-23 06:29:41,146 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 23.09 06:29:41" (4/4) ... [2024-09-23 06:29:41,148 INFO L112 eAbstractionObserver]: Analyzing ICFG sync01.i [2024-09-23 06:29:41,169 INFO L209 ceAbstractionStarter]: Automizer settings: Hoare:None NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-09-23 06:29:41,169 INFO L149 ceAbstractionStarter]: Applying trace abstraction to program that has 3 error locations. [2024-09-23 06:29:41,169 INFO L484 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-09-23 06:29:41,253 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2024-09-23 06:29:41,307 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-23 06:29:41,308 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-09-23 06:29:41,309 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-23 06:29:41,311 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2024-09-23 06:29:41,317 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Waiting until timeout for monitored process [2024-09-23 06:29:41,358 INFO L157 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2024-09-23 06:29:41,371 INFO L335 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == ULTIMATE.start ======== [2024-09-23 06:29:41,379 INFO L336 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, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=None, 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;@24929471, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-23 06:29:41,380 INFO L337 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2024-09-23 06:29:41,478 INFO L399 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION (and 2 more)] === [2024-09-23 06:29:41,483 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-23 06:29:41,484 INFO L85 PathProgramCache]: Analyzing trace with hash 623822685, now seen corresponding path program 1 times [2024-09-23 06:29:41,493 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-23 06:29:41,493 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1715094439] [2024-09-23 06:29:41,493 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-23 06:29:41,494 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-23 06:29:41,645 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-23 06:29:41,877 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-23 06:29:41,878 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-09-23 06:29:41,878 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1715094439] [2024-09-23 06:29:41,879 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1715094439] provided 1 perfect and 0 imperfect interpolant sequences [2024-09-23 06:29:41,879 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-09-23 06:29:41,880 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-09-23 06:29:41,882 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1694479193] [2024-09-23 06:29:41,883 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-09-23 06:29:41,888 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-09-23 06:29:41,888 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-09-23 06:29:41,919 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-09-23 06:29:41,920 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-09-23 06:29:41,923 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-23 06:29:41,926 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-23 06:29:41,927 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 2 states have internal predecessors, (8), 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-09-23 06:29:41,927 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-23 06:29:42,124 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-23 06:29:42,124 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-09-23 06:29:42,125 INFO L399 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION (and 2 more)] === [2024-09-23 06:29:42,125 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-23 06:29:42,126 INFO L85 PathProgramCache]: Analyzing trace with hash 1827417460, now seen corresponding path program 1 times [2024-09-23 06:29:42,126 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-23 06:29:42,126 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1622623257] [2024-09-23 06:29:42,127 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-23 06:29:42,127 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-23 06:29:42,178 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-23 06:29:42,394 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-09-23 06:29:42,395 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-09-23 06:29:42,395 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1622623257] [2024-09-23 06:29:42,395 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1622623257] provided 1 perfect and 0 imperfect interpolant sequences [2024-09-23 06:29:42,395 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-09-23 06:29:42,396 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-09-23 06:29:42,396 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [150974526] [2024-09-23 06:29:42,396 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-09-23 06:29:42,397 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-09-23 06:29:42,397 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-09-23 06:29:42,398 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-09-23 06:29:42,398 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-09-23 06:29:42,398 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-23 06:29:42,399 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-23 06:29:42,399 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 9.333333333333334) internal successors, (28), 3 states have internal predecessors, (28), 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-09-23 06:29:42,399 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-09-23 06:29:42,399 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-23 06:29:42,481 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-23 06:29:42,481 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-23 06:29:42,482 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-09-23 06:29:42,482 INFO L399 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION (and 2 more)] === [2024-09-23 06:29:42,482 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-23 06:29:42,483 INFO L85 PathProgramCache]: Analyzing trace with hash 1219376624, now seen corresponding path program 2 times [2024-09-23 06:29:42,483 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-23 06:29:42,483 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [354510657] [2024-09-23 06:29:42,483 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-23 06:29:42,483 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-23 06:29:42,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-23 06:29:42,700 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-23 06:29:42,701 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-09-23 06:29:42,701 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [354510657] [2024-09-23 06:29:42,701 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [354510657] provided 0 perfect and 1 imperfect interpolant sequences [2024-09-23 06:29:42,701 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [664852169] [2024-09-23 06:29:42,701 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-09-23 06:29:42,701 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-09-23 06:29:42,701 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-23 06:29:42,705 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-09-23 06:29:42,707 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2024-09-23 06:29:42,836 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-09-23 06:29:42,836 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-09-23 06:29:42,839 INFO L262 TraceCheckSpWp]: Trace formula consists of 210 conjuncts, 6 conjuncts are in the unsatisfiable core [2024-09-23 06:29:42,844 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-23 06:29:42,919 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-09-23 06:29:42,919 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-09-23 06:29:42,920 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [664852169] provided 1 perfect and 0 imperfect interpolant sequences [2024-09-23 06:29:42,920 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-09-23 06:29:42,920 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [3] total 5 [2024-09-23 06:29:42,920 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [685081693] [2024-09-23 06:29:42,920 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-09-23 06:29:42,921 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-09-23 06:29:42,921 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-09-23 06:29:42,922 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-09-23 06:29:42,922 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2024-09-23 06:29:42,922 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-23 06:29:42,922 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-23 06:29:42,922 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.6) internal successors, (28), 5 states have internal predecessors, (28), 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-09-23 06:29:42,922 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-09-23 06:29:42,923 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-09-23 06:29:42,923 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-23 06:29:43,113 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-23 06:29:43,115 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-23 06:29:43,115 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-09-23 06:29:43,118 INFO L785 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT (4 of 5 remaining) [2024-09-23 06:29:43,119 INFO L785 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT (3 of 5 remaining) [2024-09-23 06:29:43,120 INFO L785 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION (2 of 5 remaining) [2024-09-23 06:29:43,121 INFO L785 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 5 remaining) [2024-09-23 06:29:43,122 INFO L785 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 5 remaining) [2024-09-23 06:29:43,144 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2024-09-23 06:29:43,325 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2024-09-23 06:29:43,335 INFO L408 BasicCegarLoop]: Path program histogram: [2, 1] [2024-09-23 06:29:43,340 INFO L234 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-09-23 06:29:43,340 INFO L165 ceAbstractionStarter]: Computing trace abstraction results [2024-09-23 06:29:43,343 INFO L469 ceAbstractionStarter]: Automizer considered 2 witness invariants [2024-09-23 06:29:43,343 INFO L470 ceAbstractionStarter]: WitnessConsidered=2 [2024-09-23 06:29:43,344 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 23.09 06:29:43 BasicIcfg [2024-09-23 06:29:43,344 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-09-23 06:29:43,345 INFO L158 Benchmark]: Toolchain (without parser) took 4106.35ms. Allocated memory is still 186.6MB. Free memory was 112.9MB in the beginning and 124.2MB in the end (delta: -11.3MB). There was no memory consumed. Max. memory is 16.1GB. [2024-09-23 06:29:43,345 INFO L158 Benchmark]: CDTParser took 0.29ms. Allocated memory is still 111.1MB. Free memory is still 73.6MB. There was no memory consumed. Max. memory is 16.1GB. [2024-09-23 06:29:43,345 INFO L158 Benchmark]: Witness Parser took 0.11ms. Allocated memory is still 186.6MB. Free memory is still 117.6MB. There was no memory consumed. Max. memory is 16.1GB. [2024-09-23 06:29:43,345 INFO L158 Benchmark]: CACSL2BoogieTranslator took 995.99ms. Allocated memory is still 186.6MB. Free memory was 112.7MB in the beginning and 108.9MB in the end (delta: 3.8MB). Peak memory consumption was 13.8MB. Max. memory is 16.1GB. [2024-09-23 06:29:43,345 INFO L158 Benchmark]: Boogie Procedure Inliner took 65.54ms. Allocated memory is still 186.6MB. Free memory was 108.9MB in the beginning and 106.8MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-09-23 06:29:43,346 INFO L158 Benchmark]: Boogie Preprocessor took 52.44ms. Allocated memory is still 186.6MB. Free memory was 106.8MB in the beginning and 104.7MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-09-23 06:29:43,346 INFO L158 Benchmark]: RCFGBuilder took 779.66ms. Allocated memory is still 186.6MB. Free memory was 104.7MB in the beginning and 60.0MB in the end (delta: 44.8MB). Peak memory consumption was 46.1MB. Max. memory is 16.1GB. [2024-09-23 06:29:43,346 INFO L158 Benchmark]: TraceAbstraction took 2206.16ms. Allocated memory is still 186.6MB. Free memory was 59.3MB in the beginning and 124.2MB in the end (delta: -64.9MB). There was no memory consumed. Max. memory is 16.1GB. [2024-09-23 06:29:43,347 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.29ms. Allocated memory is still 111.1MB. Free memory is still 73.6MB. There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.11ms. Allocated memory is still 186.6MB. Free memory is still 117.6MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 995.99ms. Allocated memory is still 186.6MB. Free memory was 112.7MB in the beginning and 108.9MB in the end (delta: 3.8MB). Peak memory consumption was 13.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 65.54ms. Allocated memory is still 186.6MB. Free memory was 108.9MB in the beginning and 106.8MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 52.44ms. Allocated memory is still 186.6MB. Free memory was 106.8MB in the beginning and 104.7MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 779.66ms. Allocated memory is still 186.6MB. Free memory was 104.7MB in the beginning and 60.0MB in the end (delta: 44.8MB). Peak memory consumption was 46.1MB. Max. memory is 16.1GB. * TraceAbstraction took 2206.16ms. Allocated memory is still 186.6MB. Free memory was 59.3MB in the beginning and 124.2MB in the end (delta: -64.9MB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Partial order reduction statistics Independence relation #1 benchmarks: ThreadSeparatingIndependenceRelation.Independence Queries: [ total: 833, independent: 747, independent conditional: 313, independent unconditional: 434, dependent: 86, dependent conditional: 66, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ThreadSeparatingIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 783, independent: 747, independent conditional: 313, independent unconditional: 434, dependent: 36, dependent conditional: 16, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 783, independent: 747, independent conditional: 313, independent unconditional: 434, dependent: 36, dependent conditional: 16, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 817, independent: 747, independent conditional: 313, independent unconditional: 434, dependent: 70, dependent conditional: 50, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 817, independent: 747, independent conditional: 6, independent unconditional: 741, dependent: 70, dependent conditional: 15, dependent unconditional: 55, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 817, independent: 747, independent conditional: 6, independent unconditional: 741, dependent: 70, dependent conditional: 15, dependent unconditional: 55, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 443, independent: 417, independent conditional: 3, independent unconditional: 414, dependent: 26, dependent conditional: 5, dependent unconditional: 21, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 443, independent: 403, independent conditional: 0, independent unconditional: 403, dependent: 40, dependent conditional: 0, dependent unconditional: 40, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Independence Queries: [ total: 40, independent: 14, independent conditional: 3, independent unconditional: 11, dependent: 26, dependent conditional: 5, dependent unconditional: 21, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Statistics on underlying relation: SemanticIndependenceRelation.Independence Queries: [ total: 40, independent: 14, independent conditional: 3, independent unconditional: 11, dependent: 26, dependent conditional: 5, dependent unconditional: 21, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 146, independent: 63, independent conditional: 8, independent unconditional: 55, dependent: 82, dependent conditional: 14, dependent unconditional: 68, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Protected Queries: 0 ], Cache Queries: [ total: 817, independent: 330, independent conditional: 3, independent unconditional: 327, dependent: 44, dependent conditional: 10, dependent unconditional: 34, unknown: 443, unknown conditional: 8, unknown unconditional: 435] , Statistics on independence cache: Total cache size (in pairs): 443, Positive cache size: 417, Positive conditional cache size: 3, Positive unconditional cache size: 414, Negative cache size: 26, Negative conditional cache size: 5, Negative unconditional cache size: 21, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0, Eliminated conditions: 342, Maximal queried relation: 3, Independence queries for same thread: 50, Persistent sets #1 benchmarks: Persistent set computation time: 0.2s, Number of persistent set computation: 147, Number of trivial persistent sets: 135, Underlying independence relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 454, independent: 434, independent conditional: 0, independent unconditional: 434, dependent: 20, dependent conditional: 0, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: ThreadSeparatingIndependenceRelation.Independence Queries: [ total: 833, independent: 747, independent conditional: 313, independent unconditional: 434, dependent: 86, dependent conditional: 66, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ThreadSeparatingIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 783, independent: 747, independent conditional: 313, independent unconditional: 434, dependent: 36, dependent conditional: 16, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 783, independent: 747, independent conditional: 313, independent unconditional: 434, dependent: 36, dependent conditional: 16, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 817, independent: 747, independent conditional: 313, independent unconditional: 434, dependent: 70, dependent conditional: 50, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 817, independent: 747, independent conditional: 6, independent unconditional: 741, dependent: 70, dependent conditional: 15, dependent unconditional: 55, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 817, independent: 747, independent conditional: 6, independent unconditional: 741, dependent: 70, dependent conditional: 15, dependent unconditional: 55, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 443, independent: 417, independent conditional: 3, independent unconditional: 414, dependent: 26, dependent conditional: 5, dependent unconditional: 21, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 443, independent: 403, independent conditional: 0, independent unconditional: 403, dependent: 40, dependent conditional: 0, dependent unconditional: 40, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Independence Queries: [ total: 40, independent: 14, independent conditional: 3, independent unconditional: 11, dependent: 26, dependent conditional: 5, dependent unconditional: 21, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Statistics on underlying relation: SemanticIndependenceRelation.Independence Queries: [ total: 40, independent: 14, independent conditional: 3, independent unconditional: 11, dependent: 26, dependent conditional: 5, dependent unconditional: 21, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 146, independent: 63, independent conditional: 8, independent unconditional: 55, dependent: 82, dependent conditional: 14, dependent unconditional: 68, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Protected Queries: 0 ], Cache Queries: [ total: 817, independent: 330, independent conditional: 3, independent unconditional: 327, dependent: 44, dependent conditional: 10, dependent unconditional: 34, unknown: 443, unknown conditional: 8, unknown unconditional: 435] , Statistics on independence cache: Total cache size (in pairs): 443, Positive cache size: 417, Positive conditional cache size: 3, Positive unconditional cache size: 414, Negative cache size: 26, Negative conditional cache size: 5, Negative unconditional cache size: 21, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0, Eliminated conditions: 342, Maximal queried relation: 3, Independence queries for same thread: 50 - PositiveResult [Line: 961]: invariant of correctness witness holds For all program executions holds that invariant of correctness witness holds at this location - PositiveResult [Line: 962]: invariant of correctness witness holds For all program executions holds that invariant of correctness witness holds at this location - PositiveResult [Line: 966]: a call to reach_error is unreachable For all program executions holds that a call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data for errors in thread instance: ULTIMATE.start with 1 thread instances CFG has 5 procedures, 56 locations, 5 error locations. Started 1 CEGAR loops. OverallTime: 2.0s, OverallIterations: 3, TraceHistogramMax: 0, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.6s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: , PredicateUnifierStatistics: No data available, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=0occurred in iteration=0, InterpolantAutomatonStates: 11, 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.7s InterpolantComputationTime, 92 NumberOfCodeBlocks, 92 NumberOfCodeBlocksAsserted, 5 NumberOfCheckSat, 88 ConstructedInterpolants, 0 QuantifiedInterpolants, 222 SizeOfPredicates, 0 NumberOfNonLiveVariables, 210 ConjunctsInSsa, 6 ConjunctsInUnsatCore, 4 InterpolantComputations, 3 PerfectInterpolantSequences, 2/3 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 3 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2024-09-23 06:29:43,380 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Forceful destruction successful, exit code 0 [2024-09-23 06:29:43,579 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE