/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/concurrent/svcomp-Reach-32bit-Automizer_Default-noMmResRef-MCRwithDepranks-Lazy-NoForkJoinOpt.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-4b0ab11 [2022-03-02 03:14:45,655 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-03-02 03:14:45,657 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-03-02 03:14:45,716 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-03-02 03:14:45,716 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-03-02 03:14:45,718 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-03-02 03:14:45,721 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-03-02 03:14:45,723 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-03-02 03:14:45,724 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-03-02 03:14:45,727 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-03-02 03:14:45,728 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-03-02 03:14:45,729 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-03-02 03:14:45,729 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-03-02 03:14:45,731 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-03-02 03:14:45,732 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-03-02 03:14:45,734 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-03-02 03:14:45,735 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-03-02 03:14:45,735 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-03-02 03:14:45,737 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-03-02 03:14:45,740 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-03-02 03:14:45,741 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-03-02 03:14:45,742 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-03-02 03:14:45,743 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-03-02 03:14:45,743 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-03-02 03:14:45,748 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-03-02 03:14:45,748 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-03-02 03:14:45,748 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-03-02 03:14:45,749 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-03-02 03:14:45,749 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-03-02 03:14:45,750 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-03-02 03:14:45,750 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-03-02 03:14:45,750 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-03-02 03:14:45,751 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-03-02 03:14:45,752 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-03-02 03:14:45,753 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-03-02 03:14:45,753 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-03-02 03:14:45,753 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-03-02 03:14:45,753 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-03-02 03:14:45,754 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-03-02 03:14:45,754 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-03-02 03:14:45,754 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-03-02 03:14:45,755 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/concurrent/svcomp-Reach-32bit-Automizer_Default-noMmResRef-MCRwithDepranks-Lazy-NoForkJoinOpt.epf [2022-03-02 03:14:45,779 INFO L113 SettingsManager]: Loading preferences was successful [2022-03-02 03:14:45,780 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-03-02 03:14:45,780 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-03-02 03:14:45,780 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-03-02 03:14:45,781 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-03-02 03:14:45,781 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-03-02 03:14:45,781 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-03-02 03:14:45,781 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-03-02 03:14:45,781 INFO L138 SettingsManager]: * Use SBE=true [2022-03-02 03:14:45,781 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-03-02 03:14:45,782 INFO L138 SettingsManager]: * sizeof long=4 [2022-03-02 03:14:45,782 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-03-02 03:14:45,782 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-03-02 03:14:45,782 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-03-02 03:14:45,782 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-03-02 03:14:45,782 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-03-02 03:14:45,782 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-03-02 03:14:45,783 INFO L138 SettingsManager]: * sizeof long double=12 [2022-03-02 03:14:45,783 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-03-02 03:14:45,783 INFO L138 SettingsManager]: * Use constant arrays=true [2022-03-02 03:14:45,783 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-03-02 03:14:45,783 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-03-02 03:14:45,783 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-03-02 03:14:45,783 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-03-02 03:14:45,783 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-03-02 03:14:45,783 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-03-02 03:14:45,783 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-03-02 03:14:45,783 INFO L138 SettingsManager]: * Construct finite automaton lazily=true [2022-03-02 03:14:45,784 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-03-02 03:14:45,784 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-03-02 03:14:45,784 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-03-02 03:14:45,784 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-03-02 03:14:45,784 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-03-02 03:14:45,784 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2022-03-02 03:14:45,784 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-03-02 03:14:45,784 INFO L138 SettingsManager]: * Partial Order Reduction in concurrent analysis=MCR_WITH_DEPRANKS [2022-03-02 03:14:45,784 INFO L138 SettingsManager]: * MCR: Optimize fork and join=false [2022-03-02 03:14:45,784 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/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-02 03:14:45,964 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-03-02 03:14:45,982 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-03-02 03:14:45,984 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-03-02 03:14:45,985 INFO L271 PluginConnector]: Initializing CDTParser... [2022-03-02 03:14:45,986 INFO L275 PluginConnector]: CDTParser initialized [2022-03-02 03:14:45,987 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-02 03:14:46,047 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/13efef3ee/71af125e71a24bd692dc77511b8f75c9/FLAGec136ac6c [2022-03-02 03:14:46,416 INFO L306 CDTParser]: Found 1 translation units. [2022-03-02 03:14:46,417 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/04-mutex_14-funarg_rc.i [2022-03-02 03:14:46,426 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/13efef3ee/71af125e71a24bd692dc77511b8f75c9/FLAGec136ac6c [2022-03-02 03:14:46,784 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/13efef3ee/71af125e71a24bd692dc77511b8f75c9 [2022-03-02 03:14:46,786 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-03-02 03:14:46,787 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-03-02 03:14:46,799 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-03-02 03:14:46,800 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-03-02 03:14:46,802 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-03-02 03:14:46,802 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 02.03 03:14:46" (1/1) ... [2022-03-02 03:14:46,803 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@57df1c24 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:46, skipping insertion in model container [2022-03-02 03:14:46,803 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 02.03 03:14:46" (1/1) ... [2022-03-02 03:14:46,809 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-03-02 03:14:46,839 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-03-02 03:14:47,145 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-03-02 03:14:47,155 INFO L203 MainTranslator]: Completed pre-run [2022-03-02 03:14:47,178 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-03-02 03:14:47,217 INFO L208 MainTranslator]: Completed translation [2022-03-02 03:14:47,218 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:47 WrapperNode [2022-03-02 03:14:47,218 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-03-02 03:14:47,219 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-03-02 03:14:47,219 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-03-02 03:14:47,219 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-03-02 03:14:47,224 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:47" (1/1) ... [2022-03-02 03:14:47,236 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:47" (1/1) ... [2022-03-02 03:14:47,250 INFO L137 Inliner]: procedures = 263, calls = 31, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 66 [2022-03-02 03:14:47,250 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-03-02 03:14:47,251 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-03-02 03:14:47,251 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-03-02 03:14:47,251 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-03-02 03:14:47,256 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:47" (1/1) ... [2022-03-02 03:14:47,256 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:47" (1/1) ... [2022-03-02 03:14:47,258 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:47" (1/1) ... [2022-03-02 03:14:47,259 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:47" (1/1) ... [2022-03-02 03:14:47,263 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:47" (1/1) ... [2022-03-02 03:14:47,264 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:47" (1/1) ... [2022-03-02 03:14:47,265 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:47" (1/1) ... [2022-03-02 03:14:47,267 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-03-02 03:14:47,268 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-03-02 03:14:47,268 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-03-02 03:14:47,268 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-03-02 03:14:47,268 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:47" (1/1) ... [2022-03-02 03:14:47,293 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-03-02 03:14:47,300 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-03-02 03:14:47,309 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-02 03:14:47,317 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-02 03:14:47,334 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-03-02 03:14:47,335 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-03-02 03:14:47,335 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-03-02 03:14:47,335 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-03-02 03:14:47,335 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2022-03-02 03:14:47,335 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-03-02 03:14:47,335 INFO L130 BoogieDeclarations]: Found specification of procedure t_fun [2022-03-02 03:14:47,335 INFO L138 BoogieDeclarations]: Found implementation of procedure t_fun [2022-03-02 03:14:47,335 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-03-02 03:14:47,335 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-03-02 03:14:47,335 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-03-02 03:14:47,336 WARN L208 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to SingleStatement [2022-03-02 03:14:47,403 INFO L234 CfgBuilder]: Building ICFG [2022-03-02 03:14:47,404 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-03-02 03:14:47,557 INFO L275 CfgBuilder]: Performing block encoding [2022-03-02 03:14:47,566 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-03-02 03:14:47,566 INFO L299 CfgBuilder]: Removed 0 assume(true) statements. [2022-03-02 03:14:47,567 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 02.03 03:14:47 BoogieIcfgContainer [2022-03-02 03:14:47,567 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-03-02 03:14:47,568 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-03-02 03:14:47,568 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-03-02 03:14:47,571 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-03-02 03:14:47,571 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 02.03 03:14:46" (1/3) ... [2022-03-02 03:14:47,571 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@e1047a4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 02.03 03:14:47, skipping insertion in model container [2022-03-02 03:14:47,571 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 02.03 03:14:47" (2/3) ... [2022-03-02 03:14:47,572 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@e1047a4 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 02.03 03:14:47, skipping insertion in model container [2022-03-02 03:14:47,572 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 02.03 03:14:47" (3/3) ... [2022-03-02 03:14:47,573 INFO L111 eAbstractionObserver]: Analyzing ICFG 04-mutex_14-funarg_rc.i [2022-03-02 03:14:47,576 WARN L150 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2022-03-02 03:14:47,576 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-03-02 03:14:47,576 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 5 error locations. [2022-03-02 03:14:47,576 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2022-03-02 03:14:47,598 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,598 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,598 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,598 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,598 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,599 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,599 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,599 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,599 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,599 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,599 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,599 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,600 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,600 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,600 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,600 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,600 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,601 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,603 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,603 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,604 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,604 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,604 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,604 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,604 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,604 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,607 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,607 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,607 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,607 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,607 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,607 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-02 03:14:47,610 INFO L148 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2022-03-02 03:14:47,640 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2022-03-02 03:14:47,640 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-03-02 03:14:47,642 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (exit command is (exit), workingDir is null) [2022-03-02 03:14:47,659 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Waiting until timeout for monitored process [2022-03-02 03:14:47,667 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-03-02 03:14:47,672 INFO L339 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=PARTIAL_ORDER_FA, mLazyFiniteAutomaton=true, 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, mLoopAccelerationTechnique=FAST_UPR, mMcrOptimizeForkJoin=false, mMcrOverapproximateWrwc=true [2022-03-02 03:14:47,672 INFO L340 AbstractCegarLoop]: Starting to check reachability of 8 error locations. [2022-03-02 03:14:47,703 INFO L104 alCausalityReduction]: MaximalCausalityReduction evaluated 51 transitions and produced 52 states. [2022-03-02 03:14:47,705 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (and 5 more)] === [2022-03-02 03:14:47,708 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-02 03:14:47,708 INFO L85 PathProgramCache]: Analyzing trace with hash -1939051801, now seen corresponding path program 1 times [2022-03-02 03:14:47,714 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-02 03:14:47,714 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2002711600] [2022-03-02 03:14:47,715 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-02 03:14:47,715 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-02 03:14:47,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-03-02 03:14:47,900 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-02 03:14:47,900 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-03-02 03:14:47,901 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2002711600] [2022-03-02 03:14:47,902 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2002711600] provided 1 perfect and 0 imperfect interpolant sequences [2022-03-02 03:14:47,902 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-03-02 03:14:47,902 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-03-02 03:14:47,910 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [494189640] [2022-03-02 03:14:47,911 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-03-02 03:14:47,914 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-03-02 03:14:47,914 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-03-02 03:14:47,928 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-03-02 03:14:47,929 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-03-02 03:14:47,929 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-03-02 03:14:47,930 INFO L470 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2022-03-02 03:14:47,931 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 21.5) internal successors, (43), 3 states have internal predecessors, (43), 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-02 03:14:47,931 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2022-03-02 03:14:47,964 INFO L104 alCausalityReduction]: MaximalCausalityReduction evaluated 97 transitions and produced 98 states. [2022-03-02 03:14:47,967 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-03-02 03:14:47,967 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-03-02 03:14:47,967 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (and 5 more)] === [2022-03-02 03:14:47,968 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-02 03:14:47,968 INFO L85 PathProgramCache]: Analyzing trace with hash -1484727409, now seen corresponding path program 1 times [2022-03-02 03:14:47,968 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-02 03:14:47,968 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [929815551] [2022-03-02 03:14:47,969 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-02 03:14:47,969 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-02 03:14:48,002 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-03-02 03:14:48,115 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-02 03:14:48,115 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-03-02 03:14:48,115 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [929815551] [2022-03-02 03:14:48,115 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [929815551] provided 1 perfect and 0 imperfect interpolant sequences [2022-03-02 03:14:48,115 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-03-02 03:14:48,115 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-03-02 03:14:48,116 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [687225347] [2022-03-02 03:14:48,116 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-03-02 03:14:48,117 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-03-02 03:14:48,117 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-03-02 03:14:48,117 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-03-02 03:14:48,117 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2022-03-02 03:14:48,117 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-03-02 03:14:48,118 INFO L470 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2022-03-02 03:14:48,118 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 13.0) internal successors, (65), 6 states have internal predecessors, (65), 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-02 03:14:48,118 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2022-03-02 03:14:48,118 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2022-03-02 03:14:48,164 INFO L104 alCausalityReduction]: MaximalCausalityReduction evaluated 107 transitions and produced 108 states. [2022-03-02 03:14:48,164 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-03-02 03:14:48,164 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-03-02 03:14:48,164 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-03-02 03:14:48,165 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting t_funErr1ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (and 5 more)] === [2022-03-02 03:14:48,165 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-02 03:14:48,165 INFO L85 PathProgramCache]: Analyzing trace with hash -1804631314, now seen corresponding path program 1 times [2022-03-02 03:14:48,165 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-02 03:14:48,165 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2046373411] [2022-03-02 03:14:48,166 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-02 03:14:48,166 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-02 03:14:48,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-03-02 03:14:48,212 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-02 03:14:48,213 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-03-02 03:14:48,213 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2046373411] [2022-03-02 03:14:48,213 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2046373411] provided 1 perfect and 0 imperfect interpolant sequences [2022-03-02 03:14:48,213 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-03-02 03:14:48,213 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-03-02 03:14:48,213 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1201395757] [2022-03-02 03:14:48,213 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-03-02 03:14:48,214 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-03-02 03:14:48,214 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-03-02 03:14:48,214 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-03-02 03:14:48,214 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-03-02 03:14:48,215 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-03-02 03:14:48,215 INFO L470 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2022-03-02 03:14:48,215 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 37.0) internal successors, (74), 3 states have internal predecessors, (74), 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-02 03:14:48,215 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2022-03-02 03:14:48,215 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2022-03-02 03:14:48,215 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2022-03-02 03:14:48,297 INFO L104 alCausalityReduction]: MaximalCausalityReduction evaluated 1469 transitions and produced 862 states. [2022-03-02 03:14:48,297 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-03-02 03:14:48,297 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-03-02 03:14:48,297 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-03-02 03:14:48,298 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-03-02 03:14:48,298 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (and 5 more)] === [2022-03-02 03:14:48,298 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-02 03:14:48,298 INFO L85 PathProgramCache]: Analyzing trace with hash -1987494670, now seen corresponding path program 1 times [2022-03-02 03:14:48,299 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-02 03:14:48,299 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1743261890] [2022-03-02 03:14:48,299 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-02 03:14:48,299 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-02 03:14:48,318 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-03-02 03:14:48,318 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-03-02 03:14:48,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-03-02 03:14:48,354 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-03-02 03:14:48,355 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-03-02 03:14:48,356 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE (7 of 8 remaining) [2022-03-02 03:14:48,357 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE (6 of 8 remaining) [2022-03-02 03:14:48,357 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (5 of 8 remaining) [2022-03-02 03:14:48,357 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATION (4 of 8 remaining) [2022-03-02 03:14:48,357 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr0ASSERT_VIOLATIONDATA_RACE (3 of 8 remaining) [2022-03-02 03:14:48,358 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr1ASSERT_VIOLATIONDATA_RACE (2 of 8 remaining) [2022-03-02 03:14:48,358 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr0ASSERT_VIOLATIONDATA_RACE (1 of 8 remaining) [2022-03-02 03:14:48,358 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr1ASSERT_VIOLATIONDATA_RACE (0 of 8 remaining) [2022-03-02 03:14:48,358 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-03-02 03:14:48,362 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1] [2022-03-02 03:14:48,366 INFO L230 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2022-03-02 03:14:48,366 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-03-02 03:14:48,414 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 02.03 03:14:48 BasicIcfg [2022-03-02 03:14:48,414 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-03-02 03:14:48,418 INFO L158 Benchmark]: Toolchain (without parser) took 1628.28ms. Allocated memory was 166.7MB in the beginning and 237.0MB in the end (delta: 70.3MB). Free memory was 114.0MB in the beginning and 96.9MB in the end (delta: 17.1MB). Peak memory consumption was 88.6MB. Max. memory is 8.0GB. [2022-03-02 03:14:48,419 INFO L158 Benchmark]: CDTParser took 0.36ms. Allocated memory is still 166.7MB. Free memory was 132.1MB in the beginning and 131.9MB in the end (delta: 136.4kB). There was no memory consumed. Max. memory is 8.0GB. [2022-03-02 03:14:48,419 INFO L158 Benchmark]: CACSL2BoogieTranslator took 418.84ms. Allocated memory was 166.7MB in the beginning and 237.0MB in the end (delta: 70.3MB). Free memory was 113.7MB in the beginning and 197.5MB in the end (delta: -83.8MB). Peak memory consumption was 13.1MB. Max. memory is 8.0GB. [2022-03-02 03:14:48,420 INFO L158 Benchmark]: Boogie Procedure Inliner took 31.76ms. Allocated memory is still 237.0MB. Free memory was 197.5MB in the beginning and 194.9MB in the end (delta: 2.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-03-02 03:14:48,421 INFO L158 Benchmark]: Boogie Preprocessor took 16.02ms. Allocated memory is still 237.0MB. Free memory was 194.9MB in the beginning and 193.3MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-03-02 03:14:48,423 INFO L158 Benchmark]: RCFGBuilder took 299.87ms. Allocated memory is still 237.0MB. Free memory was 193.3MB in the beginning and 179.2MB in the end (delta: 14.1MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. [2022-03-02 03:14:48,424 INFO L158 Benchmark]: TraceAbstraction took 846.15ms. Allocated memory is still 237.0MB. Free memory was 178.7MB in the beginning and 96.9MB in the end (delta: 81.8MB). Peak memory consumption was 81.8MB. Max. memory is 8.0GB. [2022-03-02 03:14:48,426 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.36ms. Allocated memory is still 166.7MB. Free memory was 132.1MB in the beginning and 131.9MB in the end (delta: 136.4kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 418.84ms. Allocated memory was 166.7MB in the beginning and 237.0MB in the end (delta: 70.3MB). Free memory was 113.7MB in the beginning and 197.5MB in the end (delta: -83.8MB). Peak memory consumption was 13.1MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 31.76ms. Allocated memory is still 237.0MB. Free memory was 197.5MB in the beginning and 194.9MB in the end (delta: 2.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 16.02ms. Allocated memory is still 237.0MB. Free memory was 194.9MB in the beginning and 193.3MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 299.87ms. Allocated memory is still 237.0MB. Free memory was 193.3MB in the beginning and 179.2MB in the end (delta: 14.1MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. * TraceAbstraction took 846.15ms. Allocated memory is still 237.0MB. Free memory was 178.7MB in the beginning and 96.9MB in the end (delta: 81.8MB). Peak memory consumption was 81.8MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Independence relation benchmarks ThreadSeparatingIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ThreadSeparatingIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: DisjunctiveConditionalIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , DisjunctiveConditionalIndependenceRelation.Statistics on underlying relation: ConditionTransformingIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , ConditionTransformingIndependenceRelation.Statistics on underlying relation: SemanticConditionEliminator.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticConditionEliminator.Statistics on underlying relation: CachedIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , CachedIndependenceRelation.Statistics on underlying relation: UnionIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , UnionIndependenceRelation.Statistics on underlying relations: [ SyntacticIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Independence Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , SemanticIndependenceRelation.Query Time [ms]: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] ], Cache Queries: [ total: 0, positive: 0, positive conditional: 0, positive unconditional: 0, negative: 0, negative conditional: 0, negative unconditional: 0, unknown: 0, unknown conditional: 0, unknown unconditional: 0] , Statistics on independence cache: Total cache size (in pairs): 0, Positive cache size: 0, Positive conditional cache size: 0, Positive unconditional cache size: 0, Negative cache size: 0, Negative conditional cache size: 0, Negative unconditional cache size: 0, Eliminated conditions: 0, Maximal queried relation: -1, Independence queries for same thread: 0 - 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: 937]: Data race detected Data race detected The following path leads to a data race: [L917] 0 int myglobal; VAL [myglobal=0] [L918] 0 pthread_mutex_t mutex1 = { { 0, 0, 0, 0, 0, { { 0, 0 } } } }; VAL [mutex1={2:0}, myglobal=0] [L919] 0 pthread_mutex_t mutex2 = { { 0, 0, 0, 0, 0, { { 0, 0 } } } }; VAL [mutex1={2:0}, mutex2={3:0}, myglobal=0] [L920] 0 pthread_mutex_t mutex3 = { { 0, 0, 0, 0, 0, { { 0, 0 } } } }; VAL [mutex1={2:0}, mutex2={3:0}, mutex3={4:0}, myglobal=0] [L931] 0 pthread_t id; VAL [id={5:0}, mutex1={2:0}, mutex2={3:0}, mutex3={4:0}, myglobal=0] [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] [L934] 0 printf("myglobal equals %d\n",myglobal) VAL [arg={0:0}, id={5:0}, mutex1={2:0}, mutex2={3:0}, mutex3={4:0}, myglobal=0] [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] [L937] 0 add1(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: add1(myglobal) [937] - UnprovableResult [Line: 934]: 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: 0.7s, OverallIterations: 4, TraceHistogramMax: 0, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.2s, HoareTripleCheckerStatistics: , PredicateUnifierStatistics: No data available, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=0occurred in iteration=0, InterpolantAutomatonStates: 12, 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.2s InterpolantComputationTime, 238 NumberOfCodeBlocks, 238 NumberOfCodeBlocksAsserted, 4 NumberOfCheckSat, 179 ConstructedInterpolants, 0 QuantifiedInterpolants, 264 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 3 InterpolantComputations, 3 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-02 03:14:48,485 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 (2)] Forceful destruction successful, exit code 0 [2022-03-02 03:14:48,691 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...