./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/pthread-deagle/arithmetic_prog_bad.i --full-output --validate ./goblint.2024-08-08_07-59-58.files/mutex-meet-ghost/arithmetic_prog_bad.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version c091e2ee 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-08-08_07-59-58.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.compute.hoare.annotation.of.negated.interpolant.automaton,.abstraction.and.cfg false --- Real Ultimate output --- This is Ultimate 0.2.4-tmp.fs.goblint-validation-c091e2e-m [2024-08-13 14:37:54,163 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-13 14:37:54,214 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf [2024-08-13 14:37:54,218 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-13 14:37:54,219 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-13 14:37:54,239 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-13 14:37:54,239 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-13 14:37:54,240 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-13 14:37:54,240 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-13 14:37:54,241 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-13 14:37:54,241 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-13 14:37:54,241 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-13 14:37:54,242 INFO L153 SettingsManager]: * Use SBE=true [2024-08-13 14:37:54,242 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-13 14:37:54,243 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-13 14:37:54,244 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-13 14:37:54,244 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-08-13 14:37:54,244 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-13 14:37:54,244 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-13 14:37:54,245 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-13 14:37:54,245 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-13 14:37:54,247 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-13 14:37:54,248 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-13 14:37:54,248 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-13 14:37:54,248 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-13 14:37:54,248 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-13 14:37:54,248 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-13 14:37:54,248 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-13 14:37:54,248 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-13 14:37:54,249 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-13 14:37:54,249 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-13 14:37:54,249 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-13 14:37:54,249 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-13 14:37:54,249 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-13 14:37:54,249 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-08-13 14:37:54,250 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-13 14:37:54,250 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-08-13 14:37:54,250 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-13 14:37:54,250 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-13 14:37:54,250 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-13 14:37:54,250 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-13 14:37:54,251 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-13 14:37:54,251 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: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false [2024-08-13 14:37:54,434 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-13 14:37:54,454 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-13 14:37:54,457 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-13 14:37:54,458 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-13 14:37:54,459 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-13 14:37:54,460 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/./goblint.2024-08-08_07-59-58.files/mutex-meet-ghost/arithmetic_prog_bad.yml/witness.yml [2024-08-13 14:37:54,596 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-13 14:37:54,597 INFO L274 PluginConnector]: CDTParser initialized [2024-08-13 14:37:54,597 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-08-13 14:37:55,765 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-13 14:37:56,022 INFO L384 CDTParser]: Found 1 translation units. [2024-08-13 14:37:56,022 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/pthread-deagle/arithmetic_prog_bad.i [2024-08-13 14:37:56,037 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/8774c5295/9d7874363eb24aca9c1dd44352cbe073/FLAG25f48a416 [2024-08-13 14:37:56,329 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/8774c5295/9d7874363eb24aca9c1dd44352cbe073 [2024-08-13 14:37:56,336 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-13 14:37:56,337 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-13 14:37:56,337 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-13 14:37:56,337 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-13 14:37:56,341 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-13 14:37:56,342 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 13.08 02:37:54" (1/2) ... [2024-08-13 14:37:56,343 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@66496d74 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 02:37:56, skipping insertion in model container [2024-08-13 14:37:56,344 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 13.08 02:37:54" (1/2) ... [2024-08-13 14:37:56,345 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@2c21110b and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 02:37:56, skipping insertion in model container [2024-08-13 14:37:56,345 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.08 02:37:56" (2/2) ... [2024-08-13 14:37:56,346 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@66496d74 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56, skipping insertion in model container [2024-08-13 14:37:56,346 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.08 02:37:56" (2/2) ... [2024-08-13 14:37:56,346 INFO L81 nessWitnessExtractor]: Only extracting loop invariants from correctness witness [2024-08-13 14:37:56,376 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-13 14:37:56,377 INFO L103 edCorrectnessWitness]: ghost_variable m_locked = 0 [2024-08-13 14:37:56,377 INFO L103 edCorrectnessWitness]: ghost_variable multithreaded = 0 [2024-08-13 14:37:56,377 INFO L106 edCorrectnessWitness]: ghost_update [L898-L898] m_locked = 0; [2024-08-13 14:37:56,377 INFO L106 edCorrectnessWitness]: ghost_update [L895-L895] m_locked = 0; [2024-08-13 14:37:56,377 INFO L106 edCorrectnessWitness]: ghost_update [L895-L895] m_locked = 1; [2024-08-13 14:37:56,377 INFO L106 edCorrectnessWitness]: ghost_update [L883-L883] m_locked = 0; [2024-08-13 14:37:56,377 INFO L106 edCorrectnessWitness]: ghost_update [L893-L893] m_locked = 1; [2024-08-13 14:37:56,378 INFO L106 edCorrectnessWitness]: ghost_update [L879-L879] m_locked = 1; [2024-08-13 14:37:56,378 INFO L106 edCorrectnessWitness]: ghost_update [L913-L913] multithreaded = 1; [2024-08-13 14:37:56,378 INFO L106 edCorrectnessWitness]: ghost_update [L881-L881] m_locked = 0; [2024-08-13 14:37:56,378 INFO L106 edCorrectnessWitness]: ghost_update [L881-L881] m_locked = 1; [2024-08-13 14:37:56,410 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-13 14:37:56,675 WARN L247 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-08-13 14:37:56,678 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-13 14:37:56,694 INFO L202 MainTranslator]: Completed pre-run Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local Start Parsing Local [2024-08-13 14:37:56,767 WARN L247 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-08-13 14:37:56,768 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-13 14:37:56,813 INFO L206 MainTranslator]: Completed translation [2024-08-13 14:37:56,813 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56 WrapperNode [2024-08-13 14:37:56,813 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-13 14:37:56,815 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-13 14:37:56,815 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-13 14:37:56,815 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-13 14:37:56,820 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56" (1/1) ... [2024-08-13 14:37:56,840 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56" (1/1) ... [2024-08-13 14:37:56,859 INFO L138 Inliner]: procedures = 243, calls = 26, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 74 [2024-08-13 14:37:56,860 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-13 14:37:56,861 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-13 14:37:56,861 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-13 14:37:56,862 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-13 14:37:56,869 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56" (1/1) ... [2024-08-13 14:37:56,869 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56" (1/1) ... [2024-08-13 14:37:56,877 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56" (1/1) ... [2024-08-13 14:37:56,877 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56" (1/1) ... [2024-08-13 14:37:56,883 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56" (1/1) ... [2024-08-13 14:37:56,889 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56" (1/1) ... [2024-08-13 14:37:56,894 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56" (1/1) ... [2024-08-13 14:37:56,895 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56" (1/1) ... [2024-08-13 14:37:56,897 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-13 14:37:56,902 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-13 14:37:56,902 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-13 14:37:56,902 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-13 14:37:56,903 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56" (1/1) ... [2024-08-13 14:37:56,908 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-13 14:37:56,914 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 14:37:56,927 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-08-13 14:37:56,929 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-08-13 14:37:56,954 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2024-08-13 14:37:56,955 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexUnlock [2024-08-13 14:37:56,955 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2024-08-13 14:37:56,955 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2024-08-13 14:37:56,955 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2024-08-13 14:37:56,955 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2024-08-13 14:37:56,955 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2024-08-13 14:37:56,955 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-13 14:37:56,956 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-08-13 14:37:56,956 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-13 14:37:56,956 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-13 14:37:56,958 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-08-13 14:37:57,060 INFO L244 CfgBuilder]: Building ICFG [2024-08-13 14:37:57,062 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-13 14:37:57,227 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-13 14:37:57,230 INFO L293 CfgBuilder]: Performing block encoding [2024-08-13 14:37:57,364 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-08-13 14:37:57,364 INFO L320 CfgBuilder]: Removed 4 assume(true) statements. [2024-08-13 14:37:57,364 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 13.08 02:37:57 BoogieIcfgContainer [2024-08-13 14:37:57,364 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-08-13 14:37:57,366 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-08-13 14:37:57,366 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-08-13 14:37:57,369 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-08-13 14:37:57,369 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 13.08 02:37:54" (1/4) ... [2024-08-13 14:37:57,370 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@120dfa9c and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 13.08 02:37:57, skipping insertion in model container [2024-08-13 14:37:57,370 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 13.08 02:37:56" (2/4) ... [2024-08-13 14:37:57,371 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@120dfa9c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.08 02:37:57, skipping insertion in model container [2024-08-13 14:37:57,371 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 02:37:56" (3/4) ... [2024-08-13 14:37:57,371 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@120dfa9c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.08 02:37:57, skipping insertion in model container [2024-08-13 14:37:57,371 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 13.08 02:37:57" (4/4) ... [2024-08-13 14:37:57,373 INFO L112 eAbstractionObserver]: Analyzing ICFG arithmetic_prog_bad.i [2024-08-13 14:37:57,388 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-08-13 14:37:57,389 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-08-13 14:37:57,389 INFO L522 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-08-13 14:37:57,449 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2024-08-13 14:37:57,506 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-08-13 14:37:57,507 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-08-13 14:37:57,507 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 14:37:57,509 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-08-13 14:37:57,510 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-08-13 14:37:57,533 INFO L158 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2024-08-13 14:37:57,542 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == ULTIMATE.start ======== [2024-08-13 14:37:57,546 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=PARTIAL_ORDER_FA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@793a4ce0, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-08-13 14:37:57,547 INFO L358 AbstractCegarLoop]: Starting to check reachability of 3 error locations. [2024-08-13 14:37:57,692 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 14:37:57,697 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 14:37:57,698 INFO L85 PathProgramCache]: Analyzing trace with hash 2099320442, now seen corresponding path program 1 times [2024-08-13 14:37:57,706 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 14:37:57,707 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1498429558] [2024-08-13 14:37:57,707 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 14:37:57,707 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 14:37:57,825 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 14:37:58,101 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 5 proven. 0 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2024-08-13 14:37:58,101 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 14:37:58,101 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1498429558] [2024-08-13 14:37:58,102 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1498429558] provided 1 perfect and 0 imperfect interpolant sequences [2024-08-13 14:37:58,102 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-08-13 14:37:58,103 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-08-13 14:37:58,104 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2069588913] [2024-08-13 14:37:58,105 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-08-13 14:37:58,109 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-08-13 14:37:58,109 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 14:37:58,125 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-08-13 14:37:58,126 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-08-13 14:37:58,127 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 14:37:58,128 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 14:37:58,128 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 12.0) internal successors, (36), 3 states have internal predecessors, (36), 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-08-13 14:37:58,129 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 14:37:58,196 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:58,196 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-08-13 14:37:58,197 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 14:37:58,197 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 14:37:58,197 INFO L85 PathProgramCache]: Analyzing trace with hash 571418942, now seen corresponding path program 2 times [2024-08-13 14:37:58,197 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 14:37:58,198 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1907890776] [2024-08-13 14:37:58,198 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 14:37:58,198 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 14:37:58,213 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 14:37:58,273 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 20 trivial. 0 not checked. [2024-08-13 14:37:58,273 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 14:37:58,274 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1907890776] [2024-08-13 14:37:58,274 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1907890776] provided 1 perfect and 0 imperfect interpolant sequences [2024-08-13 14:37:58,274 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-08-13 14:37:58,274 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2024-08-13 14:37:58,274 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1352607794] [2024-08-13 14:37:58,275 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-08-13 14:37:58,276 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2024-08-13 14:37:58,276 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 14:37:58,276 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2024-08-13 14:37:58,276 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2024-08-13 14:37:58,276 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 14:37:58,277 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 14:37:58,277 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 12.333333333333334) internal successors, (37), 2 states have internal predecessors, (37), 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-08-13 14:37:58,277 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:58,277 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 14:37:58,339 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:58,339 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:58,339 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-08-13 14:37:58,339 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 14:37:58,340 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 14:37:58,340 INFO L85 PathProgramCache]: Analyzing trace with hash -1194280271, now seen corresponding path program 3 times [2024-08-13 14:37:58,340 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 14:37:58,340 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [839203060] [2024-08-13 14:37:58,340 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 14:37:58,341 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 14:37:58,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 14:37:58,445 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 18 proven. 0 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2024-08-13 14:37:58,446 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 14:37:58,446 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [839203060] [2024-08-13 14:37:58,446 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [839203060] provided 1 perfect and 0 imperfect interpolant sequences [2024-08-13 14:37:58,447 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-08-13 14:37:58,447 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2024-08-13 14:37:58,448 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [953878047] [2024-08-13 14:37:58,448 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-08-13 14:37:58,448 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-08-13 14:37:58,448 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 14:37:58,449 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-08-13 14:37:58,449 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2024-08-13 14:37:58,449 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 14:37:58,449 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 14:37:58,449 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 10.0) internal successors, (40), 3 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-08-13 14:37:58,449 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:58,449 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:58,449 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 14:37:58,529 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:58,529 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:58,529 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:58,529 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-08-13 14:37:58,530 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 14:37:58,530 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 14:37:58,530 INFO L85 PathProgramCache]: Analyzing trace with hash 1900949077, now seen corresponding path program 1 times [2024-08-13 14:37:58,530 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 14:37:58,530 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [626904425] [2024-08-13 14:37:58,531 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 14:37:58,531 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 14:37:58,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 14:37:58,611 INFO L134 CoverageAnalysis]: Checked inductivity of 31 backedges. 20 proven. 5 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-08-13 14:37:58,611 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 14:37:58,612 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [626904425] [2024-08-13 14:37:58,612 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [626904425] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-13 14:37:58,612 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [258681845] [2024-08-13 14:37:58,612 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 14:37:58,612 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-13 14:37:58,612 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 14:37:58,614 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-08-13 14:37:58,615 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-08-13 14:37:58,706 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 14:37:58,708 INFO L262 TraceCheckSpWp]: Trace formula consists of 320 conjuncts, 4 conjunts are in the unsatisfiable core [2024-08-13 14:37:58,712 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-13 14:37:58,762 INFO L134 CoverageAnalysis]: Checked inductivity of 31 backedges. 20 proven. 0 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2024-08-13 14:37:58,763 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-08-13 14:37:58,763 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [258681845] provided 1 perfect and 0 imperfect interpolant sequences [2024-08-13 14:37:58,763 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-08-13 14:37:58,763 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [4] total 4 [2024-08-13 14:37:58,763 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [158277877] [2024-08-13 14:37:58,763 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-08-13 14:37:58,764 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-08-13 14:37:58,764 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 14:37:58,764 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-08-13 14:37:58,764 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=10, Unknown=0, NotChecked=0, Total=20 [2024-08-13 14:37:58,765 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 14:37:58,765 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 14:37:58,766 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 9.75) internal successors, (39), 3 states have internal predecessors, (39), 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-08-13 14:37:58,766 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:58,766 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:58,766 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:58,766 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 14:37:58,813 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:58,814 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:58,814 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:58,814 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:58,827 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2024-08-13 14:37:59,015 WARN L477 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-08-13 14:37:59,015 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 14:37:59,016 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 14:37:59,016 INFO L85 PathProgramCache]: Analyzing trace with hash -806565935, now seen corresponding path program 4 times [2024-08-13 14:37:59,016 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 14:37:59,016 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1100611331] [2024-08-13 14:37:59,016 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 14:37:59,016 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 14:37:59,058 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 14:37:59,148 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 51 proven. 16 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-08-13 14:37:59,149 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 14:37:59,150 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1100611331] [2024-08-13 14:37:59,150 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1100611331] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-13 14:37:59,150 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1951813924] [2024-08-13 14:37:59,150 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-08-13 14:37:59,150 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-13 14:37:59,150 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 14:37:59,152 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-08-13 14:37:59,153 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-08-13 14:37:59,274 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-08-13 14:37:59,275 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-08-13 14:37:59,276 INFO L262 TraceCheckSpWp]: Trace formula consists of 291 conjuncts, 5 conjunts are in the unsatisfiable core [2024-08-13 14:37:59,278 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-13 14:37:59,350 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 67 proven. 0 refuted. 0 times theorem prover too weak. 7 trivial. 0 not checked. [2024-08-13 14:37:59,352 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-08-13 14:37:59,352 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1951813924] provided 1 perfect and 0 imperfect interpolant sequences [2024-08-13 14:37:59,352 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-08-13 14:37:59,352 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [6] total 7 [2024-08-13 14:37:59,352 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [905975492] [2024-08-13 14:37:59,352 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-08-13 14:37:59,352 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-08-13 14:37:59,353 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 14:37:59,353 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-08-13 14:37:59,353 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=24, Unknown=0, NotChecked=0, Total=42 [2024-08-13 14:37:59,353 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 14:37:59,353 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 14:37:59,353 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 10.166666666666666) internal successors, (61), 6 states have internal predecessors, (61), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-08-13 14:37:59,353 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:59,353 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:59,354 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:59,354 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:59,354 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 14:37:59,438 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:59,438 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:59,438 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:59,438 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:59,438 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-08-13 14:37:59,451 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2024-08-13 14:37:59,639 WARN L477 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-08-13 14:37:59,639 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 14:37:59,639 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 14:37:59,639 INFO L85 PathProgramCache]: Analyzing trace with hash -1852167999, now seen corresponding path program 1 times [2024-08-13 14:37:59,640 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 14:37:59,640 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1832490738] [2024-08-13 14:37:59,640 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 14:37:59,640 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 14:37:59,669 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 14:37:59,733 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 25 refuted. 0 times theorem prover too weak. 11 trivial. 0 not checked. [2024-08-13 14:37:59,733 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 14:37:59,733 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1832490738] [2024-08-13 14:37:59,733 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1832490738] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-13 14:37:59,733 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [595161988] [2024-08-13 14:37:59,733 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 14:37:59,733 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-13 14:37:59,733 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 14:37:59,736 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-08-13 14:37:59,738 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-08-13 14:37:59,841 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 14:37:59,842 INFO L262 TraceCheckSpWp]: Trace formula consists of 337 conjuncts, 5 conjunts are in the unsatisfiable core [2024-08-13 14:37:59,844 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-13 14:37:59,895 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 22 proven. 0 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2024-08-13 14:37:59,896 INFO L323 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2024-08-13 14:37:59,896 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [595161988] provided 1 perfect and 0 imperfect interpolant sequences [2024-08-13 14:37:59,896 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2024-08-13 14:37:59,896 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [5] total 7 [2024-08-13 14:37:59,896 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1883461271] [2024-08-13 14:37:59,896 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-08-13 14:37:59,896 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2024-08-13 14:37:59,896 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 14:37:59,897 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2024-08-13 14:37:59,897 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2024-08-13 14:37:59,897 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 14:37:59,897 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 14:37:59,897 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 10.0) internal successors, (40), 3 states have internal predecessors, (40), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2024-08-13 14:37:59,897 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:59,897 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:59,897 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:59,897 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:59,897 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-08-13 14:37:59,897 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 14:37:59,941 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:59,942 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2024-08-13 14:37:59,942 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:59,942 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:59,942 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-08-13 14:37:59,942 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 14:37:59,957 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2024-08-13 14:38:00,142 WARN L477 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-08-13 14:38:00,143 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 14:38:00,143 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 14:38:00,143 INFO L85 PathProgramCache]: Analyzing trace with hash 2111123553, now seen corresponding path program 1 times [2024-08-13 14:38:00,143 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 14:38:00,143 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1246696061] [2024-08-13 14:38:00,143 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 14:38:00,144 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 14:38:00,166 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-08-13 14:38:00,166 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-08-13 14:38:00,182 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-08-13 14:38:00,204 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-08-13 14:38:00,204 INFO L360 BasicCegarLoop]: Counterexample is feasible [2024-08-13 14:38:00,205 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (2 of 3 remaining) [2024-08-13 14:38:00,206 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 3 remaining) [2024-08-13 14:38:00,206 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 3 remaining) [2024-08-13 14:38:00,206 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2024-08-13 14:38:00,210 INFO L445 BasicCegarLoop]: Path program histogram: [4, 1, 1, 1] [2024-08-13 14:38:00,215 INFO L229 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-08-13 14:38:00,215 INFO L179 ceAbstractionStarter]: Computing trace abstraction results [2024-08-13 14:38:00,291 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 13.08 02:38:00 BasicIcfg [2024-08-13 14:38:00,291 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-08-13 14:38:00,292 INFO L158 Benchmark]: Toolchain (without parser) took 3955.47ms. Allocated memory was 159.4MB in the beginning and 224.4MB in the end (delta: 65.0MB). Free memory was 131.4MB in the beginning and 99.8MB in the end (delta: 31.5MB). Peak memory consumption was 95.3MB. Max. memory is 16.1GB. [2024-08-13 14:38:00,292 INFO L158 Benchmark]: Witness Parser took 0.14ms. Allocated memory is still 159.4MB. Free memory was 114.0MB in the beginning and 113.9MB in the end (delta: 139.8kB). There was no memory consumed. Max. memory is 16.1GB. [2024-08-13 14:38:00,292 INFO L158 Benchmark]: CDTParser took 0.63ms. Allocated memory is still 159.4MB. Free memory is still 129.2MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-13 14:38:00,292 INFO L158 Benchmark]: CACSL2BoogieTranslator took 476.70ms. Allocated memory is still 159.4MB. Free memory was 131.4MB in the beginning and 97.6MB in the end (delta: 33.7MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. [2024-08-13 14:38:00,293 INFO L158 Benchmark]: Boogie Procedure Inliner took 46.10ms. Allocated memory is still 159.4MB. Free memory was 97.6MB in the beginning and 95.6MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-08-13 14:38:00,293 INFO L158 Benchmark]: Boogie Preprocessor took 39.75ms. Allocated memory is still 159.4MB. Free memory was 95.6MB in the beginning and 93.6MB in the end (delta: 2.0MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-08-13 14:38:00,293 INFO L158 Benchmark]: RCFGBuilder took 462.74ms. Allocated memory is still 159.4MB. Free memory was 93.6MB in the beginning and 55.9MB in the end (delta: 37.7MB). Peak memory consumption was 37.7MB. Max. memory is 16.1GB. [2024-08-13 14:38:00,293 INFO L158 Benchmark]: TraceAbstraction took 2925.87ms. Allocated memory was 159.4MB in the beginning and 224.4MB in the end (delta: 65.0MB). Free memory was 55.0MB in the beginning and 99.8MB in the end (delta: -44.8MB). Peak memory consumption was 19.8MB. Max. memory is 16.1GB. [2024-08-13 14:38:00,295 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Witness Parser took 0.14ms. Allocated memory is still 159.4MB. Free memory was 114.0MB in the beginning and 113.9MB in the end (delta: 139.8kB). There was no memory consumed. Max. memory is 16.1GB. * CDTParser took 0.63ms. Allocated memory is still 159.4MB. Free memory is still 129.2MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 476.70ms. Allocated memory is still 159.4MB. Free memory was 131.4MB in the beginning and 97.6MB in the end (delta: 33.7MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 46.10ms. Allocated memory is still 159.4MB. Free memory was 97.6MB in the beginning and 95.6MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 39.75ms. Allocated memory is still 159.4MB. Free memory was 95.6MB in the beginning and 93.6MB in the end (delta: 2.0MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 462.74ms. Allocated memory is still 159.4MB. Free memory was 93.6MB in the beginning and 55.9MB in the end (delta: 37.7MB). Peak memory consumption was 37.7MB. Max. memory is 16.1GB. * TraceAbstraction took 2925.87ms. Allocated memory was 159.4MB in the beginning and 224.4MB in the end (delta: 65.0MB). Free memory was 55.0MB in the beginning and 99.8MB in the end (delta: -44.8MB). Peak memory consumption was 19.8MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Independence relation #1 benchmarks ThreadSeparatingIndependenceRelation.Independence Queries: [ total: 1553, independent: 1171, independent conditional: 690, independent unconditional: 481, dependent: 382, dependent conditional: 362, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ThreadSeparatingIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 1242, independent: 1171, independent conditional: 690, independent unconditional: 481, dependent: 71, dependent conditional: 51, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 1242, independent: 1171, independent conditional: 690, independent unconditional: 481, dependent: 71, dependent conditional: 51, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 1320, independent: 1171, independent conditional: 0, independent unconditional: 1171, dependent: 149, dependent conditional: 78, dependent unconditional: 71, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 1320, independent: 1171, independent conditional: 0, independent unconditional: 1171, dependent: 149, dependent conditional: 36, dependent unconditional: 113, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 1320, independent: 1171, independent conditional: 0, independent unconditional: 1171, dependent: 149, dependent conditional: 36, dependent unconditional: 113, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 402, independent: 371, independent conditional: 0, independent unconditional: 371, dependent: 31, dependent conditional: 8, dependent unconditional: 23, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 402, independent: 356, independent conditional: 0, independent unconditional: 356, dependent: 46, dependent conditional: 0, dependent unconditional: 46, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Independence Queries: [ total: 46, independent: 15, independent conditional: 0, independent unconditional: 15, dependent: 31, dependent conditional: 8, dependent unconditional: 23, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Statistics on underlying relation: SemanticIndependenceRelation.Independence Queries: [ total: 46, independent: 15, independent conditional: 0, independent unconditional: 15, dependent: 31, dependent conditional: 8, dependent unconditional: 23, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 94, independent: 40, independent conditional: 0, independent unconditional: 40, dependent: 54, dependent conditional: 14, dependent unconditional: 39, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Protected Queries: 0 ], Cache Queries: [ total: 1320, independent: 800, independent conditional: 0, independent unconditional: 800, dependent: 118, dependent conditional: 28, dependent unconditional: 90, unknown: 402, unknown conditional: 8, unknown unconditional: 394] , Statistics on independence cache: Total cache size (in pairs): 402, Positive cache size: 371, Positive conditional cache size: 0, Positive unconditional cache size: 371, Negative cache size: 31, Negative conditional cache size: 8, Negative unconditional cache size: 23, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0, Eliminated conditions: 42, Maximal queried relation: 5, Independence queries for same thread: 311 - StatisticsResult: Persistent set benchmarks Persistent set computation time: 0.1s, Number of persistent set computation: 104, Number of trivial persistent sets: 83, Underlying independence relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 501, independent: 481, independent conditional: 0, independent unconditional: 481, dependent: 20, dependent conditional: 0, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: ThreadSeparatingIndependenceRelation.Independence Queries: [ total: 1553, independent: 1171, independent conditional: 690, independent unconditional: 481, dependent: 382, dependent conditional: 362, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ThreadSeparatingIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 1242, independent: 1171, independent conditional: 690, independent unconditional: 481, dependent: 71, dependent conditional: 51, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 1242, independent: 1171, independent conditional: 690, independent unconditional: 481, dependent: 71, dependent conditional: 51, dependent unconditional: 20, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 1320, independent: 1171, independent conditional: 0, independent unconditional: 1171, dependent: 149, dependent conditional: 78, dependent unconditional: 71, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 1320, independent: 1171, independent conditional: 0, independent unconditional: 1171, dependent: 149, dependent conditional: 36, dependent unconditional: 113, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 1320, independent: 1171, independent conditional: 0, independent unconditional: 1171, dependent: 149, dependent conditional: 36, dependent unconditional: 113, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 402, independent: 371, independent conditional: 0, independent unconditional: 371, dependent: 31, dependent conditional: 8, dependent unconditional: 23, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 402, independent: 356, independent conditional: 0, independent unconditional: 356, dependent: 46, dependent conditional: 0, dependent unconditional: 46, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Independence Queries: [ total: 46, independent: 15, independent conditional: 0, independent unconditional: 15, dependent: 31, dependent conditional: 8, dependent unconditional: 23, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Statistics on underlying relation: SemanticIndependenceRelation.Independence Queries: [ total: 46, independent: 15, independent conditional: 0, independent unconditional: 15, dependent: 31, dependent conditional: 8, dependent unconditional: 23, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 94, independent: 40, independent conditional: 0, independent unconditional: 40, dependent: 54, dependent conditional: 14, dependent unconditional: 39, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Protected Queries: 0 ], Cache Queries: [ total: 1320, independent: 800, independent conditional: 0, independent unconditional: 800, dependent: 118, dependent conditional: 28, dependent unconditional: 90, unknown: 402, unknown conditional: 8, unknown unconditional: 394] , Statistics on independence cache: Total cache size (in pairs): 402, Positive cache size: 371, Positive conditional cache size: 0, Positive unconditional cache size: 371, Negative cache size: 31, Negative conditional cache size: 8, Negative unconditional cache size: 23, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0, Eliminated conditions: 42, Maximal queried relation: 5, Independence queries for same thread: 311 - CounterExampleResult [Line: 919]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L1] 0 //@ ghost int m_locked = 0; [L1] 0 //@ ghost int multithreaded = 0; [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; [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=-1, 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=-1, 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] 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=-1, t2=0, 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] [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; [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; [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; [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; [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; [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; [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; [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; [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; [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=-1, t2=0, 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=-1, t2=0, 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=-1, t2=0, 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=-1, t2=0, 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=-1, t2=0, total=6] - 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, 56 locations, 3 error locations. Started 1 CEGAR loops. OverallTime: 2.7s, OverallIterations: 7, TraceHistogramMax: 0, PathProgramHistogramMax: 4, EmptinessCheckTime: 0.5s, 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.2s SatisfiabilityAnalysisTime, 0.8s InterpolantComputationTime, 528 NumberOfCodeBlocks, 524 NumberOfCodeBlocksAsserted, 10 NumberOfCheckSat, 468 ConstructedInterpolants, 0 QuantifiedInterpolants, 926 SizeOfPredicates, 0 NumberOfNonLiveVariables, 948 ConjunctsInSsa, 14 ConjunctsInUnsatCore, 9 InterpolantComputations, 6 PerfectInterpolantSequences, 328/374 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-08-13 14:38:00,320 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Ended with exit code 0 [2024-08-13 14:38:00,524 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