./Ultimate.py --spec ../../sv-benchmarks/c/properties/no-data-race.prp --file ../../sv-benchmarks/c/goblint-regression/04-mutex_14-funarg_rc.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for data races Using default analysis Version 6b4ec56b Calling Ultimate with: /usr/lib/jvm/java-11-openjdk-amd64/bin/java -Dosgi.configuration.area=/tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/data/config -Xmx15G -Xms4m -jar /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/data -tc /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/config/AutomizerReach.xml -i ../../sv-benchmarks/c/goblint-regression/04-mutex_14-funarg_rc.i -s /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/config/svcomp-DataRace-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! data-race) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash f642c67113760bee92d5df6113328ab6bc786120281f498909848eae502de3ab --- Real Ultimate output --- [0.001s][warning][os,container] Duplicate cpuset controllers detected. Picking /sys/fs/cgroup/cpuset, skipping /sys/fs/cgroup/cpuset. This is Ultimate 0.2.2-dev-6b4ec56 [2022-11-20 09:32:28,767 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-11-20 09:32:28,770 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-11-20 09:32:28,805 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-11-20 09:32:28,806 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-11-20 09:32:28,810 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-11-20 09:32:28,813 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-11-20 09:32:28,816 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-11-20 09:32:28,819 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-11-20 09:32:28,824 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-11-20 09:32:28,826 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-11-20 09:32:28,827 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-11-20 09:32:28,828 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-11-20 09:32:28,831 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-11-20 09:32:28,832 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-11-20 09:32:28,836 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-11-20 09:32:28,837 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-11-20 09:32:28,839 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-11-20 09:32:28,840 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-11-20 09:32:28,846 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-11-20 09:32:28,849 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-11-20 09:32:28,851 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-11-20 09:32:28,852 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-11-20 09:32:28,853 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-11-20 09:32:28,862 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-11-20 09:32:28,863 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-11-20 09:32:28,863 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-11-20 09:32:28,865 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-11-20 09:32:28,866 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-11-20 09:32:28,867 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-11-20 09:32:28,867 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-11-20 09:32:28,868 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-11-20 09:32:28,871 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-11-20 09:32:28,872 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-11-20 09:32:28,874 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-11-20 09:32:28,874 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-11-20 09:32:28,875 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-11-20 09:32:28,875 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-11-20 09:32:28,875 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-11-20 09:32:28,877 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-11-20 09:32:28,878 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-11-20 09:32:28,879 INFO L101 SettingsManager]: Beginning loading settings from /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/config/svcomp-DataRace-32bit-Automizer_Default.epf [2022-11-20 09:32:28,928 INFO L113 SettingsManager]: Loading preferences was successful [2022-11-20 09:32:28,928 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-11-20 09:32:28,929 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-11-20 09:32:28,929 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-11-20 09:32:28,930 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-11-20 09:32:28,930 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-11-20 09:32:28,931 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-11-20 09:32:28,931 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-11-20 09:32:28,931 INFO L138 SettingsManager]: * Use SBE=true [2022-11-20 09:32:28,931 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-11-20 09:32:28,933 INFO L138 SettingsManager]: * sizeof long=4 [2022-11-20 09:32:28,933 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-11-20 09:32:28,933 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-11-20 09:32:28,933 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-11-20 09:32:28,933 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-11-20 09:32:28,934 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-11-20 09:32:28,934 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-11-20 09:32:28,934 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-11-20 09:32:28,934 INFO L138 SettingsManager]: * Check absence of data races in concurrent programs=true [2022-11-20 09:32:28,934 INFO L138 SettingsManager]: * sizeof long double=12 [2022-11-20 09:32:28,935 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-11-20 09:32:28,935 INFO L138 SettingsManager]: * Use constant arrays=true [2022-11-20 09:32:28,935 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-11-20 09:32:28,935 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-11-20 09:32:28,935 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-11-20 09:32:28,936 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-11-20 09:32:28,936 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-11-20 09:32:28,936 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-11-20 09:32:28,937 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-11-20 09:32:28,937 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-11-20 09:32:28,937 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-11-20 09:32:28,938 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-11-20 09:32:28,938 INFO L138 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2022-11-20 09:32:28,938 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-11-20 09:32:28,938 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-11-20 09:32:28,938 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:/tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! data-race) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> f642c67113760bee92d5df6113328ab6bc786120281f498909848eae502de3ab [2022-11-20 09:32:29,259 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-11-20 09:32:29,289 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-11-20 09:32:29,292 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-11-20 09:32:29,294 INFO L271 PluginConnector]: Initializing CDTParser... [2022-11-20 09:32:29,295 INFO L275 PluginConnector]: CDTParser initialized [2022-11-20 09:32:29,296 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/../../sv-benchmarks/c/goblint-regression/04-mutex_14-funarg_rc.i [2022-11-20 09:32:32,413 INFO L500 CDTParser]: Created temporary CDT project at NULL [2022-11-20 09:32:32,757 INFO L351 CDTParser]: Found 1 translation units. [2022-11-20 09:32:32,758 INFO L172 CDTParser]: Scanning /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/sv-benchmarks/c/goblint-regression/04-mutex_14-funarg_rc.i [2022-11-20 09:32:32,777 INFO L394 CDTParser]: About to delete temporary CDT project at /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/data/8866d9d74/bc62ac28bb7b4784a1239a212e2ed06a/FLAG05b15cb4b [2022-11-20 09:32:32,792 INFO L402 CDTParser]: Successfully deleted /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/data/8866d9d74/bc62ac28bb7b4784a1239a212e2ed06a [2022-11-20 09:32:32,795 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-11-20 09:32:32,796 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-11-20 09:32:32,798 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-11-20 09:32:32,798 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-11-20 09:32:32,804 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-11-20 09:32:32,805 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.11 09:32:32" (1/1) ... [2022-11-20 09:32:32,807 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5945b3c6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:32, skipping insertion in model container [2022-11-20 09:32:32,807 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.11 09:32:32" (1/1) ... [2022-11-20 09:32:32,815 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-11-20 09:32:32,859 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-11-20 09:32:33,403 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-11-20 09:32:33,426 INFO L203 MainTranslator]: Completed pre-run [2022-11-20 09:32:33,491 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-11-20 09:32:33,584 INFO L208 MainTranslator]: Completed translation [2022-11-20 09:32:33,586 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33 WrapperNode [2022-11-20 09:32:33,586 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-11-20 09:32:33,587 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-11-20 09:32:33,587 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-11-20 09:32:33,588 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-11-20 09:32:33,596 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33" (1/1) ... [2022-11-20 09:32:33,632 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33" (1/1) ... [2022-11-20 09:32:33,664 INFO L138 Inliner]: procedures = 263, calls = 30, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 65 [2022-11-20 09:32:33,665 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-11-20 09:32:33,666 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-11-20 09:32:33,666 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-11-20 09:32:33,666 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-11-20 09:32:33,680 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33" (1/1) ... [2022-11-20 09:32:33,680 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33" (1/1) ... [2022-11-20 09:32:33,684 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33" (1/1) ... [2022-11-20 09:32:33,684 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33" (1/1) ... [2022-11-20 09:32:33,691 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33" (1/1) ... [2022-11-20 09:32:33,692 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33" (1/1) ... [2022-11-20 09:32:33,694 INFO L185 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33" (1/1) ... [2022-11-20 09:32:33,695 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33" (1/1) ... [2022-11-20 09:32:33,698 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-11-20 09:32:33,699 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-11-20 09:32:33,699 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-11-20 09:32:33,699 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-11-20 09:32:33,700 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33" (1/1) ... [2022-11-20 09:32:33,718 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-11-20 09:32:33,731 INFO L189 MonitoredProcess]: No working directory specified, using /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/z3 [2022-11-20 09:32:33,744 INFO L229 MonitoredProcess]: Starting monitored process 1 with /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-11-20 09:32:33,752 INFO L327 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-11-20 09:32:33,799 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-11-20 09:32:33,799 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-11-20 09:32:33,799 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-11-20 09:32:33,800 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-11-20 09:32:33,800 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2022-11-20 09:32:33,800 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-11-20 09:32:33,800 INFO L130 BoogieDeclarations]: Found specification of procedure t_fun [2022-11-20 09:32:33,800 INFO L138 BoogieDeclarations]: Found implementation of procedure t_fun [2022-11-20 09:32:33,801 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-11-20 09:32:33,801 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-11-20 09:32:33,801 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-11-20 09:32:33,803 WARN L209 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to SingleStatement [2022-11-20 09:32:33,934 INFO L235 CfgBuilder]: Building ICFG [2022-11-20 09:32:33,936 INFO L261 CfgBuilder]: Building CFG for each procedure with an implementation [2022-11-20 09:32:34,124 INFO L276 CfgBuilder]: Performing block encoding [2022-11-20 09:32:34,132 INFO L295 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-11-20 09:32:34,133 INFO L300 CfgBuilder]: Removed 0 assume(true) statements. [2022-11-20 09:32:34,135 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.11 09:32:34 BoogieIcfgContainer [2022-11-20 09:32:34,135 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-11-20 09:32:34,138 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-11-20 09:32:34,139 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-11-20 09:32:34,142 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-11-20 09:32:34,143 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.11 09:32:32" (1/3) ... [2022-11-20 09:32:34,143 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7b3f14fa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.11 09:32:34, skipping insertion in model container [2022-11-20 09:32:34,144 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.11 09:32:33" (2/3) ... [2022-11-20 09:32:34,144 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7b3f14fa and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.11 09:32:34, skipping insertion in model container [2022-11-20 09:32:34,144 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.11 09:32:34" (3/3) ... [2022-11-20 09:32:34,146 INFO L112 eAbstractionObserver]: Analyzing ICFG 04-mutex_14-funarg_rc.i [2022-11-20 09:32:34,156 WARN L145 ceAbstractionStarter]: Switching off computation of Hoare annotation because input is a concurrent program [2022-11-20 09:32:34,168 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-11-20 09:32:34,168 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 5 error locations. [2022-11-20 09:32:34,169 INFO L515 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2022-11-20 09:32:34,237 INFO L144 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2022-11-20 09:32:34,280 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 95 places, 91 transitions, 190 flow [2022-11-20 09:32:34,389 INFO L130 PetriNetUnfolder]: 0/90 cut-off events. [2022-11-20 09:32:34,401 INFO L131 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-11-20 09:32:34,406 INFO L83 FinitePrefix]: Finished finitePrefix Result has 95 conditions, 90 events. 0/90 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 3. Compared 39 event pairs, 0 based on Foata normal form. 0/85 useless extension candidates. Maximal degree in co-relation 0. Up to 2 conditions per place. [2022-11-20 09:32:34,406 INFO L82 GeneralOperation]: Start removeDead. Operand has 95 places, 91 transitions, 190 flow [2022-11-20 09:32:34,412 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 86 places, 82 transitions, 167 flow [2022-11-20 09:32:34,425 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-11-20 09:32:34,433 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@298e5e39, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2022-11-20 09:32:34,433 INFO L358 AbstractCegarLoop]: Starting to check reachability of 8 error locations. [2022-11-20 09:32:34,452 INFO L130 PetriNetUnfolder]: 0/43 cut-off events. [2022-11-20 09:32:34,452 INFO L131 PetriNetUnfolder]: For 0/0 co-relation queries the response was YES. [2022-11-20 09:32:34,452 INFO L201 CegarLoopForPetriNet]: Found error trace [2022-11-20 09:32:34,453 INFO L209 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-11-20 09:32:34,454 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting t_funErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (and 5 more)] === [2022-11-20 09:32:34,460 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-11-20 09:32:34,460 INFO L85 PathProgramCache]: Analyzing trace with hash -717373355, now seen corresponding path program 1 times [2022-11-20 09:32:34,472 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-11-20 09:32:34,472 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [196790964] [2022-11-20 09:32:34,473 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-11-20 09:32:34,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-11-20 09:32:34,682 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-11-20 09:32:34,931 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-11-20 09:32:34,932 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-11-20 09:32:34,932 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [196790964] [2022-11-20 09:32:34,933 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [196790964] provided 1 perfect and 0 imperfect interpolant sequences [2022-11-20 09:32:34,933 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-11-20 09:32:34,933 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-11-20 09:32:34,935 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1951939650] [2022-11-20 09:32:34,936 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-11-20 09:32:34,945 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-11-20 09:32:34,945 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-11-20 09:32:34,998 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-11-20 09:32:35,000 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-11-20 09:32:35,003 INFO L478 CegarLoopForPetriNet]: Number of universal loopers: 77 out of 91 [2022-11-20 09:32:35,007 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 86 places, 82 transitions, 167 flow. Second operand has 3 states, 3 states have (on average 78.0) internal successors, (234), 3 states have internal predecessors, (234), 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-11-20 09:32:35,007 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-11-20 09:32:35,007 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 77 of 91 [2022-11-20 09:32:35,008 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-11-20 09:32:35,207 INFO L130 PetriNetUnfolder]: 29/269 cut-off events. [2022-11-20 09:32:35,208 INFO L131 PetriNetUnfolder]: For 1/1 co-relation queries the response was YES. [2022-11-20 09:32:35,210 INFO L83 FinitePrefix]: Finished finitePrefix Result has 351 conditions, 269 events. 29/269 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 15. Compared 1043 event pairs, 8 based on Foata normal form. 0/245 useless extension candidates. Maximal degree in co-relation 310. Up to 51 conditions per place. [2022-11-20 09:32:35,213 INFO L137 encePairwiseOnDemand]: 82/91 looper letters, 13 selfloop transitions, 6 changer transitions 0/88 dead transitions. [2022-11-20 09:32:35,213 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 87 places, 88 transitions, 217 flow [2022-11-20 09:32:35,214 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-11-20 09:32:35,217 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-11-20 09:32:35,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 253 transitions. [2022-11-20 09:32:35,228 INFO L523 CegarLoopForPetriNet]: DFA transition density 0.9267399267399268 [2022-11-20 09:32:35,229 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 253 transitions. [2022-11-20 09:32:35,230 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 253 transitions. [2022-11-20 09:32:35,231 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-11-20 09:32:35,234 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 253 transitions. [2022-11-20 09:32:35,238 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 84.33333333333333) internal successors, (253), 3 states have internal predecessors, (253), 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-11-20 09:32:35,243 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 91.0) internal successors, (364), 4 states have internal predecessors, (364), 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-11-20 09:32:35,243 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 91.0) internal successors, (364), 4 states have internal predecessors, (364), 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-11-20 09:32:35,245 INFO L175 Difference]: Start difference. First operand has 86 places, 82 transitions, 167 flow. Second operand 3 states and 253 transitions. [2022-11-20 09:32:35,247 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 87 places, 88 transitions, 217 flow [2022-11-20 09:32:35,250 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 86 places, 88 transitions, 216 flow, removed 0 selfloop flow, removed 1 redundant places. [2022-11-20 09:32:35,253 INFO L231 Difference]: Finished difference. Result has 88 places, 86 transitions, 212 flow [2022-11-20 09:32:35,256 INFO L271 CegarLoopForPetriNet]: {PETRI_ALPHABET=91, PETRI_DIFFERENCE_MINUEND_FLOW=164, PETRI_DIFFERENCE_MINUEND_PLACES=84, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=81, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=75, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=212, PETRI_PLACES=88, PETRI_TRANSITIONS=86} [2022-11-20 09:32:35,260 INFO L288 CegarLoopForPetriNet]: 86 programPoint places, 2 predicate places. [2022-11-20 09:32:35,260 INFO L495 AbstractCegarLoop]: Abstraction has has 88 places, 86 transitions, 212 flow [2022-11-20 09:32:35,261 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 78.0) internal successors, (234), 3 states have internal predecessors, (234), 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-11-20 09:32:35,261 INFO L201 CegarLoopForPetriNet]: Found error trace [2022-11-20 09:32:35,261 INFO L209 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-11-20 09:32:35,261 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-11-20 09:32:35,262 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting t_funErr1ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (and 5 more)] === [2022-11-20 09:32:35,262 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-11-20 09:32:35,263 INFO L85 PathProgramCache]: Analyzing trace with hash -2056097640, now seen corresponding path program 1 times [2022-11-20 09:32:35,263 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-11-20 09:32:35,263 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1421973989] [2022-11-20 09:32:35,264 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-11-20 09:32:35,264 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-11-20 09:32:35,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-11-20 09:32:35,361 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-11-20 09:32:35,361 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-11-20 09:32:35,361 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1421973989] [2022-11-20 09:32:35,362 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1421973989] provided 1 perfect and 0 imperfect interpolant sequences [2022-11-20 09:32:35,362 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-11-20 09:32:35,362 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-11-20 09:32:35,363 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1418072463] [2022-11-20 09:32:35,363 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-11-20 09:32:35,364 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-11-20 09:32:35,364 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-11-20 09:32:35,365 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-11-20 09:32:35,365 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-11-20 09:32:35,366 INFO L478 CegarLoopForPetriNet]: Number of universal loopers: 75 out of 91 [2022-11-20 09:32:35,367 INFO L100 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 88 places, 86 transitions, 212 flow. Second operand has 3 states, 3 states have (on average 77.0) internal successors, (231), 3 states have internal predecessors, (231), 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-11-20 09:32:35,367 INFO L109 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2022-11-20 09:32:35,367 INFO L110 encePairwiseOnDemand]: Number of universal subtrahend loopers: 75 of 91 [2022-11-20 09:32:35,368 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2022-11-20 09:32:35,488 INFO L130 PetriNetUnfolder]: 40/357 cut-off events. [2022-11-20 09:32:35,489 INFO L131 PetriNetUnfolder]: For 61/66 co-relation queries the response was YES. [2022-11-20 09:32:35,491 INFO L83 FinitePrefix]: Finished finitePrefix Result has 545 conditions, 357 events. 40/357 cut-off events. For 61/66 co-relation queries the response was YES. Maximal size of possible extension queue 19. Compared 1676 event pairs, 14 based on Foata normal form. 2/344 useless extension candidates. Maximal degree in co-relation 503. Up to 76 conditions per place. [2022-11-20 09:32:35,493 INFO L137 encePairwiseOnDemand]: 85/91 looper letters, 24 selfloop transitions, 6 changer transitions 0/97 dead transitions. [2022-11-20 09:32:35,493 INFO L142 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 90 places, 97 transitions, 320 flow [2022-11-20 09:32:35,494 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-11-20 09:32:35,494 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2022-11-20 09:32:35,495 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 248 transitions. [2022-11-20 09:32:35,496 INFO L523 CegarLoopForPetriNet]: DFA transition density 0.9084249084249084 [2022-11-20 09:32:35,496 INFO L72 ComplementDD]: Start complementDD. Operand 3 states and 248 transitions. [2022-11-20 09:32:35,497 INFO L73 IsDeterministic]: Start isDeterministic. Operand 3 states and 248 transitions. [2022-11-20 09:32:35,497 INFO L80 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2022-11-20 09:32:35,497 INFO L117 ReachableStatesCopy]: Start reachableStatesCopy. Operand 3 states and 248 transitions. [2022-11-20 09:32:35,499 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 4 states, 3 states have (on average 82.66666666666667) internal successors, (248), 3 states have internal predecessors, (248), 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-11-20 09:32:35,500 INFO L131 ReachableStatesCopy]: Finished reachableStatesCopy Result has 4 states, 4 states have (on average 91.0) internal successors, (364), 4 states have internal predecessors, (364), 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-11-20 09:32:35,501 INFO L81 ComplementDD]: Finished complementDD. Result has 4 states, 4 states have (on average 91.0) internal successors, (364), 4 states have internal predecessors, (364), 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-11-20 09:32:35,501 INFO L175 Difference]: Start difference. First operand has 88 places, 86 transitions, 212 flow. Second operand 3 states and 248 transitions. [2022-11-20 09:32:35,501 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 90 places, 97 transitions, 320 flow [2022-11-20 09:32:35,504 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 88 places, 97 transitions, 300 flow, removed 0 selfloop flow, removed 2 redundant places. [2022-11-20 09:32:35,507 INFO L231 Difference]: Finished difference. Result has 90 places, 91 transitions, 252 flow [2022-11-20 09:32:35,507 INFO L271 CegarLoopForPetriNet]: {PETRI_ALPHABET=91, PETRI_DIFFERENCE_MINUEND_FLOW=200, PETRI_DIFFERENCE_MINUEND_PLACES=86, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=86, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=80, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=252, PETRI_PLACES=90, PETRI_TRANSITIONS=91} [2022-11-20 09:32:35,508 INFO L288 CegarLoopForPetriNet]: 86 programPoint places, 4 predicate places. [2022-11-20 09:32:35,508 INFO L495 AbstractCegarLoop]: Abstraction has has 90 places, 91 transitions, 252 flow [2022-11-20 09:32:35,509 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 77.0) internal successors, (231), 3 states have internal predecessors, (231), 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-11-20 09:32:35,509 INFO L201 CegarLoopForPetriNet]: Found error trace [2022-11-20 09:32:35,509 INFO L209 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-11-20 09:32:35,510 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-11-20 09:32:35,510 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (and 5 more)] === [2022-11-20 09:32:35,511 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-11-20 09:32:35,511 INFO L85 PathProgramCache]: Analyzing trace with hash -854580714, now seen corresponding path program 1 times [2022-11-20 09:32:35,511 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-11-20 09:32:35,511 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1765660625] [2022-11-20 09:32:35,512 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-11-20 09:32:35,512 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-11-20 09:32:35,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-11-20 09:32:35,559 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-11-20 09:32:35,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-11-20 09:32:35,651 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-11-20 09:32:35,652 INFO L359 BasicCegarLoop]: Counterexample is feasible [2022-11-20 09:32:35,653 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE (7 of 8 remaining) [2022-11-20 09:32:35,656 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE (6 of 8 remaining) [2022-11-20 09:32:35,657 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2ASSERT_VIOLATIONDATA_RACE (5 of 8 remaining) [2022-11-20 09:32:35,659 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (4 of 8 remaining) [2022-11-20 09:32:35,659 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr0ASSERT_VIOLATIONDATA_RACE (3 of 8 remaining) [2022-11-20 09:32:35,660 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr1ASSERT_VIOLATIONDATA_RACE (2 of 8 remaining) [2022-11-20 09:32:35,660 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr0ASSERT_VIOLATIONDATA_RACE (1 of 8 remaining) [2022-11-20 09:32:35,660 INFO L805 garLoopResultBuilder]: Registering result UNKNOWN for location t_funErr1ASSERT_VIOLATIONDATA_RACE (0 of 8 remaining) [2022-11-20 09:32:35,661 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-11-20 09:32:35,661 INFO L444 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-11-20 09:32:35,673 INFO L228 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2022-11-20 09:32:35,673 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-11-20 09:32:35,733 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 20.11 09:32:35 BasicIcfg [2022-11-20 09:32:35,733 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-11-20 09:32:35,734 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2022-11-20 09:32:35,734 INFO L271 PluginConnector]: Initializing Witness Printer... [2022-11-20 09:32:35,734 INFO L275 PluginConnector]: Witness Printer initialized [2022-11-20 09:32:35,735 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.11 09:32:34" (3/4) ... [2022-11-20 09:32:35,738 INFO L140 WitnessPrinter]: No result that supports witness generation found [2022-11-20 09:32:35,738 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2022-11-20 09:32:35,739 INFO L158 Benchmark]: Toolchain (without parser) took 2942.91ms. Allocated memory was 163.6MB in the beginning and 218.1MB in the end (delta: 54.5MB). Free memory was 128.9MB in the beginning and 130.6MB in the end (delta: -1.6MB). Peak memory consumption was 53.8MB. Max. memory is 16.1GB. [2022-11-20 09:32:35,740 INFO L158 Benchmark]: CDTParser took 0.28ms. Allocated memory is still 163.6MB. Free memory is still 109.5MB. There was no memory consumed. Max. memory is 16.1GB. [2022-11-20 09:32:35,741 INFO L158 Benchmark]: CACSL2BoogieTranslator took 788.43ms. Allocated memory is still 163.6MB. Free memory was 128.2MB in the beginning and 101.1MB in the end (delta: 27.1MB). Peak memory consumption was 27.3MB. Max. memory is 16.1GB. [2022-11-20 09:32:35,741 INFO L158 Benchmark]: Boogie Procedure Inliner took 77.82ms. Allocated memory is still 163.6MB. Free memory was 101.1MB in the beginning and 98.4MB in the end (delta: 2.7MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-11-20 09:32:35,742 INFO L158 Benchmark]: Boogie Preprocessor took 32.68ms. Allocated memory is still 163.6MB. Free memory was 98.4MB in the beginning and 96.9MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-11-20 09:32:35,742 INFO L158 Benchmark]: RCFGBuilder took 436.47ms. Allocated memory is still 163.6MB. Free memory was 96.9MB in the beginning and 82.7MB in the end (delta: 14.2MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. [2022-11-20 09:32:35,743 INFO L158 Benchmark]: TraceAbstraction took 1595.02ms. Allocated memory was 163.6MB in the beginning and 218.1MB in the end (delta: 54.5MB). Free memory was 82.0MB in the beginning and 130.6MB in the end (delta: -48.6MB). Peak memory consumption was 7.7MB. Max. memory is 16.1GB. [2022-11-20 09:32:35,744 INFO L158 Benchmark]: Witness Printer took 4.66ms. Allocated memory is still 218.1MB. Free memory is still 130.6MB. There was no memory consumed. Max. memory is 16.1GB. [2022-11-20 09:32:35,747 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.28ms. Allocated memory is still 163.6MB. Free memory is still 109.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 788.43ms. Allocated memory is still 163.6MB. Free memory was 128.2MB in the beginning and 101.1MB in the end (delta: 27.1MB). Peak memory consumption was 27.3MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 77.82ms. Allocated memory is still 163.6MB. Free memory was 101.1MB in the beginning and 98.4MB in the end (delta: 2.7MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 32.68ms. Allocated memory is still 163.6MB. Free memory was 98.4MB in the beginning and 96.9MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * RCFGBuilder took 436.47ms. Allocated memory is still 163.6MB. Free memory was 96.9MB in the beginning and 82.7MB in the end (delta: 14.2MB). Peak memory consumption was 14.7MB. Max. memory is 16.1GB. * TraceAbstraction took 1595.02ms. Allocated memory was 163.6MB in the beginning and 218.1MB in the end (delta: 54.5MB). Free memory was 82.0MB in the beginning and 130.6MB in the end (delta: -48.6MB). Peak memory consumption was 7.7MB. Max. memory is 16.1GB. * Witness Printer took 4.66ms. Allocated memory is still 218.1MB. Free memory is still 130.6MB. There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - DataRaceFoundResult [Line: 934]: 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={1:0}, myglobal=0] [L919] 0 pthread_mutex_t mutex2 = { { 0, 0, 0, 0, 0, { { 0, 0 } } } }; VAL [mutex1={1:0}, mutex2={2:0}, myglobal=0] [L920] 0 pthread_mutex_t mutex3 = { { 0, 0, 0, 0, 0, { { 0, 0 } } } }; VAL [mutex1={1:0}, mutex2={2:0}, mutex3={3:0}, myglobal=0] [L931] 0 pthread_t id; VAL [id={5:0}, mutex1={1:0}, mutex2={2:0}, mutex3={3:0}, myglobal=0] [L932] FCALL, FORK 0 pthread_create(&id, ((void *)0), t_fun, ((void *)0)) VAL [arg={0:0}, id={5:0}, mutex1={1:0}, mutex2={2:0}, mutex3={3:0}, myglobal=0, pthread_create(&id, ((void *)0), t_fun, ((void *)0))=-1] [L923] EXPR 1 myglobal+1 VAL [arg={0:0}, arg={0:0}, mutex1={1:0}, mutex2={2:0}, mutex3={3:0}, myglobal=0] [L923] EXPR 1 myglobal+1 VAL [arg={0:0}, arg={0:0}, mutex1={1:0}, mutex2={2:0}, mutex3={3:0}, myglobal=0] [L923] 1 myglobal=myglobal+1 VAL [arg={0:0}, arg={0:0}, mutex1={1:0}, mutex2={2:0}, mutex3={3:0}, myglobal=1, myglobal=myglobal+1=25] [L934] 0 printf("myglobal equals %d\n",myglobal) VAL [arg={0:0}, arg={0:0}, id={5:0}, mutex1={1:0}, mutex2={2:0}, mutex3={3:0}, myglobal=1, myglobal=myglobal+1=25] Now there is a data race on ~myglobal~0 between C: myglobal=myglobal+1 [923] and C: printf("myglobal equals %d\n",myglobal) [934] - UnprovableResult [Line: 937]: Unable to prove that there are no data races Unable to prove that there are no data races Reason: Not analyzed. - UnprovableResult [Line: 939]: Unable to prove that there are no data races Unable to prove that there are no data races Reason: Not analyzed. - UnprovableResult [Line: 932]: Unable to prove that petrification did provide enough thread instances (tool internal message, not intended for end users) Unable to prove that petrification did provide enough thread instances (tool internal message, not intended for end users) Reason: Not analyzed. - UnprovableResult [Line: 923]: Unable to prove that there are no data races Unable to prove that there are no data races Reason: Not analyzed. - UnprovableResult [Line: 923]: Unable to prove that there are no data races Unable to prove that there are no data races Reason: Not analyzed. - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 3 procedures, 109 locations, 8 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 1.4s, OverallIterations: 3, TraceHistogramMax: 1, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.1s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 10 SdHoareTripleChecker+Valid, 0.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 10 mSDsluCounter, 21 SdHoareTripleChecker+Invalid, 0.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 9 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 32 IncrementalHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 9 mSolverCounterUnsat, 21 mSDtfsCounter, 32 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 4 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=252occurred in iteration=2, InterpolantAutomatonStates: 6, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.3s InterpolantComputationTime, 134 NumberOfCodeBlocks, 134 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 82 ConstructedInterpolants, 0 QuantifiedInterpolants, 86 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 2 InterpolantComputations, 2 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-11-20 09:32:35,800 INFO L540 MonitoredProcess]: [MP /tmp/vcloud_worker_vcloud-master_on_vcloud-master/run_dir_26d546f7-3ddc-44b5-a647-73ce7d19adad/bin/uautomizer-ug76WZFUDN/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE