./Ultimate.py --spec ../sv-benchmarks/c/properties/no-data-race.prp --file ../sv-benchmarks/c/goblint-regression/09-regions_22-nocollapse.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for data races Using default analysis Version 48c9605d Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/goblint-regression/09-regions_22-nocollapse.i -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-DataRace-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --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 a0270befea30c9963adb19613f3074c8c29d9100e1f0592dc0c89cf3d3dda0df --- Real Ultimate output --- This is Ultimate 0.3.0-?-48c9605-m [2025-02-08 05:32:46,858 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-08 05:32:46,920 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-DataRace-32bit-Automizer_Default.epf [2025-02-08 05:32:46,926 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-08 05:32:46,926 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-08 05:32:46,946 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-08 05:32:46,947 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-08 05:32:46,948 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-08 05:32:46,948 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-08 05:32:46,949 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-08 05:32:46,950 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-08 05:32:46,950 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-08 05:32:46,950 INFO L153 SettingsManager]: * Use SBE=true [2025-02-08 05:32:46,950 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-08 05:32:46,950 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-08 05:32:46,950 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-08 05:32:46,951 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-02-08 05:32:46,951 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-08 05:32:46,951 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-08 05:32:46,951 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-08 05:32:46,951 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-08 05:32:46,951 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-08 05:32:46,951 INFO L153 SettingsManager]: * Check absence of data races in concurrent programs=true [2025-02-08 05:32:46,951 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2025-02-08 05:32:46,951 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-08 05:32:46,951 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-08 05:32:46,951 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-08 05:32:46,952 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-08 05:32:46,952 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-08 05:32:46,952 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-08 05:32:46,952 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-08 05:32:46,952 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-08 05:32:46,952 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-08 05:32:46,952 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-08 05:32:46,953 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-08 05:32:46,953 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-08 05:32:46,953 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-02-08 05:32:46,953 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-02-08 05:32:46,953 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-08 05:32:46,953 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-08 05:32:46,953 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-08 05:32:46,953 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-08 05:32:46,953 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness 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 -> a0270befea30c9963adb19613f3074c8c29d9100e1f0592dc0c89cf3d3dda0df [2025-02-08 05:32:47,185 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-08 05:32:47,192 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-08 05:32:47,195 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-08 05:32:47,196 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-08 05:32:47,197 INFO L274 PluginConnector]: CDTParser initialized [2025-02-08 05:32:47,198 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/goblint-regression/09-regions_22-nocollapse.i [2025-02-08 05:32:48,365 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/1571f1658/4816e17f42bb4b06b7e7e4d318e096af/FLAGde05b080a [2025-02-08 05:32:48,725 INFO L384 CDTParser]: Found 1 translation units. [2025-02-08 05:32:48,726 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/goblint-regression/09-regions_22-nocollapse.i [2025-02-08 05:32:48,745 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/1571f1658/4816e17f42bb4b06b7e7e4d318e096af/FLAGde05b080a [2025-02-08 05:32:48,952 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/1571f1658/4816e17f42bb4b06b7e7e4d318e096af [2025-02-08 05:32:48,954 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-08 05:32:48,956 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-08 05:32:48,957 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-08 05:32:48,957 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-08 05:32:48,960 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-08 05:32:48,960 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.02 05:32:48" (1/1) ... [2025-02-08 05:32:48,961 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7c4a528c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:48, skipping insertion in model container [2025-02-08 05:32:48,961 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.02 05:32:48" (1/1) ... [2025-02-08 05:32:48,988 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-08 05:32:49,328 WARN L1731 CHandler]: Possible shadowing of function new [2025-02-08 05:32:49,329 WARN L1731 CHandler]: Possible shadowing of function new [2025-02-08 05:32:49,330 WARN L1731 CHandler]: Possible shadowing of function new [2025-02-08 05:32:49,331 WARN L1731 CHandler]: Possible shadowing of function new [2025-02-08 05:32:49,354 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-08 05:32:49,379 INFO L200 MainTranslator]: Completed pre-run [2025-02-08 05:32:49,426 WARN L1731 CHandler]: Possible shadowing of function new [2025-02-08 05:32:49,427 WARN L1731 CHandler]: Possible shadowing of function new [2025-02-08 05:32:49,427 WARN L1731 CHandler]: Possible shadowing of function new [2025-02-08 05:32:49,427 WARN L1731 CHandler]: Possible shadowing of function new [2025-02-08 05:32:49,443 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-08 05:32:49,486 INFO L204 MainTranslator]: Completed translation [2025-02-08 05:32:49,487 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49 WrapperNode [2025-02-08 05:32:49,487 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-08 05:32:49,488 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-08 05:32:49,488 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-08 05:32:49,488 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-08 05:32:49,493 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49" (1/1) ... [2025-02-08 05:32:49,513 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49" (1/1) ... [2025-02-08 05:32:49,546 INFO L138 Inliner]: procedures = 274, calls = 98, calls flagged for inlining = 9, calls inlined = 8, statements flattened = 270 [2025-02-08 05:32:49,548 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-08 05:32:49,549 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-08 05:32:49,549 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-08 05:32:49,549 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-08 05:32:49,554 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49" (1/1) ... [2025-02-08 05:32:49,555 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49" (1/1) ... [2025-02-08 05:32:49,561 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49" (1/1) ... [2025-02-08 05:32:49,562 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49" (1/1) ... [2025-02-08 05:32:49,581 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49" (1/1) ... [2025-02-08 05:32:49,586 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49" (1/1) ... [2025-02-08 05:32:49,588 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49" (1/1) ... [2025-02-08 05:32:49,593 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49" (1/1) ... [2025-02-08 05:32:49,597 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-08 05:32:49,599 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-08 05:32:49,600 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-08 05:32:49,600 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-08 05:32:49,600 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49" (1/1) ... [2025-02-08 05:32:49,604 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-08 05:32:49,613 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-08 05:32:49,627 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-02-08 05:32:49,629 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-02-08 05:32:49,646 INFO L130 BoogieDeclarations]: Found specification of procedure f [2025-02-08 05:32:49,646 INFO L138 BoogieDeclarations]: Found implementation of procedure f [2025-02-08 05:32:49,646 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2025-02-08 05:32:49,647 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2025-02-08 05:32:49,647 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexUnlock [2025-02-08 05:32:49,647 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2025-02-08 05:32:49,647 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2025-02-08 05:32:49,647 INFO L130 BoogieDeclarations]: Found specification of procedure #PthreadsMutexLock [2025-02-08 05:32:49,647 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2025-02-08 05:32:49,647 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-08 05:32:49,647 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2025-02-08 05:32:49,648 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2025-02-08 05:32:49,648 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-08 05:32:49,648 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-08 05:32:49,649 WARN L227 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-02-08 05:32:49,768 INFO L257 CfgBuilder]: Building ICFG [2025-02-08 05:32:49,770 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-08 05:32:50,251 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1015: list_add_~head#1.base, list_add_~head#1.offset := list_add_#in~head#1.base, list_add_#in~head#1.offset; [2025-02-08 05:32:50,251 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1015-1: list_add_~new#1.base, list_add_~new#1.offset := list_add_#in~new#1.base, list_add_#in~new#1.offset; [2025-02-08 05:32:50,251 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1016: havoc list_add_#t~mem6#1.base, list_add_#t~mem6#1.offset; [2025-02-08 05:32:50,251 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1016-1: assume ((0 == #race[list_add_~head#1.base,list_add_~head#1.offset] && 0 == #race[list_add_~head#1.base,1 + list_add_~head#1.offset]) && 0 == #race[list_add_~head#1.base,2 + list_add_~head#1.offset]) && 0 == #race[list_add_~head#1.base,3 + list_add_~head#1.offset]; [2025-02-08 05:32:50,251 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1016-1: assume !(((0 == #race[list_add_~head#1.base,list_add_~head#1.offset] && 0 == #race[list_add_~head#1.base,1 + list_add_~head#1.offset]) && 0 == #race[list_add_~head#1.base,2 + list_add_~head#1.offset]) && 0 == #race[list_add_~head#1.base,3 + list_add_~head#1.offset]); [2025-02-08 05:32:50,251 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1016-2: list_add_~next~0#1.base, list_add_~next~0#1.offset := list_add_#t~mem6#1.base, list_add_#t~mem6#1.offset; [2025-02-08 05:32:50,251 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1016-3: #race := #race[list_add_~head#1.base,3 + list_add_~head#1.offset := 0]; [2025-02-08 05:32:50,251 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1016-4: #race := #race[list_add_~head#1.base,2 + list_add_~head#1.offset := 0]; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1016-5: #race := #race[list_add_~head#1.base,1 + list_add_~head#1.offset := 0]; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1016-6: #race := #race[list_add_~head#1.base,list_add_~head#1.offset := 0]; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1016-7: SUMMARY for call list_add_#t~mem6#1.base, list_add_#t~mem6#1.offset := read~$Pointer$(list_add_~head#1.base, list_add_~head#1.offset, 4); srcloc: null [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1017: assume ((#race[list_add_~next~0#1.base,4 + list_add_~next~0#1.offset] == list_add_#t~nondet7#1 && #race[list_add_~next~0#1.base,5 + list_add_~next~0#1.offset] == list_add_#t~nondet7#1) && #race[list_add_~next~0#1.base,6 + list_add_~next~0#1.offset] == list_add_#t~nondet7#1) && #race[list_add_~next~0#1.base,7 + list_add_~next~0#1.offset] == list_add_#t~nondet7#1; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1017: assume !(((#race[list_add_~next~0#1.base,4 + list_add_~next~0#1.offset] == list_add_#t~nondet7#1 && #race[list_add_~next~0#1.base,5 + list_add_~next~0#1.offset] == list_add_#t~nondet7#1) && #race[list_add_~next~0#1.base,6 + list_add_~next~0#1.offset] == list_add_#t~nondet7#1) && #race[list_add_~next~0#1.base,7 + list_add_~next~0#1.offset] == list_add_#t~nondet7#1); [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1017-1: havoc list_add_#t~nondet7#1; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1017-2: #race := #race[list_add_~next~0#1.base,7 + list_add_~next~0#1.offset := list_add_#t~nondet7#1]; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1017-3: #race := #race[list_add_~next~0#1.base,6 + list_add_~next~0#1.offset := list_add_#t~nondet7#1]; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1017-4: #race := #race[list_add_~next~0#1.base,5 + list_add_~next~0#1.offset := list_add_#t~nondet7#1]; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1017-5: #race := #race[list_add_~next~0#1.base,4 + list_add_~next~0#1.offset := list_add_#t~nondet7#1]; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1017-6: havoc list_add_#t~nondet7#1; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1017-7: SUMMARY for call write~$Pointer$(list_add_~new#1.base, list_add_~new#1.offset, list_add_~next~0#1.base, 4 + list_add_~next~0#1.offset, 4); srcloc: null [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1018: assume ((#race[list_add_~new#1.base,list_add_~new#1.offset] == list_add_#t~nondet8#1 && #race[list_add_~new#1.base,1 + list_add_~new#1.offset] == list_add_#t~nondet8#1) && #race[list_add_~new#1.base,2 + list_add_~new#1.offset] == list_add_#t~nondet8#1) && #race[list_add_~new#1.base,3 + list_add_~new#1.offset] == list_add_#t~nondet8#1; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1018: assume !(((#race[list_add_~new#1.base,list_add_~new#1.offset] == list_add_#t~nondet8#1 && #race[list_add_~new#1.base,1 + list_add_~new#1.offset] == list_add_#t~nondet8#1) && #race[list_add_~new#1.base,2 + list_add_~new#1.offset] == list_add_#t~nondet8#1) && #race[list_add_~new#1.base,3 + list_add_~new#1.offset] == list_add_#t~nondet8#1); [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1018-1: havoc list_add_#t~nondet8#1; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1018-2: #race := #race[list_add_~new#1.base,3 + list_add_~new#1.offset := list_add_#t~nondet8#1]; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1018-3: #race := #race[list_add_~new#1.base,2 + list_add_~new#1.offset := list_add_#t~nondet8#1]; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1018-4: #race := #race[list_add_~new#1.base,1 + list_add_~new#1.offset := list_add_#t~nondet8#1]; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1018-5: #race := #race[list_add_~new#1.base,list_add_~new#1.offset := list_add_#t~nondet8#1]; [2025-02-08 05:32:50,252 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1018-6: havoc list_add_#t~nondet8#1; [2025-02-08 05:32:50,253 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1018-7: SUMMARY for call write~$Pointer$(list_add_~next~0#1.base, list_add_~next~0#1.offset, list_add_~new#1.base, list_add_~new#1.offset, 4); srcloc: null [2025-02-08 05:32:50,253 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1019: assume ((#race[list_add_~new#1.base,4 + list_add_~new#1.offset] == list_add_#t~nondet9#1 && #race[list_add_~new#1.base,5 + list_add_~new#1.offset] == list_add_#t~nondet9#1) && #race[list_add_~new#1.base,6 + list_add_~new#1.offset] == list_add_#t~nondet9#1) && #race[list_add_~new#1.base,7 + list_add_~new#1.offset] == list_add_#t~nondet9#1; [2025-02-08 05:32:50,253 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1019: assume !(((#race[list_add_~new#1.base,4 + list_add_~new#1.offset] == list_add_#t~nondet9#1 && #race[list_add_~new#1.base,5 + list_add_~new#1.offset] == list_add_#t~nondet9#1) && #race[list_add_~new#1.base,6 + list_add_~new#1.offset] == list_add_#t~nondet9#1) && #race[list_add_~new#1.base,7 + list_add_~new#1.offset] == list_add_#t~nondet9#1); [2025-02-08 05:32:50,253 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1019-1: havoc list_add_#t~nondet9#1; [2025-02-08 05:32:50,253 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1019-2: #race := #race[list_add_~new#1.base,7 + list_add_~new#1.offset := list_add_#t~nondet9#1]; [2025-02-08 05:32:50,253 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1019-3: #race := #race[list_add_~new#1.base,6 + list_add_~new#1.offset := list_add_#t~nondet9#1]; [2025-02-08 05:32:50,253 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1019-4: #race := #race[list_add_~new#1.base,5 + list_add_~new#1.offset := list_add_#t~nondet9#1]; [2025-02-08 05:32:50,253 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1019-5: #race := #race[list_add_~new#1.base,4 + list_add_~new#1.offset := list_add_#t~nondet9#1]; [2025-02-08 05:32:50,253 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1019-6: havoc list_add_#t~nondet9#1; [2025-02-08 05:32:50,254 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1019-7: SUMMARY for call write~$Pointer$(list_add_~head#1.base, list_add_~head#1.offset, list_add_~new#1.base, 4 + list_add_~new#1.offset, 4); srcloc: null [2025-02-08 05:32:50,254 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1020: assume ((#race[list_add_~head#1.base,list_add_~head#1.offset] == list_add_#t~nondet10#1 && #race[list_add_~head#1.base,1 + list_add_~head#1.offset] == list_add_#t~nondet10#1) && #race[list_add_~head#1.base,2 + list_add_~head#1.offset] == list_add_#t~nondet10#1) && #race[list_add_~head#1.base,3 + list_add_~head#1.offset] == list_add_#t~nondet10#1; [2025-02-08 05:32:50,254 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1020: assume !(((#race[list_add_~head#1.base,list_add_~head#1.offset] == list_add_#t~nondet10#1 && #race[list_add_~head#1.base,1 + list_add_~head#1.offset] == list_add_#t~nondet10#1) && #race[list_add_~head#1.base,2 + list_add_~head#1.offset] == list_add_#t~nondet10#1) && #race[list_add_~head#1.base,3 + list_add_~head#1.offset] == list_add_#t~nondet10#1); [2025-02-08 05:32:50,254 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1020-1: havoc list_add_#t~nondet10#1; [2025-02-08 05:32:50,254 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1020-2: #race := #race[list_add_~head#1.base,3 + list_add_~head#1.offset := list_add_#t~nondet10#1]; [2025-02-08 05:32:50,254 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1020-3: #race := #race[list_add_~head#1.base,2 + list_add_~head#1.offset := list_add_#t~nondet10#1]; [2025-02-08 05:32:50,254 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1020-4: #race := #race[list_add_~head#1.base,1 + list_add_~head#1.offset := list_add_#t~nondet10#1]; [2025-02-08 05:32:50,254 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1020-5: #race := #race[list_add_~head#1.base,list_add_~head#1.offset := list_add_#t~nondet10#1]; [2025-02-08 05:32:50,254 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1020-6: havoc list_add_#t~nondet10#1; [2025-02-08 05:32:50,254 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1020-7: SUMMARY for call write~$Pointer$(list_add_~new#1.base, list_add_~new#1.offset, list_add_~head#1.base, list_add_~head#1.offset, 4); srcloc: null [2025-02-08 05:32:50,254 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1057-1: havoc main_#t~post24#1; [2025-02-08 05:32:50,255 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1057-2: main_~j~1#1 := 1 + main_#t~post24#1; [2025-02-08 05:32:50,255 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1057-3: assume { :end_inline_list_add } true;main_#t~post24#1 := main_~j~1#1; [2025-02-08 05:32:50,255 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1057-4: havoc list_add_#in~new#1.base, list_add_#in~new#1.offset, list_add_#in~head#1.base, list_add_#in~head#1.offset; [2025-02-08 05:32:50,255 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1057-5: havoc list_add_#t~mem6#1.base, list_add_#t~mem6#1.offset, list_add_#t~nondet7#1, list_add_#t~nondet8#1, list_add_#t~nondet9#1, list_add_#t~nondet10#1, list_add_~new#1.base, list_add_~new#1.offset, list_add_~head#1.base, list_add_~head#1.offset, list_add_~next~0#1.base, list_add_~next~0#1.offset; [2025-02-08 05:32:50,255 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1057-6: havoc list_add_#t~mem6#1.base, list_add_#t~mem6#1.offset, list_add_#t~nondet7#1, list_add_#t~nondet8#1, list_add_#t~nondet9#1, list_add_#t~nondet10#1, list_add_~new#1.base, list_add_~new#1.offset, list_add_~head#1.base, list_add_~head#1.offset, list_add_~next~0#1.base, list_add_~next~0#1.offset; [2025-02-08 05:32:50,255 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1057-7: assume { :end_inline_new } true;assume { :begin_inline_list_add } true;list_add_#in~new#1.base, list_add_#in~new#1.offset, list_add_#in~head#1.base, list_add_#in~head#1.offset := main_#t~ret23#1.base, 4 + main_#t~ret23#1.offset, ~#c~0.base, ~#c~0.offset + 8 * main_~i~0#1; [2025-02-08 05:32:50,255 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1057-8: havoc new_#in~x#1; [2025-02-08 05:32:50,255 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1057-9: havoc new_#t~malloc4#1.base, new_#t~malloc4#1.offset, new_#t~nondet5#1, new_~x#1, new_~p~0#1.base, new_~p~0#1.offset; [2025-02-08 05:32:50,255 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L1057-10: main_#t~ret23#1.base, main_#t~ret23#1.offset := new_#res#1.base, new_#res#1.offset; [2025-02-08 05:32:50,256 INFO L304 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-02-08 05:32:50,256 INFO L308 CfgBuilder]: Performing block encoding [2025-02-08 05:32:50,280 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-08 05:32:50,280 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-08 05:32:50,281 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.02 05:32:50 BoogieIcfgContainer [2025-02-08 05:32:50,281 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-08 05:32:50,283 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-08 05:32:50,283 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-08 05:32:50,288 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-08 05:32:50,288 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.02 05:32:48" (1/3) ... [2025-02-08 05:32:50,289 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7ba57672 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.02 05:32:50, skipping insertion in model container [2025-02-08 05:32:50,289 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 05:32:49" (2/3) ... [2025-02-08 05:32:50,289 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7ba57672 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.02 05:32:50, skipping insertion in model container [2025-02-08 05:32:50,289 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.02 05:32:50" (3/3) ... [2025-02-08 05:32:50,290 INFO L128 eAbstractionObserver]: Analyzing ICFG 09-regions_22-nocollapse.i [2025-02-08 05:32:50,300 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-08 05:32:50,301 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG 09-regions_22-nocollapse.i that has 2 procedures, 249 locations, 1 initial locations, 4 loop locations, and 14 error locations. [2025-02-08 05:32:50,301 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-02-08 05:32:50,388 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2025-02-08 05:32:50,425 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 321 places, 322 transitions, 652 flow [2025-02-08 05:32:50,538 INFO L124 PetriNetUnfolderBase]: 8/320 cut-off events. [2025-02-08 05:32:50,539 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-02-08 05:32:50,550 INFO L83 FinitePrefix]: Finished finitePrefix Result has 327 conditions, 320 events. 8/320 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 6. Compared 584 event pairs, 0 based on Foata normal form. 0/298 useless extension candidates. Maximal degree in co-relation 247. Up to 2 conditions per place. [2025-02-08 05:32:50,551 INFO L82 GeneralOperation]: Start removeDead. Operand has 321 places, 322 transitions, 652 flow [2025-02-08 05:32:50,557 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 314 places, 315 transitions, 636 flow [2025-02-08 05:32:50,564 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-08 05:32:50,572 INFO L333 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, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, 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;@4130dac, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-08 05:32:50,573 INFO L334 AbstractCegarLoop]: Starting to check reachability of 19 error locations. [2025-02-08 05:32:50,599 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-02-08 05:32:50,601 INFO L124 PetriNetUnfolderBase]: 1/115 cut-off events. [2025-02-08 05:32:50,601 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-02-08 05:32:50,602 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-08 05:32:50,602 INFO L206 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, 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, 1] [2025-02-08 05:32:50,603 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr9ASSERT_VIOLATIONDATA_RACE === [fErr3ASSERT_VIOLATIONDATA_RACE, fErr2ASSERT_VIOLATIONDATA_RACE, fErr1ASSERT_VIOLATIONDATA_RACE, fErr0ASSERT_VIOLATIONDATA_RACE (and 15 more)] === [2025-02-08 05:32:50,607 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-08 05:32:50,607 INFO L85 PathProgramCache]: Analyzing trace with hash -243999817, now seen corresponding path program 1 times [2025-02-08 05:32:50,612 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-08 05:32:50,613 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1696669896] [2025-02-08 05:32:50,613 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-08 05:32:50,615 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-08 05:32:50,692 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 101 statements into 1 equivalence classes. [2025-02-08 05:32:50,752 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 101 of 101 statements. [2025-02-08 05:32:50,752 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-08 05:32:50,752 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-08 05:32:51,471 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-08 05:32:51,473 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-08 05:32:51,473 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1696669896] [2025-02-08 05:32:51,474 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1696669896] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-08 05:32:51,474 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-08 05:32:51,474 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-02-08 05:32:51,475 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1717580976] [2025-02-08 05:32:51,476 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-08 05:32:51,482 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-02-08 05:32:51,486 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-08 05:32:51,504 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-02-08 05:32:51,504 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2025-02-08 05:32:51,864 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 255 out of 322 [2025-02-08 05:32:51,870 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 314 places, 315 transitions, 636 flow. Second operand has 6 states, 6 states have (on average 256.3333333333333) internal successors, (1538), 6 states have internal predecessors, (1538), 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) [2025-02-08 05:32:51,870 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-08 05:32:51,870 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 255 of 322 [2025-02-08 05:32:51,873 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-02-08 05:32:52,179 INFO L124 PetriNetUnfolderBase]: 448/1793 cut-off events. [2025-02-08 05:32:52,179 INFO L125 PetriNetUnfolderBase]: For 20/20 co-relation queries the response was YES. [2025-02-08 05:32:52,188 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2671 conditions, 1793 events. 448/1793 cut-off events. For 20/20 co-relation queries the response was YES. Maximal size of possible extension queue 45. Compared 10994 event pairs, 342 based on Foata normal form. 35/1626 useless extension candidates. Maximal degree in co-relation 2477. Up to 825 conditions per place. [2025-02-08 05:32:52,197 INFO L140 encePairwiseOnDemand]: 307/322 looper letters, 51 selfloop transitions, 10 changer transitions 1/310 dead transitions. [2025-02-08 05:32:52,198 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 317 places, 310 transitions, 748 flow [2025-02-08 05:32:52,199 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-02-08 05:32:52,200 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-02-08 05:32:52,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 1596 transitions. [2025-02-08 05:32:52,214 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.8260869565217391 [2025-02-08 05:32:52,216 INFO L175 Difference]: Start difference. First operand has 314 places, 315 transitions, 636 flow. Second operand 6 states and 1596 transitions. [2025-02-08 05:32:52,216 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 317 places, 310 transitions, 748 flow [2025-02-08 05:32:52,221 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 315 places, 310 transitions, 746 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-02-08 05:32:52,227 INFO L231 Difference]: Finished difference. Result has 315 places, 309 transitions, 642 flow [2025-02-08 05:32:52,229 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=322, PETRI_DIFFERENCE_MINUEND_FLOW=624, PETRI_DIFFERENCE_MINUEND_PLACES=310, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=310, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=10, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=300, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=642, PETRI_PLACES=315, PETRI_TRANSITIONS=309} [2025-02-08 05:32:52,232 INFO L279 CegarLoopForPetriNet]: 314 programPoint places, 1 predicate places. [2025-02-08 05:32:52,233 INFO L471 AbstractCegarLoop]: Abstraction has has 315 places, 309 transitions, 642 flow [2025-02-08 05:32:52,234 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 256.3333333333333) internal successors, (1538), 6 states have internal predecessors, (1538), 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) [2025-02-08 05:32:52,234 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-08 05:32:52,234 INFO L206 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, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-08 05:32:52,234 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-02-08 05:32:52,235 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr8ASSERT_VIOLATIONDATA_RACE === [fErr3ASSERT_VIOLATIONDATA_RACE, fErr2ASSERT_VIOLATIONDATA_RACE, fErr1ASSERT_VIOLATIONDATA_RACE, fErr0ASSERT_VIOLATIONDATA_RACE (and 15 more)] === [2025-02-08 05:32:52,235 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-08 05:32:52,235 INFO L85 PathProgramCache]: Analyzing trace with hash -443703747, now seen corresponding path program 1 times [2025-02-08 05:32:52,236 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-08 05:32:52,236 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1224830753] [2025-02-08 05:32:52,236 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-08 05:32:52,236 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-08 05:32:52,255 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 109 statements into 1 equivalence classes. [2025-02-08 05:32:52,271 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 109 of 109 statements. [2025-02-08 05:32:52,271 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-08 05:32:52,271 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-08 05:32:52,658 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-08 05:32:52,659 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-08 05:32:52,659 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1224830753] [2025-02-08 05:32:52,659 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1224830753] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-08 05:32:52,659 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-08 05:32:52,659 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-02-08 05:32:52,659 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1812437597] [2025-02-08 05:32:52,659 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-08 05:32:52,660 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-02-08 05:32:52,660 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-08 05:32:52,661 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-02-08 05:32:52,661 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2025-02-08 05:32:53,014 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 255 out of 322 [2025-02-08 05:32:53,016 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 315 places, 309 transitions, 642 flow. Second operand has 6 states, 6 states have (on average 256.3333333333333) internal successors, (1538), 6 states have internal predecessors, (1538), 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) [2025-02-08 05:32:53,016 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-08 05:32:53,016 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 255 of 322 [2025-02-08 05:32:53,016 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-02-08 05:32:53,345 INFO L124 PetriNetUnfolderBase]: 448/1790 cut-off events. [2025-02-08 05:32:53,345 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-02-08 05:32:53,353 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2675 conditions, 1790 events. 448/1790 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 45. Compared 10933 event pairs, 342 based on Foata normal form. 1/1591 useless extension candidates. Maximal degree in co-relation 2586. Up to 824 conditions per place. [2025-02-08 05:32:53,359 INFO L140 encePairwiseOnDemand]: 311/322 looper letters, 47 selfloop transitions, 5 changer transitions 19/307 dead transitions. [2025-02-08 05:32:53,360 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 317 places, 307 transitions, 756 flow [2025-02-08 05:32:53,365 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-02-08 05:32:53,365 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-02-08 05:32:53,367 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 1591 transitions. [2025-02-08 05:32:53,370 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.8234989648033126 [2025-02-08 05:32:53,370 INFO L175 Difference]: Start difference. First operand has 315 places, 309 transitions, 642 flow. Second operand 6 states and 1591 transitions. [2025-02-08 05:32:53,370 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 317 places, 307 transitions, 756 flow [2025-02-08 05:32:53,372 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 312 places, 307 transitions, 736 flow, removed 0 selfloop flow, removed 5 redundant places. [2025-02-08 05:32:53,377 INFO L231 Difference]: Finished difference. Result has 312 places, 288 transitions, 590 flow [2025-02-08 05:32:53,378 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=322, PETRI_DIFFERENCE_MINUEND_FLOW=618, PETRI_DIFFERENCE_MINUEND_PLACES=307, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=307, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=302, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=590, PETRI_PLACES=312, PETRI_TRANSITIONS=288} [2025-02-08 05:32:53,378 INFO L279 CegarLoopForPetriNet]: 314 programPoint places, -2 predicate places. [2025-02-08 05:32:53,378 INFO L471 AbstractCegarLoop]: Abstraction has has 312 places, 288 transitions, 590 flow [2025-02-08 05:32:53,379 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 256.3333333333333) internal successors, (1538), 6 states have internal predecessors, (1538), 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) [2025-02-08 05:32:53,380 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-08 05:32:53,380 INFO L206 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, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-08 05:32:53,380 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-02-08 05:32:53,380 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting fErr3ASSERT_VIOLATIONDATA_RACE === [fErr3ASSERT_VIOLATIONDATA_RACE, fErr2ASSERT_VIOLATIONDATA_RACE, fErr1ASSERT_VIOLATIONDATA_RACE, fErr0ASSERT_VIOLATIONDATA_RACE (and 15 more)] === [2025-02-08 05:32:53,381 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-08 05:32:53,383 INFO L85 PathProgramCache]: Analyzing trace with hash -850847275, now seen corresponding path program 1 times [2025-02-08 05:32:53,383 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-08 05:32:53,383 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [457441058] [2025-02-08 05:32:53,383 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-08 05:32:53,383 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-08 05:32:53,399 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 121 statements into 1 equivalence classes. [2025-02-08 05:32:53,406 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 121 of 121 statements. [2025-02-08 05:32:53,406 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-08 05:32:53,406 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-08 05:32:53,461 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-08 05:32:53,461 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-08 05:32:53,461 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [457441058] [2025-02-08 05:32:53,461 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [457441058] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-08 05:32:53,461 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-08 05:32:53,462 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-02-08 05:32:53,462 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1260535468] [2025-02-08 05:32:53,462 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-08 05:32:53,462 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-02-08 05:32:53,462 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-08 05:32:53,463 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-02-08 05:32:53,463 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-02-08 05:32:53,486 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 307 out of 322 [2025-02-08 05:32:53,487 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 312 places, 288 transitions, 590 flow. Second operand has 3 states, 3 states have (on average 309.0) internal successors, (927), 3 states have internal predecessors, (927), 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) [2025-02-08 05:32:53,487 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-08 05:32:53,487 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 307 of 322 [2025-02-08 05:32:53,488 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-02-08 05:32:53,539 INFO L124 PetriNetUnfolderBase]: 27/509 cut-off events. [2025-02-08 05:32:53,539 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-02-08 05:32:53,541 INFO L83 FinitePrefix]: Finished finitePrefix Result has 575 conditions, 509 events. 27/509 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 12. Compared 1585 event pairs, 18 based on Foata normal form. 1/470 useless extension candidates. Maximal degree in co-relation 420. Up to 45 conditions per place. [2025-02-08 05:32:53,542 INFO L140 encePairwiseOnDemand]: 319/322 looper letters, 11 selfloop transitions, 2 changer transitions 0/289 dead transitions. [2025-02-08 05:32:53,542 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 295 places, 289 transitions, 618 flow [2025-02-08 05:32:53,543 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-02-08 05:32:53,543 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-02-08 05:32:53,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 935 transitions. [2025-02-08 05:32:53,544 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.9679089026915114 [2025-02-08 05:32:53,545 INFO L175 Difference]: Start difference. First operand has 312 places, 288 transitions, 590 flow. Second operand 3 states and 935 transitions. [2025-02-08 05:32:53,545 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 295 places, 289 transitions, 618 flow [2025-02-08 05:32:53,546 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 290 places, 289 transitions, 608 flow, removed 0 selfloop flow, removed 5 redundant places. [2025-02-08 05:32:53,551 INFO L231 Difference]: Finished difference. Result has 291 places, 289 transitions, 592 flow [2025-02-08 05:32:53,551 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=322, PETRI_DIFFERENCE_MINUEND_FLOW=580, PETRI_DIFFERENCE_MINUEND_PLACES=288, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=288, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=286, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=592, PETRI_PLACES=291, PETRI_TRANSITIONS=289} [2025-02-08 05:32:53,552 INFO L279 CegarLoopForPetriNet]: 314 programPoint places, -23 predicate places. [2025-02-08 05:32:53,552 INFO L471 AbstractCegarLoop]: Abstraction has has 291 places, 289 transitions, 592 flow [2025-02-08 05:32:53,552 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 309.0) internal successors, (927), 3 states have internal predecessors, (927), 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) [2025-02-08 05:32:53,553 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-08 05:32:53,553 INFO L206 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, 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, 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] [2025-02-08 05:32:53,553 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-02-08 05:32:53,553 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr7ASSERT_VIOLATIONDATA_RACE === [fErr3ASSERT_VIOLATIONDATA_RACE, fErr2ASSERT_VIOLATIONDATA_RACE, fErr1ASSERT_VIOLATIONDATA_RACE, fErr0ASSERT_VIOLATIONDATA_RACE (and 15 more)] === [2025-02-08 05:32:53,553 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-08 05:32:53,554 INFO L85 PathProgramCache]: Analyzing trace with hash 1716358766, now seen corresponding path program 1 times [2025-02-08 05:32:53,554 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-08 05:32:53,554 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1294874966] [2025-02-08 05:32:53,554 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-08 05:32:53,554 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-08 05:32:53,567 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 129 statements into 1 equivalence classes. [2025-02-08 05:32:53,576 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 129 of 129 statements. [2025-02-08 05:32:53,576 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-08 05:32:53,576 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-08 05:32:53,934 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-08 05:32:53,935 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-08 05:32:53,935 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1294874966] [2025-02-08 05:32:53,935 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1294874966] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-08 05:32:53,935 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-08 05:32:53,935 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-02-08 05:32:53,935 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [214928323] [2025-02-08 05:32:53,935 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-08 05:32:53,935 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-02-08 05:32:53,936 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-08 05:32:53,936 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-02-08 05:32:53,936 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2025-02-08 05:32:54,165 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 255 out of 322 [2025-02-08 05:32:54,167 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 291 places, 289 transitions, 592 flow. Second operand has 6 states, 6 states have (on average 257.6666666666667) internal successors, (1546), 6 states have internal predecessors, (1546), 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) [2025-02-08 05:32:54,167 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-08 05:32:54,167 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 255 of 322 [2025-02-08 05:32:54,167 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-02-08 05:32:54,420 INFO L124 PetriNetUnfolderBase]: 448/1812 cut-off events. [2025-02-08 05:32:54,421 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2025-02-08 05:32:54,424 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2702 conditions, 1812 events. 448/1812 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 45. Compared 10829 event pairs, 342 based on Foata normal form. 2/1615 useless extension candidates. Maximal degree in co-relation 2548. Up to 834 conditions per place. [2025-02-08 05:32:54,429 INFO L140 encePairwiseOnDemand]: 317/322 looper letters, 46 selfloop transitions, 0 changer transitions 14/288 dead transitions. [2025-02-08 05:32:54,430 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 295 places, 288 transitions, 696 flow [2025-02-08 05:32:54,430 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-02-08 05:32:54,430 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-02-08 05:32:54,432 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 1584 transitions. [2025-02-08 05:32:54,433 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.8198757763975155 [2025-02-08 05:32:54,433 INFO L175 Difference]: Start difference. First operand has 291 places, 289 transitions, 592 flow. Second operand 6 states and 1584 transitions. [2025-02-08 05:32:54,433 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 295 places, 288 transitions, 696 flow [2025-02-08 05:32:54,434 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 294 places, 288 transitions, 694 flow, removed 0 selfloop flow, removed 1 redundant places. [2025-02-08 05:32:54,437 INFO L231 Difference]: Finished difference. Result has 294 places, 274 transitions, 560 flow [2025-02-08 05:32:54,437 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=322, PETRI_DIFFERENCE_MINUEND_FLOW=588, PETRI_DIFFERENCE_MINUEND_PLACES=289, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=288, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=288, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=560, PETRI_PLACES=294, PETRI_TRANSITIONS=274} [2025-02-08 05:32:54,438 INFO L279 CegarLoopForPetriNet]: 314 programPoint places, -20 predicate places. [2025-02-08 05:32:54,438 INFO L471 AbstractCegarLoop]: Abstraction has has 294 places, 274 transitions, 560 flow [2025-02-08 05:32:54,438 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 257.6666666666667) internal successors, (1546), 6 states have internal predecessors, (1546), 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) [2025-02-08 05:32:54,439 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-02-08 05:32:54,439 INFO L206 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, 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, 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] [2025-02-08 05:32:54,439 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-02-08 05:32:54,439 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting fErr3ASSERT_VIOLATIONDATA_RACE === [fErr3ASSERT_VIOLATIONDATA_RACE, fErr2ASSERT_VIOLATIONDATA_RACE, fErr1ASSERT_VIOLATIONDATA_RACE, fErr0ASSERT_VIOLATIONDATA_RACE (and 15 more)] === [2025-02-08 05:32:54,439 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-08 05:32:54,440 INFO L85 PathProgramCache]: Analyzing trace with hash 28521642, now seen corresponding path program 1 times [2025-02-08 05:32:54,440 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-08 05:32:54,440 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [902059528] [2025-02-08 05:32:54,440 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-08 05:32:54,440 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-08 05:32:54,454 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 150 statements into 1 equivalence classes. [2025-02-08 05:32:54,459 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 150 of 150 statements. [2025-02-08 05:32:54,459 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-08 05:32:54,459 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-08 05:32:54,504 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-02-08 05:32:54,505 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-08 05:32:54,505 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [902059528] [2025-02-08 05:32:54,505 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [902059528] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-08 05:32:54,505 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-08 05:32:54,505 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-02-08 05:32:54,505 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1307605614] [2025-02-08 05:32:54,505 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-08 05:32:54,506 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-02-08 05:32:54,506 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-08 05:32:54,507 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-02-08 05:32:54,507 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-02-08 05:32:54,515 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 308 out of 322 [2025-02-08 05:32:54,516 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 294 places, 274 transitions, 560 flow. Second operand has 3 states, 3 states have (on average 310.0) internal successors, (930), 3 states have internal predecessors, (930), 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) [2025-02-08 05:32:54,517 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-02-08 05:32:54,517 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 308 of 322 [2025-02-08 05:32:54,517 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-02-08 05:32:54,522 INFO L124 PetriNetUnfolderBase]: 0/114 cut-off events. [2025-02-08 05:32:54,522 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-02-08 05:32:54,522 INFO L83 FinitePrefix]: Finished finitePrefix Result has 121 conditions, 114 events. 0/114 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 1. Compared 0 event pairs, 0 based on Foata normal form. 1/115 useless extension candidates. Maximal degree in co-relation 0. Up to 2 conditions per place. [2025-02-08 05:32:54,522 INFO L140 encePairwiseOnDemand]: 320/322 looper letters, 0 selfloop transitions, 0 changer transitions 114/114 dead transitions. [2025-02-08 05:32:54,522 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 120 places, 114 transitions, 234 flow [2025-02-08 05:32:54,523 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-02-08 05:32:54,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-02-08 05:32:54,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 927 transitions. [2025-02-08 05:32:54,524 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.9596273291925466 [2025-02-08 05:32:54,524 INFO L175 Difference]: Start difference. First operand has 294 places, 274 transitions, 560 flow. Second operand 3 states and 927 transitions. [2025-02-08 05:32:54,524 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 120 places, 114 transitions, 234 flow [2025-02-08 05:32:54,525 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 119 places, 114 transitions, 233 flow, removed 0 selfloop flow, removed 1 redundant places. [2025-02-08 05:32:54,525 INFO L231 Difference]: Finished difference. Result has 119 places, 0 transitions, 0 flow [2025-02-08 05:32:54,526 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=322, PETRI_DIFFERENCE_MINUEND_FLOW=229, PETRI_DIFFERENCE_MINUEND_PLACES=117, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=114, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=0, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=114, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=0, PETRI_PLACES=119, PETRI_TRANSITIONS=0} [2025-02-08 05:32:54,527 INFO L279 CegarLoopForPetriNet]: 314 programPoint places, -195 predicate places. [2025-02-08 05:32:54,528 INFO L471 AbstractCegarLoop]: Abstraction has has 119 places, 0 transitions, 0 flow [2025-02-08 05:32:54,528 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 310.0) internal successors, (930), 3 states have internal predecessors, (930), 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) [2025-02-08 05:32:54,530 INFO L782 garLoopResultBuilder]: Registering result SAFE for location fErr3ASSERT_VIOLATIONDATA_RACE (18 of 19 remaining) [2025-02-08 05:32:54,530 INFO L782 garLoopResultBuilder]: Registering result SAFE for location fErr2ASSERT_VIOLATIONDATA_RACE (17 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location fErr1ASSERT_VIOLATIONDATA_RACE (16 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location fErr0ASSERT_VIOLATIONDATA_RACE (15 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr9ASSERT_VIOLATIONDATA_RACE (14 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr8ASSERT_VIOLATIONDATA_RACE (13 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr7ASSERT_VIOLATIONDATA_RACE (12 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr6ASSERT_VIOLATIONDATA_RACE (11 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr5ASSERT_VIOLATIONDATA_RACE (10 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (9 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (8 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location fErr3ASSERT_VIOLATIONDATA_RACE (7 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location fErr2ASSERT_VIOLATIONDATA_RACE (6 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location fErr1ASSERT_VIOLATIONDATA_RACE (5 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location fErr0ASSERT_VIOLATIONDATA_RACE (4 of 19 remaining) [2025-02-08 05:32:54,531 INFO L782 garLoopResultBuilder]: Registering result SAFE for location fErr3ASSERT_VIOLATIONDATA_RACE (3 of 19 remaining) [2025-02-08 05:32:54,532 INFO L782 garLoopResultBuilder]: Registering result SAFE for location fErr2ASSERT_VIOLATIONDATA_RACE (2 of 19 remaining) [2025-02-08 05:32:54,532 INFO L782 garLoopResultBuilder]: Registering result SAFE for location fErr1ASSERT_VIOLATIONDATA_RACE (1 of 19 remaining) [2025-02-08 05:32:54,532 INFO L782 garLoopResultBuilder]: Registering result SAFE for location fErr0ASSERT_VIOLATIONDATA_RACE (0 of 19 remaining) [2025-02-08 05:32:54,532 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-02-08 05:32:54,532 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1] [2025-02-08 05:32:54,536 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-02-08 05:32:54,536 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-02-08 05:32:54,539 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.02 05:32:54 BasicIcfg [2025-02-08 05:32:54,539 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-02-08 05:32:54,540 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-02-08 05:32:54,540 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-02-08 05:32:54,540 INFO L274 PluginConnector]: Witness Printer initialized [2025-02-08 05:32:54,541 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.02 05:32:50" (3/4) ... [2025-02-08 05:32:54,542 INFO L146 WitnessPrinter]: Generating witness for correct program [2025-02-08 05:32:54,543 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure f [2025-02-08 05:32:54,546 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 14 nodes and edges [2025-02-08 05:32:54,547 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 3 nodes and edges [2025-02-08 05:32:54,547 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 3 nodes and edges [2025-02-08 05:32:54,609 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-02-08 05:32:54,609 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/witness.yml [2025-02-08 05:32:54,609 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-02-08 05:32:54,610 INFO L158 Benchmark]: Toolchain (without parser) took 5655.04ms. Allocated memory was 201.3MB in the beginning and 260.0MB in the end (delta: 58.7MB). Free memory was 155.1MB in the beginning and 73.0MB in the end (delta: 82.1MB). Peak memory consumption was 138.3MB. Max. memory is 16.1GB. [2025-02-08 05:32:54,610 INFO L158 Benchmark]: CDTParser took 0.39ms. Allocated memory is still 201.3MB. Free memory is still 115.7MB. There was no memory consumed. Max. memory is 16.1GB. [2025-02-08 05:32:54,610 INFO L158 Benchmark]: CACSL2BoogieTranslator took 531.17ms. Allocated memory is still 201.3MB. Free memory was 155.1MB in the beginning and 122.9MB in the end (delta: 32.2MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. [2025-02-08 05:32:54,611 INFO L158 Benchmark]: Boogie Procedure Inliner took 60.24ms. Allocated memory is still 201.3MB. Free memory was 122.9MB in the beginning and 119.2MB in the end (delta: 3.7MB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-08 05:32:54,611 INFO L158 Benchmark]: Boogie Preprocessor took 48.70ms. Allocated memory is still 201.3MB. Free memory was 119.2MB in the beginning and 116.3MB in the end (delta: 2.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-02-08 05:32:54,611 INFO L158 Benchmark]: IcfgBuilder took 681.24ms. Allocated memory is still 201.3MB. Free memory was 116.0MB in the beginning and 81.2MB in the end (delta: 34.7MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. [2025-02-08 05:32:54,611 INFO L158 Benchmark]: TraceAbstraction took 4256.89ms. Allocated memory was 201.3MB in the beginning and 260.0MB in the end (delta: 58.7MB). Free memory was 80.5MB in the beginning and 78.2MB in the end (delta: 2.3MB). Peak memory consumption was 62.8MB. Max. memory is 16.1GB. [2025-02-08 05:32:54,611 INFO L158 Benchmark]: Witness Printer took 69.59ms. Allocated memory is still 260.0MB. Free memory was 78.2MB in the beginning and 73.0MB in the end (delta: 5.3MB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-08 05:32:54,612 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.39ms. Allocated memory is still 201.3MB. Free memory is still 115.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 531.17ms. Allocated memory is still 201.3MB. Free memory was 155.1MB in the beginning and 122.9MB in the end (delta: 32.2MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 60.24ms. Allocated memory is still 201.3MB. Free memory was 122.9MB in the beginning and 119.2MB in the end (delta: 3.7MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 48.70ms. Allocated memory is still 201.3MB. Free memory was 119.2MB in the beginning and 116.3MB in the end (delta: 2.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 681.24ms. Allocated memory is still 201.3MB. Free memory was 116.0MB in the beginning and 81.2MB in the end (delta: 34.7MB). Peak memory consumption was 33.6MB. Max. memory is 16.1GB. * TraceAbstraction took 4256.89ms. Allocated memory was 201.3MB in the beginning and 260.0MB in the end (delta: 58.7MB). Free memory was 80.5MB in the beginning and 78.2MB in the end (delta: 2.3MB). Peak memory consumption was 62.8MB. Max. memory is 16.1GB. * Witness Printer took 69.59ms. Allocated memory is still 260.0MB. Free memory was 78.2MB in the beginning and 73.0MB in the end (delta: 5.3MB). There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 1037]: there are no data races For all program executions holds that there are no data races at this location - PositiveResult [Line: 1040]: there are no data races For all program executions holds that there are no data races at this location - PositiveResult [Line: 1040]: there are no data races For all program executions holds that there are no data races at this location - PositiveResult [Line: 1041]: there are no data races For all program executions holds that there are no data races at this location - PositiveResult [Line: 1006]: there are no data races For all program executions holds that there are no data races at this location - PositiveResult [Line: 1007]: there are no data races For all program executions holds that there are no data races at this location - PositiveResult [Line: 1011]: there are no data races For all program executions holds that there are no data races at this location - PositiveResult [Line: 1006]: there are no data races For all program executions holds that there are no data races at this location - PositiveResult [Line: 1007]: there are no data races For all program executions holds that there are no data races at this location - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 4 procedures, 383 locations, 19 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: 4.1s, OverallIterations: 5, TraceHistogramMax: 1, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 2.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.1s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 558 SdHoareTripleChecker+Valid, 1.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 337 mSDsluCounter, 21 SdHoareTripleChecker+Invalid, 0.9s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 113 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1094 IncrementalHoareTripleChecker+Invalid, 1207 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 113 mSolverCounterUnsat, 21 mSDtfsCounter, 1094 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 24 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=642occurred in iteration=1, InterpolantAutomatonStates: 24, 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, 1.6s InterpolantComputationTime, 610 NumberOfCodeBlocks, 610 NumberOfCodeBlocksAsserted, 5 NumberOfCheckSat, 605 ConstructedInterpolants, 0 QuantifiedInterpolants, 860 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 5 InterpolantComputations, 5 PerfectInterpolantSequences, 1/1 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, ConComCheckerStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 14 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2025-02-08 05:32:54,626 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE