./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-deagle/arithmetic_prog_bad.i --full-output --witness-type correctness_witness --witnessparser.only.consider.loop.invariants false --validate ./goblint.2024-09-02_08-21-23.files/mutex-meet-ghost/arithmetic_prog_bad.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-deagle/arithmetic_prog_bad.i ./goblint.2024-09-02_08-21-23.files/mutex-meet-ghost/arithmetic_prog_bad.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-22 23:59:32,734 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-09-22 23:59:32,802 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf [2024-09-22 23:59:32,807 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-09-22 23:59:32,809 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-09-22 23:59:32,844 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-09-22 23:59:32,845 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-09-22 23:59:32,845 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-09-22 23:59:32,846 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-09-22 23:59:32,849 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-09-22 23:59:32,849 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-09-22 23:59:32,849 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-09-22 23:59:32,849 INFO L153 SettingsManager]: * Use SBE=true [2024-09-22 23:59:32,850 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-09-22 23:59:32,850 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-09-22 23:59:32,851 INFO L153 SettingsManager]: * sizeof long=4 [2024-09-22 23:59:32,851 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-09-22 23:59:32,852 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-09-22 23:59:32,852 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-09-22 23:59:32,852 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-09-22 23:59:32,852 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-09-22 23:59:32,853 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-09-22 23:59:32,853 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-09-22 23:59:32,853 INFO L153 SettingsManager]: * sizeof long double=12 [2024-09-22 23:59:32,853 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-09-22 23:59:32,853 INFO L153 SettingsManager]: * Use constant arrays=true [2024-09-22 23:59:32,853 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-09-22 23:59:32,854 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-09-22 23:59:32,854 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-09-22 23:59:32,854 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-09-22 23:59:32,854 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-09-22 23:59:32,854 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-09-22 23:59:32,854 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-09-22 23:59:32,855 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-09-22 23:59:32,855 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-09-22 23:59:32,856 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-09-22 23:59:32,856 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-09-22 23:59:32,856 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-09-22 23:59:32,856 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-09-22 23:59:32,856 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-09-22 23:59:32,857 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-09-22 23:59:32,857 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-22 23:59:33,056 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-09-22 23:59:33,080 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-09-22 23:59:33,082 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-09-22 23:59:33,083 INFO L270 PluginConnector]: Initializing CDTParser... [2024-09-22 23:59:33,084 INFO L274 PluginConnector]: CDTParser initialized [2024-09-22 23:59:33,085 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/pthread-deagle/arithmetic_prog_bad.i [2024-09-22 23:59:34,309 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-09-22 23:59:34,527 INFO L384 CDTParser]: Found 1 translation units. [2024-09-22 23:59:34,528 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-deagle/arithmetic_prog_bad.i [2024-09-22 23:59:34,551 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/6424784fd/48a4b249918f4f138584d6112bf3ac0e/FLAG09d04271a [2024-09-22 23:59:34,566 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/6424784fd/48a4b249918f4f138584d6112bf3ac0e [2024-09-22 23:59:34,568 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-09-22 23:59:34,569 INFO L274 PluginConnector]: Witness Parser initialized [2024-09-22 23:59:34,569 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/./goblint.2024-09-02_08-21-23.files/mutex-meet-ghost/arithmetic_prog_bad.yml/witness.yml [2024-09-22 23:59:34,681 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-09-22 23:59:34,685 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-09-22 23:59:34,686 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-09-22 23:59:34,686 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-09-22 23:59:34,691 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-09-22 23:59:34,692 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.09 11:59:34" (1/2) ... [2024-09-22 23:59:34,693 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@ca91c8e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.09 11:59:34, skipping insertion in model container [2024-09-22 23:59:34,693 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.09 11:59:34" (1/2) ... [2024-09-22 23:59:34,695 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@31833d1e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.09 11:59:34, skipping insertion in model container [2024-09-22 23:59:34,695 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 22.09 11:59:34" (2/2) ... [2024-09-22 23:59:34,695 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@ca91c8e and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.09 11:59:34, skipping insertion in model container [2024-09-22 23:59:34,696 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 22.09 11:59:34" (2/2) ... [2024-09-22 23:59:34,898 INFO L93 nessWitnessExtractor]: Found the following entries in the witness: [2024-09-22 23:59:34,899 INFO L1541 ArrayList]: Location invariant before [L915-L915] ((! multithreaded || (flag == 0 || flag == 1)) && (! multithreaded || (m_locked || (num == 0 || num == 1)))) && (! multithreaded || (num == 0 || num == 1)) [2024-09-22 23:59:34,899 INFO L1541 ArrayList]: Location invariant before [L914-L914] ((! multithreaded || (flag == 0 || flag == 1)) && (! multithreaded || (m_locked || (num == 0 || num == 1)))) && (! multithreaded || (num == 0 || num == 1)) [2024-09-22 23:59:34,899 INFO L1541 ArrayList]: ghost_variable multithreaded = 0 [2024-09-22 23:59:34,899 INFO L1541 ArrayList]: ghost_variable m_locked = 0 [2024-09-22 23:59:34,899 INFO L1541 ArrayList]: ghost_update [L893-L893] m_locked = 1; [2024-09-22 23:59:34,899 INFO L1541 ArrayList]: ghost_update [L893-L893] m_locked = 1; [2024-09-22 23:59:34,899 INFO L1541 ArrayList]: ghost_update [L898-L898] m_locked = 0; [2024-09-22 23:59:34,899 INFO L1541 ArrayList]: ghost_update [L898-L898] m_locked = 0; [2024-09-22 23:59:34,899 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,900 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,900 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,900 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,900 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,900 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,900 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,900 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,905 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,905 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,906 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,906 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,906 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,906 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,906 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,906 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,910 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,910 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,910 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,910 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,910 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,911 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,912 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,913 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,914 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,914 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,914 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,914 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,914 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,914 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,914 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,914 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,914 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,915 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,919 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,919 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,919 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,919 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,920 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 0; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L895-L895] m_locked = 1; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L879-L879] m_locked = 1; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L879-L879] m_locked = 1; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L883-L883] m_locked = 0; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L883-L883] m_locked = 0; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L913-L913] multithreaded = 1; [2024-09-22 23:59:34,921 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,922 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,922 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,922 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,922 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,922 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,922 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,922 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,922 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,922 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,943 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,944 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,944 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,945 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,945 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,945 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,945 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,945 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,945 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,945 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,945 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,948 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,948 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,948 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,949 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,950 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,951 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,951 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,951 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,951 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,951 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,951 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,951 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,951 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,951 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,952 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,952 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,952 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,952 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,952 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,956 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,956 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,956 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,956 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,956 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,956 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,957 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,958 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,958 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,958 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,958 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,958 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,958 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 0; [2024-09-22 23:59:34,958 INFO L1541 ArrayList]: ghost_update [L881-L881] m_locked = 1; [2024-09-22 23:59:34,992 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-09-22 23:59:35,308 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-deagle/arithmetic_prog_bad.i[39758,39771] [2024-09-22 23:59:35,313 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-09-22 23:59:35,323 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 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-22 23:59:35,422 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-deagle/arithmetic_prog_bad.i[39758,39771] [2024-09-22 23:59:35,423 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-09-22 23:59:35,457 INFO L204 MainTranslator]: Completed translation [2024-09-22 23:59:35,458 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.09 11:59:35 WrapperNode [2024-09-22 23:59:35,458 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-09-22 23:59:35,458 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-09-22 23:59:35,459 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-09-22 23:59:35,459 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-09-22 23:59:35,464 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 22.09 11:59:35" (1/1) ... [2024-09-22 23:59:35,481 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 22.09 11:59:35" (1/1) ... [2024-09-22 23:59:35,506 INFO L138 Inliner]: procedures = 243, calls = 26, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 78 [2024-09-22 23:59:35,507 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-09-22 23:59:35,508 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-09-22 23:59:35,508 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-09-22 23:59:35,508 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-09-22 23:59:35,515 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.09 11:59:35" (1/1) ... [2024-09-22 23:59:35,516 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.09 11:59:35" (1/1) ... [2024-09-22 23:59:35,520 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.09 11:59:35" (1/1) ... [2024-09-22 23:59:35,523 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.09 11:59:35" (1/1) ... [2024-09-22 23:59:35,534 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.09 11:59:35" (1/1) ... [2024-09-22 23:59:35,543 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.09 11:59:35" (1/1) ... [2024-09-22 23:59:35,545 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.09 11:59:35" (1/1) ... [2024-09-22 23:59:35,546 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.09 11:59:35" (1/1) ... [2024-09-22 23:59:35,548 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-09-22 23:59:35,549 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-09-22 23:59:35,549 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-09-22 23:59:35,549 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-09-22 23:59:35,550 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.09 11:59:35" (1/1) ... [2024-09-22 23:59:35,557 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-09-22 23:59:35,564 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-22 23:59:35,580 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-22 23:59:35,582 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-22 23:59:35,620 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2024-09-22 23:59:35,620 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexUnlock [2024-09-22 23:59:35,620 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2024-09-22 23:59:35,621 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2024-09-22 23:59:35,621 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2024-09-22 23:59:35,621 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2024-09-22 23:59:35,621 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2024-09-22 23:59:35,621 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-09-22 23:59:35,621 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-09-22 23:59:35,621 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-09-22 23:59:35,621 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-09-22 23:59:35,622 WARN L211 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-09-22 23:59:35,730 INFO L242 CfgBuilder]: Building ICFG [2024-09-22 23:59:35,731 INFO L268 CfgBuilder]: Building CFG for each procedure with an implementation [2024-09-22 23:59:36,048 INFO L287 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-09-22 23:59:36,048 INFO L291 CfgBuilder]: Performing block encoding [2024-09-22 23:59:36,232 INFO L313 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-09-22 23:59:36,232 INFO L318 CfgBuilder]: Removed 4 assume(true) statements. [2024-09-22 23:59:36,233 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.09 11:59:36 BoogieIcfgContainer [2024-09-22 23:59:36,234 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-09-22 23:59:36,235 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-09-22 23:59:36,236 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-09-22 23:59:36,239 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-09-22 23:59:36,239 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 22.09 11:59:34" (1/4) ... [2024-09-22 23:59:36,240 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@64752c13 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 22.09 11:59:36, skipping insertion in model container [2024-09-22 23:59:36,240 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 22.09 11:59:34" (2/4) ... [2024-09-22 23:59:36,240 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@64752c13 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 22.09 11:59:36, skipping insertion in model container [2024-09-22 23:59:36,241 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.09 11:59:35" (3/4) ... [2024-09-22 23:59:36,241 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@64752c13 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 22.09 11:59:36, skipping insertion in model container [2024-09-22 23:59:36,241 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.09 11:59:36" (4/4) ... [2024-09-22 23:59:36,242 INFO L112 eAbstractionObserver]: Analyzing ICFG arithmetic_prog_bad.i [2024-09-22 23:59:36,257 INFO L209 ceAbstractionStarter]: Automizer settings: Hoare:None NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-09-22 23:59:36,257 INFO L149 ceAbstractionStarter]: Applying trace abstraction to program that has 3 error locations. [2024-09-22 23:59:36,257 INFO L484 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-09-22 23:59:36,292 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2024-09-22 23:59:36,330 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-22 23:59:36,330 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-09-22 23:59:36,331 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-22 23:59:36,332 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-22 23:59:36,334 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-22 23:59:36,358 INFO L157 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2024-09-22 23:59:36,369 INFO L335 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == ULTIMATE.start ======== [2024-09-22 23:59:36,374 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;@38b7469a, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-09-22 23:59:36,374 INFO L337 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2024-09-22 23:59:36,443 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-22 23:59:36,448 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-22 23:59:36,449 INFO L85 PathProgramCache]: Analyzing trace with hash 2042048713, now seen corresponding path program 1 times [2024-09-22 23:59:36,457 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-22 23:59:36,457 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1777106362] [2024-09-22 23:59:36,457 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-22 23:59:36,457 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-22 23:59:36,568 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-22 23:59:36,711 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-22 23:59:36,711 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-09-22 23:59:36,712 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1777106362] [2024-09-22 23:59:36,714 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1777106362] provided 1 perfect and 0 imperfect interpolant sequences [2024-09-22 23:59:36,714 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-09-22 23:59:36,714 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2024-09-22 23:59:36,715 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [833148193] [2024-09-22 23:59:36,719 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-09-22 23:59:36,723 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-09-22 23:59:36,723 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-09-22 23:59:36,744 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-09-22 23:59:36,745 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-09-22 23:59:36,746 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-22 23:59:36,747 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-22 23:59:36,748 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.0) internal successors, (6), 2 states have internal predecessors, (6), 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-22 23:59:36,748 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-22 23:59:36,952 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:36,952 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-09-22 23:59:36,952 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-22 23:59:36,953 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-22 23:59:36,953 INFO L85 PathProgramCache]: Analyzing trace with hash -1419834956, now seen corresponding path program 1 times [2024-09-22 23:59:36,953 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-22 23:59:36,954 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [326792440] [2024-09-22 23:59:36,954 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-22 23:59:36,954 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-22 23:59:36,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-22 23:59:37,176 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 13 proven. 0 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2024-09-22 23:59:37,176 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-09-22 23:59:37,177 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [326792440] [2024-09-22 23:59:37,177 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [326792440] provided 1 perfect and 0 imperfect interpolant sequences [2024-09-22 23:59:37,177 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-09-22 23:59:37,177 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-09-22 23:59:37,177 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1314011333] [2024-09-22 23:59:37,177 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-09-22 23:59:37,178 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-09-22 23:59:37,179 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-09-22 23:59:37,180 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-09-22 23:59:37,180 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-09-22 23:59:37,180 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-22 23:59:37,180 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-22 23:59:37,180 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 10.75) internal successors, (43), 3 states have internal predecessors, (43), 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-22 23:59:37,180 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:37,180 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-22 23:59:37,305 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:37,305 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:37,306 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-09-22 23:59:37,307 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-22 23:59:37,307 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-22 23:59:37,307 INFO L85 PathProgramCache]: Analyzing trace with hash -1988376473, now seen corresponding path program 2 times [2024-09-22 23:59:37,307 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-22 23:59:37,308 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1063476036] [2024-09-22 23:59:37,308 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-22 23:59:37,309 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-22 23:59:37,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-22 23:59:37,510 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 67 trivial. 0 not checked. [2024-09-22 23:59:37,511 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-09-22 23:59:37,512 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1063476036] [2024-09-22 23:59:37,512 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1063476036] provided 1 perfect and 0 imperfect interpolant sequences [2024-09-22 23:59:37,512 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-09-22 23:59:37,512 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-09-22 23:59:37,512 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [20356163] [2024-09-22 23:59:37,512 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-09-22 23:59:37,513 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-09-22 23:59:37,513 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-09-22 23:59:37,513 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-09-22 23:59:37,514 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-09-22 23:59:37,514 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-22 23:59:37,514 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-22 23:59:37,514 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 13.666666666666666) internal successors, (41), 3 states have internal predecessors, (41), 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-22 23:59:37,514 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:37,514 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:37,516 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-22 23:59:37,630 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:37,630 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:37,631 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:37,631 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-09-22 23:59:37,631 INFO L399 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION (and 2 more)] === [2024-09-22 23:59:37,632 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-22 23:59:37,632 INFO L85 PathProgramCache]: Analyzing trace with hash 1157333755, now seen corresponding path program 1 times [2024-09-22 23:59:37,632 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-22 23:59:37,632 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1575569442] [2024-09-22 23:59:37,632 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-22 23:59:37,632 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-22 23:59:37,661 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-22 23:59:37,750 INFO L134 CoverageAnalysis]: Checked inductivity of 31 backedges. 20 proven. 5 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-09-22 23:59:37,750 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-09-22 23:59:37,750 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1575569442] [2024-09-22 23:59:37,750 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1575569442] provided 0 perfect and 1 imperfect interpolant sequences [2024-09-22 23:59:37,750 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1149732089] [2024-09-22 23:59:37,750 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-22 23:59:37,753 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-09-22 23:59:37,753 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-22 23:59:37,771 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-22 23:59:37,773 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-22 23:59:37,915 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-22 23:59:37,917 INFO L262 TraceCheckSpWp]: Trace formula consists of 327 conjuncts, 4 conjuncts are in the unsatisfiable core [2024-09-22 23:59:37,922 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-22 23:59:37,986 INFO L134 CoverageAnalysis]: Checked inductivity of 31 backedges. 20 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2024-09-22 23:59:37,986 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-09-22 23:59:37,986 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1149732089] provided 1 perfect and 0 imperfect interpolant sequences [2024-09-22 23:59:37,987 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-09-22 23:59:37,987 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [4] total 4 [2024-09-22 23:59:37,987 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1446027238] [2024-09-22 23:59:37,987 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-09-22 23:59:37,987 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-09-22 23:59:37,987 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-09-22 23:59:37,988 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-09-22 23:59:37,988 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2024-09-22 23:59:37,988 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-22 23:59:37,988 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-22 23:59:37,989 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 10.5) internal successors, (42), 3 states have internal predecessors, (42), 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-22 23:59:37,989 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:37,989 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:37,989 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:37,989 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-22 23:59:38,045 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:38,045 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:38,045 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:38,046 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:38,060 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2024-09-22 23:59:38,246 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,3 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-09-22 23:59:38,247 INFO L399 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION (and 2 more)] === [2024-09-22 23:59:38,247 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-22 23:59:38,248 INFO L85 PathProgramCache]: Analyzing trace with hash -254698185, now seen corresponding path program 3 times [2024-09-22 23:59:38,248 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-22 23:59:38,248 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [794104317] [2024-09-22 23:59:38,248 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-22 23:59:38,248 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-22 23:59:38,286 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-22 23:59:38,379 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 51 proven. 16 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-09-22 23:59:38,379 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-09-22 23:59:38,379 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [794104317] [2024-09-22 23:59:38,379 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [794104317] provided 0 perfect and 1 imperfect interpolant sequences [2024-09-22 23:59:38,379 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [511983376] [2024-09-22 23:59:38,379 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-09-22 23:59:38,379 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-09-22 23:59:38,380 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-22 23:59:38,381 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-09-22 23:59:38,383 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2024-09-22 23:59:38,529 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 5 check-sat command(s) [2024-09-22 23:59:38,529 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-09-22 23:59:38,531 INFO L262 TraceCheckSpWp]: Trace formula consists of 413 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-09-22 23:59:38,533 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-22 23:59:38,612 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 67 proven. 0 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-09-22 23:59:38,612 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-09-22 23:59:38,613 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [511983376] provided 1 perfect and 0 imperfect interpolant sequences [2024-09-22 23:59:38,614 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-09-22 23:59:38,614 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [6] total 7 [2024-09-22 23:59:38,614 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [476662575] [2024-09-22 23:59:38,614 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-09-22 23:59:38,614 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-09-22 23:59:38,614 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-09-22 23:59:38,615 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-09-22 23:59:38,615 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=24, Unknown=0, NotChecked=0, Total=42 [2024-09-22 23:59:38,615 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-22 23:59:38,615 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-22 23:59:38,616 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 10.666666666666666) internal successors, (64), 6 states have internal predecessors, (64), 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-22 23:59:38,616 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:38,616 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:38,616 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:38,616 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:38,616 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-22 23:59:38,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:38,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:38,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:38,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:38,714 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-09-22 23:59:38,730 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2024-09-22 23:59:38,914 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,4 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-09-22 23:59:38,915 INFO L399 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION (and 2 more)] === [2024-09-22 23:59:38,915 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-22 23:59:38,915 INFO L85 PathProgramCache]: Analyzing trace with hash -1276997123, now seen corresponding path program 1 times [2024-09-22 23:59:38,915 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-22 23:59:38,916 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2043207994] [2024-09-22 23:59:38,916 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-22 23:59:38,916 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-22 23:59:38,936 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-22 23:59:39,021 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 25 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2024-09-22 23:59:39,021 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-09-22 23:59:39,021 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2043207994] [2024-09-22 23:59:39,022 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2043207994] provided 0 perfect and 1 imperfect interpolant sequences [2024-09-22 23:59:39,022 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1187586444] [2024-09-22 23:59:39,022 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-22 23:59:39,022 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-09-22 23:59:39,022 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-09-22 23:59:39,027 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-09-22 23:59:39,042 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2024-09-22 23:59:39,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-09-22 23:59:39,145 INFO L262 TraceCheckSpWp]: Trace formula consists of 344 conjuncts, 5 conjuncts are in the unsatisfiable core [2024-09-22 23:59:39,147 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-09-22 23:59:39,195 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 22 proven. 0 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2024-09-22 23:59:39,195 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-09-22 23:59:39,196 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1187586444] provided 1 perfect and 0 imperfect interpolant sequences [2024-09-22 23:59:39,196 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-09-22 23:59:39,196 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [5] total 7 [2024-09-22 23:59:39,196 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [197083121] [2024-09-22 23:59:39,196 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-09-22 23:59:39,196 INFO L551 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-09-22 23:59:39,196 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-09-22 23:59:39,197 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-09-22 23:59:39,197 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2024-09-22 23:59:39,197 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-09-22 23:59:39,197 INFO L474 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-09-22 23:59:39,197 INFO L475 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 10.75) internal successors, (43), 3 states have internal predecessors, (43), 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-22 23:59:39,197 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:39,197 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:39,197 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:39,197 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:39,197 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-09-22 23:59:39,197 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-09-22 23:59:39,250 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:39,250 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:39,250 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-09-22 23:59:39,250 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:39,251 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-09-22 23:59:39,251 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-09-22 23:59:39,265 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2024-09-22 23:59:39,451 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,5 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-09-22 23:59:39,452 INFO L399 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT, ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION (and 2 more)] === [2024-09-22 23:59:39,452 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-09-22 23:59:39,452 INFO L85 PathProgramCache]: Analyzing trace with hash -1608672867, now seen corresponding path program 1 times [2024-09-22 23:59:39,453 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-09-22 23:59:39,453 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1842509613] [2024-09-22 23:59:39,453 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-09-22 23:59:39,453 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-09-22 23:59:39,492 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-09-22 23:59:39,492 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-09-22 23:59:39,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-09-22 23:59:39,545 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-09-22 23:59:39,546 INFO L326 BasicCegarLoop]: Counterexample is feasible [2024-09-22 23:59:39,547 INFO L785 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr2ASSERT_VIOLATIONERROR_FUNCTION (4 of 5 remaining) [2024-09-22 23:59:39,549 INFO L785 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0ASSERT_VIOLATIONWITNESS_INVARIANT (3 of 5 remaining) [2024-09-22 23:59:39,549 INFO L785 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1ASSERT_VIOLATIONWITNESS_INVARIANT (2 of 5 remaining) [2024-09-22 23:59:39,551 INFO L785 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 5 remaining) [2024-09-22 23:59:39,551 INFO L785 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 5 remaining) [2024-09-22 23:59:39,552 WARN L456 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2024-09-22 23:59:39,560 INFO L408 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1] [2024-09-22 23:59:39,658 INFO L234 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-09-22 23:59:39,659 INFO L165 ceAbstractionStarter]: Computing trace abstraction results [2024-09-22 23:59:39,661 INFO L469 ceAbstractionStarter]: Automizer considered 2 witness invariants [2024-09-22 23:59:39,664 INFO L470 ceAbstractionStarter]: WitnessConsidered=2 [2024-09-22 23:59:39,665 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 22.09 11:59:39 BasicIcfg [2024-09-22 23:59:39,665 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-09-22 23:59:39,665 INFO L158 Benchmark]: Toolchain (without parser) took 4980.53ms. Allocated memory was 195.0MB in the beginning and 241.2MB in the end (delta: 46.1MB). Free memory was 116.8MB in the beginning and 151.4MB in the end (delta: -34.6MB). Peak memory consumption was 13.6MB. Max. memory is 16.1GB. [2024-09-22 23:59:39,666 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 121.6MB. Free memory was 87.2MB in the beginning and 87.0MB in the end (delta: 139.9kB). There was no memory consumed. Max. memory is 16.1GB. [2024-09-22 23:59:39,666 INFO L158 Benchmark]: Witness Parser took 0.12ms. Allocated memory is still 195.0MB. Free memory is still 124.3MB. There was no memory consumed. Max. memory is 16.1GB. [2024-09-22 23:59:39,666 INFO L158 Benchmark]: CACSL2BoogieTranslator took 772.00ms. Allocated memory is still 195.0MB. Free memory was 116.5MB in the beginning and 119.9MB in the end (delta: -3.4MB). Peak memory consumption was 39.8MB. Max. memory is 16.1GB. [2024-09-22 23:59:39,666 INFO L158 Benchmark]: Boogie Procedure Inliner took 48.55ms. Allocated memory is still 195.0MB. Free memory was 119.9MB in the beginning and 117.5MB in the end (delta: 2.3MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-09-22 23:59:39,666 INFO L158 Benchmark]: Boogie Preprocessor took 40.90ms. Allocated memory is still 195.0MB. Free memory was 117.5MB in the beginning and 115.4MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-09-22 23:59:39,667 INFO L158 Benchmark]: RCFGBuilder took 684.60ms. Allocated memory is still 195.0MB. Free memory was 114.5MB in the beginning and 143.5MB in the end (delta: -29.0MB). Peak memory consumption was 49.5MB. Max. memory is 16.1GB. [2024-09-22 23:59:39,667 INFO L158 Benchmark]: TraceAbstraction took 3429.74ms. Allocated memory was 195.0MB in the beginning and 241.2MB in the end (delta: 46.1MB). Free memory was 142.4MB in the beginning and 151.4MB in the end (delta: -8.9MB). Peak memory consumption was 36.2MB. Max. memory is 16.1GB. [2024-09-22 23:59:39,668 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.16ms. Allocated memory is still 121.6MB. Free memory was 87.2MB in the beginning and 87.0MB in the end (delta: 139.9kB). There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.12ms. Allocated memory is still 195.0MB. Free memory is still 124.3MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 772.00ms. Allocated memory is still 195.0MB. Free memory was 116.5MB in the beginning and 119.9MB in the end (delta: -3.4MB). Peak memory consumption was 39.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 48.55ms. Allocated memory is still 195.0MB. Free memory was 119.9MB in the beginning and 117.5MB in the end (delta: 2.3MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 40.90ms. Allocated memory is still 195.0MB. Free memory was 117.5MB in the beginning and 115.4MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 684.60ms. Allocated memory is still 195.0MB. Free memory was 114.5MB in the beginning and 143.5MB in the end (delta: -29.0MB). Peak memory consumption was 49.5MB. Max. memory is 16.1GB. * TraceAbstraction took 3429.74ms. Allocated memory was 195.0MB in the beginning and 241.2MB in the end (delta: 46.1MB). Free memory was 142.4MB in the beginning and 151.4MB in the end (delta: -8.9MB). Peak memory consumption was 36.2MB. 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: 1694, independent: 1285, independent conditional: 723, independent unconditional: 562, dependent: 409, dependent conditional: 381, dependent unconditional: 28, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ThreadSeparatingIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 1357, independent: 1285, independent conditional: 723, independent unconditional: 562, dependent: 72, dependent conditional: 44, dependent unconditional: 28, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 1357, independent: 1285, independent conditional: 723, independent unconditional: 562, dependent: 72, dependent conditional: 44, dependent unconditional: 28, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 1456, independent: 1285, independent conditional: 723, independent unconditional: 562, dependent: 171, dependent conditional: 143, dependent unconditional: 28, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 1456, independent: 1285, independent conditional: 6, independent unconditional: 1279, dependent: 171, dependent conditional: 36, dependent unconditional: 135, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 1456, independent: 1285, independent conditional: 6, independent unconditional: 1279, dependent: 171, dependent conditional: 36, dependent unconditional: 135, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 501, independent: 456, independent conditional: 1, independent unconditional: 455, dependent: 45, dependent conditional: 14, dependent unconditional: 31, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 501, independent: 435, independent conditional: 0, independent unconditional: 435, dependent: 66, dependent conditional: 0, dependent unconditional: 66, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Independence Queries: [ total: 66, independent: 21, independent conditional: 1, independent unconditional: 20, dependent: 45, dependent conditional: 14, dependent unconditional: 31, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Statistics on underlying relation: SemanticIndependenceRelation.Independence Queries: [ total: 66, independent: 21, independent conditional: 1, independent unconditional: 20, dependent: 45, dependent conditional: 14, dependent unconditional: 31, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 153, independent: 62, independent conditional: 3, independent unconditional: 58, dependent: 92, dependent conditional: 27, dependent unconditional: 64, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Protected Queries: 0 ], Cache Queries: [ total: 1456, independent: 829, independent conditional: 5, independent unconditional: 824, dependent: 126, dependent conditional: 22, dependent unconditional: 104, unknown: 501, unknown conditional: 15, unknown unconditional: 486] , Statistics on independence cache: Total cache size (in pairs): 501, Positive cache size: 456, Positive conditional cache size: 1, Positive unconditional cache size: 455, Negative cache size: 45, Negative conditional cache size: 14, Negative unconditional cache size: 31, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0, Eliminated conditions: 824, Maximal queried relation: 5, Independence queries for same thread: 337, Persistent sets #1 benchmarks: Persistent set computation time: 0.2s, Number of persistent set computation: 114, Number of trivial persistent sets: 91, Underlying independence relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 590, independent: 562, independent conditional: 0, independent unconditional: 562, dependent: 28, dependent conditional: 0, dependent unconditional: 28, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: ThreadSeparatingIndependenceRelation.Independence Queries: [ total: 1694, independent: 1285, independent conditional: 723, independent unconditional: 562, dependent: 409, dependent conditional: 381, dependent unconditional: 28, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ThreadSeparatingIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 1357, independent: 1285, independent conditional: 723, independent unconditional: 562, dependent: 72, dependent conditional: 44, dependent unconditional: 28, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 1357, independent: 1285, independent conditional: 723, independent unconditional: 562, dependent: 72, dependent conditional: 44, dependent unconditional: 28, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 1456, independent: 1285, independent conditional: 723, independent unconditional: 562, dependent: 171, dependent conditional: 143, dependent unconditional: 28, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 1456, independent: 1285, independent conditional: 6, independent unconditional: 1279, dependent: 171, dependent conditional: 36, dependent unconditional: 135, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 1456, independent: 1285, independent conditional: 6, independent unconditional: 1279, dependent: 171, dependent conditional: 36, dependent unconditional: 135, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 501, independent: 456, independent conditional: 1, independent unconditional: 455, dependent: 45, dependent conditional: 14, dependent unconditional: 31, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 501, independent: 435, independent conditional: 0, independent unconditional: 435, dependent: 66, dependent conditional: 0, dependent unconditional: 66, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Independence Queries: [ total: 66, independent: 21, independent conditional: 1, independent unconditional: 20, dependent: 45, dependent conditional: 14, dependent unconditional: 31, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Statistics on underlying relation: SemanticIndependenceRelation.Independence Queries: [ total: 66, independent: 21, independent conditional: 1, independent unconditional: 20, dependent: 45, dependent conditional: 14, dependent unconditional: 31, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 153, independent: 62, independent conditional: 3, independent unconditional: 58, dependent: 92, dependent conditional: 27, dependent unconditional: 64, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Protected Queries: 0 ], Cache Queries: [ total: 1456, independent: 829, independent conditional: 5, independent unconditional: 824, dependent: 126, dependent conditional: 22, dependent unconditional: 104, unknown: 501, unknown conditional: 15, unknown unconditional: 486] , Statistics on independence cache: Total cache size (in pairs): 501, Positive cache size: 456, Positive conditional cache size: 1, Positive unconditional cache size: 455, Negative cache size: 45, Negative conditional cache size: 14, Negative unconditional cache size: 31, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0, Eliminated conditions: 824, Maximal queried relation: 5, Independence queries for same thread: 337 - CounterExampleResult [Line: 919]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L870] 0 int num; [L871] 0 unsigned long total; [L872] 0 int flag; [L873] 0 pthread_mutex_t m; [L874] 0 pthread_cond_t empty, full; [L1] 0 //@ ghost int multithreaded = 0; [L1] 0 //@ ghost int m_locked = 0; [L907] 0 pthread_t t1, t2; [L908] 0 num = 0 [L909] 0 total = 0 [L913] 0 //@ ghost multithreaded = 1; VAL [flag=0, m={3:0}, num=0, t1=-2, total=0] [L913] FCALL, FORK 0 pthread_create(&t1, 0, thread1, 0) VAL [\old(arg)={0:0}, flag=0, m={3:0}, num=0, t1=-2, total=0] [L876] 1 int i; [L877] 1 i = 0 VAL [\old(arg)={0:0}, arg={0:0}, flag=0, i=0, m={3:0}, num=0, total=0] [L914] 0 //@ assert (((!multithreaded || ((flag == 0) || (flag == 1))) && (!multithreaded || (m_locked || ((num == 0) || (num == 1))))) && (!multithreaded || ((num == 0) || (num == 1)))); VAL [\old(arg)={0:0}, arg={0:0}, flag=0, i=0, m={3:0}, num=0, t1=-2, total=0] [L914] FCALL, FORK 0 pthread_create(&t2, 0, thread2, 0) VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, flag=0, i=0, m={3:0}, num=0, t1=-2, t2=-1, total=0] [L890] 2 int j; [L891] 2 j = 0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=0, j=0, m={3:0}, num=0, total=0] [L915] 0 //@ assert (((!multithreaded || ((flag == 0) || (flag == 1))) && (!multithreaded || (m_locked || ((num == 0) || (num == 1))))) && (!multithreaded || ((num == 0) || (num == 1)))); VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=0, j=0, m={3:0}, num=0, t1=-2, t2=-1, total=0] [L878] COND TRUE 1 i < 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=0, j=0, m={3:0}, num=0, total=0] [L879] 1 //@ ghost m_locked = 1; [L879] 1 //@ ghost m_locked = 1; [L892] COND TRUE 2 j < 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=0, j=0, m={3:0}, num=0, total=0] [L880] COND FALSE 1 !(num > 0) [L882] 1 num++ VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=0, j=0, m={3:0}, num=1, total=0] [L883] 1 //@ ghost m_locked = 0; [L883] 1 //@ ghost m_locked = 0; [L893] 2 //@ ghost m_locked = 1; [L893] 2 //@ ghost m_locked = 1; [L885] 1 i++ VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=1, j=0, m={3:0}, num=1, total=0] [L894] COND FALSE 2 !(num == 0) [L896] 2 total = total + j [L897] 2 num-- VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=1, j=0, m={3:0}, num=0, total=0] [L898] 2 //@ ghost m_locked = 0; [L898] 2 //@ ghost m_locked = 0; [L900] 2 j++ VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=1, j=1, m={3:0}, num=0, total=0] [L878] COND TRUE 1 i < 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=1, j=1, m={3:0}, num=0, total=0] [L879] 1 //@ ghost m_locked = 1; [L879] 1 //@ ghost m_locked = 1; [L892] COND TRUE 2 j < 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=1, j=1, m={3:0}, num=0, total=0] [L880] COND FALSE 1 !(num > 0) [L882] 1 num++ VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=1, j=1, m={3:0}, num=1, total=0] [L883] 1 //@ ghost m_locked = 0; [L883] 1 //@ ghost m_locked = 0; [L893] 2 //@ ghost m_locked = 1; [L893] 2 //@ ghost m_locked = 1; [L885] 1 i++ VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=2, j=1, m={3:0}, num=1, total=0] [L894] COND FALSE 2 !(num == 0) [L896] 2 total = total + j [L897] 2 num-- VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=2, j=1, m={3:0}, num=0, total=1] [L898] 2 //@ ghost m_locked = 0; [L898] 2 //@ ghost m_locked = 0; [L900] 2 j++ VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=2, j=2, m={3:0}, num=0, total=1] [L878] COND TRUE 1 i < 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=2, j=2, m={3:0}, num=0, total=1] [L879] 1 //@ ghost m_locked = 1; [L879] 1 //@ ghost m_locked = 1; [L892] COND TRUE 2 j < 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=2, j=2, m={3:0}, num=0, total=1] [L880] COND FALSE 1 !(num > 0) [L882] 1 num++ VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=2, j=2, m={3:0}, num=1, total=1] [L883] 1 //@ ghost m_locked = 0; [L883] 1 //@ ghost m_locked = 0; [L893] 2 //@ ghost m_locked = 1; [L893] 2 //@ ghost m_locked = 1; [L885] 1 i++ VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=3, j=2, m={3:0}, num=1, total=1] [L894] COND FALSE 2 !(num == 0) [L896] 2 total = total + j [L897] 2 num-- VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=3, j=2, m={3:0}, num=0, total=3] [L898] 2 //@ ghost m_locked = 0; [L898] 2 //@ ghost m_locked = 0; [L900] 2 j++ VAL [\old(arg)={0:0}, \old(arg)={0:0}, arg={0:0}, arg={0:0}, flag=0, i=3, j=3, m={3:0}, num=0, total=3] [L878] COND FALSE 1 !(i < 3) [L887] 1 return ((void *)0); [L915] FCALL, JOIN 1 pthread_join(t1, 0) VAL [\old(arg)={0:0}, \old(arg)={0:0}, \result={0:0}, arg={0:0}, arg={0:0}, flag=0, i=3, j=3, m={3:0}, num=0, t1=-2, t2=-1, total=3] [L892] COND FALSE 2 !(j < 3) [L902] 2 total = total + j [L903] 2 flag = 1 [L904] 2 return ((void *)0); [L916] FCALL, JOIN 2 pthread_join(t2, 0) VAL [\old(arg)={0:0}, \old(arg)={0:0}, \result={0:0}, \result={0:0}, arg={0:0}, arg={0:0}, flag=1, i=3, j=3, m={3:0}, num=0, t1=-2, t2=-1, total=6] [L917] COND TRUE 0 \read(flag) VAL [\old(arg)={0:0}, \old(arg)={0:0}, \result={0:0}, \result={0:0}, arg={0:0}, arg={0:0}, flag=1, i=3, j=3, m={3:0}, num=0, t1=-2, t2=-1, total=6] [L918] COND FALSE 0 !(total != ((3 * (3 + 1)) / 2)) VAL [\old(arg)={0:0}, \old(arg)={0:0}, \result={0:0}, \result={0:0}, arg={0:0}, arg={0:0}, flag=1, i=3, j=3, m={3:0}, num=0, t1=-2, t2=-1, total=6] [L919] 0 reach_error() VAL [\old(arg)={0:0}, \old(arg)={0:0}, \result={0:0}, \result={0:0}, arg={0:0}, arg={0:0}, flag=1, i=3, j=3, m={3:0}, num=0, t1=-2, t2=-1, total=6] - UnprovableResult [Line: 914]: Unable to prove that invariant of correctness witness holds Unable to prove that invariant of correctness witness holds Reason: Not analyzed. - UnprovableResult [Line: 915]: Unable to prove that invariant of correctness witness holds Unable to prove that invariant of correctness witness holds Reason: Not analyzed. - UnprovableResult [Line: 914]: Unable to prove that petrification did provide enough thread instances (tool internal message) Unable to prove that petrification did provide enough thread instances (tool internal message) Reason: Not analyzed. - UnprovableResult [Line: 913]: Unable to prove that petrification did provide enough thread instances (tool internal message) Unable to prove that petrification did provide enough thread instances (tool internal message) Reason: Not analyzed. - StatisticsResult: Ultimate Automizer benchmark data for errors in thread instance: ULTIMATE.start with 1 thread instances CFG has 5 procedures, 61 locations, 5 error locations. Started 1 CEGAR loops. OverallTime: 3.2s, OverallIterations: 7, TraceHistogramMax: 0, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.7s, 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: 24, 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.1s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 0.9s InterpolantComputationTime, 531 NumberOfCodeBlocks, 531 NumberOfCodeBlocksAsserted, 14 NumberOfCheckSat, 468 ConstructedInterpolants, 0 QuantifiedInterpolants, 970 SizeOfPredicates, 0 NumberOfNonLiveVariables, 1084 ConjunctsInSsa, 14 ConjunctsInUnsatCore, 9 InterpolantComputations, 6 PerfectInterpolantSequences, 345/391 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 RESULT: Ultimate proved your program to be incorrect! [2024-09-22 23:59:39,706 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-22 23:59:39,903 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 Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE