./Ultimate.py --spec ../../../trunk/examples/svcomp/properties/unreach-call.prp --file ../../../trunk/examples/svcomp/goblint-regression/13-privatized_67-pthread_cond_wait_true.i --full-output --traceabstraction.when.to.check.the.insufficient.erros.location.relative.to.the.other.error.locations BEFORE --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version b8dbc81d Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../../../trunk/examples/svcomp/goblint-regression/13-privatized_67-pthread_cond_wait_true.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 4f5c1949da3ffd7703b26279578bf3cad55c86e8b0ffaff69f49645cdd541f53 --traceabstraction.when.to.check.the.insufficient.erros.location.relative.to.the.other.error.locations BEFORE --- Real Ultimate output --- This is Ultimate 0.2.3-?-b8dbc81 [2023-09-01 10:43:47,349 INFO L177 SettingsManager]: Resetting all preferences to default values... [2023-09-01 10:43:47,351 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2023-09-01 10:43:47,390 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2023-09-01 10:43:47,390 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2023-09-01 10:43:47,391 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2023-09-01 10:43:47,398 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2023-09-01 10:43:47,401 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2023-09-01 10:43:47,403 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2023-09-01 10:43:47,407 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2023-09-01 10:43:47,408 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2023-09-01 10:43:47,409 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2023-09-01 10:43:47,409 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2023-09-01 10:43:47,411 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2023-09-01 10:43:47,412 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2023-09-01 10:43:47,414 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2023-09-01 10:43:47,416 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2023-09-01 10:43:47,417 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2023-09-01 10:43:47,419 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2023-09-01 10:43:47,425 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2023-09-01 10:43:47,426 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2023-09-01 10:43:47,428 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2023-09-01 10:43:47,429 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2023-09-01 10:43:47,430 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2023-09-01 10:43:47,432 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2023-09-01 10:43:47,432 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2023-09-01 10:43:47,432 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2023-09-01 10:43:47,433 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2023-09-01 10:43:47,433 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2023-09-01 10:43:47,434 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2023-09-01 10:43:47,434 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2023-09-01 10:43:47,435 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2023-09-01 10:43:47,435 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2023-09-01 10:43:47,436 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2023-09-01 10:43:47,437 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2023-09-01 10:43:47,437 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2023-09-01 10:43:47,437 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2023-09-01 10:43:47,438 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2023-09-01 10:43:47,438 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2023-09-01 10:43:47,439 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2023-09-01 10:43:47,439 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2023-09-01 10:43:47,446 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2023-09-01 10:43:47,477 INFO L113 SettingsManager]: Loading preferences was successful [2023-09-01 10:43:47,477 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2023-09-01 10:43:47,478 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2023-09-01 10:43:47,479 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2023-09-01 10:43:47,479 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2023-09-01 10:43:47,480 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2023-09-01 10:43:47,480 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2023-09-01 10:43:47,480 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2023-09-01 10:43:47,480 INFO L138 SettingsManager]: * Use SBE=true [2023-09-01 10:43:47,481 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2023-09-01 10:43:47,481 INFO L138 SettingsManager]: * sizeof long=4 [2023-09-01 10:43:47,482 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2023-09-01 10:43:47,482 INFO L138 SettingsManager]: * sizeof POINTER=4 [2023-09-01 10:43:47,482 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2023-09-01 10:43:47,482 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2023-09-01 10:43:47,482 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2023-09-01 10:43:47,482 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2023-09-01 10:43:47,483 INFO L138 SettingsManager]: * sizeof long double=12 [2023-09-01 10:43:47,483 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2023-09-01 10:43:47,483 INFO L138 SettingsManager]: * Use constant arrays=true [2023-09-01 10:43:47,483 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2023-09-01 10:43:47,483 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2023-09-01 10:43:47,483 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2023-09-01 10:43:47,484 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2023-09-01 10:43:47,484 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2023-09-01 10:43:47,484 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2023-09-01 10:43:47,484 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2023-09-01 10:43:47,484 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2023-09-01 10:43:47,485 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2023-09-01 10:43:47,485 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2023-09-01 10:43:47,485 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2023-09-01 10:43:47,485 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2023-09-01 10:43:47,485 INFO L138 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2023-09-01 10:43:47,486 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2023-09-01 10:43:47,486 INFO L138 SettingsManager]: * Independence relation used for large block encoding in concurrent analysis=SYNTACTIC [2023-09-01 10:43:47,486 INFO L138 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC 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/UAutomizer-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.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 4f5c1949da3ffd7703b26279578bf3cad55c86e8b0ffaff69f49645cdd541f53 Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: When to check the insufficient erros location relative to the other error locations -> BEFORE [2023-09-01 10:43:47,744 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2023-09-01 10:43:47,776 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2023-09-01 10:43:47,778 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2023-09-01 10:43:47,779 INFO L271 PluginConnector]: Initializing CDTParser... [2023-09-01 10:43:47,779 INFO L275 PluginConnector]: CDTParser initialized [2023-09-01 10:43:47,781 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/goblint-regression/13-privatized_67-pthread_cond_wait_true.i [2023-09-01 10:43:48,903 INFO L500 CDTParser]: Created temporary CDT project at NULL [2023-09-01 10:43:49,125 INFO L351 CDTParser]: Found 1 translation units. [2023-09-01 10:43:49,125 INFO L172 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/13-privatized_67-pthread_cond_wait_true.i [2023-09-01 10:43:49,137 INFO L394 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/990fc72ef/8ab25c8a8368452fa9bffdd1ebbe246f/FLAGd212ac4c4 [2023-09-01 10:43:49,146 INFO L402 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/990fc72ef/8ab25c8a8368452fa9bffdd1ebbe246f [2023-09-01 10:43:49,148 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2023-09-01 10:43:49,149 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2023-09-01 10:43:49,149 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2023-09-01 10:43:49,149 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2023-09-01 10:43:49,151 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2023-09-01 10:43:49,152 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,152 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@373db6bd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49, skipping insertion in model container [2023-09-01 10:43:49,152 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,156 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2023-09-01 10:43:49,184 INFO L178 MainTranslator]: Built tables and reachable declarations [2023-09-01 10:43:49,299 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/13-privatized_67-pthread_cond_wait_true.i[1094,1107] [2023-09-01 10:43:49,532 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-09-01 10:43:49,543 INFO L203 MainTranslator]: Completed pre-run [2023-09-01 10:43:49,549 WARN L247 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/13-privatized_67-pthread_cond_wait_true.i[1094,1107] [2023-09-01 10:43:49,575 INFO L209 PostProcessor]: Analyzing one entry point: main [2023-09-01 10:43:49,636 WARN L667 CHandler]: The function sleep is called, but not defined or handled by StandardFunctionHandler. [2023-09-01 10:43:49,641 INFO L208 MainTranslator]: Completed translation [2023-09-01 10:43:49,641 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49 WrapperNode [2023-09-01 10:43:49,641 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2023-09-01 10:43:49,642 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2023-09-01 10:43:49,642 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2023-09-01 10:43:49,642 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2023-09-01 10:43:49,646 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,665 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,686 INFO L138 Inliner]: procedures = 354, calls = 38, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 79 [2023-09-01 10:43:49,686 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2023-09-01 10:43:49,687 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2023-09-01 10:43:49,687 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2023-09-01 10:43:49,687 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2023-09-01 10:43:49,695 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,695 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,699 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,699 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,709 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,710 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,713 INFO L185 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,715 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,718 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2023-09-01 10:43:49,719 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2023-09-01 10:43:49,719 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2023-09-01 10:43:49,720 INFO L275 PluginConnector]: RCFGBuilder initialized [2023-09-01 10:43:49,720 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49" (1/1) ... [2023-09-01 10:43:49,725 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2023-09-01 10:43:49,750 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2023-09-01 10:43:49,778 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2023-09-01 10:43:49,801 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2023-09-01 10:43:49,826 INFO L130 BoogieDeclarations]: Found specification of procedure sleep [2023-09-01 10:43:49,826 INFO L130 BoogieDeclarations]: Found specification of procedure f1 [2023-09-01 10:43:49,826 INFO L138 BoogieDeclarations]: Found implementation of procedure f1 [2023-09-01 10:43:49,827 INFO L130 BoogieDeclarations]: Found specification of procedure f2 [2023-09-01 10:43:49,828 INFO L138 BoogieDeclarations]: Found implementation of procedure f2 [2023-09-01 10:43:49,828 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2023-09-01 10:43:49,828 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2023-09-01 10:43:49,828 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2023-09-01 10:43:49,829 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2023-09-01 10:43:49,829 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2023-09-01 10:43:49,829 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2023-09-01 10:43:49,829 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2023-09-01 10:43:49,829 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2023-09-01 10:43:49,829 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2023-09-01 10:43:49,831 WARN L210 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement [2023-09-01 10:43:50,090 INFO L236 CfgBuilder]: Building ICFG [2023-09-01 10:43:50,092 INFO L262 CfgBuilder]: Building CFG for each procedure with an implementation [2023-09-01 10:43:50,203 INFO L277 CfgBuilder]: Performing block encoding [2023-09-01 10:43:50,223 INFO L297 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2023-09-01 10:43:50,223 INFO L302 CfgBuilder]: Removed 0 assume(true) statements. [2023-09-01 10:43:50,225 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 01.09 10:43:50 BoogieIcfgContainer [2023-09-01 10:43:50,225 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2023-09-01 10:43:50,227 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2023-09-01 10:43:50,227 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2023-09-01 10:43:50,240 INFO L275 PluginConnector]: TraceAbstraction initialized [2023-09-01 10:43:50,240 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 01.09 10:43:49" (1/3) ... [2023-09-01 10:43:50,241 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@c8b36c0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 01.09 10:43:50, skipping insertion in model container [2023-09-01 10:43:50,241 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 01.09 10:43:49" (2/3) ... [2023-09-01 10:43:50,242 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@c8b36c0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 01.09 10:43:50, skipping insertion in model container [2023-09-01 10:43:50,242 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 01.09 10:43:50" (3/3) ... [2023-09-01 10:43:50,243 INFO L112 eAbstractionObserver]: Analyzing ICFG 13-privatized_67-pthread_cond_wait_true.i [2023-09-01 10:43:50,250 WARN L145 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2023-09-01 10:43:50,258 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2023-09-01 10:43:50,258 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2023-09-01 10:43:50,258 INFO L515 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2023-09-01 10:43:50,320 INFO L144 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2023-09-01 10:43:50,349 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 94 places, 88 transitions, 192 flow [2023-09-01 10:43:50,383 INFO L130 PetriNetUnfolder]: 1/86 cut-off events. [2023-09-01 10:43:50,384 INFO L131 PetriNetUnfolder]: For 2/2 co-relation queries the response was YES. [2023-09-01 10:43:50,387 INFO L83 FinitePrefix]: Finished finitePrefix Result has 95 conditions, 86 events. 1/86 cut-off events. For 2/2 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 55 event pairs, 0 based on Foata normal form. 0/84 useless extension candidates. Maximal degree in co-relation 65. Up to 2 conditions per place. [2023-09-01 10:43:50,387 INFO L82 GeneralOperation]: Start removeDead. Operand has 94 places, 88 transitions, 192 flow [2023-09-01 10:43:50,392 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 73 places, 66 transitions, 138 flow [2023-09-01 10:43:50,395 INFO L124 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2023-09-01 10:43:50,418 INFO L131 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 73 places, 66 transitions, 138 flow [2023-09-01 10:43:50,420 INFO L113 LiptonReduction]: Starting Lipton reduction on Petri net that has 73 places, 66 transitions, 138 flow [2023-09-01 10:43:50,420 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 73 places, 66 transitions, 138 flow [2023-09-01 10:43:50,434 INFO L130 PetriNetUnfolder]: 0/66 cut-off events. [2023-09-01 10:43:50,434 INFO L131 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2023-09-01 10:43:50,435 INFO L83 FinitePrefix]: Finished finitePrefix Result has 73 conditions, 66 events. 0/66 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 36 event pairs, 0 based on Foata normal form. 0/66 useless extension candidates. Maximal degree in co-relation 0. Up to 1 conditions per place. [2023-09-01 10:43:50,436 INFO L119 LiptonReduction]: Number of co-enabled transitions 474 [2023-09-01 10:43:53,341 INFO L134 LiptonReduction]: Checked pairs total: 956 [2023-09-01 10:43:53,342 INFO L136 LiptonReduction]: Total number of compositions: 53 [2023-09-01 10:43:53,354 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2023-09-01 10:43:53,359 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=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, 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;@3d1d621b, mLbeIndependenceSettings=[IndependenceType=SYNTACTIC, AbstractionType=NONE, UseConditional=, UseSemiCommutativity=, Solver=, SolverTimeout=] [2023-09-01 10:43:53,359 INFO L358 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2023-09-01 10:43:53,364 INFO L130 PetriNetUnfolder]: 0/11 cut-off events. [2023-09-01 10:43:53,365 INFO L131 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2023-09-01 10:43:53,365 INFO L200 CegarLoopForPetriNet]: Found error trace [2023-09-01 10:43:53,365 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2023-09-01 10:43:53,366 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting f1Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2023-09-01 10:43:53,370 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-09-01 10:43:53,370 INFO L85 PathProgramCache]: Analyzing trace with hash 1675552830, now seen corresponding path program 1 times [2023-09-01 10:43:53,377 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-09-01 10:43:53,378 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [118458453] [2023-09-01 10:43:53,378 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-09-01 10:43:53,378 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-09-01 10:43:53,538 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-09-01 10:43:53,700 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-09-01 10:43:53,701 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-09-01 10:43:53,701 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [118458453] [2023-09-01 10:43:53,702 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [118458453] provided 1 perfect and 0 imperfect interpolant sequences [2023-09-01 10:43:53,702 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-09-01 10:43:53,703 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2023-09-01 10:43:53,704 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1891897518] [2023-09-01 10:43:53,705 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-09-01 10:43:53,712 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2023-09-01 10:43:53,717 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-09-01 10:43:53,736 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2023-09-01 10:43:53,737 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2023-09-01 10:43:53,754 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 78 out of 141 [2023-09-01 10:43:53,758 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 20 places, 13 transitions, 32 flow. Second operand has 3 states, 3 states have (on average 80.0) internal successors, (240), 3 states have internal predecessors, (240), 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) [2023-09-01 10:43:53,758 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2023-09-01 10:43:53,758 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 78 of 141 [2023-09-01 10:43:53,759 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2023-09-01 10:43:53,833 INFO L130 PetriNetUnfolder]: 47/110 cut-off events. [2023-09-01 10:43:53,833 INFO L131 PetriNetUnfolder]: For 3/3 co-relation queries the response was YES. [2023-09-01 10:43:53,834 INFO L83 FinitePrefix]: Finished finitePrefix Result has 224 conditions, 110 events. 47/110 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 13. Compared 377 event pairs, 23 based on Foata normal form. 10/120 useless extension candidates. Maximal degree in co-relation 214. Up to 61 conditions per place. [2023-09-01 10:43:53,836 INFO L137 encePairwiseOnDemand]: 138/141 looper letters, 15 selfloop transitions, 2 changer transitions 2/20 dead transitions. [2023-09-01 10:43:53,836 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 22 places, 20 transitions, 87 flow [2023-09-01 10:43:53,838 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2023-09-01 10:43:53,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2023-09-01 10:43:53,855 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 254 transitions. [2023-09-01 10:43:53,859 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.6004728132387707 [2023-09-01 10:43:53,860 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 254 transitions. [2023-09-01 10:43:53,860 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 254 transitions. [2023-09-01 10:43:53,862 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-09-01 10:43:53,864 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 254 transitions. [2023-09-01 10:43:53,868 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 84.66666666666667) internal successors, (254), 3 states have internal predecessors, (254), 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) [2023-09-01 10:43:53,873 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 141.0) internal successors, (564), 4 states have internal predecessors, (564), 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) [2023-09-01 10:43:53,874 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 141.0) internal successors, (564), 4 states have internal predecessors, (564), 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) [2023-09-01 10:43:53,875 INFO L175 Difference]: Start difference. First operand has 20 places, 13 transitions, 32 flow. Second operand 3 states and 254 transitions. [2023-09-01 10:43:53,876 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 22 places, 20 transitions, 87 flow [2023-09-01 10:43:53,878 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 20 places, 20 transitions, 84 flow, removed 0 selfloop flow, removed 2 redundant places. [2023-09-01 10:43:53,879 INFO L231 Difference]: Finished difference. Result has 21 places, 13 transitions, 38 flow [2023-09-01 10:43:53,881 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=141, PETRI_DIFFERENCE_MINUEND_FLOW=30, PETRI_DIFFERENCE_MINUEND_PLACES=18, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=13, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=11, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=38, PETRI_PLACES=21, PETRI_TRANSITIONS=13} [2023-09-01 10:43:53,884 INFO L281 CegarLoopForPetriNet]: 20 programPoint places, 1 predicate places. [2023-09-01 10:43:53,885 INFO L495 AbstractCegarLoop]: Abstraction has has 21 places, 13 transitions, 38 flow [2023-09-01 10:43:53,885 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 80.0) internal successors, (240), 3 states have internal predecessors, (240), 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) [2023-09-01 10:43:53,885 INFO L200 CegarLoopForPetriNet]: Found error trace [2023-09-01 10:43:53,886 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-09-01 10:43:53,886 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2023-09-01 10:43:53,887 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting f1Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2023-09-01 10:43:53,890 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-09-01 10:43:53,890 INFO L85 PathProgramCache]: Analyzing trace with hash -485842887, now seen corresponding path program 1 times [2023-09-01 10:43:53,890 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-09-01 10:43:53,891 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1713808926] [2023-09-01 10:43:53,891 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-09-01 10:43:53,891 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-09-01 10:43:53,951 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2023-09-01 10:43:54,051 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2023-09-01 10:43:54,052 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2023-09-01 10:43:54,052 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1713808926] [2023-09-01 10:43:54,052 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1713808926] provided 1 perfect and 0 imperfect interpolant sequences [2023-09-01 10:43:54,052 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2023-09-01 10:43:54,052 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2023-09-01 10:43:54,053 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [972496101] [2023-09-01 10:43:54,053 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2023-09-01 10:43:54,054 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2023-09-01 10:43:54,054 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2023-09-01 10:43:54,054 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2023-09-01 10:43:54,054 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2023-09-01 10:43:54,067 INFO L471 CegarLoopForPetriNet]: Number of universal loopers: 75 out of 141 [2023-09-01 10:43:54,068 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 21 places, 13 transitions, 38 flow. Second operand has 3 states, 3 states have (on average 78.66666666666667) internal successors, (236), 3 states have internal predecessors, (236), 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) [2023-09-01 10:43:54,068 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2023-09-01 10:43:54,068 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 75 of 141 [2023-09-01 10:43:54,068 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2023-09-01 10:43:54,093 INFO L130 PetriNetUnfolder]: 18/51 cut-off events. [2023-09-01 10:43:54,093 INFO L131 PetriNetUnfolder]: For 4/4 co-relation queries the response was YES. [2023-09-01 10:43:54,093 INFO L83 FinitePrefix]: Finished finitePrefix Result has 128 conditions, 51 events. 18/51 cut-off events. For 4/4 co-relation queries the response was YES. Maximal size of possible extension queue 6. Compared 111 event pairs, 4 based on Foata normal form. 12/63 useless extension candidates. Maximal degree in co-relation 118. Up to 36 conditions per place. [2023-09-01 10:43:54,094 INFO L137 encePairwiseOnDemand]: 136/141 looper letters, 11 selfloop transitions, 5 changer transitions 0/16 dead transitions. [2023-09-01 10:43:54,094 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 23 places, 16 transitions, 78 flow [2023-09-01 10:43:54,094 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2023-09-01 10:43:54,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2023-09-01 10:43:54,095 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 244 transitions. [2023-09-01 10:43:54,095 INFO L516 CegarLoopForPetriNet]: DFA transition density 0.5768321513002365 [2023-09-01 10:43:54,095 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 244 transitions. [2023-09-01 10:43:54,095 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 244 transitions. [2023-09-01 10:43:54,096 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2023-09-01 10:43:54,096 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 244 transitions. [2023-09-01 10:43:54,096 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 81.33333333333333) internal successors, (244), 3 states have internal predecessors, (244), 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) [2023-09-01 10:43:54,106 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 141.0) internal successors, (564), 4 states have internal predecessors, (564), 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) [2023-09-01 10:43:54,107 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 141.0) internal successors, (564), 4 states have internal predecessors, (564), 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) [2023-09-01 10:43:54,107 INFO L175 Difference]: Start difference. First operand has 21 places, 13 transitions, 38 flow. Second operand 3 states and 244 transitions. [2023-09-01 10:43:54,107 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 23 places, 16 transitions, 78 flow [2023-09-01 10:43:54,108 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 22 places, 16 transitions, 76 flow, removed 0 selfloop flow, removed 1 redundant places. [2023-09-01 10:43:54,109 INFO L231 Difference]: Finished difference. Result has 22 places, 13 transitions, 46 flow [2023-09-01 10:43:54,109 INFO L264 CegarLoopForPetriNet]: {PETRI_ALPHABET=141, PETRI_DIFFERENCE_MINUEND_FLOW=36, PETRI_DIFFERENCE_MINUEND_PLACES=20, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=13, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=8, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=46, PETRI_PLACES=22, PETRI_TRANSITIONS=13} [2023-09-01 10:43:54,110 INFO L281 CegarLoopForPetriNet]: 20 programPoint places, 2 predicate places. [2023-09-01 10:43:54,110 INFO L495 AbstractCegarLoop]: Abstraction has has 22 places, 13 transitions, 46 flow [2023-09-01 10:43:54,110 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 78.66666666666667) internal successors, (236), 3 states have internal predecessors, (236), 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) [2023-09-01 10:43:54,110 INFO L200 CegarLoopForPetriNet]: Found error trace [2023-09-01 10:43:54,111 INFO L208 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2023-09-01 10:43:54,111 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2023-09-01 10:43:54,112 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting f1Err0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2023-09-01 10:43:54,114 INFO L145 PredicateUnifier]: Initialized classic predicate unifier [2023-09-01 10:43:54,114 INFO L85 PathProgramCache]: Analyzing trace with hash 1785060460, now seen corresponding path program 1 times [2023-09-01 10:43:54,114 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2023-09-01 10:43:54,114 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1582845846] [2023-09-01 10:43:54,115 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2023-09-01 10:43:54,115 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2023-09-01 10:43:54,176 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-09-01 10:43:54,198 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2023-09-01 10:43:54,223 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2023-09-01 10:43:54,250 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2023-09-01 10:43:54,250 INFO L360 BasicCegarLoop]: Counterexample is feasible [2023-09-01 10:43:54,251 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location f1Err0ASSERT_VIOLATIONERROR_FUNCTION (3 of 4 remaining) [2023-09-01 10:43:54,256 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 4 remaining) [2023-09-01 10:43:54,257 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 4 remaining) [2023-09-01 10:43:54,257 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location f1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 4 remaining) [2023-09-01 10:43:54,257 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2023-09-01 10:43:54,258 INFO L445 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2023-09-01 10:43:54,277 INFO L228 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2023-09-01 10:43:54,278 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2023-09-01 10:43:54,307 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 01.09 10:43:54 BasicIcfg [2023-09-01 10:43:54,308 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2023-09-01 10:43:54,308 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2023-09-01 10:43:54,308 INFO L271 PluginConnector]: Initializing Witness Printer... [2023-09-01 10:43:54,308 INFO L275 PluginConnector]: Witness Printer initialized [2023-09-01 10:43:54,309 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 01.09 10:43:50" (3/4) ... [2023-09-01 10:43:54,321 INFO L131 WitnessPrinter]: Generating witness for reachability counterexample [2023-09-01 10:43:54,351 INFO L141 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2023-09-01 10:43:54,351 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2023-09-01 10:43:54,352 INFO L158 Benchmark]: Toolchain (without parser) took 5202.71ms. Allocated memory was 73.4MB in the beginning and 111.1MB in the end (delta: 37.7MB). Free memory was 42.7MB in the beginning and 65.1MB in the end (delta: -22.4MB). Peak memory consumption was 12.9MB. Max. memory is 16.1GB. [2023-09-01 10:43:54,352 INFO L158 Benchmark]: CDTParser took 0.17ms. Allocated memory is still 73.4MB. Free memory is still 50.1MB. There was no memory consumed. Max. memory is 16.1GB. [2023-09-01 10:43:54,352 INFO L158 Benchmark]: CACSL2BoogieTranslator took 492.19ms. Allocated memory was 73.4MB in the beginning and 92.3MB in the end (delta: 18.9MB). Free memory was 42.5MB in the beginning and 64.0MB in the end (delta: -21.5MB). Peak memory consumption was 18.2MB. Max. memory is 16.1GB. [2023-09-01 10:43:54,353 INFO L158 Benchmark]: Boogie Procedure Inliner took 44.55ms. Allocated memory is still 92.3MB. Free memory was 64.0MB in the beginning and 61.1MB in the end (delta: 3.0MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2023-09-01 10:43:54,353 INFO L158 Benchmark]: Boogie Preprocessor took 31.55ms. Allocated memory is still 92.3MB. Free memory was 61.1MB in the beginning and 59.0MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2023-09-01 10:43:54,354 INFO L158 Benchmark]: RCFGBuilder took 505.90ms. Allocated memory is still 92.3MB. Free memory was 58.5MB in the beginning and 39.7MB in the end (delta: 18.9MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. [2023-09-01 10:43:54,354 INFO L158 Benchmark]: TraceAbstraction took 4081.19ms. Allocated memory was 92.3MB in the beginning and 111.1MB in the end (delta: 18.9MB). Free memory was 38.9MB in the beginning and 69.4MB in the end (delta: -30.5MB). There was no memory consumed. Max. memory is 16.1GB. [2023-09-01 10:43:54,354 INFO L158 Benchmark]: Witness Printer took 42.88ms. Allocated memory is still 111.1MB. Free memory was 68.3MB in the beginning and 65.1MB in the end (delta: 3.2MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2023-09-01 10:43:54,356 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.17ms. Allocated memory is still 73.4MB. Free memory is still 50.1MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 492.19ms. Allocated memory was 73.4MB in the beginning and 92.3MB in the end (delta: 18.9MB). Free memory was 42.5MB in the beginning and 64.0MB in the end (delta: -21.5MB). Peak memory consumption was 18.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 44.55ms. Allocated memory is still 92.3MB. Free memory was 64.0MB in the beginning and 61.1MB in the end (delta: 3.0MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 31.55ms. Allocated memory is still 92.3MB. Free memory was 61.1MB in the beginning and 59.0MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 505.90ms. Allocated memory is still 92.3MB. Free memory was 58.5MB in the beginning and 39.7MB in the end (delta: 18.9MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. * TraceAbstraction took 4081.19ms. Allocated memory was 92.3MB in the beginning and 111.1MB in the end (delta: 18.9MB). Free memory was 38.9MB in the beginning and 69.4MB in the end (delta: -30.5MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 42.88ms. Allocated memory is still 111.1MB. Free memory was 68.3MB in the beginning and 65.1MB in the end (delta: 3.2MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 2.9s, 73 PlacesBefore, 20 PlacesAfterwards, 66 TransitionsBefore, 13 TransitionsAfterwards, 474 CoEnabledTransitionPairs, 7 FixpointIterations, 34 TrivialSequentialCompositions, 19 ConcurrentSequentialCompositions, 0 TrivialYvCompositions, 0 ConcurrentYvCompositions, 0 ChoiceCompositions, 53 TotalNumberOfCompositions, 956 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 561, independent: 471, independent conditional: 0, independent unconditional: 471, dependent: 90, dependent conditional: 0, dependent unconditional: 90, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: SyntacticIndependenceRelation.Independence Queries: [ total: 254, independent: 239, independent conditional: 0, independent unconditional: 239, dependent: 15, dependent conditional: 0, dependent unconditional: 15, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Cache Queries: [ total: 561, independent: 232, independent conditional: 0, independent unconditional: 232, dependent: 75, dependent conditional: 0, dependent unconditional: 75, unknown: 254, unknown conditional: 0, unknown unconditional: 254] , Statistics on independence cache: Total cache size (in pairs): 25, Positive cache size: 19, Positive conditional cache size: 0, Positive unconditional cache size: 19, Negative cache size: 6, Negative conditional cache size: 0, Negative unconditional cache size: 6, Unknown cache size: 0, Unknown conditional cache size: 0, Unknown unconditional cache size: 0 - CounterExampleResult [Line: 19]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L1351] 0 int g; [L1352] 0 pthread_mutex_t mut = { { 0, 0, 0, PTHREAD_MUTEX_TIMED_NP, 0, { { 0, 0 } } } }; [L1353] 0 pthread_cond_t cond = { { {0}, {0}, {0, 0}, {0, 0}, 0, 0, {0, 0} } }; [L1373] 0 pthread_t t1; [L1374] 0 pthread_t t2; [L1375] FCALL, FORK 0 pthread_create(&t1,((void *)0),f1,((void *)0)) VAL [\old(argc)=1150, argc=1150, argv={1152:1151}, argv={1152:1151}, cond={4:0}, g=0, mut={3:0}, pthread_create(&t1,((void *)0),f1,((void *)0))=0, t1={5:0}, t2={6:0}] [L1356] 1 g = 1 VAL [cond={4:0}, g=1, mut={3:0}, ptr={0:0}, ptr={0:0}] [L1377] FCALL, FORK 0 pthread_create(&t2,((void *)0),f2,((void *)0)) VAL [\old(argc)=1150, argc=1150, argv={1152:1151}, argv={1152:1151}, cond={4:0}, g=1, mut={3:0}, pthread_create(&t2,((void *)0),f2,((void *)0))=1, ptr={0:0}, t1={5:0}, t2={6:0}] [L1366] 2 g = 0 VAL [cond={4:0}, g=0, mut={3:0}, ptr={0:0}, ptr={0:0}] [L1369] 2 return ((void *)0); [L1358] CALL 1 __VERIFIER_assert(g == 1) [L19] COND TRUE 1 !(cond) [L19] 1 reach_error() VAL [\old(cond)=0, \result={0:0}, cond=0, cond={4:0}, g=0, mut={3:0}, ptr={0:0}, ptr={0:0}] - UnprovableResult [Line: 1375]: Unable to prove that petrification did provide enough thread instances (tool internal message, not intended for end users) Unable to prove that petrification did provide enough thread instances (tool internal message, not intended for end users) Reason: Not analyzed. - UnprovableResult [Line: 1377]: Unable to prove that petrification did provide enough thread instances (tool internal message, not intended for end users) Unable to prove that petrification did provide enough thread instances (tool internal message, not intended for end users) Reason: Not analyzed. - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 5 procedures, 118 locations, 4 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 3.9s, OverallIterations: 3, TraceHistogramMax: 1, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 3.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 30 SdHoareTripleChecker+Valid, 0.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 16 mSDsluCounter, 1 SdHoareTripleChecker+Invalid, 0.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 12 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 70 IncrementalHoareTripleChecker+Invalid, 82 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 12 mSolverCounterUnsat, 1 mSDtfsCounter, 70 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 5 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=46occurred in iteration=2, InterpolantAutomatonStates: 6, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.3s InterpolantComputationTime, 30 NumberOfCodeBlocks, 30 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 16 ConstructedInterpolants, 0 QuantifiedInterpolants, 34 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 2 InterpolantComputations, 2 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2023-09-01 10:43:54,377 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE