./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/rfi007_tso.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 798a7b37 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/pthread-wmm/rfi007_tso.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 62e921ac3b02bdecb866366797768eb8fcdb22a87147dc14adf7fddb42ab9cb2 --- Real Ultimate output --- This is Ultimate 0.3.0-?-798a7b3-m [2025-03-04 02:09:10,968 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-04 02:09:11,021 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-04 02:09:11,027 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-04 02:09:11,028 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-04 02:09:11,051 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-04 02:09:11,052 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-04 02:09:11,052 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-04 02:09:11,052 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-04 02:09:11,052 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-04 02:09:11,053 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-04 02:09:11,053 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-04 02:09:11,053 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-04 02:09:11,054 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-04 02:09:11,054 INFO L153 SettingsManager]: * Use SBE=true [2025-03-04 02:09:11,054 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-04 02:09:11,054 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-04 02:09:11,054 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-04 02:09:11,054 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-04 02:09:11,054 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-04 02:09:11,054 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-04 02:09:11,054 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-04 02:09:11,055 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-04 02:09:11,055 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-04 02:09:11,055 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-04 02:09:11,055 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-04 02:09:11,055 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-04 02:09:11,055 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-04 02:09:11,055 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-04 02:09:11,055 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-04 02:09:11,055 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-04 02:09:11,056 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-04 02:09:11,056 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 02:09:11,056 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-04 02:09:11,056 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-04 02:09:11,056 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-04 02:09:11,056 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-04 02:09:11,056 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-04 02:09:11,056 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-04 02:09:11,056 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-04 02:09:11,056 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-04 02:09:11,056 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-04 02:09:11,056 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-04 02:09:11,056 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/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 ! call(reach_error())) ) 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 -> 62e921ac3b02bdecb866366797768eb8fcdb22a87147dc14adf7fddb42ab9cb2 [2025-03-04 02:09:11,346 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-04 02:09:11,354 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-04 02:09:11,356 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-04 02:09:11,356 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-04 02:09:11,357 INFO L274 PluginConnector]: CDTParser initialized [2025-03-04 02:09:11,358 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/rfi007_tso.i [2025-03-04 02:09:12,512 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9a52de445/d21f13669f6d464da48b249d5d723ba7/FLAG3a9637302 [2025-03-04 02:09:12,865 INFO L384 CDTParser]: Found 1 translation units. [2025-03-04 02:09:12,867 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/rfi007_tso.i [2025-03-04 02:09:12,886 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9a52de445/d21f13669f6d464da48b249d5d723ba7/FLAG3a9637302 [2025-03-04 02:09:13,094 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/9a52de445/d21f13669f6d464da48b249d5d723ba7 [2025-03-04 02:09:13,097 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-04 02:09:13,099 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-04 02:09:13,101 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-04 02:09:13,101 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-04 02:09:13,104 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-04 02:09:13,105 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,107 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5da7287a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13, skipping insertion in model container [2025-03-04 02:09:13,107 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,140 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-04 02:09:13,250 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/rfi007_tso.i[944,957] [2025-03-04 02:09:13,381 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 02:09:13,389 INFO L200 MainTranslator]: Completed pre-run [2025-03-04 02:09:13,397 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/rfi007_tso.i[944,957] [2025-03-04 02:09:13,441 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 02:09:13,469 INFO L204 MainTranslator]: Completed translation [2025-03-04 02:09:13,471 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13 WrapperNode [2025-03-04 02:09:13,472 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-04 02:09:13,473 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-04 02:09:13,473 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-04 02:09:13,473 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-04 02:09:13,479 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,495 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,518 INFO L138 Inliner]: procedures = 174, calls = 35, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 145 [2025-03-04 02:09:13,519 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-04 02:09:13,519 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-04 02:09:13,519 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-04 02:09:13,519 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-04 02:09:13,528 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,529 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,534 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,547 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2025-03-04 02:09:13,547 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,547 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,552 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,553 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,554 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,555 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,556 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-04 02:09:13,557 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-04 02:09:13,557 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-04 02:09:13,557 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-04 02:09:13,558 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (1/1) ... [2025-03-04 02:09:13,570 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 02:09:13,585 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 02:09:13,600 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-04 02:09:13,605 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-04 02:09:13,625 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-03-04 02:09:13,625 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-04 02:09:13,625 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2025-03-04 02:09:13,625 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2025-03-04 02:09:13,625 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2025-03-04 02:09:13,625 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2025-03-04 02:09:13,625 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-04 02:09:13,625 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-03-04 02:09:13,625 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-04 02:09:13,626 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-04 02:09:13,626 WARN L225 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-03-04 02:09:13,733 INFO L256 CfgBuilder]: Building ICFG [2025-03-04 02:09:13,735 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-04 02:09:13,981 INFO L303 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-03-04 02:09:13,981 INFO L307 CfgBuilder]: Performing block encoding [2025-03-04 02:09:14,131 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-04 02:09:14,131 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-04 02:09:14,131 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 02:09:14 BoogieIcfgContainer [2025-03-04 02:09:14,131 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-04 02:09:14,133 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-04 02:09:14,133 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-04 02:09:14,136 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-04 02:09:14,136 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 04.03 02:09:13" (1/3) ... [2025-03-04 02:09:14,136 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@45c39062 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 02:09:14, skipping insertion in model container [2025-03-04 02:09:14,137 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 02:09:13" (2/3) ... [2025-03-04 02:09:14,137 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@45c39062 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 02:09:14, skipping insertion in model container [2025-03-04 02:09:14,137 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 02:09:14" (3/3) ... [2025-03-04 02:09:14,138 INFO L128 eAbstractionObserver]: Analyzing ICFG rfi007_tso.i [2025-03-04 02:09:14,149 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-04 02:09:14,151 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG rfi007_tso.i that has 3 procedures, 31 locations, 1 initial locations, 0 loop locations, and 2 error locations. [2025-03-04 02:09:14,152 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-03-04 02:09:14,191 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2025-03-04 02:09:14,214 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 37 places, 31 transitions, 70 flow [2025-03-04 02:09:14,233 INFO L124 PetriNetUnfolderBase]: 1/29 cut-off events. [2025-03-04 02:09:14,234 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-04 02:09:14,236 INFO L83 FinitePrefix]: Finished finitePrefix Result has 36 conditions, 29 events. 1/29 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 43 event pairs, 0 based on Foata normal form. 0/26 useless extension candidates. Maximal degree in co-relation 29. Up to 2 conditions per place. [2025-03-04 02:09:14,236 INFO L82 GeneralOperation]: Start removeDead. Operand has 37 places, 31 transitions, 70 flow [2025-03-04 02:09:14,238 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 35 places, 29 transitions, 64 flow [2025-03-04 02:09:14,243 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-04 02:09:14,250 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;@442165ff, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-04 02:09:14,251 INFO L334 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2025-03-04 02:09:14,255 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-03-04 02:09:14,255 INFO L124 PetriNetUnfolderBase]: 0/10 cut-off events. [2025-03-04 02:09:14,257 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-04 02:09:14,257 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:09:14,258 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1] [2025-03-04 02:09:14,258 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting P1Err0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-04 02:09:14,262 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:09:14,262 INFO L85 PathProgramCache]: Analyzing trace with hash 1733113271, now seen corresponding path program 1 times [2025-03-04 02:09:14,267 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:09:14,267 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2066321752] [2025-03-04 02:09:14,267 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:09:14,268 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:09:14,330 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-03-04 02:09:14,361 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-03-04 02:09:14,362 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:09:14,362 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:09:14,695 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:09:14,696 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 02:09:14,696 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2066321752] [2025-03-04 02:09:14,697 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2066321752] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 02:09:14,697 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 02:09:14,698 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-03-04 02:09:14,699 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [459310924] [2025-03-04 02:09:14,699 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 02:09:14,705 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-03-04 02:09:14,708 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 02:09:14,724 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-03-04 02:09:14,725 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-03-04 02:09:14,726 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 31 [2025-03-04 02:09:14,728 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 35 places, 29 transitions, 64 flow. Second operand has 3 states, 3 states have (on average 8.666666666666666) internal successors, (26), 3 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:09:14,728 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 02:09:14,728 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 31 [2025-03-04 02:09:14,729 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 02:09:15,042 INFO L124 PetriNetUnfolderBase]: 537/907 cut-off events. [2025-03-04 02:09:15,043 INFO L125 PetriNetUnfolderBase]: For 4/4 co-relation queries the response was YES. [2025-03-04 02:09:15,045 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1811 conditions, 907 events. 537/907 cut-off events. For 4/4 co-relation queries the response was YES. Maximal size of possible extension queue 48. Compared 4078 event pairs, 45 based on Foata normal form. 42/940 useless extension candidates. Maximal degree in co-relation 1801. Up to 781 conditions per place. [2025-03-04 02:09:15,049 INFO L140 encePairwiseOnDemand]: 27/31 looper letters, 30 selfloop transitions, 2 changer transitions 2/39 dead transitions. [2025-03-04 02:09:15,049 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 36 places, 39 transitions, 152 flow [2025-03-04 02:09:15,050 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-03-04 02:09:15,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-03-04 02:09:15,056 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2025-03-04 02:09:15,059 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6236559139784946 [2025-03-04 02:09:15,060 INFO L175 Difference]: Start difference. First operand has 35 places, 29 transitions, 64 flow. Second operand 3 states and 58 transitions. [2025-03-04 02:09:15,061 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 36 places, 39 transitions, 152 flow [2025-03-04 02:09:15,066 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 34 places, 39 transitions, 150 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-04 02:09:15,068 INFO L231 Difference]: Finished difference. Result has 34 places, 26 transitions, 60 flow [2025-03-04 02:09:15,070 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=58, PETRI_DIFFERENCE_MINUEND_PLACES=32, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=27, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=25, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=60, PETRI_PLACES=34, PETRI_TRANSITIONS=26} [2025-03-04 02:09:15,074 INFO L279 CegarLoopForPetriNet]: 35 programPoint places, -1 predicate places. [2025-03-04 02:09:15,075 INFO L471 AbstractCegarLoop]: Abstraction has has 34 places, 26 transitions, 60 flow [2025-03-04 02:09:15,075 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 8.666666666666666) internal successors, (26), 3 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:09:15,076 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:09:15,076 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:09:15,076 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-03-04 02:09:15,077 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-04 02:09:15,077 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:09:15,078 INFO L85 PathProgramCache]: Analyzing trace with hash -1711207150, now seen corresponding path program 1 times [2025-03-04 02:09:15,078 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:09:15,078 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [903420462] [2025-03-04 02:09:15,078 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:09:15,078 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:09:15,090 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 12 statements into 1 equivalence classes. [2025-03-04 02:09:15,132 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 12 of 12 statements. [2025-03-04 02:09:15,132 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:09:15,132 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:09:15,314 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:09:15,315 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 02:09:15,315 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [903420462] [2025-03-04 02:09:15,315 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [903420462] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 02:09:15,315 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 02:09:15,315 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-03-04 02:09:15,315 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [569210687] [2025-03-04 02:09:15,315 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 02:09:15,316 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-03-04 02:09:15,316 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 02:09:15,317 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-03-04 02:09:15,317 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-03-04 02:09:15,317 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 31 [2025-03-04 02:09:15,317 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 34 places, 26 transitions, 60 flow. Second operand has 4 states, 4 states have (on average 9.5) internal successors, (38), 4 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:09:15,317 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 02:09:15,317 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 31 [2025-03-04 02:09:15,317 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 02:09:15,486 INFO L124 PetriNetUnfolderBase]: 315/633 cut-off events. [2025-03-04 02:09:15,487 INFO L125 PetriNetUnfolderBase]: For 28/28 co-relation queries the response was YES. [2025-03-04 02:09:15,488 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1243 conditions, 633 events. 315/633 cut-off events. For 28/28 co-relation queries the response was YES. Maximal size of possible extension queue 32. Compared 2939 event pairs, 86 based on Foata normal form. 42/650 useless extension candidates. Maximal degree in co-relation 1233. Up to 266 conditions per place. [2025-03-04 02:09:15,493 INFO L140 encePairwiseOnDemand]: 26/31 looper letters, 40 selfloop transitions, 4 changer transitions 1/50 dead transitions. [2025-03-04 02:09:15,493 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 36 places, 50 transitions, 204 flow [2025-03-04 02:09:15,493 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-03-04 02:09:15,493 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-03-04 02:09:15,494 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 75 transitions. [2025-03-04 02:09:15,495 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6048387096774194 [2025-03-04 02:09:15,495 INFO L175 Difference]: Start difference. First operand has 34 places, 26 transitions, 60 flow. Second operand 4 states and 75 transitions. [2025-03-04 02:09:15,495 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 36 places, 50 transitions, 204 flow [2025-03-04 02:09:15,496 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 34 places, 50 transitions, 196 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-04 02:09:15,497 INFO L231 Difference]: Finished difference. Result has 36 places, 28 transitions, 82 flow [2025-03-04 02:09:15,497 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=56, PETRI_DIFFERENCE_MINUEND_PLACES=31, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=26, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=22, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=82, PETRI_PLACES=36, PETRI_TRANSITIONS=28} [2025-03-04 02:09:15,499 INFO L279 CegarLoopForPetriNet]: 35 programPoint places, 1 predicate places. [2025-03-04 02:09:15,499 INFO L471 AbstractCegarLoop]: Abstraction has has 36 places, 28 transitions, 82 flow [2025-03-04 02:09:15,499 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 9.5) internal successors, (38), 4 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:09:15,500 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:09:15,500 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:09:15,500 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-04 02:09:15,500 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-04 02:09:15,500 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:09:15,501 INFO L85 PathProgramCache]: Analyzing trace with hash 38640485, now seen corresponding path program 1 times [2025-03-04 02:09:15,501 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:09:15,501 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [929184368] [2025-03-04 02:09:15,501 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:09:15,501 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:09:15,513 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 17 statements into 1 equivalence classes. [2025-03-04 02:09:15,580 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 17 of 17 statements. [2025-03-04 02:09:15,580 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:09:15,580 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:09:15,779 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:09:15,779 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 02:09:15,780 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [929184368] [2025-03-04 02:09:15,782 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [929184368] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 02:09:15,782 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 02:09:15,783 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-03-04 02:09:15,783 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1735530920] [2025-03-04 02:09:15,783 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 02:09:15,783 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-04 02:09:15,783 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 02:09:15,784 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-04 02:09:15,784 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-03-04 02:09:15,784 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 31 [2025-03-04 02:09:15,785 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 36 places, 28 transitions, 82 flow. Second operand has 5 states, 5 states have (on average 9.8) internal successors, (49), 5 states have internal predecessors, (49), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:09:15,785 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 02:09:15,785 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 31 [2025-03-04 02:09:15,785 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 02:09:15,937 INFO L124 PetriNetUnfolderBase]: 158/312 cut-off events. [2025-03-04 02:09:15,937 INFO L125 PetriNetUnfolderBase]: For 73/73 co-relation queries the response was YES. [2025-03-04 02:09:15,939 INFO L83 FinitePrefix]: Finished finitePrefix Result has 733 conditions, 312 events. 158/312 cut-off events. For 73/73 co-relation queries the response was YES. Maximal size of possible extension queue 17. Compared 1054 event pairs, 58 based on Foata normal form. 22/327 useless extension candidates. Maximal degree in co-relation 721. Up to 131 conditions per place. [2025-03-04 02:09:15,940 INFO L140 encePairwiseOnDemand]: 26/31 looper letters, 32 selfloop transitions, 6 changer transitions 1/44 dead transitions. [2025-03-04 02:09:15,940 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 40 places, 44 transitions, 197 flow [2025-03-04 02:09:15,941 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-03-04 02:09:15,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-03-04 02:09:15,942 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 76 transitions. [2025-03-04 02:09:15,942 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.49032258064516127 [2025-03-04 02:09:15,942 INFO L175 Difference]: Start difference. First operand has 36 places, 28 transitions, 82 flow. Second operand 5 states and 76 transitions. [2025-03-04 02:09:15,943 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 40 places, 44 transitions, 197 flow [2025-03-04 02:09:15,944 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 38 places, 44 transitions, 188 flow, removed 1 selfloop flow, removed 2 redundant places. [2025-03-04 02:09:15,945 INFO L231 Difference]: Finished difference. Result has 40 places, 28 transitions, 98 flow [2025-03-04 02:09:15,945 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=75, PETRI_DIFFERENCE_MINUEND_PLACES=34, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=28, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=22, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=98, PETRI_PLACES=40, PETRI_TRANSITIONS=28} [2025-03-04 02:09:15,946 INFO L279 CegarLoopForPetriNet]: 35 programPoint places, 5 predicate places. [2025-03-04 02:09:15,946 INFO L471 AbstractCegarLoop]: Abstraction has has 40 places, 28 transitions, 98 flow [2025-03-04 02:09:15,946 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 9.8) internal successors, (49), 5 states have internal predecessors, (49), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:09:15,946 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:09:15,946 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:09:15,946 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-03-04 02:09:15,946 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-04 02:09:15,948 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:09:15,948 INFO L85 PathProgramCache]: Analyzing trace with hash 691312629, now seen corresponding path program 1 times [2025-03-04 02:09:15,948 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:09:15,948 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1617324970] [2025-03-04 02:09:15,948 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 02:09:15,948 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:09:15,966 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 23 statements into 1 equivalence classes. [2025-03-04 02:09:16,104 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-03-04 02:09:16,104 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:09:16,105 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:09:16,773 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:09:16,773 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 02:09:16,773 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1617324970] [2025-03-04 02:09:16,773 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1617324970] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 02:09:16,773 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 02:09:16,773 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2025-03-04 02:09:16,774 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [350905392] [2025-03-04 02:09:16,774 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 02:09:16,774 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2025-03-04 02:09:16,774 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 02:09:16,774 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2025-03-04 02:09:16,775 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2025-03-04 02:09:16,782 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 31 [2025-03-04 02:09:16,783 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 40 places, 28 transitions, 98 flow. Second operand has 7 states, 7 states have (on average 8.857142857142858) internal successors, (62), 7 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:09:16,783 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 02:09:16,783 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 31 [2025-03-04 02:09:16,783 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 02:09:17,084 INFO L124 PetriNetUnfolderBase]: 197/392 cut-off events. [2025-03-04 02:09:17,084 INFO L125 PetriNetUnfolderBase]: For 208/208 co-relation queries the response was YES. [2025-03-04 02:09:17,085 INFO L83 FinitePrefix]: Finished finitePrefix Result has 970 conditions, 392 events. 197/392 cut-off events. For 208/208 co-relation queries the response was YES. Maximal size of possible extension queue 19. Compared 1374 event pairs, 42 based on Foata normal form. 4/394 useless extension candidates. Maximal degree in co-relation 956. Up to 209 conditions per place. [2025-03-04 02:09:17,086 INFO L140 encePairwiseOnDemand]: 23/31 looper letters, 26 selfloop transitions, 3 changer transitions 31/64 dead transitions. [2025-03-04 02:09:17,087 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 47 places, 64 transitions, 334 flow [2025-03-04 02:09:17,087 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2025-03-04 02:09:17,087 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2025-03-04 02:09:17,088 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 105 transitions. [2025-03-04 02:09:17,088 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.42338709677419356 [2025-03-04 02:09:17,088 INFO L175 Difference]: Start difference. First operand has 40 places, 28 transitions, 98 flow. Second operand 8 states and 105 transitions. [2025-03-04 02:09:17,088 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 47 places, 64 transitions, 334 flow [2025-03-04 02:09:17,089 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 41 places, 64 transitions, 277 flow, removed 10 selfloop flow, removed 6 redundant places. [2025-03-04 02:09:17,090 INFO L231 Difference]: Finished difference. Result has 46 places, 28 transitions, 87 flow [2025-03-04 02:09:17,090 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=70, PETRI_DIFFERENCE_MINUEND_PLACES=34, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=28, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=25, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=87, PETRI_PLACES=46, PETRI_TRANSITIONS=28} [2025-03-04 02:09:17,090 INFO L279 CegarLoopForPetriNet]: 35 programPoint places, 11 predicate places. [2025-03-04 02:09:17,090 INFO L471 AbstractCegarLoop]: Abstraction has has 46 places, 28 transitions, 87 flow [2025-03-04 02:09:17,091 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 8.857142857142858) internal successors, (62), 7 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:09:17,092 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:09:17,092 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:09:17,092 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-03-04 02:09:17,092 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-04 02:09:17,092 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:09:17,093 INFO L85 PathProgramCache]: Analyzing trace with hash 1335171999, now seen corresponding path program 2 times [2025-03-04 02:09:17,093 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:09:17,093 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1864274321] [2025-03-04 02:09:17,093 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-03-04 02:09:17,093 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:09:17,102 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 23 statements into 1 equivalence classes. [2025-03-04 02:09:17,183 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-03-04 02:09:17,184 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-03-04 02:09:17,184 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 02:09:18,984 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-04 02:09:18,984 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 02:09:18,984 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1864274321] [2025-03-04 02:09:18,984 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1864274321] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 02:09:18,984 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 02:09:18,984 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2025-03-04 02:09:18,985 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [900526525] [2025-03-04 02:09:18,985 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 02:09:18,985 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2025-03-04 02:09:18,986 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 02:09:18,986 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2025-03-04 02:09:18,986 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=82, Unknown=0, NotChecked=0, Total=110 [2025-03-04 02:09:18,999 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 31 [2025-03-04 02:09:19,000 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 46 places, 28 transitions, 87 flow. Second operand has 11 states, 11 states have (on average 7.818181818181818) internal successors, (86), 11 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:09:19,000 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-04 02:09:19,000 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 31 [2025-03-04 02:09:19,000 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-04 02:09:19,397 INFO L124 PetriNetUnfolderBase]: 142/301 cut-off events. [2025-03-04 02:09:19,398 INFO L125 PetriNetUnfolderBase]: For 58/58 co-relation queries the response was YES. [2025-03-04 02:09:19,398 INFO L83 FinitePrefix]: Finished finitePrefix Result has 694 conditions, 301 events. 142/301 cut-off events. For 58/58 co-relation queries the response was YES. Maximal size of possible extension queue 15. Compared 1049 event pairs, 52 based on Foata normal form. 4/304 useless extension candidates. Maximal degree in co-relation 678. Up to 131 conditions per place. [2025-03-04 02:09:19,399 INFO L140 encePairwiseOnDemand]: 22/31 looper letters, 25 selfloop transitions, 4 changer transitions 23/56 dead transitions. [2025-03-04 02:09:19,399 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 49 places, 56 transitions, 274 flow [2025-03-04 02:09:19,400 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2025-03-04 02:09:19,400 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2025-03-04 02:09:19,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 97 transitions. [2025-03-04 02:09:19,400 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.3911290322580645 [2025-03-04 02:09:19,400 INFO L175 Difference]: Start difference. First operand has 46 places, 28 transitions, 87 flow. Second operand 8 states and 97 transitions. [2025-03-04 02:09:19,400 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 49 places, 56 transitions, 274 flow [2025-03-04 02:09:19,401 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 44 places, 56 transitions, 254 flow, removed 9 selfloop flow, removed 5 redundant places. [2025-03-04 02:09:19,402 INFO L231 Difference]: Finished difference. Result has 49 places, 28 transitions, 100 flow [2025-03-04 02:09:19,402 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=77, PETRI_DIFFERENCE_MINUEND_PLACES=37, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=28, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=4, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=24, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=100, PETRI_PLACES=49, PETRI_TRANSITIONS=28} [2025-03-04 02:09:19,402 INFO L279 CegarLoopForPetriNet]: 35 programPoint places, 14 predicate places. [2025-03-04 02:09:19,403 INFO L471 AbstractCegarLoop]: Abstraction has has 49 places, 28 transitions, 100 flow [2025-03-04 02:09:19,403 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 7.818181818181818) internal successors, (86), 11 states have internal predecessors, (86), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-04 02:09:19,403 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-04 02:09:19,403 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-04 02:09:19,403 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-03-04 02:09:19,403 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-04 02:09:19,404 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 02:09:19,404 INFO L85 PathProgramCache]: Analyzing trace with hash 856925511, now seen corresponding path program 3 times [2025-03-04 02:09:19,404 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 02:09:19,405 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1533097166] [2025-03-04 02:09:19,405 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-03-04 02:09:19,405 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 02:09:19,412 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 23 statements into 1 equivalence classes. [2025-03-04 02:09:19,458 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-03-04 02:09:19,458 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-03-04 02:09:19,458 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-04 02:09:19,458 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-04 02:09:19,463 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 23 statements into 1 equivalence classes. [2025-03-04 02:09:19,526 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-03-04 02:09:19,526 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 02:09:19,526 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-04 02:09:19,550 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-04 02:09:19,552 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-04 02:09:19,553 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (4 of 5 remaining) [2025-03-04 02:09:19,554 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (3 of 5 remaining) [2025-03-04 02:09:19,554 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 5 remaining) [2025-03-04 02:09:19,554 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 5 remaining) [2025-03-04 02:09:19,555 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 5 remaining) [2025-03-04 02:09:19,555 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2025-03-04 02:09:19,555 INFO L422 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1] [2025-03-04 02:09:19,612 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-03-04 02:09:19,612 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-04 02:09:19,618 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 04.03 02:09:19 BasicIcfg [2025-03-04 02:09:19,618 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-04 02:09:19,619 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-04 02:09:19,619 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-04 02:09:19,619 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-04 02:09:19,620 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 02:09:14" (3/4) ... [2025-03-04 02:09:19,621 INFO L140 WitnessPrinter]: Generating witness for reachability counterexample [2025-03-04 02:09:19,695 INFO L127 tionWitnessGenerator]: Generated YAML witness of length 9. [2025-03-04 02:09:19,731 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-03-04 02:09:19,731 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.yml [2025-03-04 02:09:19,731 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-04 02:09:19,732 INFO L158 Benchmark]: Toolchain (without parser) took 6633.06ms. Allocated memory was 142.6MB in the beginning and 318.8MB in the end (delta: 176.2MB). Free memory was 110.6MB in the beginning and 164.5MB in the end (delta: -53.9MB). Peak memory consumption was 124.1MB. Max. memory is 16.1GB. [2025-03-04 02:09:19,733 INFO L158 Benchmark]: CDTParser took 0.21ms. Allocated memory is still 201.3MB. Free memory is still 122.7MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 02:09:19,733 INFO L158 Benchmark]: CACSL2BoogieTranslator took 371.95ms. Allocated memory is still 142.6MB. Free memory was 110.6MB in the beginning and 86.7MB in the end (delta: 23.8MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-04 02:09:19,733 INFO L158 Benchmark]: Boogie Procedure Inliner took 45.89ms. Allocated memory is still 142.6MB. Free memory was 86.7MB in the beginning and 84.0MB in the end (delta: 2.7MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 02:09:19,734 INFO L158 Benchmark]: Boogie Preprocessor took 37.18ms. Allocated memory is still 142.6MB. Free memory was 84.0MB in the beginning and 81.0MB in the end (delta: 3.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-04 02:09:19,735 INFO L158 Benchmark]: IcfgBuilder took 574.28ms. Allocated memory is still 142.6MB. Free memory was 80.6MB in the beginning and 90.6MB in the end (delta: -10.1MB). Peak memory consumption was 48.2MB. Max. memory is 16.1GB. [2025-03-04 02:09:19,735 INFO L158 Benchmark]: TraceAbstraction took 5485.34ms. Allocated memory was 142.6MB in the beginning and 318.8MB in the end (delta: 176.2MB). Free memory was 89.9MB in the beginning and 177.7MB in the end (delta: -87.8MB). Peak memory consumption was 84.3MB. Max. memory is 16.1GB. [2025-03-04 02:09:19,735 INFO L158 Benchmark]: Witness Printer took 112.05ms. Allocated memory is still 318.8MB. Free memory was 177.7MB in the beginning and 164.5MB in the end (delta: 13.3MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-04 02:09:19,736 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.21ms. Allocated memory is still 201.3MB. Free memory is still 122.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 371.95ms. Allocated memory is still 142.6MB. Free memory was 110.6MB in the beginning and 86.7MB in the end (delta: 23.8MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 45.89ms. Allocated memory is still 142.6MB. Free memory was 86.7MB in the beginning and 84.0MB in the end (delta: 2.7MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 37.18ms. Allocated memory is still 142.6MB. Free memory was 84.0MB in the beginning and 81.0MB in the end (delta: 3.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 574.28ms. Allocated memory is still 142.6MB. Free memory was 80.6MB in the beginning and 90.6MB in the end (delta: -10.1MB). Peak memory consumption was 48.2MB. Max. memory is 16.1GB. * TraceAbstraction took 5485.34ms. Allocated memory was 142.6MB in the beginning and 318.8MB in the end (delta: 176.2MB). Free memory was 89.9MB in the beginning and 177.7MB in the end (delta: -87.8MB). Peak memory consumption was 84.3MB. Max. memory is 16.1GB. * Witness Printer took 112.05ms. Allocated memory is still 318.8MB. Free memory was 177.7MB in the beginning and 164.5MB in the end (delta: 13.3MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 18]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L708] 0 int __unbuffered_cnt = 0; [L710] 0 int __unbuffered_p1_EAX = 0; [L712] 0 int __unbuffered_p1_EBX = 0; [L713] 0 _Bool main$tmp_guard0; [L714] 0 _Bool main$tmp_guard1; [L716] 0 int x = 0; [L718] 0 int y = 0; [L719] 0 _Bool y$flush_delayed; [L720] 0 int y$mem_tmp; [L721] 0 _Bool y$r_buff0_thd0; [L722] 0 _Bool y$r_buff0_thd1; [L723] 0 _Bool y$r_buff0_thd2; [L724] 0 _Bool y$r_buff1_thd0; [L725] 0 _Bool y$r_buff1_thd1; [L726] 0 _Bool y$r_buff1_thd2; [L727] 0 _Bool y$read_delayed; [L728] 0 int *y$read_delayed_var; [L729] 0 int y$w_buff0; [L730] 0 _Bool y$w_buff0_used; [L731] 0 int y$w_buff1; [L732] 0 _Bool y$w_buff1_used; [L733] 0 _Bool weak$$choice0; [L734] 0 _Bool weak$$choice2; [L810] 0 pthread_t t1717; [L811] FCALL, FORK 0 pthread_create(&t1717, ((void *)0), P0, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t1717=-1, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=0, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=0] [L812] 0 pthread_t t1718; [L813] FCALL, FORK 0 pthread_create(&t1718, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t1717=-1, t1718=0, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=0, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=0] [L758] 2 y$w_buff1 = y$w_buff0 [L759] 2 y$w_buff0 = 2 [L760] 2 y$w_buff1_used = y$w_buff0_used [L761] 2 y$w_buff0_used = (_Bool)1 [L762] CALL 2 __VERIFIER_assert(!(y$w_buff1_used && y$w_buff0_used)) [L18] COND FALSE 2 !(!expression) [L762] RET 2 __VERIFIER_assert(!(y$w_buff1_used && y$w_buff0_used)) [L763] 2 y$r_buff1_thd0 = y$r_buff0_thd0 [L764] 2 y$r_buff1_thd1 = y$r_buff0_thd1 [L765] 2 y$r_buff1_thd2 = y$r_buff0_thd2 [L766] 2 y$r_buff0_thd2 = (_Bool)1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0] [L769] 2 weak$$choice0 = __VERIFIER_nondet_bool() [L770] 2 weak$$choice2 = __VERIFIER_nondet_bool() [L771] 2 y$flush_delayed = weak$$choice2 [L772] 2 y$mem_tmp = y [L773] 2 y = !y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y : (y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : y$w_buff1) [L774] 2 y$w_buff0 = weak$$choice2 ? y$w_buff0 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff0 : (y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : y$w_buff0)) [L775] 2 y$w_buff1 = weak$$choice2 ? y$w_buff1 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff1 : (y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff1 : y$w_buff1)) [L776] 2 y$w_buff0_used = weak$$choice2 ? y$w_buff0_used : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff0_used : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$w_buff0_used)) [L777] 2 y$w_buff1_used = weak$$choice2 ? y$w_buff1_used : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$w_buff1_used : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L778] 2 y$r_buff0_thd2 = weak$$choice2 ? y$r_buff0_thd2 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$r_buff0_thd2 : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$r_buff0_thd2)) [L779] 2 y$r_buff1_thd2 = weak$$choice2 ? y$r_buff1_thd2 : (!y$w_buff0_used || !y$r_buff0_thd2 && !y$w_buff1_used || !y$r_buff0_thd2 && !y$r_buff1_thd2 ? y$r_buff1_thd2 : (y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L780] 2 __unbuffered_p1_EAX = y [L781] 2 y = y$flush_delayed ? y$mem_tmp : y [L782] 2 y$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0] [L785] 2 __unbuffered_p1_EBX = x VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0] [L738] 1 x = 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0] [L741] 1 y = 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=1] [L744] 1 y = y$w_buff0_used && y$r_buff0_thd1 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd1 ? y$w_buff1 : y) [L745] 1 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd1 ? (_Bool)0 : y$w_buff0_used [L746] 1 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd1 || y$w_buff1_used && y$r_buff1_thd1 ? (_Bool)0 : y$w_buff1_used [L747] 1 y$r_buff0_thd1 = y$w_buff0_used && y$r_buff0_thd1 ? (_Bool)0 : y$r_buff0_thd1 [L748] 1 y$r_buff1_thd1 = y$w_buff0_used && y$r_buff0_thd1 || y$w_buff1_used && y$r_buff1_thd1 ? (_Bool)0 : y$r_buff1_thd1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=1] [L788] 2 y = y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd2 ? y$w_buff1 : y) [L789] 2 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$w_buff0_used [L790] 2 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd2 || y$w_buff1_used && y$r_buff1_thd2 ? (_Bool)0 : y$w_buff1_used [L791] 2 y$r_buff0_thd2 = y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$r_buff0_thd2 [L792] 2 y$r_buff1_thd2 = y$w_buff0_used && y$r_buff0_thd2 || y$w_buff1_used && y$r_buff1_thd2 ? (_Bool)0 : y$r_buff1_thd2 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L795] 2 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L751] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L815] 0 main$tmp_guard0 = __unbuffered_cnt == 2 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1717=-1, t1718=0, weak$$choice0=1, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L817] CALL 0 assume_abort_if_not(main$tmp_guard0) [L3] COND FALSE 0 !(!cond) [L817] RET 0 assume_abort_if_not(main$tmp_guard0) [L819] 0 y = y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd0 ? y$w_buff1 : y) [L820] 0 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$w_buff0_used [L821] 0 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd0 || y$w_buff1_used && y$r_buff1_thd0 ? (_Bool)0 : y$w_buff1_used [L822] 0 y$r_buff0_thd0 = y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$r_buff0_thd0 [L823] 0 y$r_buff1_thd0 = y$w_buff0_used && y$r_buff0_thd0 || y$w_buff1_used && y$r_buff1_thd0 ? (_Bool)0 : y$r_buff1_thd0 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1717=-1, t1718=0, weak$$choice0=1, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L826] 0 weak$$choice0 = __VERIFIER_nondet_bool() [L827] 0 weak$$choice2 = __VERIFIER_nondet_bool() [L828] 0 y$flush_delayed = weak$$choice2 [L829] 0 y$mem_tmp = y [L830] 0 y = !y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : y$w_buff1) [L831] 0 y$w_buff0 = weak$$choice2 ? y$w_buff0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff0 : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : y$w_buff0)) [L832] 0 y$w_buff1 = weak$$choice2 ? y$w_buff1 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff1 : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff1 : y$w_buff1)) [L833] 0 y$w_buff0_used = weak$$choice2 ? y$w_buff0_used : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff0_used : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$w_buff0_used)) [L834] 0 y$w_buff1_used = weak$$choice2 ? y$w_buff1_used : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff1_used : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L835] 0 y$r_buff0_thd0 = weak$$choice2 ? y$r_buff0_thd0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$r_buff0_thd0 : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$r_buff0_thd0)) [L836] 0 y$r_buff1_thd0 = weak$$choice2 ? y$r_buff1_thd0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$r_buff1_thd0 : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L837] 0 main$tmp_guard1 = !(y == 2 && __unbuffered_p1_EAX == 2 && __unbuffered_p1_EBX == 0) [L838] 0 y = y$flush_delayed ? y$mem_tmp : y [L839] 0 y$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1717=-1, t1718=0, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=2, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L841] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L18] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=2, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] [L18] 0 reach_error() VAL [\old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=2, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2] - UnprovableResult [Line: 18]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: Not analyzed. - UnprovableResult [Line: 811]: Unable to prove that petrification did provide enough thread instances (tool internal message) Unable to prove that petrification did provide enough thread instances (tool internal message) Reason: Not analyzed. - UnprovableResult [Line: 813]: Unable to prove that petrification did provide enough thread instances (tool internal message) Unable to prove that petrification did provide enough thread instances (tool internal message) Reason: Not analyzed. - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 5 procedures, 49 locations, 5 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 5.3s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 1.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 208 SdHoareTripleChecker+Valid, 0.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 202 mSDsluCounter, 78 SdHoareTripleChecker+Invalid, 0.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 67 mSDsCounter, 24 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 548 IncrementalHoareTripleChecker+Invalid, 572 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 24 mSolverCounterUnsat, 11 mSDtfsCounter, 548 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 37 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 0.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=100occurred in iteration=5, InterpolantAutomatonStates: 28, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.4s SatisfiabilityAnalysisTime, 3.2s InterpolantComputationTime, 104 NumberOfCodeBlocks, 104 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 76 ConstructedInterpolants, 0 QuantifiedInterpolants, 597 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 5 InterpolantComputations, 5 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available, ConComCheckerStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2025-03-04 02:09:19,755 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE