/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-wrwc.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_50-funptr_rc.i -------------------------------------------------------------------------------- This is Ultimate 0.2.2-wip.dk.mcr-reduction-4b0ab11 [2022-03-03 23:56:02,949 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-03-03 23:56:02,951 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-03-03 23:56:03,015 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-03-03 23:56:03,016 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-03-03 23:56:03,018 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-03-03 23:56:03,020 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-03-03 23:56:03,022 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-03-03 23:56:03,023 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-03-03 23:56:03,027 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-03-03 23:56:03,027 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-03-03 23:56:03,028 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-03-03 23:56:03,028 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-03-03 23:56:03,030 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-03-03 23:56:03,031 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-03-03 23:56:03,033 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-03-03 23:56:03,034 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-03-03 23:56:03,034 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-03-03 23:56:03,036 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-03-03 23:56:03,040 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-03-03 23:56:03,041 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-03-03 23:56:03,042 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-03-03 23:56:03,043 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-03-03 23:56:03,044 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-03-03 23:56:03,048 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-03-03 23:56:03,049 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-03-03 23:56:03,049 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-03-03 23:56:03,050 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-03-03 23:56:03,050 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-03-03 23:56:03,051 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-03-03 23:56:03,051 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-03-03 23:56:03,051 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-03-03 23:56:03,053 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-03-03 23:56:03,053 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-03-03 23:56:03,054 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-03-03 23:56:03,054 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-03-03 23:56:03,055 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-03-03 23:56:03,055 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-03-03 23:56:03,055 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-03-03 23:56:03,056 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-03-03 23:56:03,056 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-03-03 23:56:03,057 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-wrwc.epf [2022-03-03 23:56:03,083 INFO L113 SettingsManager]: Loading preferences was successful [2022-03-03 23:56:03,083 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-03-03 23:56:03,083 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-03-03 23:56:03,083 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-03-03 23:56:03,084 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-03-03 23:56:03,084 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-03-03 23:56:03,084 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-03-03 23:56:03,085 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-03-03 23:56:03,085 INFO L138 SettingsManager]: * Use SBE=true [2022-03-03 23:56:03,085 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-03-03 23:56:03,085 INFO L138 SettingsManager]: * sizeof long=4 [2022-03-03 23:56:03,086 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-03-03 23:56:03,086 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-03-03 23:56:03,086 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-03-03 23:56:03,086 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-03-03 23:56:03,086 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-03-03 23:56:03,086 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-03-03 23:56:03,086 INFO L138 SettingsManager]: * sizeof long double=12 [2022-03-03 23:56:03,086 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-03-03 23:56:03,086 INFO L138 SettingsManager]: * Use constant arrays=true [2022-03-03 23:56:03,087 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-03-03 23:56:03,087 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-03-03 23:56:03,087 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-03-03 23:56:03,087 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-03-03 23:56:03,088 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-03-03 23:56:03,088 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-03-03 23:56:03,088 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-03-03 23:56:03,088 INFO L138 SettingsManager]: * Construct finite automaton lazily=true [2022-03-03 23:56:03,088 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-03-03 23:56:03,089 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-03-03 23:56:03,089 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-03-03 23:56:03,089 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-03-03 23:56:03,089 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-03-03 23:56:03,089 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PARTIAL_ORDER_FA [2022-03-03 23:56:03,089 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-03-03 23:56:03,089 INFO L138 SettingsManager]: * Partial Order Reduction in concurrent analysis=MCR_WITH_DEPRANKS [2022-03-03 23:56:03,090 INFO L138 SettingsManager]: * MCR: Overapproximate write-read-write conflicts=false [2022-03-03 23:56:03,090 INFO L138 SettingsManager]: * MCR: Optimize fork and join=false [2022-03-03 23:56:03,090 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-03 23:56:03,285 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-03-03 23:56:03,299 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-03-03 23:56:03,300 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-03-03 23:56:03,301 INFO L271 PluginConnector]: Initializing CDTParser... [2022-03-03 23:56:03,301 INFO L275 PluginConnector]: CDTParser initialized [2022-03-03 23:56:03,302 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/goblint-regression/04-mutex_50-funptr_rc.i [2022-03-03 23:56:03,346 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6a949c5d0/81a77c52881449a9ac7c5fd2927712f9/FLAGc66153aaf [2022-03-03 23:56:03,833 INFO L306 CDTParser]: Found 1 translation units. [2022-03-03 23:56:03,833 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/goblint-regression/04-mutex_50-funptr_rc.i [2022-03-03 23:56:03,855 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6a949c5d0/81a77c52881449a9ac7c5fd2927712f9/FLAGc66153aaf [2022-03-03 23:56:03,871 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6a949c5d0/81a77c52881449a9ac7c5fd2927712f9 [2022-03-03 23:56:03,873 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-03-03 23:56:03,875 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-03-03 23:56:03,877 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-03-03 23:56:03,877 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-03-03 23:56:03,879 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-03-03 23:56:03,880 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 03.03 11:56:03" (1/1) ... [2022-03-03 23:56:03,881 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@82275b8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:03, skipping insertion in model container [2022-03-03 23:56:03,881 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 03.03 11:56:03" (1/1) ... [2022-03-03 23:56:03,886 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-03-03 23:56:03,924 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-03-03 23:56:04,325 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-03-03 23:56:04,336 INFO L203 MainTranslator]: Completed pre-run [2022-03-03 23:56:04,375 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-03-03 23:56:04,423 INFO L208 MainTranslator]: Completed translation [2022-03-03 23:56:04,423 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:04 WrapperNode [2022-03-03 23:56:04,424 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-03-03 23:56:04,424 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-03-03 23:56:04,424 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-03-03 23:56:04,425 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-03-03 23:56:04,430 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:04" (1/1) ... [2022-03-03 23:56:04,449 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:04" (1/1) ... [2022-03-03 23:56:04,468 INFO L137 Inliner]: procedures = 265, calls = 25, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 65 [2022-03-03 23:56:04,469 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-03-03 23:56:04,469 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-03-03 23:56:04,469 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-03-03 23:56:04,469 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-03-03 23:56:04,474 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:04" (1/1) ... [2022-03-03 23:56:04,474 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:04" (1/1) ... [2022-03-03 23:56:04,476 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:04" (1/1) ... [2022-03-03 23:56:04,476 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:04" (1/1) ... [2022-03-03 23:56:04,493 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:04" (1/1) ... [2022-03-03 23:56:04,495 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:04" (1/1) ... [2022-03-03 23:56:04,497 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:04" (1/1) ... [2022-03-03 23:56:04,498 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-03-03 23:56:04,500 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-03-03 23:56:04,500 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-03-03 23:56:04,500 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-03-03 23:56:04,501 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:04" (1/1) ... [2022-03-03 23:56:04,506 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-03-03 23:56:04,515 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-03-03 23:56:04,525 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-03 23:56:04,541 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-03 23:56:04,565 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-03-03 23:56:04,565 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-03-03 23:56:04,565 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-03-03 23:56:04,565 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-03-03 23:56:04,565 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2022-03-03 23:56:04,565 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-03-03 23:56:04,565 INFO L130 BoogieDeclarations]: Found specification of procedure t_fun [2022-03-03 23:56:04,565 INFO L138 BoogieDeclarations]: Found implementation of procedure t_fun [2022-03-03 23:56:04,565 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-03-03 23:56:04,565 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-03-03 23:56:04,566 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-03-03 23:56:04,566 WARN L208 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to SingleStatement [2022-03-03 23:56:04,660 INFO L234 CfgBuilder]: Building ICFG [2022-03-03 23:56:04,662 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-03-03 23:56:04,814 INFO L275 CfgBuilder]: Performing block encoding [2022-03-03 23:56:04,819 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-03-03 23:56:04,820 INFO L299 CfgBuilder]: Removed 0 assume(true) statements. [2022-03-03 23:56:04,821 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 03.03 11:56:04 BoogieIcfgContainer [2022-03-03 23:56:04,821 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-03-03 23:56:04,823 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-03-03 23:56:04,823 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-03-03 23:56:04,826 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-03-03 23:56:04,826 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 03.03 11:56:03" (1/3) ... [2022-03-03 23:56:04,826 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@e420fb5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 03.03 11:56:04, skipping insertion in model container [2022-03-03 23:56:04,826 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 03.03 11:56:04" (2/3) ... [2022-03-03 23:56:04,826 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@e420fb5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 03.03 11:56:04, skipping insertion in model container [2022-03-03 23:56:04,827 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 03.03 11:56:04" (3/3) ... [2022-03-03 23:56:04,827 INFO L111 eAbstractionObserver]: Analyzing ICFG 04-mutex_50-funptr_rc.i [2022-03-03 23:56:04,831 WARN L150 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2022-03-03 23:56:04,831 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-03-03 23:56:04,831 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 3 error locations. [2022-03-03 23:56:04,831 INFO L534 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2022-03-03 23:56:04,854 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,855 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,855 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,855 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,855 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,855 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#in~arg.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,855 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,855 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,856 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,856 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,856 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,856 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,856 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,856 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,857 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,857 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,857 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,857 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,857 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,857 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,857 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,858 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,858 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,858 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,858 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,858 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,860 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet31| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,861 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#t~nondet30| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,861 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.offset not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,861 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.base| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,861 WARN L322 ript$VariableManager]: TermVariabe t_funThread1of1ForFork0_~arg.base not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,861 WARN L322 ript$VariableManager]: TermVariabe |t_funThread1of1ForFork0_#res.offset| not constructed by VariableManager. Cannot ensure absence of name clashes. [2022-03-03 23:56:04,864 INFO L148 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2022-03-03 23:56:04,895 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:1000 [2022-03-03 23:56:04,895 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-03-03 23:56:04,897 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-03 23:56:04,900 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-03 23:56:04,918 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-03-03 23:56:04,922 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=false [2022-03-03 23:56:04,922 INFO L340 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2022-03-03 23:56:04,956 INFO L104 alCausalityReduction]: MaximalCausalityReduction evaluated 41 transitions and produced 42 states. [2022-03-03 23:56:04,958 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATION (and 2 more)] === [2022-03-03 23:56:04,962 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-03 23:56:04,962 INFO L85 PathProgramCache]: Analyzing trace with hash -2005149439, now seen corresponding path program 1 times [2022-03-03 23:56:04,968 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-03 23:56:04,969 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1776808645] [2022-03-03 23:56:04,969 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-03 23:56:04,969 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-03 23:56:05,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-03-03 23:56:05,177 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-03 23:56:05,178 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-03-03 23:56:05,178 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1776808645] [2022-03-03 23:56:05,179 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1776808645] provided 1 perfect and 0 imperfect interpolant sequences [2022-03-03 23:56:05,179 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-03-03 23:56:05,179 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-03-03 23:56:05,180 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1538425295] [2022-03-03 23:56:05,181 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-03-03 23:56:05,184 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-03-03 23:56:05,184 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-03-03 23:56:05,216 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-03-03 23:56:05,218 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-03-03 23:56:05,219 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-03-03 23:56:05,221 INFO L470 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2022-03-03 23:56:05,222 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 17.0) internal successors, (34), 3 states have internal predecessors, (34), 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-03 23:56:05,222 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2022-03-03 23:56:05,276 INFO L104 alCausalityReduction]: MaximalCausalityReduction evaluated 97 transitions and produced 98 states. [2022-03-03 23:56:05,277 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-03-03 23:56:05,277 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-03-03 23:56:05,278 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATION (and 2 more)] === [2022-03-03 23:56:05,280 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-03 23:56:05,281 INFO L85 PathProgramCache]: Analyzing trace with hash -916016930, now seen corresponding path program 1 times [2022-03-03 23:56:05,281 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-03 23:56:05,281 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [570967671] [2022-03-03 23:56:05,281 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-03 23:56:05,282 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-03 23:56:05,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-03-03 23:56:05,475 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-03 23:56:05,475 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-03-03 23:56:05,476 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [570967671] [2022-03-03 23:56:05,476 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [570967671] provided 1 perfect and 0 imperfect interpolant sequences [2022-03-03 23:56:05,476 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-03-03 23:56:05,476 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-03-03 23:56:05,476 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1627791080] [2022-03-03 23:56:05,477 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-03-03 23:56:05,478 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-03-03 23:56:05,478 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-03-03 23:56:05,478 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-03-03 23:56:05,479 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-03-03 23:56:05,479 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-03-03 23:56:05,479 INFO L470 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2022-03-03 23:56:05,479 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 15.25) internal successors, (61), 4 states have internal predecessors, (61), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-03-03 23:56:05,479 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2022-03-03 23:56:05,479 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2022-03-03 23:56:05,505 INFO L104 alCausalityReduction]: MaximalCausalityReduction evaluated 97 transitions and produced 98 states. [2022-03-03 23:56:05,505 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-03-03 23:56:05,506 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-03-03 23:56:05,506 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-03-03 23:56:05,506 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATION (and 2 more)] === [2022-03-03 23:56:05,507 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-03 23:56:05,507 INFO L85 PathProgramCache]: Analyzing trace with hash -1419369447, now seen corresponding path program 1 times [2022-03-03 23:56:05,507 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-03 23:56:05,507 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [906206360] [2022-03-03 23:56:05,507 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-03 23:56:05,508 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-03 23:56:05,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-03-03 23:56:05,681 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-03 23:56:05,682 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-03-03 23:56:05,682 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [906206360] [2022-03-03 23:56:05,683 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [906206360] provided 1 perfect and 0 imperfect interpolant sequences [2022-03-03 23:56:05,683 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-03-03 23:56:05,683 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-03-03 23:56:05,683 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2036713357] [2022-03-03 23:56:05,683 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-03-03 23:56:05,684 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-03-03 23:56:05,684 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-03-03 23:56:05,685 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-03-03 23:56:05,685 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2022-03-03 23:56:05,686 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-03-03 23:56:05,686 INFO L470 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2022-03-03 23:56:05,686 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 12.2) internal successors, (61), 6 states have internal predecessors, (61), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-03-03 23:56:05,686 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2022-03-03 23:56:05,687 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 4 states. [2022-03-03 23:56:05,687 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2022-03-03 23:56:05,744 INFO L104 alCausalityReduction]: MaximalCausalityReduction evaluated 104 transitions and produced 105 states. [2022-03-03 23:56:05,744 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-03-03 23:56:05,745 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-03-03 23:56:05,745 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-03-03 23:56:05,745 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-03-03 23:56:05,746 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting t_funErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATION (and 2 more)] === [2022-03-03 23:56:05,746 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-03 23:56:05,747 INFO L85 PathProgramCache]: Analyzing trace with hash -680823768, now seen corresponding path program 1 times [2022-03-03 23:56:05,747 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-03 23:56:05,747 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1105175367] [2022-03-03 23:56:05,747 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-03 23:56:05,747 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-03 23:56:05,793 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-03-03 23:56:05,837 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-03 23:56:05,837 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-03-03 23:56:05,838 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1105175367] [2022-03-03 23:56:05,841 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1105175367] provided 1 perfect and 0 imperfect interpolant sequences [2022-03-03 23:56:05,841 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-03-03 23:56:05,841 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-03-03 23:56:05,841 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [194470549] [2022-03-03 23:56:05,842 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-03-03 23:56:05,842 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-03-03 23:56:05,842 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-03-03 23:56:05,843 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-03-03 23:56:05,844 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-03-03 23:56:05,844 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-03-03 23:56:05,844 INFO L470 AbstractCegarLoop]: Abstraction has currently 0 states, but on-demand construction may add more states [2022-03-03 23:56:05,844 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 34.0) internal successors, (68), 3 states have internal predecessors, (68), 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-03 23:56:05,844 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 3 states. [2022-03-03 23:56:05,844 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 5 states. [2022-03-03 23:56:05,845 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 6 states. [2022-03-03 23:56:05,845 INFO L154 InterpolantAutomaton]: Switched to On-DemandConstruction mode: deterministic interpolant automaton has 2 states. [2022-03-03 23:56:06,084 INFO L104 alCausalityReduction]: MaximalCausalityReduction evaluated 1726 transitions and produced 974 states. [2022-03-03 23:56:06,085 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-03-03 23:56:06,085 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-03-03 23:56:06,085 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-03-03 23:56:06,085 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-03-03 23:56:06,086 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-03-03 23:56:06,086 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATION (and 2 more)] === [2022-03-03 23:56:06,088 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-03-03 23:56:06,088 INFO L85 PathProgramCache]: Analyzing trace with hash -1945059970, now seen corresponding path program 1 times [2022-03-03 23:56:06,088 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-03-03 23:56:06,088 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [8957095] [2022-03-03 23:56:06,088 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-03-03 23:56:06,089 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-03-03 23:56:06,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-03-03 23:56:06,120 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-03-03 23:56:06,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-03-03 23:56:06,151 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-03-03 23:56:06,151 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-03-03 23:56:06,152 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE (4 of 5 remaining) [2022-03-03 23:56:06,154 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE (3 of 5 remaining) [2022-03-03 23:56:06,154 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATION (2 of 5 remaining) [2022-03-03 23:56:06,154 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr0ASSERT_VIOLATIONDATA_RACE (1 of 5 remaining) [2022-03-03 23:56:06,154 INFO L764 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr0ASSERT_VIOLATIONDATA_RACE (0 of 5 remaining) [2022-03-03 23:56:06,154 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-03-03 23:56:06,160 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1] [2022-03-03 23:56:06,164 INFO L230 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2022-03-03 23:56:06,164 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-03-03 23:56:06,186 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 03.03 11:56:06 BasicIcfg [2022-03-03 23:56:06,186 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-03-03 23:56:06,187 INFO L158 Benchmark]: Toolchain (without parser) took 2311.93ms. Allocated memory was 240.1MB in the beginning and 348.1MB in the end (delta: 108.0MB). Free memory was 209.7MB in the beginning and 260.0MB in the end (delta: -50.3MB). Peak memory consumption was 57.8MB. Max. memory is 8.0GB. [2022-03-03 23:56:06,187 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 240.1MB. Free memory is still 200.7MB. There was no memory consumed. Max. memory is 8.0GB. [2022-03-03 23:56:06,188 INFO L158 Benchmark]: CACSL2BoogieTranslator took 546.74ms. Allocated memory is still 240.1MB. Free memory was 209.2MB in the beginning and 192.7MB in the end (delta: 16.5MB). Peak memory consumption was 16.8MB. Max. memory is 8.0GB. [2022-03-03 23:56:06,188 INFO L158 Benchmark]: Boogie Procedure Inliner took 44.22ms. Allocated memory is still 240.1MB. Free memory was 192.7MB in the beginning and 190.6MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-03-03 23:56:06,188 INFO L158 Benchmark]: Boogie Preprocessor took 29.69ms. Allocated memory is still 240.1MB. Free memory was 190.6MB in the beginning and 189.0MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-03-03 23:56:06,188 INFO L158 Benchmark]: RCFGBuilder took 321.87ms. Allocated memory is still 240.1MB. Free memory was 189.0MB in the beginning and 175.9MB in the end (delta: 13.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-03-03 23:56:06,189 INFO L158 Benchmark]: TraceAbstraction took 1363.69ms. Allocated memory was 240.1MB in the beginning and 348.1MB in the end (delta: 108.0MB). Free memory was 175.4MB in the beginning and 260.0MB in the end (delta: -84.6MB). Peak memory consumption was 24.5MB. Max. memory is 8.0GB. [2022-03-03 23:56:06,190 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.10ms. Allocated memory is still 240.1MB. Free memory is still 200.7MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 546.74ms. Allocated memory is still 240.1MB. Free memory was 209.2MB in the beginning and 192.7MB in the end (delta: 16.5MB). Peak memory consumption was 16.8MB. Max. memory is 8.0GB. * Boogie Procedure Inliner took 44.22ms. Allocated memory is still 240.1MB. Free memory was 192.7MB in the beginning and 190.6MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 29.69ms. Allocated memory is still 240.1MB. Free memory was 190.6MB in the beginning and 189.0MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 321.87ms. Allocated memory is still 240.1MB. Free memory was 189.0MB in the beginning and 175.9MB in the end (delta: 13.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 1363.69ms. Allocated memory was 240.1MB in the beginning and 348.1MB in the end (delta: 108.0MB). Free memory was 175.4MB in the beginning and 260.0MB in the end (delta: -84.6MB). Peak memory consumption was 24.5MB. 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: 932]: Data race detected Data race detected The following path leads to a data race: [L919] 0 int (*fp)() = f1; VAL [={-1:0}] [L920] 0 pthread_mutex_t mutex1 = { { 0, 0, 0, 0, 0, { { 0, 0 } } } }; VAL [={-1:0}, mutex1={1:0}] [L921] 0 pthread_mutex_t mutex2 = { { 0, 0, 0, 0, 0, { { 0, 0 } } } }; VAL [={-1:0}, mutex1={1:0}, mutex2={2:0}] [L929] 0 pthread_t id; VAL [={-1:0}, id={3:0}, mutex1={1:0}, mutex2={2:0}] [L930] FCALL, FORK 0 pthread_create(&id, ((void *)0), t_fun, ((void *)0)) VAL [={-1:0}, arg={0:0}, id={3:0}, mutex1={1:0}, mutex2={2:0}, pthread_create(&id, ((void *)0), t_fun, ((void *)0))=-1] [L924] 1 fp = f2 VAL [={-1:1}, arg={0:0}, arg={0:0}, fp = f2=25, mutex1={1:0}, mutex2={2:0}] [L932] 0 fp() VAL [={-1:1}, arg={0:0}, arg={0:0}, fp = f2=25, id={3:0}, mutex1={1:0}, mutex2={2:0}] Now there is a data race on ~fp~0 between C: fp = f2 [924] and C: fp() [932] - 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: 930]: 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: 924]: 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, 106 locations, 5 error locations. Started 1 CEGAR loops. OverallTime: 1.3s, OverallIterations: 5, TraceHistogramMax: 0, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.4s, HoareTripleCheckerStatistics: , PredicateUnifierStatistics: No data available, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=0occurred in iteration=0, InterpolantAutomatonStates: 17, 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.4s InterpolantComputationTime, 264 NumberOfCodeBlocks, 264 NumberOfCodeBlocksAsserted, 5 NumberOfCheckSat, 220 ConstructedInterpolants, 0 QuantifiedInterpolants, 373 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 4 InterpolantComputations, 4 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-03 23:56:06,234 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-03 23:56:06,452 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...