./Ultimate.py --spec /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/properties/no-data-race.prp --file /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-race-challenges/per-thread-struct-in-array.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for data races Using default analysis Version 84cfde4a Calling Ultimate with: /root/.sdkman/candidates/java/current/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-race-challenges/per-thread-struct-in-array.i -s /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/svcomp-DataRace-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-clean/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 0026ab1092a8a0465a20b39c2dea92fa9c4dc52098c477016ebc8544f5aaf0f0 --- Real Ultimate output --- This is Ultimate 0.2.5-dev-84cfde4 [2024-10-11 17:20:28,209 INFO L188 SettingsManager]: Resetting all preferences to default values... [2024-10-11 17:20:28,258 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/config/svcomp-DataRace-32bit-Automizer_Default.epf [2024-10-11 17:20:28,264 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2024-10-11 17:20:28,265 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2024-10-11 17:20:28,287 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2024-10-11 17:20:28,289 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2024-10-11 17:20:28,290 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2024-10-11 17:20:28,290 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2024-10-11 17:20:28,291 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2024-10-11 17:20:28,291 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2024-10-11 17:20:28,292 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2024-10-11 17:20:28,292 INFO L153 SettingsManager]: * Use SBE=true [2024-10-11 17:20:28,294 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2024-10-11 17:20:28,294 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2024-10-11 17:20:28,294 INFO L153 SettingsManager]: * sizeof long=4 [2024-10-11 17:20:28,295 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2024-10-11 17:20:28,295 INFO L153 SettingsManager]: * sizeof POINTER=4 [2024-10-11 17:20:28,298 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2024-10-11 17:20:28,298 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2024-10-11 17:20:28,298 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2024-10-11 17:20:28,298 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2024-10-11 17:20:28,299 INFO L153 SettingsManager]: * Check absence of data races in concurrent programs=true [2024-10-11 17:20:28,299 INFO L153 SettingsManager]: * Allow undefined functions=false [2024-10-11 17:20:28,299 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2024-10-11 17:20:28,299 INFO L153 SettingsManager]: * sizeof long double=12 [2024-10-11 17:20:28,299 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2024-10-11 17:20:28,300 INFO L153 SettingsManager]: * Use constant arrays=true [2024-10-11 17:20:28,300 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2024-10-11 17:20:28,300 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2024-10-11 17:20:28,300 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2024-10-11 17:20:28,300 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-11 17:20:28,301 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2024-10-11 17:20:28,301 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2024-10-11 17:20:28,301 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2024-10-11 17:20:28,301 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2024-10-11 17:20:28,301 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2024-10-11 17:20:28,302 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2024-10-11 17:20:28,302 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2024-10-11 17:20:28,302 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2024-10-11 17:20:28,302 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2024-10-11 17:20:28,303 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate-clean/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 -> 0026ab1092a8a0465a20b39c2dea92fa9c4dc52098c477016ebc8544f5aaf0f0 [2024-10-11 17:20:28,502 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2024-10-11 17:20:28,519 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2024-10-11 17:20:28,521 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2024-10-11 17:20:28,522 INFO L270 PluginConnector]: Initializing CDTParser... [2024-10-11 17:20:28,522 INFO L274 PluginConnector]: CDTParser initialized [2024-10-11 17:20:28,523 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-race-challenges/per-thread-struct-in-array.i [2024-10-11 17:20:29,769 INFO L533 CDTParser]: Created temporary CDT project at NULL [2024-10-11 17:20:29,997 INFO L384 CDTParser]: Found 1 translation units. [2024-10-11 17:20:29,997 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-race-challenges/per-thread-struct-in-array.i [2024-10-11 17:20:30,009 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/738e3b98a/1b413c5821044e9083c6579bf3c68085/FLAGa771f27e3 [2024-10-11 17:20:30,343 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/data/738e3b98a/1b413c5821044e9083c6579bf3c68085 [2024-10-11 17:20:30,345 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2024-10-11 17:20:30,346 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2024-10-11 17:20:30,346 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2024-10-11 17:20:30,347 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2024-10-11 17:20:30,354 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2024-10-11 17:20:30,355 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,356 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@54e1c019 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30, skipping insertion in model container [2024-10-11 17:20:30,357 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,403 INFO L175 MainTranslator]: Built tables and reachable declarations [2024-10-11 17:20:30,726 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-11 17:20:30,731 INFO L200 MainTranslator]: Completed pre-run [2024-10-11 17:20:30,773 INFO L210 PostProcessor]: Analyzing one entry point: main [2024-10-11 17:20:30,847 INFO L204 MainTranslator]: Completed translation [2024-10-11 17:20:30,848 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30 WrapperNode [2024-10-11 17:20:30,848 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2024-10-11 17:20:30,849 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2024-10-11 17:20:30,849 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2024-10-11 17:20:30,849 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2024-10-11 17:20:30,854 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,868 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,889 INFO L138 Inliner]: procedures = 261, calls = 11, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 61 [2024-10-11 17:20:30,890 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2024-10-11 17:20:30,891 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2024-10-11 17:20:30,891 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2024-10-11 17:20:30,891 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2024-10-11 17:20:30,898 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,898 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,901 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,901 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,906 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,908 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,909 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,910 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,911 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2024-10-11 17:20:30,912 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2024-10-11 17:20:30,912 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2024-10-11 17:20:30,912 INFO L274 PluginConnector]: RCFGBuilder initialized [2024-10-11 17:20:30,913 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30" (1/1) ... [2024-10-11 17:20:30,919 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2024-10-11 17:20:30,927 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 17:20:30,939 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2024-10-11 17:20:30,941 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2024-10-11 17:20:30,973 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2024-10-11 17:20:30,973 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2024-10-11 17:20:30,974 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2024-10-11 17:20:30,974 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2024-10-11 17:20:30,974 INFO L130 BoogieDeclarations]: Found specification of procedure thread [2024-10-11 17:20:30,974 INFO L138 BoogieDeclarations]: Found implementation of procedure thread [2024-10-11 17:20:30,974 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2024-10-11 17:20:30,974 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2024-10-11 17:20:30,975 WARN L207 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2024-10-11 17:20:31,081 INFO L238 CfgBuilder]: Building ICFG [2024-10-11 17:20:31,083 INFO L264 CfgBuilder]: Building CFG for each procedure with an implementation [2024-10-11 17:20:31,242 INFO L283 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2024-10-11 17:20:31,242 INFO L287 CfgBuilder]: Performing block encoding [2024-10-11 17:20:31,252 INFO L309 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2024-10-11 17:20:31,252 INFO L314 CfgBuilder]: Removed 2 assume(true) statements. [2024-10-11 17:20:31,253 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 05:20:31 BoogieIcfgContainer [2024-10-11 17:20:31,253 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2024-10-11 17:20:31,256 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2024-10-11 17:20:31,256 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2024-10-11 17:20:31,259 INFO L274 PluginConnector]: TraceAbstraction initialized [2024-10-11 17:20:31,259 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 11.10 05:20:30" (1/3) ... [2024-10-11 17:20:31,259 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@23b74eda and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 11.10 05:20:31, skipping insertion in model container [2024-10-11 17:20:31,259 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.10 05:20:30" (2/3) ... [2024-10-11 17:20:31,260 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@23b74eda and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 11.10 05:20:31, skipping insertion in model container [2024-10-11 17:20:31,260 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.10 05:20:31" (3/3) ... [2024-10-11 17:20:31,261 INFO L112 eAbstractionObserver]: Analyzing ICFG per-thread-struct-in-array.i [2024-10-11 17:20:31,273 INFO L209 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2024-10-11 17:20:31,273 INFO L149 ceAbstractionStarter]: Applying trace abstraction to program that has 3 error locations. [2024-10-11 17:20:31,273 INFO L484 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2024-10-11 17:20:31,314 INFO L143 ThreadInstanceAdder]: Constructed 1 joinOtherThreadTransitions. [2024-10-11 17:20:31,339 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 83 places, 84 transitions, 175 flow [2024-10-11 17:20:31,375 INFO L124 PetriNetUnfolderBase]: 6/116 cut-off events. [2024-10-11 17:20:31,375 INFO L125 PetriNetUnfolderBase]: For 1/1 co-relation queries the response was YES. [2024-10-11 17:20:31,380 INFO L83 FinitePrefix]: Finished finitePrefix Result has 121 conditions, 116 events. 6/116 cut-off events. For 1/1 co-relation queries the response was YES. Maximal size of possible extension queue 6. Compared 195 event pairs, 0 based on Foata normal form. 0/102 useless extension candidates. Maximal degree in co-relation 55. Up to 4 conditions per place. [2024-10-11 17:20:31,381 INFO L82 GeneralOperation]: Start removeDead. Operand has 83 places, 84 transitions, 175 flow [2024-10-11 17:20:31,385 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 83 places, 84 transitions, 175 flow [2024-10-11 17:20:31,392 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-10-11 17:20:31,397 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;@c3216e5, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-10-11 17:20:31,397 INFO L334 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2024-10-11 17:20:31,410 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-10-11 17:20:31,410 INFO L124 PetriNetUnfolderBase]: 3/49 cut-off events. [2024-10-11 17:20:31,410 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-10-11 17:20:31,410 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:31,411 INFO L204 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] [2024-10-11 17:20:31,411 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-10-11 17:20:31,415 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:31,415 INFO L85 PathProgramCache]: Analyzing trace with hash -1393147291, now seen corresponding path program 1 times [2024-10-11 17:20:31,421 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:31,422 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1551808076] [2024-10-11 17:20:31,422 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:31,422 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:31,524 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:32,081 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:32,081 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:20:32,081 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1551808076] [2024-10-11 17:20:32,082 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1551808076] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 17:20:32,082 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 17:20:32,082 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-11 17:20:32,084 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1403394683] [2024-10-11 17:20:32,084 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 17:20:32,091 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-10-11 17:20:32,095 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:20:32,116 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-10-11 17:20:32,116 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2024-10-11 17:20:32,241 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 57 out of 84 [2024-10-11 17:20:32,243 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 83 places, 84 transitions, 175 flow. Second operand has 6 states, 6 states have (on average 58.5) internal successors, (351), 6 states have internal predecessors, (351), 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) [2024-10-11 17:20:32,244 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:20:32,245 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 57 of 84 [2024-10-11 17:20:32,246 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:20:32,385 INFO L124 PetriNetUnfolderBase]: 71/365 cut-off events. [2024-10-11 17:20:32,385 INFO L125 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2024-10-11 17:20:32,386 INFO L83 FinitePrefix]: Finished finitePrefix Result has 556 conditions, 365 events. 71/365 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 25. Compared 1802 event pairs, 32 based on Foata normal form. 13/339 useless extension candidates. Maximal degree in co-relation 471. Up to 151 conditions per place. [2024-10-11 17:20:32,390 INFO L140 encePairwiseOnDemand]: 70/84 looper letters, 23 selfloop transitions, 22 changer transitions 1/102 dead transitions. [2024-10-11 17:20:32,390 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 88 places, 102 transitions, 301 flow [2024-10-11 17:20:32,391 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-10-11 17:20:32,393 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-10-11 17:20:32,399 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 391 transitions. [2024-10-11 17:20:32,401 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.7757936507936508 [2024-10-11 17:20:32,402 INFO L175 Difference]: Start difference. First operand has 83 places, 84 transitions, 175 flow. Second operand 6 states and 391 transitions. [2024-10-11 17:20:32,403 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 88 places, 102 transitions, 301 flow [2024-10-11 17:20:32,405 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 88 places, 102 transitions, 301 flow, removed 0 selfloop flow, removed 0 redundant places. [2024-10-11 17:20:32,409 INFO L231 Difference]: Finished difference. Result has 93 places, 101 transitions, 317 flow [2024-10-11 17:20:32,411 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=84, PETRI_DIFFERENCE_MINUEND_FLOW=169, PETRI_DIFFERENCE_MINUEND_PLACES=83, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=81, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=71, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=317, PETRI_PLACES=93, PETRI_TRANSITIONS=101} [2024-10-11 17:20:32,415 INFO L277 CegarLoopForPetriNet]: 83 programPoint places, 10 predicate places. [2024-10-11 17:20:32,415 INFO L471 AbstractCegarLoop]: Abstraction has has 93 places, 101 transitions, 317 flow [2024-10-11 17:20:32,416 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 58.5) internal successors, (351), 6 states have internal predecessors, (351), 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) [2024-10-11 17:20:32,416 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:32,416 INFO L204 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] [2024-10-11 17:20:32,416 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2024-10-11 17:20:32,417 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-10-11 17:20:32,417 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:32,417 INFO L85 PathProgramCache]: Analyzing trace with hash 42417353, now seen corresponding path program 1 times [2024-10-11 17:20:32,418 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:32,418 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [878929448] [2024-10-11 17:20:32,419 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:32,419 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:32,440 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:32,494 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:32,494 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:20:32,494 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [878929448] [2024-10-11 17:20:32,495 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [878929448] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 17:20:32,495 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 17:20:32,495 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-11 17:20:32,495 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [530399899] [2024-10-11 17:20:32,495 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 17:20:32,496 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-10-11 17:20:32,496 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:20:32,496 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-10-11 17:20:32,496 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-10-11 17:20:32,562 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 68 out of 84 [2024-10-11 17:20:32,563 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 93 places, 101 transitions, 317 flow. Second operand has 5 states, 5 states have (on average 69.4) internal successors, (347), 5 states have internal predecessors, (347), 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) [2024-10-11 17:20:32,563 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:20:32,563 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 68 of 84 [2024-10-11 17:20:32,563 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:20:32,629 INFO L124 PetriNetUnfolderBase]: 33/232 cut-off events. [2024-10-11 17:20:32,629 INFO L125 PetriNetUnfolderBase]: For 31/40 co-relation queries the response was YES. [2024-10-11 17:20:32,631 INFO L83 FinitePrefix]: Finished finitePrefix Result has 406 conditions, 232 events. 33/232 cut-off events. For 31/40 co-relation queries the response was YES. Maximal size of possible extension queue 14. Compared 753 event pairs, 0 based on Foata normal form. 2/223 useless extension candidates. Maximal degree in co-relation 304. Up to 45 conditions per place. [2024-10-11 17:20:32,631 INFO L140 encePairwiseOnDemand]: 76/84 looper letters, 11 selfloop transitions, 2 changer transitions 5/106 dead transitions. [2024-10-11 17:20:32,632 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 97 places, 106 transitions, 363 flow [2024-10-11 17:20:32,632 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-10-11 17:20:32,633 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-10-11 17:20:32,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 427 transitions. [2024-10-11 17:20:32,634 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.8472222222222222 [2024-10-11 17:20:32,635 INFO L175 Difference]: Start difference. First operand has 93 places, 101 transitions, 317 flow. Second operand 6 states and 427 transitions. [2024-10-11 17:20:32,635 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 97 places, 106 transitions, 363 flow [2024-10-11 17:20:32,641 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 97 places, 106 transitions, 363 flow, removed 0 selfloop flow, removed 0 redundant places. [2024-10-11 17:20:32,642 INFO L231 Difference]: Finished difference. Result has 101 places, 101 transitions, 335 flow [2024-10-11 17:20:32,642 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=84, PETRI_DIFFERENCE_MINUEND_FLOW=317, PETRI_DIFFERENCE_MINUEND_PLACES=92, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=101, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=99, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=335, PETRI_PLACES=101, PETRI_TRANSITIONS=101} [2024-10-11 17:20:32,643 INFO L277 CegarLoopForPetriNet]: 83 programPoint places, 18 predicate places. [2024-10-11 17:20:32,643 INFO L471 AbstractCegarLoop]: Abstraction has has 101 places, 101 transitions, 335 flow [2024-10-11 17:20:32,644 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 69.4) internal successors, (347), 5 states have internal predecessors, (347), 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) [2024-10-11 17:20:32,644 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:32,644 INFO L204 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] [2024-10-11 17:20:32,644 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2024-10-11 17:20:32,644 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting threadErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-10-11 17:20:32,645 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:32,645 INFO L85 PathProgramCache]: Analyzing trace with hash -1417991206, now seen corresponding path program 1 times [2024-10-11 17:20:32,645 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:32,645 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [947548122] [2024-10-11 17:20:32,645 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:32,645 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:32,670 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:32,904 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:32,904 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:20:32,904 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [947548122] [2024-10-11 17:20:32,904 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [947548122] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 17:20:32,904 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 17:20:32,905 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-11 17:20:32,905 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [569919994] [2024-10-11 17:20:32,905 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 17:20:32,905 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-10-11 17:20:32,905 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:20:32,906 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-10-11 17:20:32,906 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2024-10-11 17:20:32,962 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 62 out of 84 [2024-10-11 17:20:32,962 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 101 places, 101 transitions, 335 flow. Second operand has 6 states, 6 states have (on average 64.0) internal successors, (384), 6 states have internal predecessors, (384), 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) [2024-10-11 17:20:32,962 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:20:32,963 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 62 of 84 [2024-10-11 17:20:32,963 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:20:33,103 INFO L124 PetriNetUnfolderBase]: 130/477 cut-off events. [2024-10-11 17:20:33,104 INFO L125 PetriNetUnfolderBase]: For 139/151 co-relation queries the response was YES. [2024-10-11 17:20:33,106 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1085 conditions, 477 events. 130/477 cut-off events. For 139/151 co-relation queries the response was YES. Maximal size of possible extension queue 36. Compared 2469 event pairs, 23 based on Foata normal form. 0/447 useless extension candidates. Maximal degree in co-relation 992. Up to 238 conditions per place. [2024-10-11 17:20:33,108 INFO L140 encePairwiseOnDemand]: 69/84 looper letters, 33 selfloop transitions, 48 changer transitions 8/144 dead transitions. [2024-10-11 17:20:33,110 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 103 places, 144 transitions, 653 flow [2024-10-11 17:20:33,110 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-10-11 17:20:33,110 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-10-11 17:20:33,111 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 429 transitions. [2024-10-11 17:20:33,111 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.8511904761904762 [2024-10-11 17:20:33,111 INFO L175 Difference]: Start difference. First operand has 101 places, 101 transitions, 335 flow. Second operand 6 states and 429 transitions. [2024-10-11 17:20:33,111 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 103 places, 144 transitions, 653 flow [2024-10-11 17:20:33,115 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 98 places, 144 transitions, 639 flow, removed 5 selfloop flow, removed 5 redundant places. [2024-10-11 17:20:33,119 INFO L231 Difference]: Finished difference. Result has 103 places, 136 transitions, 693 flow [2024-10-11 17:20:33,120 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=84, PETRI_DIFFERENCE_MINUEND_FLOW=321, PETRI_DIFFERENCE_MINUEND_PLACES=93, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=101, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=13, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=77, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=693, PETRI_PLACES=103, PETRI_TRANSITIONS=136} [2024-10-11 17:20:33,120 INFO L277 CegarLoopForPetriNet]: 83 programPoint places, 20 predicate places. [2024-10-11 17:20:33,121 INFO L471 AbstractCegarLoop]: Abstraction has has 103 places, 136 transitions, 693 flow [2024-10-11 17:20:33,121 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 64.0) internal successors, (384), 6 states have internal predecessors, (384), 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) [2024-10-11 17:20:33,122 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:33,122 INFO L204 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] [2024-10-11 17:20:33,122 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2024-10-11 17:20:33,122 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-10-11 17:20:33,123 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:33,123 INFO L85 PathProgramCache]: Analyzing trace with hash -349533219, now seen corresponding path program 1 times [2024-10-11 17:20:33,123 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:33,123 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [834432817] [2024-10-11 17:20:33,124 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:33,124 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:33,139 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:33,309 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-10-11 17:20:33,309 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:20:33,309 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [834432817] [2024-10-11 17:20:33,309 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [834432817] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 17:20:33,309 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 17:20:33,309 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-11 17:20:33,309 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1741198694] [2024-10-11 17:20:33,309 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 17:20:33,310 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-10-11 17:20:33,310 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:20:33,310 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-10-11 17:20:33,310 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2024-10-11 17:20:33,404 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 59 out of 84 [2024-10-11 17:20:33,405 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 103 places, 136 transitions, 693 flow. Second operand has 6 states, 6 states have (on average 61.166666666666664) internal successors, (367), 6 states have internal predecessors, (367), 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) [2024-10-11 17:20:33,405 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:20:33,405 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 59 of 84 [2024-10-11 17:20:33,406 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:20:33,539 INFO L124 PetriNetUnfolderBase]: 142/505 cut-off events. [2024-10-11 17:20:33,539 INFO L125 PetriNetUnfolderBase]: For 468/492 co-relation queries the response was YES. [2024-10-11 17:20:33,541 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1574 conditions, 505 events. 142/505 cut-off events. For 468/492 co-relation queries the response was YES. Maximal size of possible extension queue 46. Compared 2803 event pairs, 10 based on Foata normal form. 0/496 useless extension candidates. Maximal degree in co-relation 1464. Up to 241 conditions per place. [2024-10-11 17:20:33,543 INFO L140 encePairwiseOnDemand]: 73/84 looper letters, 73 selfloop transitions, 25 changer transitions 13/164 dead transitions. [2024-10-11 17:20:33,543 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 100 places, 164 transitions, 1076 flow [2024-10-11 17:20:33,544 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-10-11 17:20:33,544 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-10-11 17:20:33,545 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 397 transitions. [2024-10-11 17:20:33,545 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.7876984126984127 [2024-10-11 17:20:33,545 INFO L175 Difference]: Start difference. First operand has 103 places, 136 transitions, 693 flow. Second operand 6 states and 397 transitions. [2024-10-11 17:20:33,545 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 100 places, 164 transitions, 1076 flow [2024-10-11 17:20:33,551 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 100 places, 164 transitions, 1058 flow, removed 9 selfloop flow, removed 0 redundant places. [2024-10-11 17:20:33,554 INFO L231 Difference]: Finished difference. Result has 105 places, 151 transitions, 910 flow [2024-10-11 17:20:33,554 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=84, PETRI_DIFFERENCE_MINUEND_FLOW=675, PETRI_DIFFERENCE_MINUEND_PLACES=95, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=136, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=9, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=123, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=910, PETRI_PLACES=105, PETRI_TRANSITIONS=151} [2024-10-11 17:20:33,554 INFO L277 CegarLoopForPetriNet]: 83 programPoint places, 22 predicate places. [2024-10-11 17:20:33,555 INFO L471 AbstractCegarLoop]: Abstraction has has 105 places, 151 transitions, 910 flow [2024-10-11 17:20:33,555 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 61.166666666666664) internal successors, (367), 6 states have internal predecessors, (367), 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) [2024-10-11 17:20:33,555 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:33,555 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 17:20:33,555 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2024-10-11 17:20:33,556 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2024-10-11 17:20:33,556 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:33,556 INFO L85 PathProgramCache]: Analyzing trace with hash 496541332, now seen corresponding path program 1 times [2024-10-11 17:20:33,556 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:33,557 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [605141274] [2024-10-11 17:20:33,557 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:33,557 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:33,577 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-11 17:20:33,578 INFO L356 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2024-10-11 17:20:33,586 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2024-10-11 17:20:33,605 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2024-10-11 17:20:33,605 INFO L325 BasicCegarLoop]: Counterexample is feasible [2024-10-11 17:20:33,606 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (4 of 5 remaining) [2024-10-11 17:20:33,608 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE (3 of 5 remaining) [2024-10-11 17:20:33,608 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE (2 of 5 remaining) [2024-10-11 17:20:33,608 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location threadErr0ASSERT_VIOLATIONDATA_RACE (1 of 5 remaining) [2024-10-11 17:20:33,609 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location threadErr0ASSERT_VIOLATIONDATA_RACE (0 of 5 remaining) [2024-10-11 17:20:33,609 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2024-10-11 17:20:33,609 INFO L407 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1] [2024-10-11 17:20:33,610 WARN L239 ceAbstractionStarter]: 1 thread instances were not sufficient, I will increase this number and restart the analysis [2024-10-11 17:20:33,610 INFO L484 ceAbstractionStarter]: Constructing petrified ICFG for 2 thread instances. [2024-10-11 17:20:33,631 INFO L143 ThreadInstanceAdder]: Constructed 2 joinOtherThreadTransitions. [2024-10-11 17:20:33,636 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 102 places, 102 transitions, 220 flow [2024-10-11 17:20:33,649 INFO L124 PetriNetUnfolderBase]: 11/199 cut-off events. [2024-10-11 17:20:33,649 INFO L125 PetriNetUnfolderBase]: For 6/6 co-relation queries the response was YES. [2024-10-11 17:20:33,650 INFO L83 FinitePrefix]: Finished finitePrefix Result has 211 conditions, 199 events. 11/199 cut-off events. For 6/6 co-relation queries the response was YES. Maximal size of possible extension queue 7. Compared 416 event pairs, 0 based on Foata normal form. 0/175 useless extension candidates. Maximal degree in co-relation 118. Up to 8 conditions per place. [2024-10-11 17:20:33,650 INFO L82 GeneralOperation]: Start removeDead. Operand has 102 places, 102 transitions, 220 flow [2024-10-11 17:20:33,651 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 102 places, 102 transitions, 220 flow [2024-10-11 17:20:33,651 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2024-10-11 17:20:33,653 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;@c3216e5, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2024-10-11 17:20:33,653 INFO L334 AbstractCegarLoop]: Starting to check reachability of 6 error locations. [2024-10-11 17:20:33,655 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2024-10-11 17:20:33,655 INFO L124 PetriNetUnfolderBase]: 3/49 cut-off events. [2024-10-11 17:20:33,655 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2024-10-11 17:20:33,655 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:33,656 INFO L204 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] [2024-10-11 17:20:33,656 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:20:33,656 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:33,656 INFO L85 PathProgramCache]: Analyzing trace with hash -496559221, now seen corresponding path program 1 times [2024-10-11 17:20:33,656 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:33,656 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [991298185] [2024-10-11 17:20:33,656 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:33,657 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:33,668 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:33,811 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:33,811 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:20:33,812 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [991298185] [2024-10-11 17:20:33,812 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [991298185] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 17:20:33,812 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 17:20:33,812 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-11 17:20:33,812 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1860824297] [2024-10-11 17:20:33,812 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 17:20:33,813 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-10-11 17:20:33,813 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:20:33,813 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-10-11 17:20:33,813 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2024-10-11 17:20:33,929 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 69 out of 102 [2024-10-11 17:20:33,929 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 102 places, 102 transitions, 220 flow. Second operand has 6 states, 6 states have (on average 70.5) internal successors, (423), 6 states have internal predecessors, (423), 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) [2024-10-11 17:20:33,929 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:20:33,930 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 69 of 102 [2024-10-11 17:20:33,930 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:20:34,177 INFO L124 PetriNetUnfolderBase]: 903/2672 cut-off events. [2024-10-11 17:20:34,177 INFO L125 PetriNetUnfolderBase]: For 78/78 co-relation queries the response was YES. [2024-10-11 17:20:34,182 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4290 conditions, 2672 events. 903/2672 cut-off events. For 78/78 co-relation queries the response was YES. Maximal size of possible extension queue 144. Compared 20575 event pairs, 529 based on Foata normal form. 68/2471 useless extension candidates. Maximal degree in co-relation 2356. Up to 1385 conditions per place. [2024-10-11 17:20:34,191 INFO L140 encePairwiseOnDemand]: 84/102 looper letters, 30 selfloop transitions, 38 changer transitions 1/137 dead transitions. [2024-10-11 17:20:34,191 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 107 places, 137 transitions, 431 flow [2024-10-11 17:20:34,192 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-10-11 17:20:34,192 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-10-11 17:20:34,192 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 486 transitions. [2024-10-11 17:20:34,193 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.7941176470588235 [2024-10-11 17:20:34,193 INFO L175 Difference]: Start difference. First operand has 102 places, 102 transitions, 220 flow. Second operand 6 states and 486 transitions. [2024-10-11 17:20:34,193 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 107 places, 137 transitions, 431 flow [2024-10-11 17:20:34,194 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 107 places, 137 transitions, 431 flow, removed 0 selfloop flow, removed 0 redundant places. [2024-10-11 17:20:34,195 INFO L231 Difference]: Finished difference. Result has 112 places, 135 transitions, 466 flow [2024-10-11 17:20:34,196 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=102, PETRI_DIFFERENCE_MINUEND_FLOW=214, PETRI_DIFFERENCE_MINUEND_PLACES=102, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=99, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=9, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=85, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=466, PETRI_PLACES=112, PETRI_TRANSITIONS=135} [2024-10-11 17:20:34,196 INFO L277 CegarLoopForPetriNet]: 102 programPoint places, 10 predicate places. [2024-10-11 17:20:34,196 INFO L471 AbstractCegarLoop]: Abstraction has has 112 places, 135 transitions, 466 flow [2024-10-11 17:20:34,197 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 70.5) internal successors, (423), 6 states have internal predecessors, (423), 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) [2024-10-11 17:20:34,197 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:34,197 INFO L204 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] [2024-10-11 17:20:34,197 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2024-10-11 17:20:34,197 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:20:34,197 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:34,198 INFO L85 PathProgramCache]: Analyzing trace with hash 939005423, now seen corresponding path program 1 times [2024-10-11 17:20:34,198 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:34,198 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [525537970] [2024-10-11 17:20:34,198 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:34,198 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:34,205 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:34,247 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:34,248 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:20:34,248 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [525537970] [2024-10-11 17:20:34,248 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [525537970] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 17:20:34,248 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 17:20:34,248 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-11 17:20:34,248 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [222289941] [2024-10-11 17:20:34,248 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 17:20:34,249 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2024-10-11 17:20:34,249 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:20:34,249 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2024-10-11 17:20:34,249 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2024-10-11 17:20:34,314 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 84 out of 102 [2024-10-11 17:20:34,314 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 112 places, 135 transitions, 466 flow. Second operand has 5 states, 5 states have (on average 85.4) internal successors, (427), 5 states have internal predecessors, (427), 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) [2024-10-11 17:20:34,315 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:20:34,315 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 84 of 102 [2024-10-11 17:20:34,315 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:20:34,420 INFO L124 PetriNetUnfolderBase]: 423/1467 cut-off events. [2024-10-11 17:20:34,420 INFO L125 PetriNetUnfolderBase]: For 333/397 co-relation queries the response was YES. [2024-10-11 17:20:34,425 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2742 conditions, 1467 events. 423/1467 cut-off events. For 333/397 co-relation queries the response was YES. Maximal size of possible extension queue 79. Compared 9716 event pairs, 116 based on Foata normal form. 2/1393 useless extension candidates. Maximal degree in co-relation 2171. Up to 520 conditions per place. [2024-10-11 17:20:34,429 INFO L140 encePairwiseOnDemand]: 94/102 looper letters, 14 selfloop transitions, 2 changer transitions 5/141 dead transitions. [2024-10-11 17:20:34,429 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 116 places, 141 transitions, 520 flow [2024-10-11 17:20:34,429 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-10-11 17:20:34,430 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-10-11 17:20:34,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 526 transitions. [2024-10-11 17:20:34,431 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.8594771241830066 [2024-10-11 17:20:34,431 INFO L175 Difference]: Start difference. First operand has 112 places, 135 transitions, 466 flow. Second operand 6 states and 526 transitions. [2024-10-11 17:20:34,431 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 116 places, 141 transitions, 520 flow [2024-10-11 17:20:34,433 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 116 places, 141 transitions, 520 flow, removed 0 selfloop flow, removed 0 redundant places. [2024-10-11 17:20:34,434 INFO L231 Difference]: Finished difference. Result has 120 places, 136 transitions, 488 flow [2024-10-11 17:20:34,434 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=102, PETRI_DIFFERENCE_MINUEND_FLOW=466, PETRI_DIFFERENCE_MINUEND_PLACES=111, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=135, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=133, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=488, PETRI_PLACES=120, PETRI_TRANSITIONS=136} [2024-10-11 17:20:34,435 INFO L277 CegarLoopForPetriNet]: 102 programPoint places, 18 predicate places. [2024-10-11 17:20:34,435 INFO L471 AbstractCegarLoop]: Abstraction has has 120 places, 136 transitions, 488 flow [2024-10-11 17:20:34,435 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 85.4) internal successors, (427), 5 states have internal predecessors, (427), 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) [2024-10-11 17:20:34,435 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:34,435 INFO L204 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] [2024-10-11 17:20:34,436 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2024-10-11 17:20:34,436 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting threadErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:20:34,436 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:34,436 INFO L85 PathProgramCache]: Analyzing trace with hash 599346800, now seen corresponding path program 1 times [2024-10-11 17:20:34,436 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:34,436 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2099596916] [2024-10-11 17:20:34,436 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:34,436 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:34,448 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:34,608 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:34,609 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:20:34,609 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2099596916] [2024-10-11 17:20:34,609 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2099596916] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 17:20:34,609 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 17:20:34,609 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-11 17:20:34,610 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [63805017] [2024-10-11 17:20:34,610 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 17:20:34,610 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-10-11 17:20:34,610 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:20:34,610 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-10-11 17:20:34,611 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2024-10-11 17:20:34,674 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 74 out of 102 [2024-10-11 17:20:34,675 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 120 places, 136 transitions, 488 flow. Second operand has 6 states, 6 states have (on average 76.0) internal successors, (456), 6 states have internal predecessors, (456), 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) [2024-10-11 17:20:34,675 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:20:34,675 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 74 of 102 [2024-10-11 17:20:34,675 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:20:35,188 INFO L124 PetriNetUnfolderBase]: 1867/4616 cut-off events. [2024-10-11 17:20:35,188 INFO L125 PetriNetUnfolderBase]: For 1532/1604 co-relation queries the response was YES. [2024-10-11 17:20:35,197 INFO L83 FinitePrefix]: Finished finitePrefix Result has 10873 conditions, 4616 events. 1867/4616 cut-off events. For 1532/1604 co-relation queries the response was YES. Maximal size of possible extension queue 216. Compared 36423 event pairs, 439 based on Foata normal form. 0/4334 useless extension candidates. Maximal degree in co-relation 10779. Up to 2583 conditions per place. [2024-10-11 17:20:35,213 INFO L140 encePairwiseOnDemand]: 83/102 looper letters, 63 selfloop transitions, 92 changer transitions 0/231 dead transitions. [2024-10-11 17:20:35,213 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 122 places, 231 transitions, 1234 flow [2024-10-11 17:20:35,214 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-10-11 17:20:35,214 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-10-11 17:20:35,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 531 transitions. [2024-10-11 17:20:35,215 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.8676470588235294 [2024-10-11 17:20:35,215 INFO L175 Difference]: Start difference. First operand has 120 places, 136 transitions, 488 flow. Second operand 6 states and 531 transitions. [2024-10-11 17:20:35,215 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 122 places, 231 transitions, 1234 flow [2024-10-11 17:20:35,220 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 118 places, 231 transitions, 1222 flow, removed 5 selfloop flow, removed 4 redundant places. [2024-10-11 17:20:35,223 INFO L231 Difference]: Finished difference. Result has 123 places, 223 transitions, 1312 flow [2024-10-11 17:20:35,224 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=102, PETRI_DIFFERENCE_MINUEND_FLOW=476, PETRI_DIFFERENCE_MINUEND_PLACES=113, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=136, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=21, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=92, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=1312, PETRI_PLACES=123, PETRI_TRANSITIONS=223} [2024-10-11 17:20:35,225 INFO L277 CegarLoopForPetriNet]: 102 programPoint places, 21 predicate places. [2024-10-11 17:20:35,225 INFO L471 AbstractCegarLoop]: Abstraction has has 123 places, 223 transitions, 1312 flow [2024-10-11 17:20:35,225 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 76.0) internal successors, (456), 6 states have internal predecessors, (456), 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) [2024-10-11 17:20:35,225 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:35,225 INFO L204 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] [2024-10-11 17:20:35,225 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2024-10-11 17:20:35,226 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:20:35,226 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:35,226 INFO L85 PathProgramCache]: Analyzing trace with hash -197796371, now seen corresponding path program 1 times [2024-10-11 17:20:35,226 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:35,226 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1890680661] [2024-10-11 17:20:35,226 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:35,227 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:35,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:35,413 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2024-10-11 17:20:35,414 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:20:35,414 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1890680661] [2024-10-11 17:20:35,414 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1890680661] provided 1 perfect and 0 imperfect interpolant sequences [2024-10-11 17:20:35,414 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2024-10-11 17:20:35,414 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2024-10-11 17:20:35,414 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [969483298] [2024-10-11 17:20:35,414 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2024-10-11 17:20:35,415 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2024-10-11 17:20:35,415 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:20:35,415 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2024-10-11 17:20:35,415 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=15, Unknown=0, NotChecked=0, Total=30 [2024-10-11 17:20:35,518 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 71 out of 102 [2024-10-11 17:20:35,518 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 123 places, 223 transitions, 1312 flow. Second operand has 6 states, 6 states have (on average 73.16666666666667) internal successors, (439), 6 states have internal predecessors, (439), 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) [2024-10-11 17:20:35,519 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:20:35,519 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 71 of 102 [2024-10-11 17:20:35,519 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:20:36,039 INFO L124 PetriNetUnfolderBase]: 2321/5558 cut-off events. [2024-10-11 17:20:36,039 INFO L125 PetriNetUnfolderBase]: For 5338/5534 co-relation queries the response was YES. [2024-10-11 17:20:36,050 INFO L83 FinitePrefix]: Finished finitePrefix Result has 17509 conditions, 5558 events. 2321/5558 cut-off events. For 5338/5534 co-relation queries the response was YES. Maximal size of possible extension queue 249. Compared 44842 event pairs, 294 based on Foata normal form. 2/5328 useless extension candidates. Maximal degree in co-relation 14216. Up to 3135 conditions per place. [2024-10-11 17:20:36,072 INFO L140 encePairwiseOnDemand]: 87/102 looper letters, 145 selfloop transitions, 76 changer transitions 0/296 dead transitions. [2024-10-11 17:20:36,072 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 128 places, 296 transitions, 2246 flow [2024-10-11 17:20:36,072 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2024-10-11 17:20:36,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2024-10-11 17:20:36,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 494 transitions. [2024-10-11 17:20:36,074 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.8071895424836601 [2024-10-11 17:20:36,074 INFO L175 Difference]: Start difference. First operand has 123 places, 223 transitions, 1312 flow. Second operand 6 states and 494 transitions. [2024-10-11 17:20:36,074 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 128 places, 296 transitions, 2246 flow [2024-10-11 17:20:36,095 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 128 places, 296 transitions, 2228 flow, removed 9 selfloop flow, removed 0 redundant places. [2024-10-11 17:20:36,098 INFO L231 Difference]: Finished difference. Result has 133 places, 294 transitions, 2152 flow [2024-10-11 17:20:36,098 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=102, PETRI_DIFFERENCE_MINUEND_FLOW=1294, PETRI_DIFFERENCE_MINUEND_PLACES=123, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=223, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=17, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=183, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=2152, PETRI_PLACES=133, PETRI_TRANSITIONS=294} [2024-10-11 17:20:36,099 INFO L277 CegarLoopForPetriNet]: 102 programPoint places, 31 predicate places. [2024-10-11 17:20:36,099 INFO L471 AbstractCegarLoop]: Abstraction has has 133 places, 294 transitions, 2152 flow [2024-10-11 17:20:36,099 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 73.16666666666667) internal successors, (439), 6 states have internal predecessors, (439), 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) [2024-10-11 17:20:36,099 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:36,099 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 17:20:36,100 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2024-10-11 17:20:36,100 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:20:36,100 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:36,100 INFO L85 PathProgramCache]: Analyzing trace with hash -701954584, now seen corresponding path program 1 times [2024-10-11 17:20:36,100 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:36,100 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1920063396] [2024-10-11 17:20:36,100 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:36,100 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:36,116 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:36,555 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:36,555 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:20:36,555 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1920063396] [2024-10-11 17:20:36,555 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1920063396] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-11 17:20:36,555 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1352265308] [2024-10-11 17:20:36,555 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:36,556 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-11 17:20:36,556 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 17:20:36,558 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-11 17:20:36,559 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2024-10-11 17:20:36,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:36,643 INFO L255 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 29 conjuncts are in the unsatisfiable core [2024-10-11 17:20:36,649 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-11 17:20:36,692 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2024-10-11 17:20:36,739 INFO L349 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2024-10-11 17:20:36,740 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2024-10-11 17:20:36,788 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2024-10-11 17:20:36,833 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 27 [2024-10-11 17:20:36,863 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:36,863 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 42 [2024-10-11 17:20:36,886 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:36,886 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 52 treesize of output 57 [2024-10-11 17:20:36,913 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 45 [2024-10-11 17:20:36,925 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:36,927 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-11 17:20:36,962 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse0 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (and (forall ((v_ArrVal_232 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 3)))) (forall ((v_ArrVal_232 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 1)))) (forall ((v_ArrVal_232 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_232 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0)) |c_ULTIMATE.start_main_#t~nondet9#1|)))) is different from false [2024-10-11 17:20:36,987 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_232 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_232 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_232 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_232 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2))))))) is different from false [2024-10-11 17:20:37,206 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse3 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 1)) (.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 2)) (.cse4 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse4 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_232 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_232 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_232 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_232 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse4))))))) is different from false [2024-10-11 17:20:37,227 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse2 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 1)) (.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 2)) (.cse4 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse4 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_232 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1))) (forall ((v_ArrVal_232 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_232 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3))) (forall ((v_ArrVal_232 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_232) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse4) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:20:37,247 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:37,247 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 67 [2024-10-11 17:20:37,256 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:37,257 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 93 treesize of output 31 [2024-10-11 17:20:37,270 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:20:37,270 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 50 treesize of output 1 [2024-10-11 17:20:37,278 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:20:37,278 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:20:37,284 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:20:37,284 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:20:37,322 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 1 not checked. [2024-10-11 17:20:37,322 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1352265308] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-11 17:20:37,323 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-11 17:20:37,323 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 13] total 21 [2024-10-11 17:20:37,323 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1798299075] [2024-10-11 17:20:37,323 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-11 17:20:37,323 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2024-10-11 17:20:37,324 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:20:37,324 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2024-10-11 17:20:37,324 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=244, Unknown=20, NotChecked=140, Total=462 [2024-10-11 17:20:37,373 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 47 out of 102 [2024-10-11 17:20:37,375 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 133 places, 294 transitions, 2152 flow. Second operand has 22 states, 22 states have (on average 49.04545454545455) internal successors, (1079), 22 states have internal predecessors, (1079), 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) [2024-10-11 17:20:37,375 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:20:37,375 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 47 of 102 [2024-10-11 17:20:37,376 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:20:40,158 INFO L124 PetriNetUnfolderBase]: 7955/16707 cut-off events. [2024-10-11 17:20:40,158 INFO L125 PetriNetUnfolderBase]: For 25989/26258 co-relation queries the response was YES. [2024-10-11 17:20:40,196 INFO L83 FinitePrefix]: Finished finitePrefix Result has 56154 conditions, 16707 events. 7955/16707 cut-off events. For 25989/26258 co-relation queries the response was YES. Maximal size of possible extension queue 578. Compared 148222 event pairs, 1814 based on Foata normal form. 122/16053 useless extension candidates. Maximal degree in co-relation 49615. Up to 8904 conditions per place. [2024-10-11 17:20:40,315 INFO L140 encePairwiseOnDemand]: 76/102 looper letters, 342 selfloop transitions, 265 changer transitions 0/655 dead transitions. [2024-10-11 17:20:40,315 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 151 places, 655 transitions, 6151 flow [2024-10-11 17:20:40,316 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2024-10-11 17:20:40,316 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2024-10-11 17:20:40,317 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 1102 transitions. [2024-10-11 17:20:40,318 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5686274509803921 [2024-10-11 17:20:40,318 INFO L175 Difference]: Start difference. First operand has 133 places, 294 transitions, 2152 flow. Second operand 19 states and 1102 transitions. [2024-10-11 17:20:40,318 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 151 places, 655 transitions, 6151 flow [2024-10-11 17:20:40,416 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 151 places, 655 transitions, 6007 flow, removed 72 selfloop flow, removed 0 redundant places. [2024-10-11 17:20:40,424 INFO L231 Difference]: Finished difference. Result has 160 places, 532 transitions, 5322 flow [2024-10-11 17:20:40,426 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=102, PETRI_DIFFERENCE_MINUEND_FLOW=2008, PETRI_DIFFERENCE_MINUEND_PLACES=133, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=294, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=92, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=173, PETRI_DIFFERENCE_SUBTRAHEND_STATES=19, PETRI_FLOW=5322, PETRI_PLACES=160, PETRI_TRANSITIONS=532} [2024-10-11 17:20:40,427 INFO L277 CegarLoopForPetriNet]: 102 programPoint places, 58 predicate places. [2024-10-11 17:20:40,427 INFO L471 AbstractCegarLoop]: Abstraction has has 160 places, 532 transitions, 5322 flow [2024-10-11 17:20:40,428 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 49.04545454545455) internal successors, (1079), 22 states have internal predecessors, (1079), 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) [2024-10-11 17:20:40,428 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:40,428 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 17:20:40,442 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2024-10-11 17:20:40,632 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2024-10-11 17:20:40,633 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting threadErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:20:40,634 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:40,634 INFO L85 PathProgramCache]: Analyzing trace with hash 1066702245, now seen corresponding path program 1 times [2024-10-11 17:20:40,634 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:40,634 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [742634559] [2024-10-11 17:20:40,634 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:40,634 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:40,648 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:40,974 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:40,974 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:20:40,975 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [742634559] [2024-10-11 17:20:40,975 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [742634559] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-11 17:20:40,975 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [989850803] [2024-10-11 17:20:40,975 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:40,977 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-11 17:20:40,977 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 17:20:40,979 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-11 17:20:40,980 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2024-10-11 17:20:41,054 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:41,056 INFO L255 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 31 conjuncts are in the unsatisfiable core [2024-10-11 17:20:41,059 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-11 17:20:41,063 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2024-10-11 17:20:41,073 INFO L349 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2024-10-11 17:20:41,073 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2024-10-11 17:20:41,113 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2024-10-11 17:20:41,119 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 21 treesize of output 20 [2024-10-11 17:20:41,136 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:41,136 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 30 treesize of output 32 [2024-10-11 17:20:41,152 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:41,152 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 39 treesize of output 44 [2024-10-11 17:20:41,176 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 43 treesize of output 32 [2024-10-11 17:20:41,183 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:41,183 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-11 17:20:41,201 WARN L851 $PredicateComparison]: unable to prove that (and (forall ((v_ArrVal_297 (Array Int Int))) (= |c_threadThread1of2ForFork0_#t~nondet4| (select (select (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| v_ArrVal_297) c_threadThread1of2ForFork0_~t~0.base) (+ c_threadThread1of2ForFork0_~t~0.offset 1)))) (forall ((v_ArrVal_297 (Array Int Int))) (= |c_threadThread1of2ForFork0_#t~nondet4| (select (select (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| v_ArrVal_297) c_threadThread1of2ForFork0_~t~0.base) (+ c_threadThread1of2ForFork0_~t~0.offset 2)))) (forall ((v_ArrVal_297 (Array Int Int))) (= |c_threadThread1of2ForFork0_#t~nondet4| (select (select (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| v_ArrVal_297) c_threadThread1of2ForFork0_~t~0.base) c_threadThread1of2ForFork0_~t~0.offset))) (forall ((v_ArrVal_297 (Array Int Int))) (= |c_threadThread1of2ForFork0_#t~nondet4| (select (select (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| v_ArrVal_297) c_threadThread1of2ForFork0_~t~0.base) (+ c_threadThread1of2ForFork0_~t~0.offset 3))))) is different from false [2024-10-11 17:20:41,216 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (+ c_threadThread1of2ForFork0_~t~0.offset 3))) (let ((.cse0 (store |c_#race| c_threadThread1of2ForFork0_~t~0.base (store (select |c_#race| c_threadThread1of2ForFork0_~t~0.base) .cse1 |c_threadThread1of2ForFork0_#t~nondet4|)))) (and (forall ((v_ArrVal_297 (Array Int Int))) (= |c_threadThread1of2ForFork0_#t~nondet4| (select (select (store .cse0 |c_ULTIMATE.start_main_~tids~0#1.base| v_ArrVal_297) c_threadThread1of2ForFork0_~t~0.base) c_threadThread1of2ForFork0_~t~0.offset))) (forall ((v_ArrVal_297 (Array Int Int))) (= |c_threadThread1of2ForFork0_#t~nondet4| (select (select (store .cse0 |c_ULTIMATE.start_main_~tids~0#1.base| v_ArrVal_297) c_threadThread1of2ForFork0_~t~0.base) .cse1))) (forall ((v_ArrVal_297 (Array Int Int))) (= (select (select (store .cse0 |c_ULTIMATE.start_main_~tids~0#1.base| v_ArrVal_297) c_threadThread1of2ForFork0_~t~0.base) (+ c_threadThread1of2ForFork0_~t~0.offset 1)) |c_threadThread1of2ForFork0_#t~nondet4|)) (forall ((v_ArrVal_297 (Array Int Int))) (= |c_threadThread1of2ForFork0_#t~nondet4| (select (select (store .cse0 |c_ULTIMATE.start_main_~tids~0#1.base| v_ArrVal_297) c_threadThread1of2ForFork0_~t~0.base) (+ c_threadThread1of2ForFork0_~t~0.offset 2))))))) is different from false [2024-10-11 17:20:44,988 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 0 trivial. 1 not checked. [2024-10-11 17:20:44,988 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [989850803] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-11 17:20:44,989 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-11 17:20:44,989 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 13] total 18 [2024-10-11 17:20:44,989 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1276921043] [2024-10-11 17:20:44,989 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-11 17:20:44,989 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2024-10-11 17:20:44,990 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:20:44,990 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2024-10-11 17:20:44,991 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=220, Unknown=9, NotChecked=62, Total=342 [2024-10-11 17:20:45,093 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 53 out of 102 [2024-10-11 17:20:45,094 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 160 places, 532 transitions, 5322 flow. Second operand has 19 states, 19 states have (on average 54.78947368421053) internal successors, (1041), 19 states have internal predecessors, (1041), 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) [2024-10-11 17:20:45,094 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:20:45,094 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 53 of 102 [2024-10-11 17:20:45,094 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:20:48,230 INFO L124 PetriNetUnfolderBase]: 8357/16782 cut-off events. [2024-10-11 17:20:48,230 INFO L125 PetriNetUnfolderBase]: For 39961/40298 co-relation queries the response was YES. [2024-10-11 17:20:48,269 INFO L83 FinitePrefix]: Finished finitePrefix Result has 66536 conditions, 16782 events. 8357/16782 cut-off events. For 39961/40298 co-relation queries the response was YES. Maximal size of possible extension queue 634. Compared 145171 event pairs, 1008 based on Foata normal form. 322/16311 useless extension candidates. Maximal degree in co-relation 59644. Up to 6786 conditions per place. [2024-10-11 17:20:48,324 INFO L140 encePairwiseOnDemand]: 80/102 looper letters, 559 selfloop transitions, 526 changer transitions 8/1151 dead transitions. [2024-10-11 17:20:48,324 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 182 places, 1151 transitions, 12940 flow [2024-10-11 17:20:48,324 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2024-10-11 17:20:48,325 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 23 states. [2024-10-11 17:20:48,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 1512 transitions. [2024-10-11 17:20:48,327 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.6445012787723785 [2024-10-11 17:20:48,327 INFO L175 Difference]: Start difference. First operand has 160 places, 532 transitions, 5322 flow. Second operand 23 states and 1512 transitions. [2024-10-11 17:20:48,327 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 182 places, 1151 transitions, 12940 flow [2024-10-11 17:20:48,524 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 176 places, 1151 transitions, 12884 flow, removed 22 selfloop flow, removed 6 redundant places. [2024-10-11 17:20:48,534 INFO L231 Difference]: Finished difference. Result has 188 places, 929 transitions, 11763 flow [2024-10-11 17:20:48,534 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=102, PETRI_DIFFERENCE_MINUEND_FLOW=5284, PETRI_DIFFERENCE_MINUEND_PLACES=154, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=532, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=278, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=216, PETRI_DIFFERENCE_SUBTRAHEND_STATES=23, PETRI_FLOW=11763, PETRI_PLACES=188, PETRI_TRANSITIONS=929} [2024-10-11 17:20:48,535 INFO L277 CegarLoopForPetriNet]: 102 programPoint places, 86 predicate places. [2024-10-11 17:20:48,535 INFO L471 AbstractCegarLoop]: Abstraction has has 188 places, 929 transitions, 11763 flow [2024-10-11 17:20:48,535 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 54.78947368421053) internal successors, (1041), 19 states have internal predecessors, (1041), 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) [2024-10-11 17:20:48,535 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:48,536 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 17:20:48,548 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2024-10-11 17:20:48,739 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10,3 /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-11 17:20:48,740 INFO L396 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:20:48,741 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:48,741 INFO L85 PathProgramCache]: Analyzing trace with hash -1043016310, now seen corresponding path program 2 times [2024-10-11 17:20:48,741 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:48,741 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [240345289] [2024-10-11 17:20:48,741 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:48,741 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:48,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:49,098 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:49,098 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:20:49,098 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [240345289] [2024-10-11 17:20:49,099 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [240345289] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-11 17:20:49,099 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1767518424] [2024-10-11 17:20:49,099 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-10-11 17:20:49,099 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-11 17:20:49,099 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 17:20:49,101 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-11 17:20:49,103 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2024-10-11 17:20:49,178 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-10-11 17:20:49,178 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-10-11 17:20:49,179 INFO L255 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 29 conjuncts are in the unsatisfiable core [2024-10-11 17:20:49,182 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-11 17:20:49,184 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2024-10-11 17:20:49,196 INFO L349 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2024-10-11 17:20:49,196 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2024-10-11 17:20:49,228 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2024-10-11 17:20:49,245 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 27 [2024-10-11 17:20:49,254 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:49,254 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 42 [2024-10-11 17:20:49,267 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:49,267 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 52 treesize of output 57 [2024-10-11 17:20:49,279 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 45 [2024-10-11 17:20:49,286 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:49,286 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-11 17:20:49,302 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse0 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (and (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_361 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 3)))) (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)))) is different from false [2024-10-11 17:20:49,317 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_361 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 1)))) (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:20:49,332 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse3 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 2)) (.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_361 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3)))) (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:20:49,346 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse4 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 1)) (.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 2)) (.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse4 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_361 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_361) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse4) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:20:49,398 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:49,398 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 67 [2024-10-11 17:20:49,404 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:49,404 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 115 treesize of output 35 [2024-10-11 17:20:49,410 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:20:49,411 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 50 treesize of output 1 [2024-10-11 17:20:49,414 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:20:49,414 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:20:49,418 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:20:49,418 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:20:49,468 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 3 not checked. [2024-10-11 17:20:49,468 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1767518424] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-11 17:20:49,469 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-11 17:20:49,469 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 13] total 19 [2024-10-11 17:20:49,469 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2097243749] [2024-10-11 17:20:49,469 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-11 17:20:49,469 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2024-10-11 17:20:49,469 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:20:49,470 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2024-10-11 17:20:49,470 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=202, Unknown=4, NotChecked=124, Total=380 [2024-10-11 17:20:49,470 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 47 out of 102 [2024-10-11 17:20:49,471 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 188 places, 929 transitions, 11763 flow. Second operand has 20 states, 20 states have (on average 49.15) internal successors, (983), 20 states have internal predecessors, (983), 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) [2024-10-11 17:20:49,472 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:20:49,472 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 47 of 102 [2024-10-11 17:20:49,472 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:20:53,205 INFO L124 PetriNetUnfolderBase]: 9681/19943 cut-off events. [2024-10-11 17:20:53,205 INFO L125 PetriNetUnfolderBase]: For 89811/90550 co-relation queries the response was YES. [2024-10-11 17:20:53,269 INFO L83 FinitePrefix]: Finished finitePrefix Result has 92230 conditions, 19943 events. 9681/19943 cut-off events. For 89811/90550 co-relation queries the response was YES. Maximal size of possible extension queue 725. Compared 178868 event pairs, 1805 based on Foata normal form. 210/19235 useless extension candidates. Maximal degree in co-relation 90456. Up to 10604 conditions per place. [2024-10-11 17:20:53,358 INFO L140 encePairwiseOnDemand]: 80/102 looper letters, 835 selfloop transitions, 427 changer transitions 2/1317 dead transitions. [2024-10-11 17:20:53,358 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 208 places, 1317 transitions, 18684 flow [2024-10-11 17:20:53,358 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2024-10-11 17:20:53,359 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 21 states. [2024-10-11 17:20:53,361 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 1227 transitions. [2024-10-11 17:20:53,361 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.572829131652661 [2024-10-11 17:20:53,361 INFO L175 Difference]: Start difference. First operand has 188 places, 929 transitions, 11763 flow. Second operand 21 states and 1227 transitions. [2024-10-11 17:20:53,361 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 208 places, 1317 transitions, 18684 flow [2024-10-11 17:20:54,168 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 202 places, 1317 transitions, 18482 flow, removed 95 selfloop flow, removed 6 redundant places. [2024-10-11 17:20:54,186 INFO L231 Difference]: Finished difference. Result has 207 places, 1150 transitions, 16521 flow [2024-10-11 17:20:54,186 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=102, PETRI_DIFFERENCE_MINUEND_FLOW=11561, PETRI_DIFFERENCE_MINUEND_PLACES=182, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=929, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=244, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=613, PETRI_DIFFERENCE_SUBTRAHEND_STATES=21, PETRI_FLOW=16521, PETRI_PLACES=207, PETRI_TRANSITIONS=1150} [2024-10-11 17:20:54,187 INFO L277 CegarLoopForPetriNet]: 102 programPoint places, 105 predicate places. [2024-10-11 17:20:54,187 INFO L471 AbstractCegarLoop]: Abstraction has has 207 places, 1150 transitions, 16521 flow [2024-10-11 17:20:54,187 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 49.15) internal successors, (983), 20 states have internal predecessors, (983), 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) [2024-10-11 17:20:54,187 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:20:54,188 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 17:20:54,200 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2024-10-11 17:20:54,388 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11,4 /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-11 17:20:54,388 INFO L396 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:20:54,389 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:20:54,389 INFO L85 PathProgramCache]: Analyzing trace with hash 1337108184, now seen corresponding path program 3 times [2024-10-11 17:20:54,389 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:20:54,389 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [898386939] [2024-10-11 17:20:54,389 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:20:54,389 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:20:54,404 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:20:54,732 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:54,733 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:20:54,733 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [898386939] [2024-10-11 17:20:54,733 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [898386939] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-11 17:20:54,733 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1992358053] [2024-10-11 17:20:54,733 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2024-10-11 17:20:54,733 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-11 17:20:54,733 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 17:20:54,734 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-11 17:20:54,735 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2024-10-11 17:20:54,810 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 2 check-sat command(s) [2024-10-11 17:20:54,810 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-10-11 17:20:54,811 INFO L255 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 29 conjuncts are in the unsatisfiable core [2024-10-11 17:20:54,813 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-11 17:20:54,816 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2024-10-11 17:20:54,845 INFO L349 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2024-10-11 17:20:54,845 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2024-10-11 17:20:54,877 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2024-10-11 17:20:54,884 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 27 [2024-10-11 17:20:54,899 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:54,899 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 42 [2024-10-11 17:20:54,913 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:54,914 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 52 treesize of output 57 [2024-10-11 17:20:54,973 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 45 [2024-10-11 17:20:54,981 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:20:54,981 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-11 17:20:55,001 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse0 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (and (forall ((v_ArrVal_425 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 1)))) (forall ((v_ArrVal_425 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_425 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 3)))) (forall ((v_ArrVal_425 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 2)))))) is different from false [2024-10-11 17:20:55,049 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse0 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (and (forall ((v_ArrVal_425 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store |c_#race| c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 2)))) (forall ((v_ArrVal_425 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 3)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_425 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store |c_#race| c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 1)))) (forall ((v_ArrVal_425 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0)) |c_ULTIMATE.start_main_#t~nondet9#1|)))) is different from false [2024-10-11 17:20:55,063 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse2 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_425 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_425 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 2)))) (forall ((v_ArrVal_425 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_425 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:20:55,077 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse3 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 2)) (.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_425 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_425 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_425 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3)))) (forall ((v_ArrVal_425 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:20:55,096 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse3 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 1)) (.cse4 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 2)) (.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse4 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_425 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_425 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2))) (forall ((v_ArrVal_425 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3)))) (forall ((v_ArrVal_425 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_425) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse4) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:20:55,113 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:55,113 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 50 treesize of output 66 [2024-10-11 17:20:55,118 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:20:55,118 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 113 treesize of output 34 [2024-10-11 17:20:55,124 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:20:55,124 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:20:55,128 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:20:55,128 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:20:55,132 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:20:55,132 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:20:55,162 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 3 not checked. [2024-10-11 17:20:55,162 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1992358053] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-11 17:20:55,162 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-11 17:20:55,162 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 13] total 20 [2024-10-11 17:20:55,163 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [363807125] [2024-10-11 17:20:55,163 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-11 17:20:55,163 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2024-10-11 17:20:55,163 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:20:55,164 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2024-10-11 17:20:55,164 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=53, Invalid=202, Unknown=5, NotChecked=160, Total=420 [2024-10-11 17:20:55,259 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 47 out of 102 [2024-10-11 17:20:55,260 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 207 places, 1150 transitions, 16521 flow. Second operand has 21 states, 21 states have (on average 49.095238095238095) internal successors, (1031), 21 states have internal predecessors, (1031), 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) [2024-10-11 17:20:55,260 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:20:55,260 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 47 of 102 [2024-10-11 17:20:55,260 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:20:59,872 INFO L124 PetriNetUnfolderBase]: 9929/20827 cut-off events. [2024-10-11 17:20:59,873 INFO L125 PetriNetUnfolderBase]: For 122754/124198 co-relation queries the response was YES. [2024-10-11 17:20:59,941 INFO L83 FinitePrefix]: Finished finitePrefix Result has 103230 conditions, 20827 events. 9929/20827 cut-off events. For 122754/124198 co-relation queries the response was YES. Maximal size of possible extension queue 773. Compared 191455 event pairs, 2095 based on Foata normal form. 295/20151 useless extension candidates. Maximal degree in co-relation 101490. Up to 12578 conditions per place. [2024-10-11 17:21:00,016 INFO L140 encePairwiseOnDemand]: 76/102 looper letters, 894 selfloop transitions, 408 changer transitions 1/1356 dead transitions. [2024-10-11 17:21:00,017 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 225 places, 1356 transitions, 21771 flow [2024-10-11 17:21:00,018 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2024-10-11 17:21:00,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 19 states. [2024-10-11 17:21:00,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 1107 transitions. [2024-10-11 17:21:00,020 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5712074303405573 [2024-10-11 17:21:00,020 INFO L175 Difference]: Start difference. First operand has 207 places, 1150 transitions, 16521 flow. Second operand 19 states and 1107 transitions. [2024-10-11 17:21:00,020 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 225 places, 1356 transitions, 21771 flow [2024-10-11 17:21:00,767 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 214 places, 1356 transitions, 21649 flow, removed 41 selfloop flow, removed 11 redundant places. [2024-10-11 17:21:00,784 INFO L231 Difference]: Finished difference. Result has 220 places, 1254 transitions, 20076 flow [2024-10-11 17:21:00,784 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=102, PETRI_DIFFERENCE_MINUEND_FLOW=16407, PETRI_DIFFERENCE_MINUEND_PLACES=196, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1150, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=304, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=772, PETRI_DIFFERENCE_SUBTRAHEND_STATES=19, PETRI_FLOW=20076, PETRI_PLACES=220, PETRI_TRANSITIONS=1254} [2024-10-11 17:21:00,785 INFO L277 CegarLoopForPetriNet]: 102 programPoint places, 118 predicate places. [2024-10-11 17:21:00,785 INFO L471 AbstractCegarLoop]: Abstraction has has 220 places, 1254 transitions, 20076 flow [2024-10-11 17:21:00,785 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 49.095238095238095) internal successors, (1031), 21 states have internal predecessors, (1031), 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) [2024-10-11 17:21:00,785 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:21:00,785 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 17:21:00,797 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2024-10-11 17:21:00,985 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 5 /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2024-10-11 17:21:00,986 INFO L396 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:21:00,986 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:21:00,986 INFO L85 PathProgramCache]: Analyzing trace with hash -1016926204, now seen corresponding path program 4 times [2024-10-11 17:21:00,986 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:21:00,986 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [530900582] [2024-10-11 17:21:00,986 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:21:00,986 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:21:01,000 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:21:01,238 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:21:01,238 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:21:01,238 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [530900582] [2024-10-11 17:21:01,238 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [530900582] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-11 17:21:01,238 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [216461045] [2024-10-11 17:21:01,238 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2024-10-11 17:21:01,238 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-11 17:21:01,238 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 17:21:01,240 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-11 17:21:01,266 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2024-10-11 17:21:01,360 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2024-10-11 17:21:01,360 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-10-11 17:21:01,362 INFO L255 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 29 conjuncts are in the unsatisfiable core [2024-10-11 17:21:01,370 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-11 17:21:01,374 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2024-10-11 17:21:01,401 INFO L349 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2024-10-11 17:21:01,402 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2024-10-11 17:21:01,428 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2024-10-11 17:21:01,444 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 27 [2024-10-11 17:21:01,453 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:01,454 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 42 [2024-10-11 17:21:01,468 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:01,468 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 52 treesize of output 57 [2024-10-11 17:21:01,492 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 45 [2024-10-11 17:21:01,500 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:21:01,500 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-11 17:21:01,518 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse0 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (and (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 3)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0)) |c_ULTIMATE.start_main_#t~nondet9#1|)))) is different from false [2024-10-11 17:21:01,538 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_489 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 1)))) (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:01,552 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 2)) (.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_489 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1)))) (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_489 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 1)))))))) is different from false [2024-10-11 17:21:01,565 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse4 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4 1)) (.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4 2)) (.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_489 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1))) (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_489 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3))) (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:01,602 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse2 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 1)) (.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 2)) (.cse4 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse4 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_489 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_489 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_489) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse4))))))) is different from false [2024-10-11 17:21:01,615 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:01,615 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 50 treesize of output 66 [2024-10-11 17:21:01,620 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:01,621 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 113 treesize of output 34 [2024-10-11 17:21:01,626 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:01,626 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:21:01,633 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:01,633 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:21:01,637 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:01,637 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:21:01,667 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 3 not checked. [2024-10-11 17:21:01,667 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [216461045] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-11 17:21:01,667 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-11 17:21:01,667 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 13] total 20 [2024-10-11 17:21:01,667 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1639156813] [2024-10-11 17:21:01,668 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-11 17:21:01,668 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2024-10-11 17:21:01,668 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:21:01,668 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2024-10-11 17:21:01,669 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=206, Unknown=5, NotChecked=160, Total=420 [2024-10-11 17:21:01,669 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 47 out of 102 [2024-10-11 17:21:01,670 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 220 places, 1254 transitions, 20076 flow. Second operand has 21 states, 21 states have (on average 49.095238095238095) internal successors, (1031), 21 states have internal predecessors, (1031), 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) [2024-10-11 17:21:01,670 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:21:01,670 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 47 of 102 [2024-10-11 17:21:01,670 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:21:06,904 INFO L124 PetriNetUnfolderBase]: 11021/23153 cut-off events. [2024-10-11 17:21:06,904 INFO L125 PetriNetUnfolderBase]: For 167555/169026 co-relation queries the response was YES. [2024-10-11 17:21:07,007 INFO L83 FinitePrefix]: Finished finitePrefix Result has 122519 conditions, 23153 events. 11021/23153 cut-off events. For 167555/169026 co-relation queries the response was YES. Maximal size of possible extension queue 874. Compared 216486 event pairs, 2146 based on Foata normal form. 350/22429 useless extension candidates. Maximal degree in co-relation 120763. Up to 12816 conditions per place. [2024-10-11 17:21:07,230 INFO L140 encePairwiseOnDemand]: 76/102 looper letters, 949 selfloop transitions, 649 changer transitions 1/1652 dead transitions. [2024-10-11 17:21:07,231 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 239 places, 1652 transitions, 29288 flow [2024-10-11 17:21:07,231 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2024-10-11 17:21:07,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2024-10-11 17:21:07,232 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 1169 transitions. [2024-10-11 17:21:07,232 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5730392156862745 [2024-10-11 17:21:07,232 INFO L175 Difference]: Start difference. First operand has 220 places, 1254 transitions, 20076 flow. Second operand 20 states and 1169 transitions. [2024-10-11 17:21:07,232 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 239 places, 1652 transitions, 29288 flow [2024-10-11 17:21:08,324 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 227 places, 1652 transitions, 29165 flow, removed 33 selfloop flow, removed 12 redundant places. [2024-10-11 17:21:08,344 INFO L231 Difference]: Finished difference. Result has 233 places, 1513 transitions, 26959 flow [2024-10-11 17:21:08,344 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=102, PETRI_DIFFERENCE_MINUEND_FLOW=19963, PETRI_DIFFERENCE_MINUEND_PLACES=208, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1254, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=427, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=763, PETRI_DIFFERENCE_SUBTRAHEND_STATES=20, PETRI_FLOW=26959, PETRI_PLACES=233, PETRI_TRANSITIONS=1513} [2024-10-11 17:21:08,345 INFO L277 CegarLoopForPetriNet]: 102 programPoint places, 131 predicate places. [2024-10-11 17:21:08,345 INFO L471 AbstractCegarLoop]: Abstraction has has 233 places, 1513 transitions, 26959 flow [2024-10-11 17:21:08,345 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 49.095238095238095) internal successors, (1031), 21 states have internal predecessors, (1031), 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) [2024-10-11 17:21:08,345 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:21:08,346 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 17:21:08,358 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2024-10-11 17:21:08,546 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2024-10-11 17:21:08,546 INFO L396 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:21:08,546 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:21:08,547 INFO L85 PathProgramCache]: Analyzing trace with hash -1107517796, now seen corresponding path program 5 times [2024-10-11 17:21:08,547 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:21:08,547 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1578273460] [2024-10-11 17:21:08,547 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:21:08,547 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:21:08,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:21:08,820 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:21:08,820 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:21:08,820 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1578273460] [2024-10-11 17:21:08,820 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1578273460] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-11 17:21:08,820 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1168539828] [2024-10-11 17:21:08,820 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2024-10-11 17:21:08,820 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-11 17:21:08,820 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 17:21:08,822 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-11 17:21:08,823 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2024-10-11 17:21:08,888 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-10-11 17:21:08,888 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-10-11 17:21:08,889 INFO L255 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 29 conjuncts are in the unsatisfiable core [2024-10-11 17:21:08,890 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-11 17:21:08,893 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2024-10-11 17:21:08,915 INFO L349 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2024-10-11 17:21:08,915 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2024-10-11 17:21:08,937 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2024-10-11 17:21:08,941 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 27 [2024-10-11 17:21:08,949 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:08,949 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 42 [2024-10-11 17:21:08,982 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:08,982 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 52 treesize of output 57 [2024-10-11 17:21:09,001 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 45 [2024-10-11 17:21:09,009 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:21:09,009 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-11 17:21:09,071 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_553 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_553 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2))) (forall ((v_ArrVal_553 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_553 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:09,106 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse2 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_553 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1))) (forall ((v_ArrVal_553 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2)))) (forall ((v_ArrVal_553 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_553 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 1)))))))) is different from false [2024-10-11 17:21:09,118 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 2)) (.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_553 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 1)))) (forall ((v_ArrVal_553 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_553 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_553 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:09,132 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse4 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4 1)) (.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4 2)) (.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_553 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_553 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2))) (forall ((v_ArrVal_553 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3))) (forall ((v_ArrVal_553 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_553) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:09,144 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:09,145 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 67 [2024-10-11 17:21:09,150 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:09,150 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 93 treesize of output 31 [2024-10-11 17:21:09,155 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:09,155 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 50 treesize of output 1 [2024-10-11 17:21:09,159 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:09,159 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:21:09,164 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:09,164 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:21:09,192 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 3 not checked. [2024-10-11 17:21:09,192 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1168539828] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-11 17:21:09,192 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-11 17:21:09,192 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 13] total 20 [2024-10-11 17:21:09,192 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [650548039] [2024-10-11 17:21:09,193 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-11 17:21:09,193 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2024-10-11 17:21:09,193 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:21:09,193 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2024-10-11 17:21:09,194 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=229, Unknown=9, NotChecked=132, Total=420 [2024-10-11 17:21:09,194 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 47 out of 102 [2024-10-11 17:21:09,195 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 233 places, 1513 transitions, 26959 flow. Second operand has 21 states, 21 states have (on average 49.095238095238095) internal successors, (1031), 21 states have internal predecessors, (1031), 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) [2024-10-11 17:21:09,195 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:21:09,195 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 47 of 102 [2024-10-11 17:21:09,195 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:21:15,258 INFO L124 PetriNetUnfolderBase]: 11442/24252 cut-off events. [2024-10-11 17:21:15,258 INFO L125 PetriNetUnfolderBase]: For 215586/217900 co-relation queries the response was YES. [2024-10-11 17:21:15,365 INFO L83 FinitePrefix]: Finished finitePrefix Result has 137253 conditions, 24252 events. 11442/24252 cut-off events. For 215586/217900 co-relation queries the response was YES. Maximal size of possible extension queue 946. Compared 230538 event pairs, 2129 based on Foata normal form. 465/23613 useless extension candidates. Maximal degree in co-relation 135491. Up to 14267 conditions per place. [2024-10-11 17:21:15,467 INFO L140 encePairwiseOnDemand]: 76/102 looper letters, 1107 selfloop transitions, 614 changer transitions 1/1775 dead transitions. [2024-10-11 17:21:15,467 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 252 places, 1775 transitions, 34681 flow [2024-10-11 17:21:15,467 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2024-10-11 17:21:15,467 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2024-10-11 17:21:15,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 1167 transitions. [2024-10-11 17:21:15,469 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5720588235294117 [2024-10-11 17:21:15,469 INFO L175 Difference]: Start difference. First operand has 233 places, 1513 transitions, 26959 flow. Second operand 20 states and 1167 transitions. [2024-10-11 17:21:15,469 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 252 places, 1775 transitions, 34681 flow [2024-10-11 17:21:17,151 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 240 places, 1775 transitions, 34078 flow, removed 273 selfloop flow, removed 12 redundant places. [2024-10-11 17:21:17,178 INFO L231 Difference]: Finished difference. Result has 245 places, 1664 transitions, 32297 flow [2024-10-11 17:21:17,179 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=102, PETRI_DIFFERENCE_MINUEND_FLOW=26472, PETRI_DIFFERENCE_MINUEND_PLACES=221, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1513, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=483, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=965, PETRI_DIFFERENCE_SUBTRAHEND_STATES=20, PETRI_FLOW=32297, PETRI_PLACES=245, PETRI_TRANSITIONS=1664} [2024-10-11 17:21:17,179 INFO L277 CegarLoopForPetriNet]: 102 programPoint places, 143 predicate places. [2024-10-11 17:21:17,180 INFO L471 AbstractCegarLoop]: Abstraction has has 245 places, 1664 transitions, 32297 flow [2024-10-11 17:21:17,180 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 49.095238095238095) internal successors, (1031), 21 states have internal predecessors, (1031), 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) [2024-10-11 17:21:17,180 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:21:17,180 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 17:21:17,192 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2024-10-11 17:21:17,380 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2024-10-11 17:21:17,381 INFO L396 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:21:17,381 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:21:17,381 INFO L85 PathProgramCache]: Analyzing trace with hash -237515174, now seen corresponding path program 6 times [2024-10-11 17:21:17,381 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:21:17,382 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [661450791] [2024-10-11 17:21:17,382 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:21:17,382 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:21:17,391 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:21:17,628 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:21:17,628 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:21:17,628 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [661450791] [2024-10-11 17:21:17,628 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [661450791] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-11 17:21:17,628 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [240439797] [2024-10-11 17:21:17,628 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2024-10-11 17:21:17,628 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-11 17:21:17,629 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 17:21:17,630 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-11 17:21:17,631 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2024-10-11 17:21:17,710 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 2 check-sat command(s) [2024-10-11 17:21:17,710 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-10-11 17:21:17,713 INFO L255 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 31 conjuncts are in the unsatisfiable core [2024-10-11 17:21:17,718 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-11 17:21:17,722 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2024-10-11 17:21:17,731 INFO L349 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2024-10-11 17:21:17,732 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2024-10-11 17:21:17,763 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2024-10-11 17:21:17,770 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 27 [2024-10-11 17:21:17,804 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:17,804 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 42 [2024-10-11 17:21:17,816 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:17,817 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 52 treesize of output 57 [2024-10-11 17:21:17,827 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 45 [2024-10-11 17:21:17,832 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:21:17,832 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-11 17:21:17,847 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse0 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (and (forall ((v_ArrVal_618 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0)))) (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 3)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)))) is different from false [2024-10-11 17:21:17,858 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse2 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:17,870 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 2)) (.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_618 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 1)))))))) is different from false [2024-10-11 17:21:17,911 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse3 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 2)) (.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_618 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3)))) (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:17,923 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse3 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 1)) (.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 2)) (.cse4 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse4 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_618 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1))) (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_618 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3)))) (forall ((v_ArrVal_618 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_618) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse4) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:17,936 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:17,937 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 50 treesize of output 66 [2024-10-11 17:21:17,944 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:17,944 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 89 treesize of output 30 [2024-10-11 17:21:17,950 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:17,951 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:21:17,956 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:17,957 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:21:17,960 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:17,961 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:21:18,008 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 3 not checked. [2024-10-11 17:21:18,008 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [240439797] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-11 17:21:18,008 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-11 17:21:18,008 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 13] total 20 [2024-10-11 17:21:18,008 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [876058635] [2024-10-11 17:21:18,008 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-11 17:21:18,009 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2024-10-11 17:21:18,009 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:21:18,009 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2024-10-11 17:21:18,009 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=207, Unknown=5, NotChecked=160, Total=420 [2024-10-11 17:21:18,010 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 47 out of 102 [2024-10-11 17:21:18,012 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 245 places, 1664 transitions, 32297 flow. Second operand has 21 states, 21 states have (on average 49.095238095238095) internal successors, (1031), 21 states have internal predecessors, (1031), 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) [2024-10-11 17:21:18,012 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:21:18,012 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 47 of 102 [2024-10-11 17:21:18,013 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:21:24,939 INFO L124 PetriNetUnfolderBase]: 11477/24656 cut-off events. [2024-10-11 17:21:24,939 INFO L125 PetriNetUnfolderBase]: For 255441/257551 co-relation queries the response was YES. [2024-10-11 17:21:25,052 INFO L83 FinitePrefix]: Finished finitePrefix Result has 144744 conditions, 24656 events. 11477/24656 cut-off events. For 255441/257551 co-relation queries the response was YES. Maximal size of possible extension queue 954. Compared 236937 event pairs, 2218 based on Foata normal form. 464/23989 useless extension candidates. Maximal degree in co-relation 142967. Up to 13820 conditions per place. [2024-10-11 17:21:25,154 INFO L140 encePairwiseOnDemand]: 76/102 looper letters, 1118 selfloop transitions, 780 changer transitions 1/1952 dead transitions. [2024-10-11 17:21:25,154 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 264 places, 1952 transitions, 41083 flow [2024-10-11 17:21:25,155 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2024-10-11 17:21:25,155 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2024-10-11 17:21:25,155 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 1168 transitions. [2024-10-11 17:21:25,156 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5725490196078431 [2024-10-11 17:21:25,156 INFO L175 Difference]: Start difference. First operand has 245 places, 1664 transitions, 32297 flow. Second operand 20 states and 1168 transitions. [2024-10-11 17:21:25,156 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 264 places, 1952 transitions, 41083 flow [2024-10-11 17:21:26,914 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 250 places, 1952 transitions, 40784 flow, removed 69 selfloop flow, removed 14 redundant places. [2024-10-11 17:21:26,942 INFO L231 Difference]: Finished difference. Result has 255 places, 1834 transitions, 38533 flow [2024-10-11 17:21:26,943 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=102, PETRI_DIFFERENCE_MINUEND_FLOW=32000, PETRI_DIFFERENCE_MINUEND_PLACES=231, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1664, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=630, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=977, PETRI_DIFFERENCE_SUBTRAHEND_STATES=20, PETRI_FLOW=38533, PETRI_PLACES=255, PETRI_TRANSITIONS=1834} [2024-10-11 17:21:26,943 INFO L277 CegarLoopForPetriNet]: 102 programPoint places, 153 predicate places. [2024-10-11 17:21:26,943 INFO L471 AbstractCegarLoop]: Abstraction has has 255 places, 1834 transitions, 38533 flow [2024-10-11 17:21:26,946 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 49.095238095238095) internal successors, (1031), 21 states have internal predecessors, (1031), 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) [2024-10-11 17:21:26,946 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:21:26,946 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 17:21:26,959 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2024-10-11 17:21:27,150 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15,8 /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-11 17:21:27,151 INFO L396 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:21:27,151 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:21:27,151 INFO L85 PathProgramCache]: Analyzing trace with hash 886215630, now seen corresponding path program 7 times [2024-10-11 17:21:27,151 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:21:27,151 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1271465368] [2024-10-11 17:21:27,151 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:21:27,152 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:21:27,161 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:21:27,540 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:21:27,540 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:21:27,540 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1271465368] [2024-10-11 17:21:27,540 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1271465368] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-11 17:21:27,540 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [881690445] [2024-10-11 17:21:27,540 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2024-10-11 17:21:27,541 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-11 17:21:27,541 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 17:21:27,542 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-11 17:21:27,544 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2024-10-11 17:21:27,608 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:21:27,609 INFO L255 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 29 conjuncts are in the unsatisfiable core [2024-10-11 17:21:27,610 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-11 17:21:27,613 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2024-10-11 17:21:27,634 INFO L349 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2024-10-11 17:21:27,634 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2024-10-11 17:21:27,654 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2024-10-11 17:21:27,659 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 27 [2024-10-11 17:21:27,666 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:27,667 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 42 [2024-10-11 17:21:27,676 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:27,676 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 52 treesize of output 57 [2024-10-11 17:21:27,736 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 45 [2024-10-11 17:21:27,743 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:21:27,743 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-11 17:21:27,764 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse0 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (and (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 3)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 2)))) (forall ((v_ArrVal_682 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0)))))) is different from false [2024-10-11 17:21:27,799 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse0 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (and (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~arg.base v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 3)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~arg.base v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~arg.base v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~arg.base v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)))) is different from false [2024-10-11 17:21:27,809 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse0 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (and (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store |c_#race| |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store |c_#race| |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store |c_#race| |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store |c_#race| |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 3)) |c_ULTIMATE.start_main_#t~nondet9#1|)))) is different from false [2024-10-11 17:21:27,819 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 2)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2))))))) is different from false [2024-10-11 17:21:27,830 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 2)) (.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:27,841 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse2 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse4 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 1)) (.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 2)) (.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse4 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse2)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_682 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_682) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse4) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:27,852 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:27,852 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 67 [2024-10-11 17:21:27,855 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:27,856 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 93 treesize of output 31 [2024-10-11 17:21:27,860 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:27,860 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:21:27,863 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:27,863 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 50 treesize of output 1 [2024-10-11 17:21:27,866 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:27,866 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:21:27,888 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 3 not checked. [2024-10-11 17:21:27,888 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [881690445] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-11 17:21:27,888 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-11 17:21:27,888 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 13] total 21 [2024-10-11 17:21:27,888 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1188664965] [2024-10-11 17:21:27,888 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-11 17:21:27,889 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2024-10-11 17:21:27,889 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:21:27,889 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2024-10-11 17:21:27,889 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=56, Invalid=202, Unknown=6, NotChecked=198, Total=462 [2024-10-11 17:21:27,914 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 47 out of 102 [2024-10-11 17:21:27,914 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 255 places, 1834 transitions, 38533 flow. Second operand has 22 states, 22 states have (on average 49.04545454545455) internal successors, (1079), 22 states have internal predecessors, (1079), 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) [2024-10-11 17:21:27,914 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:21:27,914 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 47 of 102 [2024-10-11 17:21:27,914 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2024-10-11 17:21:35,359 INFO L124 PetriNetUnfolderBase]: 11753/25661 cut-off events. [2024-10-11 17:21:35,360 INFO L125 PetriNetUnfolderBase]: For 302733/305208 co-relation queries the response was YES. [2024-10-11 17:21:35,492 INFO L83 FinitePrefix]: Finished finitePrefix Result has 156020 conditions, 25661 events. 11753/25661 cut-off events. For 302733/305208 co-relation queries the response was YES. Maximal size of possible extension queue 1025. Compared 251996 event pairs, 2271 based on Foata normal form. 655/25171 useless extension candidates. Maximal degree in co-relation 154238. Up to 15131 conditions per place. [2024-10-11 17:21:35,600 INFO L140 encePairwiseOnDemand]: 76/102 looper letters, 1272 selfloop transitions, 687 changer transitions 0/2012 dead transitions. [2024-10-11 17:21:35,600 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 271 places, 2012 transitions, 45861 flow [2024-10-11 17:21:35,600 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2024-10-11 17:21:35,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 17 states. [2024-10-11 17:21:35,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 981 transitions. [2024-10-11 17:21:35,601 INFO L512 CegarLoopForPetriNet]: DFA transition density 0.5657439446366782 [2024-10-11 17:21:35,602 INFO L175 Difference]: Start difference. First operand has 255 places, 1834 transitions, 38533 flow. Second operand 17 states and 981 transitions. [2024-10-11 17:21:35,602 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 271 places, 2012 transitions, 45861 flow [2024-10-11 17:21:37,707 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 258 places, 2012 transitions, 45529 flow, removed 111 selfloop flow, removed 13 redundant places. [2024-10-11 17:21:37,737 INFO L231 Difference]: Finished difference. Result has 265 places, 1947 transitions, 43974 flow [2024-10-11 17:21:37,738 INFO L260 CegarLoopForPetriNet]: {PETRI_ALPHABET=102, PETRI_DIFFERENCE_MINUEND_FLOW=38204, PETRI_DIFFERENCE_MINUEND_PLACES=242, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=1834, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=574, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=1186, PETRI_DIFFERENCE_SUBTRAHEND_STATES=17, PETRI_FLOW=43974, PETRI_PLACES=265, PETRI_TRANSITIONS=1947} [2024-10-11 17:21:37,738 INFO L277 CegarLoopForPetriNet]: 102 programPoint places, 163 predicate places. [2024-10-11 17:21:37,739 INFO L471 AbstractCegarLoop]: Abstraction has has 265 places, 1947 transitions, 43974 flow [2024-10-11 17:21:37,739 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 49.04545454545455) internal successors, (1079), 22 states have internal predecessors, (1079), 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) [2024-10-11 17:21:37,739 INFO L196 CegarLoopForPetriNet]: Found error trace [2024-10-11 17:21:37,740 INFO L204 CegarLoopForPetriNet]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2024-10-11 17:21:37,756 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2024-10-11 17:21:37,940 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2024-10-11 17:21:37,941 INFO L396 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE === [ULTIMATE.startErr0ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr1ASSERT_VIOLATIONDATA_RACE, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2024-10-11 17:21:37,941 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2024-10-11 17:21:37,941 INFO L85 PathProgramCache]: Analyzing trace with hash -1127879206, now seen corresponding path program 8 times [2024-10-11 17:21:37,941 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2024-10-11 17:21:37,941 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1803772813] [2024-10-11 17:21:37,941 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2024-10-11 17:21:37,942 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2024-10-11 17:21:37,955 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2024-10-11 17:21:38,222 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:21:38,223 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2024-10-11 17:21:38,223 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1803772813] [2024-10-11 17:21:38,223 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1803772813] provided 0 perfect and 1 imperfect interpolant sequences [2024-10-11 17:21:38,223 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1840994068] [2024-10-11 17:21:38,223 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2024-10-11 17:21:38,223 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2024-10-11 17:21:38,223 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 [2024-10-11 17:21:38,224 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2024-10-11 17:21:38,225 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-clean/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2024-10-11 17:21:38,308 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2024-10-11 17:21:38,308 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2024-10-11 17:21:38,309 INFO L255 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 29 conjuncts are in the unsatisfiable core [2024-10-11 17:21:38,311 INFO L278 TraceCheckSpWp]: Computing forward predicates... [2024-10-11 17:21:38,314 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 6 treesize of output 5 [2024-10-11 17:21:38,344 INFO L349 Elim1Store]: treesize reduction 4, result has 50.0 percent of original size [2024-10-11 17:21:38,345 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 1, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 11 treesize of output 11 [2024-10-11 17:21:38,369 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 11 [2024-10-11 17:21:38,376 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 28 treesize of output 27 [2024-10-11 17:21:38,403 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:38,403 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 1 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 42 [2024-10-11 17:21:38,414 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:38,415 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 3 select indices, 3 select index equivalence classes, 1 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 52 treesize of output 57 [2024-10-11 17:21:38,434 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 45 [2024-10-11 17:21:38,440 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 10 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2024-10-11 17:21:38,441 INFO L311 TraceCheckSpWp]: Computing backward predicates... [2024-10-11 17:21:38,457 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse0 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (and (forall ((v_ArrVal_746 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 2)))) (forall ((v_ArrVal_746 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 3)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_746 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_746 (Array Int Int))) (= (select (select (store |c_#race| c_threadThread1of2ForFork0_~t~0.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse0)) |c_ULTIMATE.start_main_#t~nondet9#1|)))) is different from false [2024-10-11 17:21:38,479 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_746 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1)) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_746 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 2)))) (forall ((v_ArrVal_746 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2))) (forall ((v_ArrVal_746 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 1)))))))) is different from false [2024-10-11 17:21:38,492 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse3 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 2)) (.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_746 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_746 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2))) (forall ((v_ArrVal_746 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3)))) (forall ((v_ArrVal_746 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~t~0.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse3 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:38,529 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse1 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 2)) (.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_746 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1)))) (forall ((v_ArrVal_746 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_746 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_746 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse1 1)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:38,541 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse4 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4 1)) (.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4 2)) (.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_746 (Array Int Int))) (= (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_746 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2))) (forall ((v_ArrVal_746 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3))) (forall ((v_ArrVal_746 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 c_threadThread1of2ForFork0_~arg.base v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4)))))))) is different from false [2024-10-11 17:21:38,555 WARN L851 $PredicateComparison]: unable to prove that (let ((.cse4 (* |c_ULTIMATE.start_main_~i~0#1| 4))) (let ((.cse3 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4 1)) (.cse2 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4 2)) (.cse1 (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4 3))) (let ((.cse0 (store |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base| (store (store (store (select |c_#race| |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse2 |c_ULTIMATE.start_main_#t~nondet9#1|) .cse1 |c_ULTIMATE.start_main_#t~nondet9#1|)))) (and (forall ((v_ArrVal_746 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse1))) (forall ((v_ArrVal_746 (Array Int Int))) (= |c_ULTIMATE.start_main_#t~nondet9#1| (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse2))) (forall ((v_ArrVal_746 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) .cse3) |c_ULTIMATE.start_main_#t~nondet9#1|)) (forall ((v_ArrVal_746 (Array Int Int))) (= (select (select (store .cse0 |c_threadThread1of2ForFork0_#in~arg.base| v_ArrVal_746) |c_ULTIMATE.start_main_~tids~0#1.base|) (+ |c_ULTIMATE.start_main_~tids~0#1.offset| .cse4)) |c_ULTIMATE.start_main_#t~nondet9#1|)))))) is different from false [2024-10-11 17:21:38,566 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:38,566 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 67 [2024-10-11 17:21:38,570 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2024-10-11 17:21:38,570 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 93 treesize of output 31 [2024-10-11 17:21:38,578 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:38,578 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:21:38,582 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:38,582 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 51 treesize of output 1 [2024-10-11 17:21:38,585 INFO L349 Elim1Store]: treesize reduction 51, result has 1.9 percent of original size [2024-10-11 17:21:38,586 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 4 case distinctions, treesize of input 50 treesize of output 1 [2024-10-11 17:21:38,615 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 3 not checked. [2024-10-11 17:21:38,615 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1840994068] provided 0 perfect and 2 imperfect interpolant sequences [2024-10-11 17:21:38,615 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2024-10-11 17:21:38,615 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 13, 13] total 21 [2024-10-11 17:21:38,616 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1555430765] [2024-10-11 17:21:38,616 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2024-10-11 17:21:38,616 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2024-10-11 17:21:38,616 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2024-10-11 17:21:38,616 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2024-10-11 17:21:38,617 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=209, Unknown=6, NotChecked=198, Total=462 [2024-10-11 17:21:38,671 INFO L467 CegarLoopForPetriNet]: Number of universal loopers: 47 out of 102 [2024-10-11 17:21:38,672 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 265 places, 1947 transitions, 43974 flow. Second operand has 22 states, 22 states have (on average 49.04545454545455) internal successors, (1079), 22 states have internal predecessors, (1079), 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) [2024-10-11 17:21:38,672 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2024-10-11 17:21:38,672 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 47 of 102 [2024-10-11 17:21:38,672 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand