./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/weaver/popl20-bad-counter-queue.wvr.c --full-output --validate ./goblint.2024-08-08_07-59-58.files/mutex-meet-ghost/popl20-bad-counter-queue.wvr.yml/witness.yml --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 7bc0c755 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/weaver/popl20-bad-counter-queue.wvr.c ./goblint.2024-08-08_07-59-58.files/mutex-meet-ghost/popl20-bad-counter-queue.wvr.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.dk.goblint-validation-atomicfix-7bc0c75-m [2024-08-22 19:49:24,286 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-22 19:49:24,362 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf [2024-08-22 19:49:24,387 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-22 19:49:24,387 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-22 19:49:24,426 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-22 19:49:24,427 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-22 19:49:24,427 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-22 19:49:24,428 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-22 19:49:24,430 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-22 19:49:24,430 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-22 19:49:24,431 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-22 19:49:24,431 INFO L153 SettingsManager]: * Use SBE=true [2024-08-22 19:49:24,431 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-22 19:49:24,434 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-22 19:49:24,435 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-22 19:49:24,435 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-08-22 19:49:24,435 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-22 19:49:24,435 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-22 19:49:24,436 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-22 19:49:24,436 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-22 19:49:24,436 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-22 19:49:24,437 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-22 19:49:24,437 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-22 19:49:24,437 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-22 19:49:24,437 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-22 19:49:24,438 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-22 19:49:24,438 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-22 19:49:24,438 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-22 19:49:24,438 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-22 19:49:24,439 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-22 19:49:24,439 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-22 19:49:24,439 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-22 19:49:24,439 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-22 19:49:24,439 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-08-22 19:49:24,440 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-22 19:49:24,440 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-08-22 19:49:24,442 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-22 19:49:24,442 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-22 19:49:24,442 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-22 19:49:24,443 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-22 19:49:24,450 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-22 19:49:24,450 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-22 19:49:24,711 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-22 19:49:24,734 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-22 19:49:24,738 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-22 19:49:24,739 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-22 19:49:24,739 INFO L274 PluginConnector]: CDTParser initialized [2024-08-22 19:49:24,740 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/svcomp/weaver/popl20-bad-counter-queue.wvr.c [2024-08-22 19:49:26,176 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-22 19:49:26,398 INFO L384 CDTParser]: Found 1 translation units. [2024-08-22 19:49:26,400 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-bad-counter-queue.wvr.c [2024-08-22 19:49:26,413 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/e53a7d514/7b72eb0edf414586bd666aad37b43551/FLAGdc183efcf [2024-08-22 19:49:26,432 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/e53a7d514/7b72eb0edf414586bd666aad37b43551 [2024-08-22 19:49:26,435 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-22 19:49:26,436 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-22 19:49:26,438 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/popl20-bad-counter-queue.wvr.yml/witness.yml [2024-08-22 19:49:26,522 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-22 19:49:26,524 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-22 19:49:26,525 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-22 19:49:26,526 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-22 19:49:26,531 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-22 19:49:26,532 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.08 07:49:26" (1/2) ... [2024-08-22 19:49:26,533 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@9f07bf2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.08 07:49:26, skipping insertion in model container [2024-08-22 19:49:26,533 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 22.08 07:49:26" (1/2) ... [2024-08-22 19:49:26,535 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@6bd8bc5f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 22.08 07:49:26, skipping insertion in model container [2024-08-22 19:49:26,536 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 22.08 07:49:26" (2/2) ... [2024-08-22 19:49:26,536 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@9f07bf2 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.08 07:49:26, skipping insertion in model container [2024-08-22 19:49:26,536 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 22.08 07:49:26" (2/2) ... [2024-08-22 19:49:26,536 INFO L81 nessWitnessExtractor]: Only extracting loop invariants from correctness witness [2024-08-22 19:49:26,548 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-22 19:49:26,549 INFO L103 edCorrectnessWitness]: ghost_variable multithreaded = 0 [2024-08-22 19:49:26,549 INFO L106 edCorrectnessWitness]: ghost_update [L81-L81] multithreaded = 1; [2024-08-22 19:49:26,574 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-22 19:49:26,783 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-bad-counter-queue.wvr.c[2454,2467] [2024-08-22 19:49:26,799 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-22 19:49:26,808 INFO L202 MainTranslator]: Completed pre-run Start Parsing Local Start Parsing Local [2024-08-22 19:49:26,855 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-bad-counter-queue.wvr.c[2454,2467] [2024-08-22 19:49:26,867 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-22 19:49:26,889 INFO L206 MainTranslator]: Completed translation [2024-08-22 19:49:26,890 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.08 07:49:26 WrapperNode [2024-08-22 19:49:26,890 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-22 19:49:26,892 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-22 19:49:26,892 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-22 19:49:26,892 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-22 19:49:26,899 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.08 07:49:26" (1/1) ... [2024-08-22 19:49:26,906 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.08 07:49:26" (1/1) ... [2024-08-22 19:49:26,931 INFO L138 Inliner]: procedures = 25, calls = 30, calls flagged for inlining = 12, calls inlined = 12, statements flattened = 143 [2024-08-22 19:49:26,932 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-22 19:49:26,932 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-22 19:49:26,932 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-22 19:49:26,933 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-22 19:49:26,944 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.08 07:49:26" (1/1) ... [2024-08-22 19:49:26,944 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.08 07:49:26" (1/1) ... [2024-08-22 19:49:26,951 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.08 07:49:26" (1/1) ... [2024-08-22 19:49:26,952 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.08 07:49:26" (1/1) ... [2024-08-22 19:49:26,958 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.08 07:49:26" (1/1) ... [2024-08-22 19:49:26,961 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.08 07:49:26" (1/1) ... [2024-08-22 19:49:26,963 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.08 07:49:26" (1/1) ... [2024-08-22 19:49:26,964 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.08 07:49:26" (1/1) ... [2024-08-22 19:49:26,967 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-22 19:49:26,968 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-22 19:49:26,969 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-22 19:49:26,969 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-22 19:49:26,970 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.08 07:49:26" (1/1) ... [2024-08-22 19:49:26,980 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-22 19:49:26,996 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-22 19:49:27,014 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-22 19:49:27,020 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-22 19:49:27,060 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-22 19:49:27,061 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2024-08-22 19:49:27,063 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2024-08-22 19:49:27,063 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2024-08-22 19:49:27,063 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2024-08-22 19:49:27,063 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-08-22 19:49:27,063 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-08-22 19:49:27,063 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-22 19:49:27,063 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-22 19:49:27,064 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2024-08-22 19:49:27,064 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-22 19:49:27,064 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-22 19:49:27,064 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-08-22 19:49:27,065 WARN L212 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-08-22 19:49:27,168 INFO L243 CfgBuilder]: Building ICFG [2024-08-22 19:49:27,171 INFO L269 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-22 19:49:27,423 INFO L288 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-08-22 19:49:27,424 INFO L292 CfgBuilder]: Performing block encoding [2024-08-22 19:49:27,671 INFO L314 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-08-22 19:49:27,671 INFO L319 CfgBuilder]: Removed 3 assume(true) statements. [2024-08-22 19:49:27,672 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.08 07:49:27 BoogieIcfgContainer [2024-08-22 19:49:27,672 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-08-22 19:49:27,674 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-08-22 19:49:27,675 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-08-22 19:49:27,678 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-08-22 19:49:27,679 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 22.08 07:49:26" (1/4) ... [2024-08-22 19:49:27,685 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7cdcdf2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 22.08 07:49:27, skipping insertion in model container [2024-08-22 19:49:27,685 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 22.08 07:49:26" (2/4) ... [2024-08-22 19:49:27,685 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7cdcdf2 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 22.08 07:49:27, skipping insertion in model container [2024-08-22 19:49:27,685 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 22.08 07:49:26" (3/4) ... [2024-08-22 19:49:27,685 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7cdcdf2 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 22.08 07:49:27, skipping insertion in model container [2024-08-22 19:49:27,686 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 22.08 07:49:27" (4/4) ... [2024-08-22 19:49:27,687 INFO L112 eAbstractionObserver]: Analyzing ICFG popl20-bad-counter-queue.wvr.c [2024-08-22 19:49:27,750 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-08-22 19:49:27,750 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-08-22 19:49:27,750 INFO L522 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-08-22 19:49:27,801 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2024-08-22 19:49:27,847 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-08-22 19:49:27,848 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-08-22 19:49:27,848 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-22 19:49:27,850 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-22 19:49:27,852 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-22 19:49:27,894 INFO L158 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2024-08-22 19:49:27,908 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == ULTIMATE.start ======== [2024-08-22 19:49:27,915 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;@4fe6376e, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-08-22 19:49:27,915 INFO L358 AbstractCegarLoop]: Starting to check reachability of 3 error locations. [2024-08-22 19:49:28,072 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-22 19:49:28,076 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-22 19:49:28,077 INFO L85 PathProgramCache]: Analyzing trace with hash -638454060, now seen corresponding path program 1 times [2024-08-22 19:49:28,085 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-22 19:49:28,086 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2133075309] [2024-08-22 19:49:28,087 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-22 19:49:28,087 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-22 19:49:28,227 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-22 19:49:28,527 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:28,529 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-22 19:49:28,529 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2133075309] [2024-08-22 19:49:28,530 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2133075309] provided 1 perfect and 0 imperfect interpolant sequences [2024-08-22 19:49:28,530 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-08-22 19:49:28,530 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-08-22 19:49:28,532 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1676674694] [2024-08-22 19:49:28,532 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-08-22 19:49:28,537 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-08-22 19:49:28,537 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-22 19:49:28,566 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-08-22 19:49:28,566 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-08-22 19:49:28,567 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:28,569 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-22 19:49:28,570 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 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-22 19:49:28,571 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:28,684 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:28,684 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-08-22 19:49:28,686 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-22 19:49:28,686 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-22 19:49:28,686 INFO L85 PathProgramCache]: Analyzing trace with hash 830377704, now seen corresponding path program 1 times [2024-08-22 19:49:28,687 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-22 19:49:28,687 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2112258724] [2024-08-22 19:49:28,687 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-22 19:49:28,687 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-22 19:49:28,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-22 19:49:28,890 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:28,890 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-22 19:49:28,891 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2112258724] [2024-08-22 19:49:28,891 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2112258724] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-22 19:49:28,891 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [250621691] [2024-08-22 19:49:28,891 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-22 19:49:28,891 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-22 19:49:28,892 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-22 19:49:28,894 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-22 19:49:28,896 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-22 19:49:29,009 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-22 19:49:29,011 INFO L262 TraceCheckSpWp]: Trace formula consists of 145 conjuncts, 6 conjunts are in the unsatisfiable core [2024-08-22 19:49:29,015 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-22 19:49:29,114 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:29,114 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-08-22 19:49:29,181 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:29,181 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [250621691] provided 1 perfect and 1 imperfect interpolant sequences [2024-08-22 19:49:29,181 INFO L185 FreeRefinementEngine]: Found 1 perfect and 2 imperfect interpolant sequences. [2024-08-22 19:49:29,181 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5, 4] total 9 [2024-08-22 19:49:29,182 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [154150378] [2024-08-22 19:49:29,183 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-08-22 19:49:29,184 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-08-22 19:49:29,185 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-22 19:49:29,185 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-08-22 19:49:29,187 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2024-08-22 19:49:29,187 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:29,188 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-22 19:49:29,188 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.0) internal successors, (20), 4 states have internal predecessors, (20), 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-22 19:49:29,188 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:29,188 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:29,305 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:29,306 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:29,322 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-22 19:49:29,507 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable1 [2024-08-22 19:49:29,508 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-22 19:49:29,508 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-22 19:49:29,509 INFO L85 PathProgramCache]: Analyzing trace with hash -340738642, now seen corresponding path program 1 times [2024-08-22 19:49:29,509 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-22 19:49:29,509 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [426195204] [2024-08-22 19:49:29,509 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-22 19:49:29,509 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-22 19:49:29,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-22 19:49:29,725 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:29,725 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-22 19:49:29,725 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [426195204] [2024-08-22 19:49:29,726 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [426195204] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-22 19:49:29,726 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [470433350] [2024-08-22 19:49:29,726 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-22 19:49:29,726 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-22 19:49:29,727 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-22 19:49:29,729 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-22 19:49:29,731 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-22 19:49:29,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-22 19:49:29,819 INFO L262 TraceCheckSpWp]: Trace formula consists of 171 conjuncts, 8 conjunts are in the unsatisfiable core [2024-08-22 19:49:29,821 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-22 19:49:29,948 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:29,948 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-08-22 19:49:30,027 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:30,028 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [470433350] provided 0 perfect and 2 imperfect interpolant sequences [2024-08-22 19:49:30,028 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-08-22 19:49:30,028 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 13 [2024-08-22 19:49:30,028 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [729946942] [2024-08-22 19:49:30,028 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-08-22 19:49:30,029 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2024-08-22 19:49:30,029 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-22 19:49:30,030 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-08-22 19:49:30,030 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=127, Unknown=0, NotChecked=0, Total=182 [2024-08-22 19:49:30,031 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:30,031 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-22 19:49:30,031 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.071428571428571) internal successors, (57), 13 states have internal predecessors, (57), 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-22 19:49:30,031 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:30,031 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:30,031 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:30,139 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:30,139 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:30,140 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:30,158 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-22 19:49:30,340 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,4 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-22 19:49:30,341 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-22 19:49:30,341 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-22 19:49:30,341 INFO L85 PathProgramCache]: Analyzing trace with hash 42728474, now seen corresponding path program 2 times [2024-08-22 19:49:30,341 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-22 19:49:30,342 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [581222983] [2024-08-22 19:49:30,342 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-22 19:49:30,342 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-22 19:49:30,359 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-22 19:49:30,504 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 2 proven. 8 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:30,505 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-22 19:49:30,505 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [581222983] [2024-08-22 19:49:30,505 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [581222983] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-22 19:49:30,505 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [633813329] [2024-08-22 19:49:30,506 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-08-22 19:49:30,506 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-22 19:49:30,506 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-22 19:49:30,508 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-22 19:49:30,509 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-22 19:49:30,591 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-08-22 19:49:30,591 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-08-22 19:49:30,593 INFO L262 TraceCheckSpWp]: Trace formula consists of 180 conjuncts, 8 conjunts are in the unsatisfiable core [2024-08-22 19:49:30,595 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-22 19:49:30,712 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 3 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:30,713 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-08-22 19:49:30,811 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 5 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:30,812 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [633813329] provided 0 perfect and 2 imperfect interpolant sequences [2024-08-22 19:49:30,812 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-08-22 19:49:30,812 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2024-08-22 19:49:30,813 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1428796072] [2024-08-22 19:49:30,813 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-08-22 19:49:30,813 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2024-08-22 19:49:30,813 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-22 19:49:30,814 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2024-08-22 19:49:30,815 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=149, Unknown=0, NotChecked=0, Total=210 [2024-08-22 19:49:30,815 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:30,815 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-22 19:49:30,816 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 4.066666666666666) internal successors, (61), 14 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-22 19:49:30,816 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:30,816 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:30,816 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:30,816 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:31,033 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:31,033 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:31,034 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:31,034 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-08-22 19:49:31,053 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-22 19:49:31,234 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,5 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-22 19:49:31,235 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-22 19:49:31,236 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-22 19:49:31,236 INFO L85 PathProgramCache]: Analyzing trace with hash 2019481824, now seen corresponding path program 3 times [2024-08-22 19:49:31,236 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-22 19:49:31,236 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1632811367] [2024-08-22 19:49:31,236 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-22 19:49:31,236 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-22 19:49:31,256 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-22 19:49:31,461 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 16 proven. 8 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:31,461 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-22 19:49:31,462 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1632811367] [2024-08-22 19:49:31,462 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1632811367] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-22 19:49:31,462 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [682306912] [2024-08-22 19:49:31,462 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-08-22 19:49:31,462 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-22 19:49:31,463 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-22 19:49:31,466 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-08-22 19:49:31,468 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2024-08-22 19:49:31,561 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2024-08-22 19:49:31,562 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-08-22 19:49:31,565 INFO L262 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 10 conjunts are in the unsatisfiable core [2024-08-22 19:49:31,567 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-22 19:49:31,734 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 21 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:31,734 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-08-22 19:49:31,842 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 21 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:31,843 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [682306912] provided 0 perfect and 2 imperfect interpolant sequences [2024-08-22 19:49:31,843 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-08-22 19:49:31,843 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8, 8] total 18 [2024-08-22 19:49:31,843 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1655690147] [2024-08-22 19:49:31,843 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-08-22 19:49:31,844 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2024-08-22 19:49:31,844 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-22 19:49:31,845 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2024-08-22 19:49:31,845 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=95, Invalid=247, Unknown=0, NotChecked=0, Total=342 [2024-08-22 19:49:31,845 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:31,846 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-22 19:49:31,846 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 4.0) internal successors, (76), 18 states have internal predecessors, (76), 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-22 19:49:31,846 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:31,846 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:31,846 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:31,846 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 9 states. [2024-08-22 19:49:31,846 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:31,981 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:31,981 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:31,981 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:31,982 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-08-22 19:49:31,982 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-08-22 19:49:32,002 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2024-08-22 19:49:32,183 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,6 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-22 19:49:32,183 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-22 19:49:32,184 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-22 19:49:32,184 INFO L85 PathProgramCache]: Analyzing trace with hash -1069214732, now seen corresponding path program 4 times [2024-08-22 19:49:32,184 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-22 19:49:32,184 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [613477929] [2024-08-22 19:49:32,184 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-22 19:49:32,184 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-22 19:49:32,202 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-22 19:49:32,422 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 4 proven. 23 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:32,425 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-22 19:49:32,425 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [613477929] [2024-08-22 19:49:32,425 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [613477929] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-22 19:49:32,425 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1128985468] [2024-08-22 19:49:32,425 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-08-22 19:49:32,425 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-22 19:49:32,426 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-22 19:49:32,428 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-08-22 19:49:32,438 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2024-08-22 19:49:32,507 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-08-22 19:49:32,507 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-08-22 19:49:32,511 INFO L262 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 8 conjunts are in the unsatisfiable core [2024-08-22 19:49:32,513 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-22 19:49:32,668 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 3 proven. 18 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2024-08-22 19:49:32,669 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-08-22 19:49:32,745 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 3 proven. 8 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2024-08-22 19:49:32,745 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1128985468] provided 0 perfect and 2 imperfect interpolant sequences [2024-08-22 19:49:32,745 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-08-22 19:49:32,745 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 6] total 19 [2024-08-22 19:49:32,746 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [645764418] [2024-08-22 19:49:32,746 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-08-22 19:49:32,746 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2024-08-22 19:49:32,746 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-22 19:49:32,747 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2024-08-22 19:49:32,748 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=281, Unknown=0, NotChecked=0, Total=342 [2024-08-22 19:49:32,748 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:32,748 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-22 19:49:32,748 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 4.2105263157894735) internal successors, (80), 19 states have internal predecessors, (80), 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-22 19:49:32,748 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:32,748 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:32,748 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:32,749 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 9 states. [2024-08-22 19:49:32,749 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-08-22 19:49:32,749 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:33,288 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:33,289 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:33,289 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:33,289 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-08-22 19:49:33,289 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-08-22 19:49:33,290 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2024-08-22 19:49:33,307 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2024-08-22 19:49:33,490 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,7 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-22 19:49:33,491 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-22 19:49:33,491 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-22 19:49:33,491 INFO L85 PathProgramCache]: Analyzing trace with hash -375524381, now seen corresponding path program 5 times [2024-08-22 19:49:33,491 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-22 19:49:33,492 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [706447817] [2024-08-22 19:49:33,492 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-22 19:49:33,492 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-22 19:49:33,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-22 19:49:33,975 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 45 proven. 51 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-08-22 19:49:33,976 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-22 19:49:33,976 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [706447817] [2024-08-22 19:49:33,977 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [706447817] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-22 19:49:33,977 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [160022368] [2024-08-22 19:49:33,977 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-08-22 19:49:33,977 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-22 19:49:33,977 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-22 19:49:33,982 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-08-22 19:49:33,984 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2024-08-22 19:49:34,092 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2024-08-22 19:49:34,092 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-08-22 19:49:34,095 INFO L262 TraceCheckSpWp]: Trace formula consists of 280 conjuncts, 13 conjunts are in the unsatisfiable core [2024-08-22 19:49:34,097 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-22 19:49:34,385 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 87 proven. 6 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-08-22 19:49:34,386 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-08-22 19:49:34,664 INFO L134 CoverageAnalysis]: Checked inductivity of 96 backedges. 87 proven. 6 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2024-08-22 19:49:34,665 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [160022368] provided 0 perfect and 2 imperfect interpolant sequences [2024-08-22 19:49:34,665 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-08-22 19:49:34,665 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 11, 11] total 36 [2024-08-22 19:49:34,666 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1740043394] [2024-08-22 19:49:34,666 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-08-22 19:49:34,666 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 37 states [2024-08-22 19:49:34,667 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-22 19:49:34,668 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2024-08-22 19:49:34,668 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=235, Invalid=1097, Unknown=0, NotChecked=0, Total=1332 [2024-08-22 19:49:34,669 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:34,669 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-22 19:49:34,669 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 37 states, 37 states have (on average 3.945945945945946) internal successors, (146), 36 states have internal predecessors, (146), 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-22 19:49:34,669 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:34,669 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:34,669 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:34,670 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 9 states. [2024-08-22 19:49:34,670 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-08-22 19:49:34,670 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 25 states. [2024-08-22 19:49:34,670 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-22 19:49:34,806 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-22 19:49:34,807 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:34,807 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-22 19:49:34,807 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-08-22 19:49:34,807 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-08-22 19:49:34,808 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2024-08-22 19:49:34,808 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-08-22 19:49:34,827 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2024-08-22 19:49:35,008 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 8 /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable6 [2024-08-22 19:49:35,009 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-22 19:49:35,009 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-22 19:49:35,009 INFO L85 PathProgramCache]: Analyzing trace with hash -209378973, now seen corresponding path program 6 times [2024-08-22 19:49:35,010 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-22 19:49:35,010 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1490920312] [2024-08-22 19:49:35,010 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-22 19:49:35,010 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-22 19:49:35,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-08-22 19:49:35,107 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-08-22 19:49:35,185 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-08-22 19:49:35,229 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-08-22 19:49:35,229 INFO L360 BasicCegarLoop]: Counterexample is feasible [2024-08-22 19:49:35,230 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (2 of 3 remaining) [2024-08-22 19:49:35,232 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 3 remaining) [2024-08-22 19:49:35,232 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 3 remaining) [2024-08-22 19:49:35,232 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2024-08-22 19:49:35,240 INFO L445 BasicCegarLoop]: Path program histogram: [6, 1, 1] [2024-08-22 19:49:35,245 INFO L229 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-08-22 19:49:35,245 INFO L179 ceAbstractionStarter]: Computing trace abstraction results [2024-08-22 19:49:35,350 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 22.08 07:49:35 BasicIcfg [2024-08-22 19:49:35,350 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-08-22 19:49:35,350 INFO L158 Benchmark]: Toolchain (without parser) took 8826.95ms. Allocated memory was 159.4MB in the beginning and 201.3MB in the end (delta: 41.9MB). Free memory was 104.1MB in the beginning and 98.7MB in the end (delta: 5.4MB). Peak memory consumption was 48.7MB. Max. memory is 16.1GB. [2024-08-22 19:49:35,350 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 109.1MB. Free memory is still 78.7MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-22 19:49:35,351 INFO L158 Benchmark]: Witness Parser took 0.23ms. Allocated memory is still 159.4MB. Free memory is still 106.1MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-22 19:49:35,351 INFO L158 Benchmark]: CACSL2BoogieTranslator took 365.34ms. Allocated memory is still 159.4MB. Free memory was 103.4MB in the beginning and 88.7MB in the end (delta: 14.7MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. [2024-08-22 19:49:35,351 INFO L158 Benchmark]: Boogie Procedure Inliner took 40.20ms. Allocated memory is still 159.4MB. Free memory was 88.7MB in the beginning and 86.6MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-08-22 19:49:35,351 INFO L158 Benchmark]: Boogie Preprocessor took 35.20ms. Allocated memory is still 159.4MB. Free memory was 86.6MB in the beginning and 85.2MB in the end (delta: 1.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-08-22 19:49:35,351 INFO L158 Benchmark]: RCFGBuilder took 703.82ms. Allocated memory is still 159.4MB. Free memory was 85.2MB in the beginning and 128.1MB in the end (delta: -42.9MB). Peak memory consumption was 49.9MB. Max. memory is 16.1GB. [2024-08-22 19:49:35,352 INFO L158 Benchmark]: TraceAbstraction took 7675.39ms. Allocated memory was 159.4MB in the beginning and 201.3MB in the end (delta: 41.9MB). Free memory was 127.3MB in the beginning and 98.7MB in the end (delta: 28.6MB). Peak memory consumption was 70.1MB. Max. memory is 16.1GB. [2024-08-22 19:49:35,353 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 109.1MB. Free memory is still 78.7MB. There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.23ms. Allocated memory is still 159.4MB. Free memory is still 106.1MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 365.34ms. Allocated memory is still 159.4MB. Free memory was 103.4MB in the beginning and 88.7MB in the end (delta: 14.7MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 40.20ms. Allocated memory is still 159.4MB. Free memory was 88.7MB in the beginning and 86.6MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 35.20ms. Allocated memory is still 159.4MB. Free memory was 86.6MB in the beginning and 85.2MB in the end (delta: 1.4MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 703.82ms. Allocated memory is still 159.4MB. Free memory was 85.2MB in the beginning and 128.1MB in the end (delta: -42.9MB). Peak memory consumption was 49.9MB. Max. memory is 16.1GB. * TraceAbstraction took 7675.39ms. Allocated memory was 159.4MB in the beginning and 201.3MB in the end (delta: 41.9MB). Free memory was 127.3MB in the beginning and 98.7MB in the end (delta: 28.6MB). Peak memory consumption was 70.1MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Independence relation #1 benchmarks ThreadSeparatingIndependenceRelation.Independence Queries: [ total: 1054, independent: 783, independent conditional: 588, independent unconditional: 195, dependent: 271, dependent conditional: 263, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ThreadSeparatingIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 823, independent: 783, independent conditional: 588, independent unconditional: 195, dependent: 40, dependent conditional: 32, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 823, independent: 783, independent conditional: 588, independent unconditional: 195, dependent: 40, dependent conditional: 32, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 898, independent: 783, independent conditional: 0, independent unconditional: 783, dependent: 115, dependent conditional: 75, dependent unconditional: 40, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 898, independent: 783, independent conditional: 0, independent unconditional: 783, dependent: 115, dependent conditional: 32, dependent unconditional: 83, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 898, independent: 783, independent conditional: 0, independent unconditional: 783, dependent: 115, dependent conditional: 32, dependent unconditional: 83, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 189, independent: 171, independent conditional: 0, independent unconditional: 171, dependent: 18, dependent conditional: 10, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 189, independent: 170, independent conditional: 0, independent unconditional: 170, dependent: 19, dependent conditional: 0, dependent unconditional: 19, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Independence Queries: [ total: 19, independent: 1, independent conditional: 0, independent unconditional: 1, dependent: 18, dependent conditional: 10, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Statistics on underlying relation: SemanticIndependenceRelation.Independence Queries: [ total: 19, independent: 1, independent conditional: 0, independent unconditional: 1, dependent: 18, dependent conditional: 10, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 124, independent: 36, independent conditional: 0, independent unconditional: 36, dependent: 88, dependent conditional: 39, dependent unconditional: 49, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Protected Queries: 0 ], Cache Queries: [ total: 898, independent: 612, independent conditional: 0, independent unconditional: 612, dependent: 97, dependent conditional: 22, dependent unconditional: 75, unknown: 189, unknown conditional: 10, unknown unconditional: 179] , Statistics on independence cache: Total cache size (in pairs): 189, Positive cache size: 171, Positive conditional cache size: 0, Positive unconditional cache size: 171, Negative cache size: 18, Negative conditional cache size: 10, Negative unconditional cache size: 8, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0, Eliminated conditions: 43, Maximal queried relation: 3, Independence queries for same thread: 231 - StatisticsResult: Persistent set benchmarks Persistent set computation time: 0.1s, Number of persistent set computation: 40, Number of trivial persistent sets: 29, Underlying independence relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 203, independent: 195, independent conditional: 0, independent unconditional: 195, dependent: 8, dependent conditional: 0, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: ThreadSeparatingIndependenceRelation.Independence Queries: [ total: 1054, independent: 783, independent conditional: 588, independent unconditional: 195, dependent: 271, dependent conditional: 263, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ThreadSeparatingIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 823, independent: 783, independent conditional: 588, independent unconditional: 195, dependent: 40, dependent conditional: 32, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 823, independent: 783, independent conditional: 588, independent unconditional: 195, dependent: 40, dependent conditional: 32, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 898, independent: 783, independent conditional: 0, independent unconditional: 783, dependent: 115, dependent conditional: 75, dependent unconditional: 40, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 898, independent: 783, independent conditional: 0, independent unconditional: 783, dependent: 115, dependent conditional: 32, dependent unconditional: 83, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 898, independent: 783, independent conditional: 0, independent unconditional: 783, dependent: 115, dependent conditional: 32, dependent unconditional: 83, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 189, independent: 171, independent conditional: 0, independent unconditional: 171, dependent: 18, dependent conditional: 10, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 189, independent: 170, independent conditional: 0, independent unconditional: 170, dependent: 19, dependent conditional: 0, dependent unconditional: 19, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Independence Queries: [ total: 19, independent: 1, independent conditional: 0, independent unconditional: 1, dependent: 18, dependent conditional: 10, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ProtectedIndependenceRelation.Statistics on underlying relation: SemanticIndependenceRelation.Independence Queries: [ total: 19, independent: 1, independent conditional: 0, independent unconditional: 1, dependent: 18, dependent conditional: 10, dependent unconditional: 8, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 124, independent: 36, independent conditional: 0, independent unconditional: 36, dependent: 88, dependent conditional: 39, dependent unconditional: 49, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Protected Queries: 0 ], Cache Queries: [ total: 898, independent: 612, independent conditional: 0, independent unconditional: 612, dependent: 97, dependent conditional: 22, dependent unconditional: 75, unknown: 189, unknown conditional: 10, unknown unconditional: 179] , Statistics on independence cache: Total cache size (in pairs): 189, Positive cache size: 171, Positive conditional cache size: 0, Positive unconditional cache size: 171, Negative cache size: 18, Negative conditional cache size: 10, Negative unconditional cache size: 8, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0, Eliminated conditions: 43, Maximal queried relation: 3, Independence queries for same thread: 231 - CounterExampleResult [Line: 87]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L1] 0 //@ ghost int multithreaded = 0; [L41] 0 int* A; [L42] 0 int counter, N; [L75] 0 pthread_t t1, t2; [L77] 0 N = __VERIFIER_nondet_int() [L78] CALL, EXPR 0 create_fresh_int_array(N) [L93] CALL 0 assume_abort_if_not(size >= 0) [L38] COND FALSE 0 !(!cond) [L93] RET 0 assume_abort_if_not(size >= 0) [L94] CALL 0 assume_abort_if_not(size <= (((size_t) 4294967295) / sizeof(int))) [L38] COND FALSE 0 !(!cond) [L94] RET 0 assume_abort_if_not(size <= (((size_t) 4294967295) / sizeof(int))) [L96] 0 int* arr = (int*)malloc(sizeof(int) * (size_t)size); [L97] 0 int i = 0; VAL [A={0:0}, N=5, \old(size)=5, arr={-4:0}, counter=0, i=0, size=5] [L97] COND TRUE 0 i < size [L98] 0 arr[i] = __VERIFIER_nondet_int() [L97] 0 i++ VAL [A={0:0}, N=5, \old(size)=5, arr={-4:0}, counter=0, i=1, size=5] [L97] COND TRUE 0 i < size [L98] 0 arr[i] = __VERIFIER_nondet_int() [L97] 0 i++ VAL [A={0:0}, N=5, \old(size)=5, arr={-4:0}, counter=0, i=2, size=5] [L97] COND TRUE 0 i < size [L98] 0 arr[i] = __VERIFIER_nondet_int() [L97] 0 i++ VAL [A={0:0}, N=5, \old(size)=5, arr={-4:0}, counter=0, i=3, size=5] [L97] COND TRUE 0 i < size [L98] 0 arr[i] = __VERIFIER_nondet_int() [L97] 0 i++ VAL [A={0:0}, N=5, \old(size)=5, arr={-4:0}, counter=0, i=4, size=5] [L97] COND TRUE 0 i < size [L98] 0 arr[i] = __VERIFIER_nondet_int() [L97] 0 i++ VAL [A={0:0}, N=5, \old(size)=5, arr={-4:0}, counter=0, i=5, size=5] [L97] COND FALSE 0 !(i < size) [L100] 0 return arr; [L78] RET, EXPR 0 create_fresh_int_array(N) [L78] 0 A = create_fresh_int_array(N) [L81] 0 //@ ghost multithreaded = 1; VAL [A={-4:0}, N=5, counter=0, t1=-2] [L81] FCALL, FORK 0 pthread_create(&t1, 0, thread1, 0) VAL [A={-4:0}, N=5, counter=0, t1=-2] [L49] 1 int i=0; VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=0, i=0] [L82] FCALL, FORK 0 pthread_create(&t2, 0, thread2, 0) VAL [A={-4:0}, N=5, counter=0, t1=-2, t2=-1] [L62] 2 int i=0; VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=0, i=0] [L49] COND TRUE 1 i= 0 || a >= -2147483648 - b) [L38] COND FALSE 1 !(!cond) [L110] RET 1 assume_abort_if_not(b >= 0 || a >= -2147483648 - b) [L111] CALL 1 assume_abort_if_not(b <= 0 || a <= 2147483647 - b) [L38] COND FALSE 1 !(!cond) [L111] RET 1 assume_abort_if_not(b <= 0 || a <= 2147483647 - b) [L112] 1 return a + b; [L51] RET, EXPR 1 plus(counter, A[i]) [L51] 1 int tmp = plus(counter, A[i]); [L54] 1 counter = tmp VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=-6, i=0, tmp=-6] [L49] 1 i++ VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=-6, i=1] [L62] COND TRUE 2 i= b - 2147483648) [L38] COND FALSE 2 !(!cond) [L104] RET 2 assume_abort_if_not(b <= 0 || a >= b - 2147483648) [L105] CALL 2 assume_abort_if_not(b >= 0 || a <= b + 2147483647) [L38] COND FALSE 2 !(!cond) [L105] RET 2 assume_abort_if_not(b >= 0 || a <= b + 2147483647) [L106] 2 return a - b; [L64] RET, EXPR 2 minus(counter, A[i]) [L64] 2 int tmp = minus(counter, A[i]); [L67] 2 counter = tmp VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=0, i=0, tmp=0] [L62] 2 i++ VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=0, i=1] [L49] COND TRUE 1 i= 0 || a >= -2147483648 - b) [L38] COND FALSE 1 !(!cond) [L110] RET 1 assume_abort_if_not(b >= 0 || a >= -2147483648 - b) [L111] CALL 1 assume_abort_if_not(b <= 0 || a <= 2147483647 - b) [L38] COND FALSE 1 !(!cond) [L111] RET 1 assume_abort_if_not(b <= 0 || a <= 2147483647 - b) [L112] 1 return a + b; [L51] RET, EXPR 1 plus(counter, A[i]) [L51] 1 int tmp = plus(counter, A[i]); [L54] 1 counter = tmp VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=9, i=1, tmp=9] [L49] 1 i++ VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=9, i=2] [L62] COND TRUE 2 i= b - 2147483648) [L38] COND FALSE 2 !(!cond) [L104] RET 2 assume_abort_if_not(b <= 0 || a >= b - 2147483648) [L105] CALL 2 assume_abort_if_not(b >= 0 || a <= b + 2147483647) [L38] COND FALSE 2 !(!cond) [L105] RET 2 assume_abort_if_not(b >= 0 || a <= b + 2147483647) [L106] 2 return a - b; [L64] RET, EXPR 2 minus(counter, A[i]) [L64] 2 int tmp = minus(counter, A[i]); [L67] 2 counter = tmp VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=0, i=1, tmp=0] [L62] 2 i++ VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=0, i=2] [L49] COND TRUE 1 i= 0 || a >= -2147483648 - b) [L38] COND FALSE 1 !(!cond) [L110] RET 1 assume_abort_if_not(b >= 0 || a >= -2147483648 - b) [L111] CALL 1 assume_abort_if_not(b <= 0 || a <= 2147483647 - b) [L38] COND FALSE 1 !(!cond) [L111] RET 1 assume_abort_if_not(b <= 0 || a <= 2147483647 - b) [L112] 1 return a + b; [L51] RET, EXPR 1 plus(counter, A[i]) [L51] 1 int tmp = plus(counter, A[i]); [L54] 1 counter = tmp VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=3, i=2, tmp=3] [L49] 1 i++ VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=3, i=3] [L62] COND TRUE 2 i= b - 2147483648) [L38] COND FALSE 2 !(!cond) [L104] RET 2 assume_abort_if_not(b <= 0 || a >= b - 2147483648) [L105] CALL 2 assume_abort_if_not(b >= 0 || a <= b + 2147483647) [L38] COND FALSE 2 !(!cond) [L105] RET 2 assume_abort_if_not(b >= 0 || a <= b + 2147483647) [L106] 2 return a - b; [L64] RET, EXPR 2 minus(counter, A[i]) [L64] 2 int tmp = minus(counter, A[i]); [L67] 2 counter = tmp VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=0, i=2, tmp=0] [L62] 2 i++ VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=0, i=3] [L49] COND TRUE 1 i= 0 || a >= -2147483648 - b) [L38] COND FALSE 1 !(!cond) [L110] RET 1 assume_abort_if_not(b >= 0 || a >= -2147483648 - b) [L111] CALL 1 assume_abort_if_not(b <= 0 || a <= 2147483647 - b) [L38] COND FALSE 1 !(!cond) [L111] RET 1 assume_abort_if_not(b <= 0 || a <= 2147483647 - b) [L112] 1 return a + b; [L51] RET, EXPR 1 plus(counter, A[i]) [L51] 1 int tmp = plus(counter, A[i]); [L62] COND TRUE 2 i= b - 2147483648) [L38] COND FALSE 2 !(!cond) [L104] RET 2 assume_abort_if_not(b <= 0 || a >= b - 2147483648) [L105] CALL 2 assume_abort_if_not(b >= 0 || a <= b + 2147483647) [L38] COND FALSE 2 !(!cond) [L105] RET 2 assume_abort_if_not(b >= 0 || a <= b + 2147483647) [L106] 2 return a - b; [L64] RET, EXPR 2 minus(counter, A[i]) [L64] 2 int tmp = minus(counter, A[i]); [L67] 2 counter = tmp VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=3, i=3, tmp=3] [L62] 2 i++ VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=3, i=4] [L62] COND TRUE 2 i= b - 2147483648) [L38] COND FALSE 2 !(!cond) [L104] RET 2 assume_abort_if_not(b <= 0 || a >= b - 2147483648) [L105] CALL 2 assume_abort_if_not(b >= 0 || a <= b + 2147483647) [L38] COND FALSE 2 !(!cond) [L105] RET 2 assume_abort_if_not(b >= 0 || a <= b + 2147483647) [L106] 2 return a - b; [L64] RET, EXPR 2 minus(counter, A[i]) [L64] 2 int tmp = minus(counter, A[i]); [L54] 1 counter = tmp VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=-3, i=3, tmp=-3] [L49] 1 i++ VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=-3, i=4] [L67] 2 counter = tmp VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=11, i=4, tmp=11] [L62] 2 i++ VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=11, i=5] [L49] COND TRUE 1 i= 0 || a >= -2147483648 - b) [L38] COND FALSE 1 !(!cond) [L110] RET 1 assume_abort_if_not(b >= 0 || a >= -2147483648 - b) [L111] CALL 1 assume_abort_if_not(b <= 0 || a <= 2147483647 - b) [L38] COND FALSE 1 !(!cond) [L111] RET 1 assume_abort_if_not(b <= 0 || a <= 2147483647 - b) [L112] 1 return a + b; [L51] RET, EXPR 1 plus(counter, A[i]) [L51] 1 int tmp = plus(counter, A[i]); [L54] 1 counter = tmp VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=3, i=4, tmp=3] [L49] 1 i++ VAL [A={-4:0}, N=5, \old(_argptr)={0:0}, _argptr={0:0}, counter=3, i=5] [L62] COND FALSE 2 !(i