/usr/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data -s ../../../trunk/examples/settings/automizer/mcr/svcomp-Reach-32bit-Automizer_Default-noMmResRef-FA-McrAutomaton-WP.epf -tc ../../../trunk/examples/toolchains/AutomizerCInline.xml --cacsl2boogietranslator.check.absence.of.data.races.in.concurrent.programs true --cacsl2boogietranslator.check.unreachability.of.error.function.in.sv-comp.mode false -i ../../../trunk/examples/svcomp/goblint-regression/04-mutex_14-funarg_rc.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-wip.dk.mcr-reduction-c7b2d19 [2022-03-15 20:12:37,073 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-03-15 20:12:37,075 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-03-15 20:12:37,131 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-03-15 20:12:37,132 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-03-15 20:12:37,134 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-03-15 20:12:37,136 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-03-15 20:12:37,138 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-03-15 20:12:37,139 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-03-15 20:12:37,142 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-03-15 20:12:37,143 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-03-15 20:12:37,144 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-03-15 20:12:37,144 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-03-15 20:12:37,145 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-03-15 20:12:37,146 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-03-15 20:12:37,148 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-03-15 20:12:37,149 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-03-15 20:12:37,149 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-03-15 20:12:37,151 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-03-15 20:12:37,155 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-03-15 20:12:37,156 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-03-15 20:12:37,157 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-03-15 20:12:37,158 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-03-15 20:12:37,158 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-03-15 20:12:37,163 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-03-15 20:12:37,164 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-03-15 20:12:37,164 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-03-15 20:12:37,165 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-03-15 20:12:37,165 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-03-15 20:12:37,166 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-03-15 20:12:37,166 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-03-15 20:12:37,167 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-03-15 20:12:37,168 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-03-15 20:12:37,168 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-03-15 20:12:37,169 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-03-15 20:12:37,169 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-03-15 20:12:37,170 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-03-15 20:12:37,170 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-03-15 20:12:37,170 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-03-15 20:12:37,170 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-03-15 20:12:37,171 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-03-15 20:12:37,172 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/mcr/svcomp-Reach-32bit-Automizer_Default-noMmResRef-FA-McrAutomaton-WP.epf [2022-03-15 20:12:37,197 INFO L113 SettingsManager]: Loading preferences was successful [2022-03-15 20:12:37,198 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-03-15 20:12:37,199 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-03-15 20:12:37,199 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-03-15 20:12:37,199 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-03-15 20:12:37,199 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-03-15 20:12:37,199 INFO L138 SettingsManager]: * Use SBE=true [2022-03-15 20:12:37,199 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-03-15 20:12:37,200 INFO L138 SettingsManager]: * sizeof long=4 [2022-03-15 20:12:37,200 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-03-15 20:12:37,200 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-03-15 20:12:37,200 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-03-15 20:12:37,200 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-03-15 20:12:37,201 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-03-15 20:12:37,201 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-03-15 20:12:37,201 INFO L138 SettingsManager]: * sizeof long double=12 [2022-03-15 20:12:37,201 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-03-15 20:12:37,201 INFO L138 SettingsManager]: * Use constant arrays=true [2022-03-15 20:12:37,201 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-03-15 20:12:37,201 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-03-15 20:12:37,201 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-03-15 20:12:37,201 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-03-15 20:12:37,201 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-03-15 20:12:37,202 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-03-15 20:12:37,202 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-03-15 20:12:37,202 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-03-15 20:12:37,202 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-03-15 20:12:37,203 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-03-15 20:12:37,203 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-03-15 20:12:37,203 INFO L138 SettingsManager]: * Override the interpolant automaton setting of the refinement strategy=true [2022-03-15 20:12:37,203 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=VARIABLE_BASED_MOVER_CHECK [2022-03-15 20:12:37,203 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-03-15 20:12:37,203 INFO L138 SettingsManager]: * Interpolant automaton=MCR 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: Check absence of data races in concurrent programs -> true Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Check unreachability of error function in SV-COMP mode -> false [2022-03-15 20:12:37,403 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-03-15 20:12:37,421 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-03-15 20:12:37,423 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-03-15 20:12:37,424 INFO L271 PluginConnector]: Initializing CDTParser... [2022-03-15 20:12:37,424 INFO L275 PluginConnector]: CDTParser initialized [2022-03-15 20:12:37,425 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/goblint-regression/04-mutex_14-funarg_rc.i [2022-03-15 20:12:37,470 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/94a1b2713/a651442c40114a6a8cb74fe4acc98b0f/FLAG4811b5100 [2022-03-15 20:12:37,901 INFO L306 CDTParser]: Found 1 translation units. [2022-03-15 20:12:37,901 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/04-mutex_14-funarg_rc.i [2022-03-15 20:12:37,909 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/94a1b2713/a651442c40114a6a8cb74fe4acc98b0f/FLAG4811b5100 [2022-03-15 20:12:37,917 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/94a1b2713/a651442c40114a6a8cb74fe4acc98b0f [2022-03-15 20:12:37,919 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-03-15 20:12:37,920 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-03-15 20:12:37,921 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-03-15 20:12:37,921 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-03-15 20:12:37,923 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-03-15 20:12:37,923 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.03 08:12:37" (1/1) ... [2022-03-15 20:12:37,924 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@725e02bc and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:37, skipping insertion in model container [2022-03-15 20:12:37,924 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.03 08:12:37" (1/1) ... [2022-03-15 20:12:37,929 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-03-15 20:12:37,964 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-03-15 20:12:38,270 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-03-15 20:12:38,281 INFO L203 MainTranslator]: Completed pre-run [2022-03-15 20:12:38,318 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-03-15 20:12:38,371 INFO L208 MainTranslator]: Completed translation [2022-03-15 20:12:38,372 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:38 WrapperNode [2022-03-15 20:12:38,372 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-03-15 20:12:38,373 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-03-15 20:12:38,373 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-03-15 20:12:38,373 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-03-15 20:12:38,378 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:38" (1/1) ... [2022-03-15 20:12:38,396 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:38" (1/1) ... [2022-03-15 20:12:38,411 INFO L137 Inliner]: procedures = 263, calls = 31, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 66 [2022-03-15 20:12:38,411 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-03-15 20:12:38,412 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-03-15 20:12:38,412 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-03-15 20:12:38,412 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-03-15 20:12:38,419 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:38" (1/1) ... [2022-03-15 20:12:38,419 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:38" (1/1) ... [2022-03-15 20:12:38,422 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:38" (1/1) ... [2022-03-15 20:12:38,422 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:38" (1/1) ... [2022-03-15 20:12:38,426 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:38" (1/1) ... [2022-03-15 20:12:38,427 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:38" (1/1) ... [2022-03-15 20:12:38,428 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:38" (1/1) ... [2022-03-15 20:12:38,429 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-03-15 20:12:38,430 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-03-15 20:12:38,430 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-03-15 20:12:38,430 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-03-15 20:12:38,431 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:38" (1/1) ... [2022-03-15 20:12:38,435 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-03-15 20:12:38,453 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-03-15 20:12:38,462 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) [2022-03-15 20:12:38,475 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 [2022-03-15 20:12:38,490 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-03-15 20:12:38,490 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-03-15 20:12:38,490 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-03-15 20:12:38,490 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-03-15 20:12:38,490 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2022-03-15 20:12:38,490 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-03-15 20:12:38,490 INFO L130 BoogieDeclarations]: Found specification of procedure t_fun [2022-03-15 20:12:38,490 INFO L138 BoogieDeclarations]: Found implementation of procedure t_fun [2022-03-15 20:12:38,490 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-03-15 20:12:38,490 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-03-15 20:12:38,490 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-03-15 20:12:38,491 WARN L208 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to SingleStatement [2022-03-15 20:12:38,601 INFO L234 CfgBuilder]: Building ICFG [2022-03-15 20:12:38,603 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-03-15 20:12:38,772 INFO L275 CfgBuilder]: Performing block encoding [2022-03-15 20:12:38,777 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-03-15 20:12:38,777 INFO L299 CfgBuilder]: Removed 0 assume(true) statements. [2022-03-15 20:12:38,778 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.03 08:12:38 BoogieIcfgContainer [2022-03-15 20:12:38,778 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-03-15 20:12:38,780 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-03-15 20:12:38,780 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-03-15 20:12:38,784 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-03-15 20:12:38,784 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.03 08:12:37" (1/3) ... [2022-03-15 20:12:38,785 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@38e7cf30 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.03 08:12:38, skipping insertion in model container [2022-03-15 20:12:38,785 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.03 08:12:38" (2/3) ... [2022-03-15 20:12:38,785 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@38e7cf30 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.03 08:12:38, skipping insertion in model container [2022-03-15 20:12:38,785 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.03 08:12:38" (3/3) ... [2022-03-15 20:12:38,786 INFO L111 eAbstractionObserver]: Analyzing ICFG 04-mutex_14-funarg_rc.i [2022-03-15 20:12:38,790 WARN L150 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2022-03-15 20:12:38,790 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-03-15 20:12:38,791 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 5 error locations. [2022-03-15 20:12:38,791 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2022-03-15 20:12:38,832 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,832 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,832 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,833 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,833 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,833 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,833 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,834 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,834 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,834 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,834 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,834 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,834 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,835 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,835 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,835 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,835 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,836 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,836 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,837 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,837 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,837 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,837 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,837 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,837 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,837 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,844 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,845 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,845 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,845 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,845 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,845 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-15 20:12:38,855 INFO L148 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2022-03-15 20:12:38,898 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-03-15 20:12:38,909 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=MCR, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mLazyFiniteAutomaton=false, 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=true, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR, mMcrOptimizeForkJoin=true, mMcrOverapproximateWrwc=true [2022-03-15 20:12:38,909 INFO L340 AbstractCegarLoop]: Starting to check reachability of 8 error locations. [2022-03-15 20:12:38,920 INFO L126 etLargeBlockEncoding]: Petri net LBE is using variable-based independence relation. [2022-03-15 20:12:38,927 INFO L133 etLargeBlockEncoding]: Starting large block encoding on Petri net that has 96 places, 92 transitions, 192 flow [2022-03-15 20:12:38,929 INFO L110 LiptonReduction]: Starting Lipton reduction on Petri net that has 96 places, 92 transitions, 192 flow [2022-03-15 20:12:38,930 INFO L74 FinitePrefix]: Start finitePrefix. Operand has 96 places, 92 transitions, 192 flow [2022-03-15 20:12:38,966 INFO L129 PetriNetUnfolder]: 0/91 cut-off events. [2022-03-15 20:12:38,966 INFO L130 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-03-15 20:12:38,967 INFO L84 FinitePrefix]: Finished finitePrefix Result has 96 conditions, 91 events. 0/91 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 39 event pairs, 0 based on Foata normal form. 0/86 useless extension candidates. Maximal degree in co-relation 0. Up to 2 conditions per place. [2022-03-15 20:12:38,969 INFO L116 LiptonReduction]: Number of co-enabled transitions 960 [2022-03-15 20:12:41,133 INFO L131 LiptonReduction]: Checked pairs total: 3369 [2022-03-15 20:12:41,134 INFO L133 LiptonReduction]: Total number of compositions: 68 [2022-03-15 20:12:41,150 INFO L111 iNet2FiniteAutomaton]: Start petriNet2FiniteAutomaton. Operand has 30 places, 26 transitions, 60 flow [2022-03-15 20:12:41,176 INFO L133 iNet2FiniteAutomaton]: Finished petriNet2FiniteAutomaton. Result has 130 states, 119 states have (on average 1.9747899159663866) internal successors, (235), 129 states have internal predecessors, (235), 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) [2022-03-15 20:12:41,178 INFO L276 IsEmpty]: Start isEmpty. Operand has 130 states, 119 states have (on average 1.9747899159663866) internal successors, (235), 129 states have internal predecessors, (235), 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) [2022-03-15 20:12:41,181 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 6 [2022-03-15 20:12:41,181 INFO L506 BasicCegarLoop]: Found error trace [2022-03-15 20:12:41,181 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1] [2022-03-15 20:12:41,182 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting t_funErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (and 5 more)] === [2022-03-15 20:12:41,186 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-15 20:12:41,186 INFO L85 PathProgramCache]: Analyzing trace with hash 284178088, now seen corresponding path program 1 times [2022-03-15 20:12:41,202 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-15 20:12:41,203 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1725274895] [2022-03-15 20:12:41,203 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-15 20:12:41,203 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-15 20:12:41,310 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-03-15 20:12:41,384 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-03-15 20:12:41,385 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-03-15 20:12:41,385 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1725274895] [2022-03-15 20:12:41,385 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1725274895] provided 1 perfect and 0 imperfect interpolant sequences [2022-03-15 20:12:41,386 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-03-15 20:12:41,386 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-03-15 20:12:41,387 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleMcr [1943392686] [2022-03-15 20:12:41,387 INFO L194 McrAutomatonBuilder]: Constructing automaton for MCR equivalence class. [2022-03-15 20:12:41,390 INFO L249 McrAutomatonBuilder]: Started intersection. [2022-03-15 20:12:41,396 INFO L252 McrAutomatonBuilder]: Finished intersection with 6 states and 5 transitions. [2022-03-15 20:12:41,397 INFO L276 McrAutomatonBuilder]: Constructing interpolant automaton by labelling MCR automaton with interpolants from WpInterpolantProvider [2022-03-15 20:12:41,400 INFO L301 McrAutomatonBuilder]: Construction finished. MCR generated 0 new interpolants: [] [2022-03-15 20:12:41,401 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-03-15 20:12:41,401 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-03-15 20:12:41,417 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-03-15 20:12:41,418 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-03-15 20:12:41,421 INFO L87 Difference]: Start difference. First operand has 130 states, 119 states have (on average 1.9747899159663866) internal successors, (235), 129 states have internal predecessors, (235), 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) Second operand has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 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) [2022-03-15 20:12:41,476 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-03-15 20:12:41,476 INFO L93 Difference]: Finished difference Result 128 states and 221 transitions. [2022-03-15 20:12:41,477 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-03-15 20:12:41,478 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 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) Word has length 5 [2022-03-15 20:12:41,478 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-03-15 20:12:41,485 INFO L225 Difference]: With dead ends: 128 [2022-03-15 20:12:41,485 INFO L226 Difference]: Without dead ends: 100 [2022-03-15 20:12:41,486 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-03-15 20:12:41,488 INFO L933 BasicCegarLoop]: 6 mSDtfsCounter, 13 mSDsluCounter, 9 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 7 SdHoareTripleChecker+Invalid, 42 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 35 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-03-15 20:12:41,489 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 7 Invalid, 42 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 35 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-03-15 20:12:41,500 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-03-15 20:12:41,515 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 88. [2022-03-15 20:12:41,516 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 83 states have (on average 1.7951807228915662) internal successors, (149), 87 states have internal predecessors, (149), 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) [2022-03-15 20:12:41,519 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 149 transitions. [2022-03-15 20:12:41,519 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 149 transitions. Word has length 5 [2022-03-15 20:12:41,520 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-03-15 20:12:41,520 INFO L470 AbstractCegarLoop]: Abstraction has 88 states and 149 transitions. [2022-03-15 20:12:41,520 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 2.5) internal successors, (5), 3 states have internal predecessors, (5), 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) [2022-03-15 20:12:41,520 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 149 transitions. [2022-03-15 20:12:41,520 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 9 [2022-03-15 20:12:41,520 INFO L506 BasicCegarLoop]: Found error trace [2022-03-15 20:12:41,520 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2022-03-15 20:12:41,521 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-03-15 20:12:41,521 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting t_funErr1ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (and 5 more)] === [2022-03-15 20:12:41,521 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-15 20:12:41,521 INFO L85 PathProgramCache]: Analyzing trace with hash 569099207, now seen corresponding path program 1 times [2022-03-15 20:12:41,522 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-15 20:12:41,522 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2070564656] [2022-03-15 20:12:41,522 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-15 20:12:41,522 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-15 20:12:41,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-03-15 20:12:41,548 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-03-15 20:12:41,548 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-03-15 20:12:41,548 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2070564656] [2022-03-15 20:12:41,548 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2070564656] provided 1 perfect and 0 imperfect interpolant sequences [2022-03-15 20:12:41,548 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-03-15 20:12:41,548 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-03-15 20:12:41,549 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleMcr [1925911551] [2022-03-15 20:12:41,549 INFO L194 McrAutomatonBuilder]: Constructing automaton for MCR equivalence class. [2022-03-15 20:12:41,549 INFO L249 McrAutomatonBuilder]: Started intersection. [2022-03-15 20:12:41,557 INFO L252 McrAutomatonBuilder]: Finished intersection with 9 states and 8 transitions. [2022-03-15 20:12:41,557 INFO L276 McrAutomatonBuilder]: Constructing interpolant automaton by labelling MCR automaton with interpolants from WpInterpolantProvider [2022-03-15 20:12:41,558 INFO L301 McrAutomatonBuilder]: Construction finished. MCR generated 0 new interpolants: [] [2022-03-15 20:12:41,561 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-03-15 20:12:41,561 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-03-15 20:12:41,561 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-03-15 20:12:41,561 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-03-15 20:12:41,562 INFO L87 Difference]: Start difference. First operand 88 states and 149 transitions. Second operand has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 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) [2022-03-15 20:12:41,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-03-15 20:12:41,611 INFO L93 Difference]: Finished difference Result 88 states and 142 transitions. [2022-03-15 20:12:41,612 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-03-15 20:12:41,612 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 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) Word has length 8 [2022-03-15 20:12:41,612 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-03-15 20:12:41,612 INFO L225 Difference]: With dead ends: 88 [2022-03-15 20:12:41,612 INFO L226 Difference]: Without dead ends: 70 [2022-03-15 20:12:41,613 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-03-15 20:12:41,613 INFO L933 BasicCegarLoop]: 8 mSDtfsCounter, 9 mSDsluCounter, 9 mSDsCounter, 0 mSdLazyCounter, 42 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 10 SdHoareTripleChecker+Invalid, 42 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 42 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-03-15 20:12:41,614 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 10 Invalid, 42 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 42 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-03-15 20:12:41,614 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-03-15 20:12:41,628 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-03-15 20:12:41,628 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 67 states have (on average 1.626865671641791) internal successors, (109), 69 states have internal predecessors, (109), 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) [2022-03-15 20:12:41,631 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 109 transitions. [2022-03-15 20:12:41,631 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 109 transitions. Word has length 8 [2022-03-15 20:12:41,631 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-03-15 20:12:41,631 INFO L470 AbstractCegarLoop]: Abstraction has 70 states and 109 transitions. [2022-03-15 20:12:41,631 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 4.0) internal successors, (8), 3 states have internal predecessors, (8), 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) [2022-03-15 20:12:41,631 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 109 transitions. [2022-03-15 20:12:41,632 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-03-15 20:12:41,632 INFO L506 BasicCegarLoop]: Found error trace [2022-03-15 20:12:41,632 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-03-15 20:12:41,632 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-03-15 20:12:41,632 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (and 5 more)] === [2022-03-15 20:12:41,632 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-15 20:12:41,632 INFO L85 PathProgramCache]: Analyzing trace with hash -1183970059, now seen corresponding path program 1 times [2022-03-15 20:12:41,633 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-15 20:12:41,633 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1910390458] [2022-03-15 20:12:41,633 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-15 20:12:41,634 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-15 20:12:41,665 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-03-15 20:12:41,665 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-03-15 20:12:41,690 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-03-15 20:12:41,710 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-03-15 20:12:41,710 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-03-15 20:12:41,713 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE (7 of 8 remaining) [2022-03-15 20:12:41,715 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE (6 of 8 remaining) [2022-03-15 20:12:41,715 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (5 of 8 remaining) [2022-03-15 20:12:41,715 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATION (4 of 8 remaining) [2022-03-15 20:12:41,716 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr0ASSERT_VIOLATIONDATA_RACE (3 of 8 remaining) [2022-03-15 20:12:41,716 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr1ASSERT_VIOLATIONDATA_RACE (2 of 8 remaining) [2022-03-15 20:12:41,716 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr0ASSERT_VIOLATIONDATA_RACE (1 of 8 remaining) [2022-03-15 20:12:41,716 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr1ASSERT_VIOLATIONDATA_RACE (0 of 8 remaining) [2022-03-15 20:12:41,716 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-03-15 20:12:41,717 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-03-15 20:12:41,721 INFO L230 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2022-03-15 20:12:41,721 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-03-15 20:12:41,750 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 15.03 08:12:41 BasicIcfg [2022-03-15 20:12:41,750 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-03-15 20:12:41,752 INFO L158 Benchmark]: Toolchain (without parser) took 3830.90ms. Allocated memory was 188.7MB in the beginning and 254.8MB in the end (delta: 66.1MB). Free memory was 137.6MB in the beginning and 220.3MB in the end (delta: -82.7MB). There was no memory consumed. Max. memory is 8.0GB. [2022-03-15 20:12:41,752 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 188.7MB. Free memory is still 155.9MB. There was no memory consumed. Max. memory is 8.0GB. [2022-03-15 20:12:41,758 INFO L158 Benchmark]: CACSL2BoogieTranslator took 451.30ms. Allocated memory is still 188.7MB. Free memory was 137.4MB in the beginning and 149.1MB in the end (delta: -11.7MB). Peak memory consumption was 10.5MB. Max. memory is 8.0GB. [2022-03-15 20:12:41,759 INFO L158 Benchmark]: Boogie Procedure Inliner took 38.68ms. Allocated memory is still 188.7MB. Free memory was 149.1MB in the beginning and 146.5MB in the end (delta: 2.6MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. [2022-03-15 20:12:41,759 INFO L158 Benchmark]: Boogie Preprocessor took 17.80ms. Allocated memory is still 188.7MB. Free memory was 146.5MB in the beginning and 144.9MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-03-15 20:12:41,760 INFO L158 Benchmark]: RCFGBuilder took 348.52ms. Allocated memory is still 188.7MB. Free memory was 144.9MB in the beginning and 131.8MB in the end (delta: 13.1MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. [2022-03-15 20:12:41,760 INFO L158 Benchmark]: TraceAbstraction took 2970.67ms. Allocated memory was 188.7MB in the beginning and 254.8MB in the end (delta: 66.1MB). Free memory was 131.3MB in the beginning and 220.3MB in the end (delta: -89.0MB). There was no memory consumed. Max. memory is 8.0GB. [2022-03-15 20:12:41,761 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.09ms. Allocated memory is still 188.7MB. Free memory is still 155.9MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 451.30ms. Allocated memory is still 188.7MB. Free memory was 137.4MB in the beginning and 149.1MB in the end (delta: -11.7MB). Peak memory consumption was 10.5MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 38.68ms. Allocated memory is still 188.7MB. Free memory was 149.1MB in the beginning and 146.5MB in the end (delta: 2.6MB). Peak memory consumption was 3.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 17.80ms. Allocated memory is still 188.7MB. Free memory was 146.5MB in the beginning and 144.9MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 348.52ms. Allocated memory is still 188.7MB. Free memory was 144.9MB in the beginning and 131.8MB in the end (delta: 13.1MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. * TraceAbstraction took 2970.67ms. Allocated memory was 188.7MB in the beginning and 254.8MB in the end (delta: 66.1MB). Free memory was 131.3MB in the beginning and 220.3MB in the end (delta: -89.0MB). There was no memory consumed. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: PetriNetLargeBlockEncoding benchmarks Lipton Reduction Statistics: ReductionTime: 2.2s, 96 PlacesBefore, 30 PlacesAfterwards, 92 TransitionsBefore, 26 TransitionsAfterwards, 960 CoEnabledTransitionPairs, 6 FixpointIterations, 40 TrivialSequentialCompositions, 28 ConcurrentSequentialCompositions, 0 TrivialYvCompositions, 0 ConcurrentYvCompositions, 0 ChoiceCompositions, 68 TotalNumberOfCompositions, 3369 MoverChecksTotal, Independence Relation Statistics: CachedIndependenceRelation.Independence Queries: [ total: 1688, positive: 1446, positive conditional: 0, positive unconditional: 1446, negative: 242, negative conditional: 0, negative unconditional: 242, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: SyntacticIndependenceRelation.Independence Queries: [ total: 534, positive: 497, positive conditional: 0, positive unconditional: 497, negative: 37, negative conditional: 0, negative unconditional: 37, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Cache Queries: [ total: 1688, positive: 949, positive conditional: 0, positive unconditional: 949, negative: 205, negative conditional: 0, negative unconditional: 205, unknown: 534, unknown conditional: 0, unknown unconditional: 534] , Statistics on independence cache: Total cache size (in pairs): 83, Positive cache size: 65, Positive conditional cache size: 0, Positive unconditional cache size: 65, Negative cache size: 18, Negative conditional cache size: 0, Negative unconditional cache size: 18 - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - DataRaceFoundResult [Line: 934]: Data race detected Data race detected The following path leads to a data race: [L917] 0 int myglobal; [L918] 0 pthread_mutex_t mutex1 = { { 0, 0, 0, 0, 0, { { 0, 0 } } } }; [L919] 0 pthread_mutex_t mutex2 = { { 0, 0, 0, 0, 0, { { 0, 0 } } } }; [L920] 0 pthread_mutex_t mutex3 = { { 0, 0, 0, 0, 0, { { 0, 0 } } } }; [L931] 0 pthread_t id; [L932] FCALL, FORK 0 pthread_create(&id, ((void *)0), t_fun, ((void *)0)) VAL [arg={0:0}, id={5:0}, mutex1={2:0}, mutex2={3:0}, mutex3={4:0}, myglobal=0, pthread_create(&id, ((void *)0), t_fun, ((void *)0))=-1] [L923] EXPR 1 myglobal+1 VAL [arg={0:0}, arg={0:0}, mutex1={2:0}, mutex2={3:0}, mutex3={4:0}, myglobal=0] [L923] 1 myglobal=myglobal+1 VAL [arg={0:0}, arg={0:0}, mutex1={2:0}, mutex2={3:0}, mutex3={4:0}, myglobal=1, myglobal=myglobal+1=25] [L934] 0 printf("myglobal equals %d\n",myglobal) VAL [arg={0:0}, arg={0:0}, id={5:0}, mutex1={2:0}, mutex2={3:0}, mutex3={4:0}, myglobal=1, myglobal=myglobal+1=25] Now there is a data race on ~myglobal~0 between C: myglobal=myglobal+1 [923] and C: printf("myglobal equals %d\n",myglobal) [934] - UnprovableResult [Line: 937]: Unable to prove that there are no data races Unable to prove that there are no data races Reason: Not analyzed. - UnprovableResult [Line: 939]: Unable to prove that there are no data races Unable to prove that there are no data races Reason: Not analyzed. - UnprovableResult [Line: 932]: 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: 923]: Unable to prove that there are no data races Unable to prove that there are no data races Reason: Not analyzed. - UnprovableResult [Line: 923]: Unable to prove that there are no data races Unable to prove that there are no data races Reason: Not analyzed. - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 3 procedures, 110 locations, 8 error locations. Started 1 CEGAR loops. OverallTime: 2.8s, OverallIterations: 3, TraceHistogramMax: 1, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 2.3s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 22 SdHoareTripleChecker+Valid, 0.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 22 mSDsluCounter, 17 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 18 mSDsCounter, 7 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 77 IncrementalHoareTripleChecker+Invalid, 84 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 7 mSolverCounterUnsat, 14 mSDtfsCounter, 77 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 4 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=130occurred in iteration=0, 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: 0.0s AutomataMinimizationTime, 2 MinimizatonAttempts, 12 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 23 NumberOfCodeBlocks, 23 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 11 ConstructedInterpolants, 0 QuantifiedInterpolants, 15 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 could not prove your program: unable to determine feasibility of some traces [2022-03-15 20:12:41,801 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...