./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 c091e2ee Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/GemCutterReachWitnessValidation.xml -i ../../../trunk/examples/svcomp/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.fs.goblint-validation-c091e2e-m [2024-08-13 13:50:53,919 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-08-13 13:50:53,988 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/config/svcomp-Reach-32bit-GemCutter_Default.epf [2024-08-13 13:50:53,995 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-08-13 13:50:53,996 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-08-13 13:50:54,021 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-08-13 13:50:54,023 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-08-13 13:50:54,023 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-08-13 13:50:54,024 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-08-13 13:50:54,024 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-08-13 13:50:54,025 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-08-13 13:50:54,025 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-08-13 13:50:54,026 INFO L153 SettingsManager]: * Use SBE=true [2024-08-13 13:50:54,028 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-08-13 13:50:54,028 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-08-13 13:50:54,029 INFO L153 SettingsManager]: * sizeof long=4 [2024-08-13 13:50:54,029 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-08-13 13:50:54,029 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-08-13 13:50:54,030 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-08-13 13:50:54,030 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-08-13 13:50:54,030 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-08-13 13:50:54,034 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-08-13 13:50:54,034 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-08-13 13:50:54,034 INFO L153 SettingsManager]: * sizeof long double=12 [2024-08-13 13:50:54,035 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-08-13 13:50:54,035 INFO L153 SettingsManager]: * Use constant arrays=true [2024-08-13 13:50:54,035 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-08-13 13:50:54,035 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-08-13 13:50:54,036 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2024-08-13 13:50:54,036 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-08-13 13:50:54,036 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-13 13:50:54,036 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-08-13 13:50:54,036 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-08-13 13:50:54,037 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-08-13 13:50:54,037 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-08-13 13:50:54,037 INFO L153 SettingsManager]: * DFS Order used in POR=LOOP_LOCKSTEP [2024-08-13 13:50:54,038 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-08-13 13:50:54,038 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-08-13 13:50:54,038 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2024-08-13 13:50:54,038 INFO L153 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2024-08-13 13:50:54,039 INFO L153 SettingsManager]: * CEGAR restart behaviour=ONE_CEGAR_PER_THREAD_INSTANCE [2024-08-13 13:50:54,040 INFO L153 SettingsManager]: * Partial Order Reduction in concurrent analysis=PERSISTENT_SLEEP_NEW_STATES_FIXEDORDER [2024-08-13 13:50:54,040 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG -> false [2024-08-13 13:50:54,302 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-08-13 13:50:54,324 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-08-13 13:50:54,326 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-08-13 13:50:54,327 INFO L270 PluginConnector]: Initializing CDTParser... [2024-08-13 13:50:54,327 INFO L274 PluginConnector]: CDTParser initialized [2024-08-13 13:50:54,328 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-13 13:50:55,697 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-08-13 13:50:55,890 INFO L384 CDTParser]: Found 1 translation units. [2024-08-13 13:50:55,890 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/weaver/popl20-bad-counter-queue.wvr.c [2024-08-13 13:50:55,901 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/6d49dcab5/f4e2f5cfe3034a8ea621fec3965fd557/FLAGa1f2f93c7 [2024-08-13 13:50:55,918 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/data/6d49dcab5/f4e2f5cfe3034a8ea621fec3965fd557 [2024-08-13 13:50:55,920 INFO L270 PluginConnector]: Initializing Witness Parser... [2024-08-13 13:50:55,921 INFO L274 PluginConnector]: Witness Parser initialized [2024-08-13 13:50:55,923 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-13 13:50:56,003 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-08-13 13:50:56,005 INFO L133 ToolchainWalker]: Walking toolchain with 5 elements. [2024-08-13 13:50:56,007 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-08-13 13:50:56,007 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-08-13 13:50:56,012 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-08-13 13:50:56,013 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.08 01:50:55" (1/2) ... [2024-08-13 13:50:56,014 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@54ad986 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 01:50:56, skipping insertion in model container [2024-08-13 13:50:56,014 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.08 01:50:55" (1/2) ... [2024-08-13 13:50:56,016 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver@1db2ee94 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.08 01:50:56, skipping insertion in model container [2024-08-13 13:50:56,016 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 13.08 01:50:56" (2/2) ... [2024-08-13 13:50:56,017 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@54ad986 and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 01:50:56, skipping insertion in model container [2024-08-13 13:50:56,017 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 13.08 01:50:56" (2/2) ... [2024-08-13 13:50:56,017 INFO L81 nessWitnessExtractor]: Only extracting loop invariants from correctness witness [2024-08-13 13:50:56,032 INFO L95 edCorrectnessWitness]: Found the following entries in the witness: [2024-08-13 13:50:56,033 INFO L103 edCorrectnessWitness]: ghost_variable multithreaded = 0 [2024-08-13 13:50:56,033 INFO L106 edCorrectnessWitness]: ghost_update [L81-L81] multithreaded = 1; [2024-08-13 13:50:56,056 INFO L177 MainTranslator]: Built tables and reachable declarations [2024-08-13 13:50:56,246 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-13 13:50:56,263 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-13 13:50:56,278 INFO L202 MainTranslator]: Completed pre-run Start Parsing Local Start Parsing Local [2024-08-13 13:50:56,331 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-13 13:50:56,343 INFO L207 PostProcessor]: Analyzing one entry point: main [2024-08-13 13:50:56,362 INFO L206 MainTranslator]: Completed translation [2024-08-13 13:50:56,363 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 01:50:56 WrapperNode [2024-08-13 13:50:56,363 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-08-13 13:50:56,364 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-08-13 13:50:56,364 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-08-13 13:50:56,365 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-08-13 13:50:56,371 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 13.08 01:50:56" (1/1) ... [2024-08-13 13:50:56,380 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 13.08 01:50:56" (1/1) ... [2024-08-13 13:50:56,403 INFO L138 Inliner]: procedures = 25, calls = 30, calls flagged for inlining = 12, calls inlined = 12, statements flattened = 143 [2024-08-13 13:50:56,404 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-08-13 13:50:56,405 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-08-13 13:50:56,405 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-08-13 13:50:56,405 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-08-13 13:50:56,414 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 01:50:56" (1/1) ... [2024-08-13 13:50:56,418 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 01:50:56" (1/1) ... [2024-08-13 13:50:56,421 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 01:50:56" (1/1) ... [2024-08-13 13:50:56,422 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 01:50:56" (1/1) ... [2024-08-13 13:50:56,428 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 01:50:56" (1/1) ... [2024-08-13 13:50:56,431 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 01:50:56" (1/1) ... [2024-08-13 13:50:56,433 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 01:50:56" (1/1) ... [2024-08-13 13:50:56,434 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 01:50:56" (1/1) ... [2024-08-13 13:50:56,439 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-08-13 13:50:56,440 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-08-13 13:50:56,441 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-08-13 13:50:56,441 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-08-13 13:50:56,441 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 01:50:56" (1/1) ... [2024-08-13 13:50:56,455 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2024-08-13 13:50:56,464 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 13:50:56,483 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2024-08-13 13:50:56,485 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2024-08-13 13:50:56,520 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2024-08-13 13:50:56,521 INFO L130 BoogieDeclarations]: Found specification of procedure thread1 [2024-08-13 13:50:56,522 INFO L138 BoogieDeclarations]: Found implementation of procedure thread1 [2024-08-13 13:50:56,522 INFO L130 BoogieDeclarations]: Found specification of procedure thread2 [2024-08-13 13:50:56,523 INFO L138 BoogieDeclarations]: Found implementation of procedure thread2 [2024-08-13 13:50:56,523 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2024-08-13 13:50:56,523 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-08-13 13:50:56,523 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2024-08-13 13:50:56,523 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2024-08-13 13:50:56,523 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2024-08-13 13:50:56,524 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-08-13 13:50:56,524 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-08-13 13:50:56,524 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-08-13 13:50:56,525 WARN L214 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2024-08-13 13:50:56,666 INFO L244 CfgBuilder]: Building ICFG [2024-08-13 13:50:56,669 INFO L270 CfgBuilder]: Building CFG for each procedure with an implementation [2024-08-13 13:50:56,905 INFO L289 CfgBuilder]: Ommited future-live optimization because the input is a concurrent program. [2024-08-13 13:50:56,905 INFO L293 CfgBuilder]: Performing block encoding [2024-08-13 13:50:57,096 INFO L315 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-08-13 13:50:57,097 INFO L320 CfgBuilder]: Removed 3 assume(true) statements. [2024-08-13 13:50:57,097 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 13.08 01:50:57 BoogieIcfgContainer [2024-08-13 13:50:57,097 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-08-13 13:50:57,099 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-08-13 13:50:57,099 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-08-13 13:50:57,103 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-08-13 13:50:57,103 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 13.08 01:50:55" (1/4) ... [2024-08-13 13:50:57,103 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ba4c31b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.08 01:50:57, skipping insertion in model container [2024-08-13 13:50:57,104 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.witnessparser CORRECTNESS_WITNESS 13.08 01:50:56" (2/4) ... [2024-08-13 13:50:57,104 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ba4c31b and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 13.08 01:50:57, skipping insertion in model container [2024-08-13 13:50:57,104 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator CORRECTNESS_WITNESS 13.08 01:50:56" (3/4) ... [2024-08-13 13:50:57,105 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ba4c31b and model type witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CORRECTNESS_WITNESS 13.08 01:50:57, skipping insertion in model container [2024-08-13 13:50:57,106 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 13.08 01:50:57" (4/4) ... [2024-08-13 13:50:57,107 INFO L112 eAbstractionObserver]: Analyzing ICFG popl20-bad-counter-queue.wvr.c [2024-08-13 13:50:57,125 INFO L204 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-08-13 13:50:57,125 INFO L163 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2024-08-13 13:50:57,125 INFO L522 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-08-13 13:50:57,175 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2024-08-13 13:50:57,217 INFO L100 denceProviderFactory]: Independence Relation #1: [IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=true, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-08-13 13:50:57,218 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2024-08-13 13:50:57,222 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 13:50:57,224 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2024-08-13 13:50:57,227 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Waiting until timeout for monitored process [2024-08-13 13:50:57,265 INFO L158 artialOrderCegarLoop]: Running PartialOrderCegarLoop with 1 independence relations. [2024-08-13 13:50:57,279 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == ULTIMATE.start ======== [2024-08-13 13:50:57,287 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;@4cf4febc, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-08-13 13:50:57,288 INFO L358 AbstractCegarLoop]: Starting to check reachability of 3 error locations. [2024-08-13 13:50:57,418 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 13:50:57,422 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 13:50:57,422 INFO L85 PathProgramCache]: Analyzing trace with hash -638454060, now seen corresponding path program 1 times [2024-08-13 13:50:57,430 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 13:50:57,430 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [965685043] [2024-08-13 13:50:57,430 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 13:50:57,431 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 13:50:57,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 13:50:57,884 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-13 13:50:57,886 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 13:50:57,886 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [965685043] [2024-08-13 13:50:57,887 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [965685043] provided 1 perfect and 0 imperfect interpolant sequences [2024-08-13 13:50:57,887 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-08-13 13:50:57,888 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2024-08-13 13:50:57,889 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [188178367] [2024-08-13 13:50:57,890 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-08-13 13:50:57,894 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-08-13 13:50:57,894 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 13:50:57,916 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-08-13 13:50:57,916 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-08-13 13:50:57,917 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:50:57,918 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 13:50:57,919 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-13 13:50:57,919 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:50:58,010 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:50:58,010 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-08-13 13:50:58,011 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 13:50:58,011 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 13:50:58,012 INFO L85 PathProgramCache]: Analyzing trace with hash 830377704, now seen corresponding path program 1 times [2024-08-13 13:50:58,012 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 13:50:58,012 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1973710215] [2024-08-13 13:50:58,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 13:50:58,012 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 13:50:58,030 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 13:50:58,202 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-13 13:50:58,203 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 13:50:58,203 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1973710215] [2024-08-13 13:50:58,204 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1973710215] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-13 13:50:58,205 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [38967597] [2024-08-13 13:50:58,205 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 13:50:58,205 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-13 13:50:58,205 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 13:50:58,207 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-08-13 13:50:58,209 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2024-08-13 13:50:58,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 13:50:58,294 INFO L262 TraceCheckSpWp]: Trace formula consists of 145 conjuncts, 6 conjunts are in the unsatisfiable core [2024-08-13 13:50:58,298 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-13 13:50:58,410 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-13 13:50:58,410 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-08-13 13:50:58,467 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-13 13:50:58,469 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [38967597] provided 1 perfect and 1 imperfect interpolant sequences [2024-08-13 13:50:58,469 INFO L185 FreeRefinementEngine]: Found 1 perfect and 2 imperfect interpolant sequences. [2024-08-13 13:50:58,469 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [5, 4] total 9 [2024-08-13 13:50:58,470 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1962895977] [2024-08-13 13:50:58,470 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-08-13 13:50:58,471 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-08-13 13:50:58,472 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 13:50:58,473 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-08-13 13:50:58,474 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=60, Unknown=0, NotChecked=0, Total=90 [2024-08-13 13:50:58,474 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:50:58,474 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 13:50:58,475 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-13 13:50:58,475 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:50:58,475 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:50:58,561 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:50:58,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:50:58,579 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2024-08-13 13:50:58,763 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-13 13:50:58,763 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 13:50:58,764 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 13:50:58,764 INFO L85 PathProgramCache]: Analyzing trace with hash -340738642, now seen corresponding path program 1 times [2024-08-13 13:50:58,764 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 13:50:58,764 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [89592427] [2024-08-13 13:50:58,765 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 13:50:58,765 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 13:50:58,789 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 13:50:58,951 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-13 13:50:58,951 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 13:50:58,951 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [89592427] [2024-08-13 13:50:58,951 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [89592427] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-13 13:50:58,951 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [540896529] [2024-08-13 13:50:58,952 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 13:50:58,952 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-13 13:50:58,952 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 13:50:58,954 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-08-13 13:50:58,958 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2024-08-13 13:50:59,039 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 13:50:59,041 INFO L262 TraceCheckSpWp]: Trace formula consists of 171 conjuncts, 8 conjunts are in the unsatisfiable core [2024-08-13 13:50:59,043 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-13 13:50:59,174 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-13 13:50:59,177 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-08-13 13:50:59,265 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-13 13:50:59,265 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [540896529] provided 0 perfect and 2 imperfect interpolant sequences [2024-08-13 13:50:59,266 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-08-13 13:50:59,266 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 13 [2024-08-13 13:50:59,266 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1932655854] [2024-08-13 13:50:59,266 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-08-13 13:50:59,267 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2024-08-13 13:50:59,267 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 13:50:59,267 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2024-08-13 13:50:59,268 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=55, Invalid=127, Unknown=0, NotChecked=0, Total=182 [2024-08-13 13:50:59,268 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:50:59,268 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 13:50:59,270 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-13 13:50:59,270 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:50:59,270 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:50:59,270 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:50:59,381 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:50:59,381 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:50:59,382 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:50:59,398 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2024-08-13 13:50:59,582 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-13 13:50:59,583 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 13:50:59,584 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 13:50:59,584 INFO L85 PathProgramCache]: Analyzing trace with hash 42728474, now seen corresponding path program 2 times [2024-08-13 13:50:59,584 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 13:50:59,584 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [576245221] [2024-08-13 13:50:59,584 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 13:50:59,584 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 13:50:59,621 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 13:50:59,770 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-13 13:50:59,771 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 13:50:59,771 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [576245221] [2024-08-13 13:50:59,771 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [576245221] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-13 13:50:59,772 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [56353203] [2024-08-13 13:50:59,772 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-08-13 13:50:59,773 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-13 13:50:59,773 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 13:50:59,775 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-08-13 13:50:59,777 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2024-08-13 13:50:59,863 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-08-13 13:50:59,864 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-08-13 13:50:59,865 INFO L262 TraceCheckSpWp]: Trace formula consists of 180 conjuncts, 8 conjunts are in the unsatisfiable core [2024-08-13 13:50:59,867 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-13 13:50:59,985 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-13 13:50:59,985 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-08-13 13:51:00,076 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-13 13:51:00,077 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [56353203] provided 0 perfect and 2 imperfect interpolant sequences [2024-08-13 13:51:00,077 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-08-13 13:51:00,077 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2024-08-13 13:51:00,078 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [821017342] [2024-08-13 13:51:00,078 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-08-13 13:51:00,078 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2024-08-13 13:51:00,078 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 13:51:00,079 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2024-08-13 13:51:00,080 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=149, Unknown=0, NotChecked=0, Total=210 [2024-08-13 13:51:00,080 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:51:00,080 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 13:51:00,080 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-13 13:51:00,080 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:51:00,081 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:00,081 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:00,081 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:51:00,252 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:51:00,252 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:00,252 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:00,253 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-08-13 13:51:00,270 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2024-08-13 13:51:00,457 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-13 13:51:00,458 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 13:51:00,458 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 13:51:00,458 INFO L85 PathProgramCache]: Analyzing trace with hash 2019481824, now seen corresponding path program 3 times [2024-08-13 13:51:00,458 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 13:51:00,459 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1461476445] [2024-08-13 13:51:00,459 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 13:51:00,459 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 13:51:00,475 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 13:51:00,645 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-13 13:51:00,645 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 13:51:00,646 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1461476445] [2024-08-13 13:51:00,646 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1461476445] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-13 13:51:00,646 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [414011582] [2024-08-13 13:51:00,646 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-08-13 13:51:00,647 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-13 13:51:00,647 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 13:51:00,649 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-13 13:51:00,650 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-13 13:51:00,736 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2024-08-13 13:51:00,736 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-08-13 13:51:00,738 INFO L262 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 10 conjunts are in the unsatisfiable core [2024-08-13 13:51:00,740 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-13 13:51:00,888 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-13 13:51:00,889 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-08-13 13:51:00,993 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-13 13:51:00,994 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [414011582] provided 0 perfect and 2 imperfect interpolant sequences [2024-08-13 13:51:00,994 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-08-13 13:51:00,994 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8, 8] total 18 [2024-08-13 13:51:00,995 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [19277066] [2024-08-13 13:51:00,995 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-08-13 13:51:00,995 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2024-08-13 13:51:00,995 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 13:51:00,996 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2024-08-13 13:51:00,996 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=95, Invalid=247, Unknown=0, NotChecked=0, Total=342 [2024-08-13 13:51:00,997 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:51:00,997 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 13:51:00,997 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-13 13:51:00,997 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:51:00,997 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:00,997 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:00,998 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 9 states. [2024-08-13 13:51:00,998 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:51:01,114 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:51:01,115 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:01,115 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:01,115 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-08-13 13:51:01,115 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-08-13 13:51:01,134 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2024-08-13 13:51:01,315 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-13 13:51:01,316 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 13:51:01,316 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 13:51:01,316 INFO L85 PathProgramCache]: Analyzing trace with hash -1069214732, now seen corresponding path program 4 times [2024-08-13 13:51:01,317 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 13:51:01,317 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1807381603] [2024-08-13 13:51:01,317 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 13:51:01,317 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 13:51:01,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 13:51:01,508 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-13 13:51:01,509 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 13:51:01,509 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1807381603] [2024-08-13 13:51:01,509 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1807381603] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-13 13:51:01,512 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [687158912] [2024-08-13 13:51:01,512 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-08-13 13:51:01,512 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-13 13:51:01,512 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 13:51:01,514 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-13 13:51:01,516 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-13 13:51:01,585 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-08-13 13:51:01,586 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-08-13 13:51:01,590 INFO L262 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 8 conjunts are in the unsatisfiable core [2024-08-13 13:51:01,591 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-13 13:51:01,735 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-13 13:51:01,736 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-08-13 13:51:01,810 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-13 13:51:01,811 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [687158912] provided 0 perfect and 2 imperfect interpolant sequences [2024-08-13 13:51:01,811 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-08-13 13:51:01,811 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9, 6] total 19 [2024-08-13 13:51:01,826 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [681140802] [2024-08-13 13:51:01,827 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-08-13 13:51:01,827 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2024-08-13 13:51:01,827 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 13:51:01,828 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2024-08-13 13:51:01,828 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=61, Invalid=281, Unknown=0, NotChecked=0, Total=342 [2024-08-13 13:51:01,828 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:51:01,828 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 13:51:01,828 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-13 13:51:01,829 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:51:01,829 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:01,829 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:01,829 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 9 states. [2024-08-13 13:51:01,829 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-08-13 13:51:01,829 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:51:02,354 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:51:02,355 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:02,355 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:02,355 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-08-13 13:51:02,355 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-08-13 13:51:02,355 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2024-08-13 13:51:02,376 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-13 13:51:02,559 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-13 13:51:02,560 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES] === [2024-08-13 13:51:02,560 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 13:51:02,560 INFO L85 PathProgramCache]: Analyzing trace with hash -375524381, now seen corresponding path program 5 times [2024-08-13 13:51:02,560 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 13:51:02,561 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [898113012] [2024-08-13 13:51:02,561 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 13:51:02,561 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 13:51:02,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-08-13 13:51:03,016 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-13 13:51:03,016 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-08-13 13:51:03,017 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [898113012] [2024-08-13 13:51:03,018 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [898113012] provided 0 perfect and 1 imperfect interpolant sequences [2024-08-13 13:51:03,018 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [13004303] [2024-08-13 13:51:03,018 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-08-13 13:51:03,018 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-08-13 13:51:03,018 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2024-08-13 13:51:03,020 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-13 13:51:03,023 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-13 13:51:03,131 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2024-08-13 13:51:03,131 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-08-13 13:51:03,133 INFO L262 TraceCheckSpWp]: Trace formula consists of 280 conjuncts, 13 conjunts are in the unsatisfiable core [2024-08-13 13:51:03,136 INFO L285 TraceCheckSpWp]: Computing forward predicates... [2024-08-13 13:51:03,405 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-13 13:51:03,405 INFO L327 TraceCheckSpWp]: Computing backward predicates... [2024-08-13 13:51:03,676 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-13 13:51:03,677 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [13004303] provided 0 perfect and 2 imperfect interpolant sequences [2024-08-13 13:51:03,677 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-08-13 13:51:03,677 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 11, 11] total 36 [2024-08-13 13:51:03,678 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [879241043] [2024-08-13 13:51:03,678 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-08-13 13:51:03,678 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 37 states [2024-08-13 13:51:03,678 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-08-13 13:51:03,680 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2024-08-13 13:51:03,680 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=235, Invalid=1097, Unknown=0, NotChecked=0, Total=1332 [2024-08-13 13:51:03,681 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:51:03,681 INFO L495 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2024-08-13 13:51:03,681 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-13 13:51:03,681 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:51:03,681 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:03,681 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:03,681 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 9 states. [2024-08-13 13:51:03,682 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2024-08-13 13:51:03,682 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 25 states. [2024-08-13 13:51:03,682 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2024-08-13 13:51:03,808 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2024-08-13 13:51:03,808 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:03,808 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2024-08-13 13:51:03,808 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-08-13 13:51:03,808 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-08-13 13:51:03,808 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2024-08-13 13:51:03,809 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2024-08-13 13:51:03,826 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2024-08-13 13:51:04,009 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-13 13:51:04,010 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-13 13:51:04,010 INFO L160 PredicateUnifier]: Initialized classic predicate unifier [2024-08-13 13:51:04,010 INFO L85 PathProgramCache]: Analyzing trace with hash -209378973, now seen corresponding path program 6 times [2024-08-13 13:51:04,010 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-08-13 13:51:04,010 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2102429810] [2024-08-13 13:51:04,010 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-08-13 13:51:04,011 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-08-13 13:51:04,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-08-13 13:51:04,108 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-08-13 13:51:04,197 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-08-13 13:51:04,230 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-08-13 13:51:04,231 INFO L360 BasicCegarLoop]: Counterexample is feasible [2024-08-13 13:51:04,232 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (2 of 3 remaining) [2024-08-13 13:51:04,233 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 3 remaining) [2024-08-13 13:51:04,233 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 3 remaining) [2024-08-13 13:51:04,234 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2024-08-13 13:51:04,252 INFO L445 BasicCegarLoop]: Path program histogram: [6, 1, 1] [2024-08-13 13:51:04,257 INFO L229 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2024-08-13 13:51:04,257 INFO L179 ceAbstractionStarter]: Computing trace abstraction results [2024-08-13 13:51:04,378 INFO L201 PluginConnector]: Adding new model witness.yml de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 13.08 01:51:04 BasicIcfg [2024-08-13 13:51:04,378 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2024-08-13 13:51:04,380 INFO L158 Benchmark]: Toolchain (without parser) took 8374.87ms. Allocated memory was 184.5MB in the beginning and 268.4MB in the end (delta: 83.9MB). Free memory was 143.4MB in the beginning and 220.8MB in the end (delta: -77.5MB). Peak memory consumption was 119.3MB. Max. memory is 16.1GB. [2024-08-13 13:51:04,380 INFO L158 Benchmark]: CDTParser took 0.16ms. Allocated memory is still 100.7MB. Free memory was 72.5MB in the beginning and 72.4MB in the end (delta: 134.3kB). There was no memory consumed. Max. memory is 16.1GB. [2024-08-13 13:51:04,380 INFO L158 Benchmark]: Witness Parser took 0.20ms. Allocated memory is still 184.5MB. Free memory is still 146.1MB. There was no memory consumed. Max. memory is 16.1GB. [2024-08-13 13:51:04,380 INFO L158 Benchmark]: CACSL2BoogieTranslator took 356.59ms. Allocated memory is still 184.5MB. Free memory was 143.4MB in the beginning and 128.6MB in the end (delta: 14.7MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. [2024-08-13 13:51:04,381 INFO L158 Benchmark]: Boogie Procedure Inliner took 39.87ms. Allocated memory is still 184.5MB. Free memory was 128.6MB in the beginning and 126.6MB in the end (delta: 2.0MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-08-13 13:51:04,381 INFO L158 Benchmark]: Boogie Preprocessor took 34.98ms. Allocated memory is still 184.5MB. Free memory was 126.6MB in the beginning and 125.1MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2024-08-13 13:51:04,381 INFO L158 Benchmark]: RCFGBuilder took 656.84ms. Allocated memory is still 184.5MB. Free memory was 125.1MB in the beginning and 118.4MB in the end (delta: 6.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2024-08-13 13:51:04,381 INFO L158 Benchmark]: TraceAbstraction took 7278.68ms. Allocated memory was 184.5MB in the beginning and 268.4MB in the end (delta: 83.9MB). Free memory was 117.4MB in the beginning and 220.8MB in the end (delta: -103.5MB). Peak memory consumption was 95.2MB. Max. memory is 16.1GB. [2024-08-13 13:51:04,383 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 100.7MB. Free memory was 72.5MB in the beginning and 72.4MB in the end (delta: 134.3kB). There was no memory consumed. Max. memory is 16.1GB. * Witness Parser took 0.20ms. Allocated memory is still 184.5MB. Free memory is still 146.1MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 356.59ms. Allocated memory is still 184.5MB. Free memory was 143.4MB in the beginning and 128.6MB in the end (delta: 14.7MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 39.87ms. Allocated memory is still 184.5MB. Free memory was 128.6MB in the beginning and 126.6MB in the end (delta: 2.0MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 34.98ms. Allocated memory is still 184.5MB. Free memory was 126.6MB in the beginning and 125.1MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 656.84ms. Allocated memory is still 184.5MB. Free memory was 125.1MB in the beginning and 118.4MB in the end (delta: 6.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * TraceAbstraction took 7278.68ms. Allocated memory was 184.5MB in the beginning and 268.4MB in the end (delta: 83.9MB). Free memory was 117.4MB in the beginning and 220.8MB in the end (delta: -103.5MB). Peak memory consumption was 95.2MB. 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: 99, independent: 25, independent conditional: 0, independent unconditional: 25, dependent: 75, dependent conditional: 36, dependent unconditional: 39, 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: 99, independent: 25, independent conditional: 0, independent unconditional: 25, dependent: 75, dependent conditional: 36, dependent unconditional: 39, 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