./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/mix022_tso.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version f8ab0bd5 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/mix022_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 c9c6cc212d45f96c9e6587b0ee0d7644c3fabb2c198a03ef385d6df2e7b46689 --- Real Ultimate output --- This is Ultimate 0.3.0-?-f8ab0bd-m [2025-03-13 21:30:33,459 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-13 21:30:33,518 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-13 21:30:33,522 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-13 21:30:33,524 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-13 21:30:33,546 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-13 21:30:33,547 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-13 21:30:33,548 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-13 21:30:33,548 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-13 21:30:33,548 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-13 21:30:33,549 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-13 21:30:33,549 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-13 21:30:33,549 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-13 21:30:33,549 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-13 21:30:33,550 INFO L153 SettingsManager]: * Use SBE=true [2025-03-13 21:30:33,550 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-13 21:30:33,550 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-13 21:30:33,550 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-13 21:30:33,550 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-13 21:30:33,550 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-13 21:30:33,550 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-13 21:30:33,550 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-13 21:30:33,550 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-13 21:30:33,551 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-13 21:30:33,551 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-13 21:30:33,551 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-13 21:30:33,551 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-13 21:30:33,551 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-13 21:30:33,551 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-13 21:30:33,551 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-13 21:30:33,551 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-13 21:30:33,551 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-13 21:30:33,551 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-13 21:30:33,552 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-13 21:30:33,552 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-13 21:30:33,552 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-13 21:30:33,552 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-13 21:30:33,552 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-13 21:30:33,552 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-13 21:30:33,552 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-13 21:30:33,552 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-13 21:30:33,552 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-13 21:30:33,553 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-13 21:30:33,553 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 -> c9c6cc212d45f96c9e6587b0ee0d7644c3fabb2c198a03ef385d6df2e7b46689 [2025-03-13 21:30:33,787 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-13 21:30:33,798 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-13 21:30:33,799 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-13 21:30:33,800 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-13 21:30:33,800 INFO L274 PluginConnector]: CDTParser initialized [2025-03-13 21:30:33,801 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/mix022_tso.i [2025-03-13 21:30:34,979 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/49e8b47c0/3f223fa9cb134a4ca3547e63e7d64577/FLAG5f282be44 [2025-03-13 21:30:35,248 INFO L384 CDTParser]: Found 1 translation units. [2025-03-13 21:30:35,249 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix022_tso.i [2025-03-13 21:30:35,268 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/49e8b47c0/3f223fa9cb134a4ca3547e63e7d64577/FLAG5f282be44 [2025-03-13 21:30:35,551 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/49e8b47c0/3f223fa9cb134a4ca3547e63e7d64577 [2025-03-13 21:30:35,553 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-13 21:30:35,554 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-13 21:30:35,555 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-13 21:30:35,555 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-13 21:30:35,559 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-13 21:30:35,560 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:35,562 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@72661622 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35, skipping insertion in model container [2025-03-13 21:30:35,562 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:35,592 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-13 21:30:35,716 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/mix022_tso.i[944,957] [2025-03-13 21:30:35,867 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-13 21:30:35,877 INFO L200 MainTranslator]: Completed pre-run [2025-03-13 21:30:35,886 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/mix022_tso.i[944,957] [2025-03-13 21:30:35,938 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-13 21:30:35,964 INFO L204 MainTranslator]: Completed translation [2025-03-13 21:30:35,965 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35 WrapperNode [2025-03-13 21:30:35,965 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-13 21:30:35,966 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-13 21:30:35,966 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-13 21:30:35,966 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-13 21:30:35,971 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:35,983 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:36,008 INFO L138 Inliner]: procedures = 174, calls = 35, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 145 [2025-03-13 21:30:36,012 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-13 21:30:36,013 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-13 21:30:36,013 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-13 21:30:36,013 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-13 21:30:36,019 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:36,020 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:36,022 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:36,046 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-13 21:30:36,047 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:36,048 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:36,055 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:36,056 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:36,061 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:36,062 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:36,064 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-13 21:30:36,064 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-13 21:30:36,064 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-13 21:30:36,064 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-13 21:30:36,069 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (1/1) ... [2025-03-13 21:30:36,073 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-13 21:30:36,087 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-13 21:30:36,103 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-13 21:30:36,109 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-13 21:30:36,125 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-03-13 21:30:36,125 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-13 21:30:36,125 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2025-03-13 21:30:36,125 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2025-03-13 21:30:36,125 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2025-03-13 21:30:36,125 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2025-03-13 21:30:36,125 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-13 21:30:36,125 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-03-13 21:30:36,126 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-13 21:30:36,126 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-13 21:30:36,127 WARN L225 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-03-13 21:30:36,237 INFO L256 CfgBuilder]: Building ICFG [2025-03-13 21:30:36,239 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-13 21:30:36,549 INFO L303 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-03-13 21:30:36,550 INFO L313 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-13 21:30:36,550 INFO L318 CfgBuilder]: Performing block encoding [2025-03-13 21:30:36,787 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-13 21:30:36,788 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:30:36 BoogieIcfgContainer [2025-03-13 21:30:36,789 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-13 21:30:36,791 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-13 21:30:36,791 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-13 21:30:36,794 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-13 21:30:36,795 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 13.03 09:30:35" (1/3) ... [2025-03-13 21:30:36,795 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3366e557 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.03 09:30:36, skipping insertion in model container [2025-03-13 21:30:36,796 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:30:35" (2/3) ... [2025-03-13 21:30:36,796 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3366e557 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.03 09:30:36, skipping insertion in model container [2025-03-13 21:30:36,796 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:30:36" (3/3) ... [2025-03-13 21:30:36,797 INFO L128 eAbstractionObserver]: Analyzing ICFG mix022_tso.i [2025-03-13 21:30:36,808 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-13 21:30:36,810 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG mix022_tso.i that has 3 procedures, 31 locations, 1 initial locations, 0 loop locations, and 2 error locations. [2025-03-13 21:30:36,810 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-03-13 21:30:36,847 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2025-03-13 21:30:36,877 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 37 places, 31 transitions, 70 flow [2025-03-13 21:30:36,899 INFO L124 PetriNetUnfolderBase]: 1/29 cut-off events. [2025-03-13 21:30:36,900 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-13 21:30:36,902 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-13 21:30:36,902 INFO L82 GeneralOperation]: Start removeDead. Operand has 37 places, 31 transitions, 70 flow [2025-03-13 21:30:36,904 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 35 places, 29 transitions, 64 flow [2025-03-13 21:30:36,910 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-13 21:30:36,921 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;@3ff7c5d2, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-13 21:30:36,921 INFO L334 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2025-03-13 21:30:36,930 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-03-13 21:30:36,930 INFO L124 PetriNetUnfolderBase]: 0/10 cut-off events. [2025-03-13 21:30:36,930 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-13 21:30:36,930 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:30:36,931 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1] [2025-03-13 21:30:36,931 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-13 21:30:36,940 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:30:36,941 INFO L85 PathProgramCache]: Analyzing trace with hash 1733113271, now seen corresponding path program 1 times [2025-03-13 21:30:36,946 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:30:36,947 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [398334878] [2025-03-13 21:30:36,947 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:30:36,947 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:30:37,008 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-03-13 21:30:37,037 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-03-13 21:30:37,038 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:30:37,038 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:30:37,310 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-13 21:30:37,311 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:30:37,311 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [398334878] [2025-03-13 21:30:37,311 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [398334878] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:30:37,312 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:30:37,312 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-03-13 21:30:37,313 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [535613053] [2025-03-13 21:30:37,314 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:30:37,319 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-03-13 21:30:37,322 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:30:37,340 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-03-13 21:30:37,340 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-03-13 21:30:37,342 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 31 [2025-03-13 21:30:37,344 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-13 21:30:37,344 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:30:37,344 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 31 [2025-03-13 21:30:37,345 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:30:37,666 INFO L124 PetriNetUnfolderBase]: 537/907 cut-off events. [2025-03-13 21:30:37,667 INFO L125 PetriNetUnfolderBase]: For 4/4 co-relation queries the response was YES. [2025-03-13 21:30:37,670 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-13 21:30:37,678 INFO L140 encePairwiseOnDemand]: 27/31 looper letters, 30 selfloop transitions, 2 changer transitions 2/39 dead transitions. [2025-03-13 21:30:37,678 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 36 places, 39 transitions, 152 flow [2025-03-13 21:30:37,680 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-03-13 21:30:37,681 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-03-13 21:30:37,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 58 transitions. [2025-03-13 21:30:37,688 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6236559139784946 [2025-03-13 21:30:37,689 INFO L175 Difference]: Start difference. First operand has 35 places, 29 transitions, 64 flow. Second operand 3 states and 58 transitions. [2025-03-13 21:30:37,690 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 36 places, 39 transitions, 152 flow [2025-03-13 21:30:37,693 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 34 places, 39 transitions, 150 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-13 21:30:37,694 INFO L231 Difference]: Finished difference. Result has 34 places, 26 transitions, 60 flow [2025-03-13 21:30:37,700 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-13 21:30:37,702 INFO L279 CegarLoopForPetriNet]: 35 programPoint places, -1 predicate places. [2025-03-13 21:30:37,702 INFO L471 AbstractCegarLoop]: Abstraction has has 34 places, 26 transitions, 60 flow [2025-03-13 21:30:37,703 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-13 21:30:37,703 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:30:37,703 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:30:37,703 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-03-13 21:30:37,703 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-13 21:30:37,703 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:30:37,703 INFO L85 PathProgramCache]: Analyzing trace with hash -1711207150, now seen corresponding path program 1 times [2025-03-13 21:30:37,704 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:30:37,704 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [193176416] [2025-03-13 21:30:37,704 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:30:37,704 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:30:37,721 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 12 statements into 1 equivalence classes. [2025-03-13 21:30:37,778 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 12 of 12 statements. [2025-03-13 21:30:37,778 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:30:37,779 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:30:38,013 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-13 21:30:38,013 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:30:38,013 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [193176416] [2025-03-13 21:30:38,014 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [193176416] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:30:38,014 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:30:38,014 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-03-13 21:30:38,014 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1840440956] [2025-03-13 21:30:38,014 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:30:38,015 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-03-13 21:30:38,015 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:30:38,015 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-03-13 21:30:38,015 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-03-13 21:30:38,015 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 31 [2025-03-13 21:30:38,015 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-13 21:30:38,015 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:30:38,015 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 31 [2025-03-13 21:30:38,015 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:30:38,192 INFO L124 PetriNetUnfolderBase]: 315/633 cut-off events. [2025-03-13 21:30:38,192 INFO L125 PetriNetUnfolderBase]: For 28/28 co-relation queries the response was YES. [2025-03-13 21:30:38,194 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-13 21:30:38,200 INFO L140 encePairwiseOnDemand]: 26/31 looper letters, 40 selfloop transitions, 4 changer transitions 1/50 dead transitions. [2025-03-13 21:30:38,200 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 36 places, 50 transitions, 204 flow [2025-03-13 21:30:38,201 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-03-13 21:30:38,201 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-03-13 21:30:38,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 75 transitions. [2025-03-13 21:30:38,203 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6048387096774194 [2025-03-13 21:30:38,203 INFO L175 Difference]: Start difference. First operand has 34 places, 26 transitions, 60 flow. Second operand 4 states and 75 transitions. [2025-03-13 21:30:38,203 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 36 places, 50 transitions, 204 flow [2025-03-13 21:30:38,203 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 34 places, 50 transitions, 196 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-13 21:30:38,205 INFO L231 Difference]: Finished difference. Result has 36 places, 28 transitions, 82 flow [2025-03-13 21:30:38,206 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-13 21:30:38,206 INFO L279 CegarLoopForPetriNet]: 35 programPoint places, 1 predicate places. [2025-03-13 21:30:38,206 INFO L471 AbstractCegarLoop]: Abstraction has has 36 places, 28 transitions, 82 flow [2025-03-13 21:30:38,206 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-13 21:30:38,206 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:30:38,207 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:30:38,207 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-13 21:30:38,207 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-13 21:30:38,207 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:30:38,207 INFO L85 PathProgramCache]: Analyzing trace with hash 38640485, now seen corresponding path program 1 times [2025-03-13 21:30:38,208 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:30:38,208 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [412620263] [2025-03-13 21:30:38,208 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:30:38,208 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:30:38,219 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 17 statements into 1 equivalence classes. [2025-03-13 21:30:38,279 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 17 of 17 statements. [2025-03-13 21:30:38,279 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:30:38,279 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:30:38,467 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-13 21:30:38,467 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:30:38,467 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [412620263] [2025-03-13 21:30:38,467 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [412620263] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:30:38,467 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:30:38,467 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-03-13 21:30:38,467 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1550619214] [2025-03-13 21:30:38,467 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:30:38,467 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-13 21:30:38,467 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:30:38,468 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-13 21:30:38,468 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-03-13 21:30:38,469 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 31 [2025-03-13 21:30:38,469 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-13 21:30:38,469 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:30:38,469 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 31 [2025-03-13 21:30:38,469 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:30:38,592 INFO L124 PetriNetUnfolderBase]: 158/312 cut-off events. [2025-03-13 21:30:38,592 INFO L125 PetriNetUnfolderBase]: For 73/73 co-relation queries the response was YES. [2025-03-13 21:30:38,594 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-13 21:30:38,595 INFO L140 encePairwiseOnDemand]: 26/31 looper letters, 32 selfloop transitions, 6 changer transitions 1/44 dead transitions. [2025-03-13 21:30:38,596 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 40 places, 44 transitions, 197 flow [2025-03-13 21:30:38,596 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-03-13 21:30:38,596 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-03-13 21:30:38,596 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 76 transitions. [2025-03-13 21:30:38,597 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.49032258064516127 [2025-03-13 21:30:38,597 INFO L175 Difference]: Start difference. First operand has 36 places, 28 transitions, 82 flow. Second operand 5 states and 76 transitions. [2025-03-13 21:30:38,597 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 40 places, 44 transitions, 197 flow [2025-03-13 21:30:38,598 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 38 places, 44 transitions, 188 flow, removed 1 selfloop flow, removed 2 redundant places. [2025-03-13 21:30:38,598 INFO L231 Difference]: Finished difference. Result has 40 places, 28 transitions, 98 flow [2025-03-13 21:30:38,598 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-13 21:30:38,599 INFO L279 CegarLoopForPetriNet]: 35 programPoint places, 5 predicate places. [2025-03-13 21:30:38,599 INFO L471 AbstractCegarLoop]: Abstraction has has 40 places, 28 transitions, 98 flow [2025-03-13 21:30:38,599 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-13 21:30:38,599 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:30:38,599 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-13 21:30:38,599 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-03-13 21:30:38,599 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-13 21:30:38,601 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:30:38,601 INFO L85 PathProgramCache]: Analyzing trace with hash 691312629, now seen corresponding path program 1 times [2025-03-13 21:30:38,601 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:30:38,602 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [82161363] [2025-03-13 21:30:38,602 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:30:38,602 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:30:38,617 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 23 statements into 1 equivalence classes. [2025-03-13 21:30:38,719 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-03-13 21:30:38,719 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:30:38,719 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:30:39,000 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-13 21:30:39,001 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:30:39,001 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [82161363] [2025-03-13 21:30:39,001 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [82161363] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:30:39,002 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:30:39,002 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2025-03-13 21:30:39,002 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [854579521] [2025-03-13 21:30:39,002 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:30:39,002 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-13 21:30:39,003 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:30:39,004 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-13 21:30:39,004 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2025-03-13 21:30:39,010 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 31 [2025-03-13 21:30:39,011 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 40 places, 28 transitions, 98 flow. Second operand has 6 states, 6 states have (on average 9.333333333333334) internal successors, (56), 6 states have internal predecessors, (56), 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-13 21:30:39,011 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:30:39,011 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 31 [2025-03-13 21:30:39,011 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:30:39,244 INFO L124 PetriNetUnfolderBase]: 197/392 cut-off events. [2025-03-13 21:30:39,244 INFO L125 PetriNetUnfolderBase]: For 196/196 co-relation queries the response was YES. [2025-03-13 21:30:39,245 INFO L83 FinitePrefix]: Finished finitePrefix Result has 970 conditions, 392 events. 197/392 cut-off events. For 196/196 co-relation queries the response was YES. Maximal size of possible extension queue 20. Compared 1421 event pairs, 40 based on Foata normal form. 4/394 useless extension candidates. Maximal degree in co-relation 956. Up to 223 conditions per place. [2025-03-13 21:30:39,246 INFO L140 encePairwiseOnDemand]: 26/31 looper letters, 27 selfloop transitions, 1 changer transitions 24/56 dead transitions. [2025-03-13 21:30:39,246 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 45 places, 56 transitions, 300 flow [2025-03-13 21:30:39,246 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-03-13 21:30:39,247 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-03-13 21:30:39,247 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 85 transitions. [2025-03-13 21:30:39,247 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.45698924731182794 [2025-03-13 21:30:39,248 INFO L175 Difference]: Start difference. First operand has 40 places, 28 transitions, 98 flow. Second operand 6 states and 85 transitions. [2025-03-13 21:30:39,248 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 45 places, 56 transitions, 300 flow [2025-03-13 21:30:39,250 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 39 places, 56 transitions, 243 flow, removed 10 selfloop flow, removed 6 redundant places. [2025-03-13 21:30:39,250 INFO L231 Difference]: Finished difference. Result has 43 places, 28 transitions, 81 flow [2025-03-13 21:30:39,250 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=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=27, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=81, PETRI_PLACES=43, PETRI_TRANSITIONS=28} [2025-03-13 21:30:39,251 INFO L279 CegarLoopForPetriNet]: 35 programPoint places, 8 predicate places. [2025-03-13 21:30:39,251 INFO L471 AbstractCegarLoop]: Abstraction has has 43 places, 28 transitions, 81 flow [2025-03-13 21:30:39,251 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 9.333333333333334) internal successors, (56), 6 states have internal predecessors, (56), 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-13 21:30:39,251 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:30:39,251 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-13 21:30:39,251 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-03-13 21:30:39,252 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-13 21:30:39,252 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:30:39,252 INFO L85 PathProgramCache]: Analyzing trace with hash -289060189, now seen corresponding path program 2 times [2025-03-13 21:30:39,252 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:30:39,252 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2132345555] [2025-03-13 21:30:39,252 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-03-13 21:30:39,252 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:30:39,267 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 23 statements into 1 equivalence classes. [2025-03-13 21:30:39,366 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-03-13 21:30:39,367 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-03-13 21:30:39,367 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:30:41,008 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-13 21:30:41,009 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:30:41,009 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2132345555] [2025-03-13 21:30:41,009 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2132345555] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:30:41,009 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:30:41,009 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2025-03-13 21:30:41,009 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1608961007] [2025-03-13 21:30:41,009 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:30:41,010 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2025-03-13 21:30:41,010 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:30:41,010 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2025-03-13 21:30:41,011 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=86, Unknown=0, NotChecked=0, Total=110 [2025-03-13 21:30:41,022 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 31 [2025-03-13 21:30:41,023 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 28 transitions, 81 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-13 21:30:41,023 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:30:41,023 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 31 [2025-03-13 21:30:41,023 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:30:41,435 INFO L124 PetriNetUnfolderBase]: 167/347 cut-off events. [2025-03-13 21:30:41,435 INFO L125 PetriNetUnfolderBase]: For 60/60 co-relation queries the response was YES. [2025-03-13 21:30:41,436 INFO L83 FinitePrefix]: Finished finitePrefix Result has 781 conditions, 347 events. 167/347 cut-off events. For 60/60 co-relation queries the response was YES. Maximal size of possible extension queue 15. Compared 1245 event pairs, 40 based on Foata normal form. 4/348 useless extension candidates. Maximal degree in co-relation 767. Up to 126 conditions per place. [2025-03-13 21:30:41,436 INFO L140 encePairwiseOnDemand]: 22/31 looper letters, 26 selfloop transitions, 4 changer transitions 33/67 dead transitions. [2025-03-13 21:30:41,436 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 49 places, 67 transitions, 315 flow [2025-03-13 21:30:41,437 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2025-03-13 21:30:41,437 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2025-03-13 21:30:41,438 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 120 transitions. [2025-03-13 21:30:41,439 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.3870967741935484 [2025-03-13 21:30:41,439 INFO L175 Difference]: Start difference. First operand has 43 places, 28 transitions, 81 flow. Second operand 10 states and 120 transitions. [2025-03-13 21:30:41,439 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 49 places, 67 transitions, 315 flow [2025-03-13 21:30:41,440 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 45 places, 67 transitions, 301 flow, removed 5 selfloop flow, removed 4 redundant places. [2025-03-13 21:30:41,440 INFO L231 Difference]: Finished difference. Result has 50 places, 28 transitions, 95 flow [2025-03-13 21:30:41,440 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=31, PETRI_DIFFERENCE_MINUEND_FLOW=74, PETRI_DIFFERENCE_MINUEND_PLACES=36, 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=10, PETRI_FLOW=95, PETRI_PLACES=50, PETRI_TRANSITIONS=28} [2025-03-13 21:30:41,441 INFO L279 CegarLoopForPetriNet]: 35 programPoint places, 15 predicate places. [2025-03-13 21:30:41,441 INFO L471 AbstractCegarLoop]: Abstraction has has 50 places, 28 transitions, 95 flow [2025-03-13 21:30:41,441 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-13 21:30:41,441 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:30:41,441 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-13 21:30:41,441 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-03-13 21:30:41,442 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-13 21:30:41,442 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:30:41,442 INFO L85 PathProgramCache]: Analyzing trace with hash -1687487993, now seen corresponding path program 3 times [2025-03-13 21:30:41,442 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:30:41,442 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [73822155] [2025-03-13 21:30:41,442 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-03-13 21:30:41,442 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:30:41,451 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 23 statements into 1 equivalence classes. [2025-03-13 21:30:41,488 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-03-13 21:30:41,488 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-03-13 21:30:41,488 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-13 21:30:41,489 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-13 21:30:41,493 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 23 statements into 1 equivalence classes. [2025-03-13 21:30:41,554 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-03-13 21:30:41,554 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:30:41,554 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-13 21:30:41,573 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-13 21:30:41,573 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-13 21:30:41,576 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (4 of 5 remaining) [2025-03-13 21:30:41,577 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (3 of 5 remaining) [2025-03-13 21:30:41,577 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 5 remaining) [2025-03-13 21:30:41,577 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 5 remaining) [2025-03-13 21:30:41,577 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 5 remaining) [2025-03-13 21:30:41,577 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2025-03-13 21:30:41,578 INFO L422 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1] [2025-03-13 21:30:41,637 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-03-13 21:30:41,637 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-13 21:30:41,642 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 13.03 09:30:41 BasicIcfg [2025-03-13 21:30:41,642 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-13 21:30:41,642 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-13 21:30:41,642 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-13 21:30:41,643 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-13 21:30:41,644 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:30:36" (3/4) ... [2025-03-13 21:30:41,645 INFO L140 WitnessPrinter]: Generating witness for reachability counterexample [2025-03-13 21:30:41,719 INFO L127 tionWitnessGenerator]: Generated YAML witness of length 9. [2025-03-13 21:30:41,754 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-03-13 21:30:41,754 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.yml [2025-03-13 21:30:41,754 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-13 21:30:41,756 INFO L158 Benchmark]: Toolchain (without parser) took 6200.87ms. Allocated memory was 167.8MB in the beginning and 469.8MB in the end (delta: 302.0MB). Free memory was 122.7MB in the beginning and 397.1MB in the end (delta: -274.4MB). Peak memory consumption was 24.3MB. Max. memory is 16.1GB. [2025-03-13 21:30:41,756 INFO L158 Benchmark]: CDTParser took 0.13ms. Allocated memory is still 201.3MB. Free memory is still 117.8MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-13 21:30:41,757 INFO L158 Benchmark]: CACSL2BoogieTranslator took 410.79ms. Allocated memory is still 167.8MB. Free memory was 122.7MB in the beginning and 98.3MB in the end (delta: 24.4MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-13 21:30:41,757 INFO L158 Benchmark]: Boogie Procedure Inliner took 46.55ms. Allocated memory is still 167.8MB. Free memory was 98.3MB in the beginning and 96.2MB in the end (delta: 2.2MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-13 21:30:41,757 INFO L158 Benchmark]: Boogie Preprocessor took 50.73ms. Allocated memory is still 167.8MB. Free memory was 96.2MB in the beginning and 92.8MB in the end (delta: 3.4MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-13 21:30:41,757 INFO L158 Benchmark]: IcfgBuilder took 724.92ms. Allocated memory is still 167.8MB. Free memory was 92.8MB in the beginning and 103.3MB in the end (delta: -10.5MB). Peak memory consumption was 65.6MB. Max. memory is 16.1GB. [2025-03-13 21:30:41,758 INFO L158 Benchmark]: TraceAbstraction took 4850.80ms. Allocated memory was 167.8MB in the beginning and 469.8MB in the end (delta: 302.0MB). Free memory was 102.4MB in the beginning and 409.7MB in the end (delta: -307.3MB). Peak memory consumption was 193.5MB. Max. memory is 16.1GB. [2025-03-13 21:30:41,758 INFO L158 Benchmark]: Witness Printer took 111.52ms. Allocated memory is still 469.8MB. Free memory was 409.7MB in the beginning and 397.1MB in the end (delta: 12.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-13 21:30:41,760 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.13ms. Allocated memory is still 201.3MB. Free memory is still 117.8MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 410.79ms. Allocated memory is still 167.8MB. Free memory was 122.7MB in the beginning and 98.3MB in the end (delta: 24.4MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 46.55ms. Allocated memory is still 167.8MB. Free memory was 98.3MB in the beginning and 96.2MB in the end (delta: 2.2MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 50.73ms. Allocated memory is still 167.8MB. Free memory was 96.2MB in the beginning and 92.8MB in the end (delta: 3.4MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 724.92ms. Allocated memory is still 167.8MB. Free memory was 92.8MB in the beginning and 103.3MB in the end (delta: -10.5MB). Peak memory consumption was 65.6MB. Max. memory is 16.1GB. * TraceAbstraction took 4850.80ms. Allocated memory was 167.8MB in the beginning and 469.8MB in the end (delta: 302.0MB). Free memory was 102.4MB in the beginning and 409.7MB in the end (delta: -307.3MB). Peak memory consumption was 193.5MB. Max. memory is 16.1GB. * Witness Printer took 111.52ms. Allocated memory is still 469.8MB. Free memory was 409.7MB in the beginning and 397.1MB in the end (delta: 12.6MB). Peak memory consumption was 8.4MB. 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; [L717] 0 _Bool x$flush_delayed; [L718] 0 int x$mem_tmp; [L719] 0 _Bool x$r_buff0_thd0; [L720] 0 _Bool x$r_buff0_thd1; [L721] 0 _Bool x$r_buff0_thd2; [L722] 0 _Bool x$r_buff1_thd0; [L723] 0 _Bool x$r_buff1_thd1; [L724] 0 _Bool x$r_buff1_thd2; [L725] 0 _Bool x$read_delayed; [L726] 0 int *x$read_delayed_var; [L727] 0 int x$w_buff0; [L728] 0 _Bool x$w_buff0_used; [L729] 0 int x$w_buff1; [L730] 0 _Bool x$w_buff1_used; [L732] 0 int y = 0; [L733] 0 _Bool weak$$choice0; [L734] 0 _Bool weak$$choice2; [L810] 0 pthread_t t597; [L811] FCALL, FORK 0 pthread_create(&t597, ((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, t597=-2, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L812] 0 pthread_t t598; [L813] FCALL, FORK 0 pthread_create(&t598, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, t597=-2, t598=-1, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L758] 2 x$w_buff1 = x$w_buff0 [L759] 2 x$w_buff0 = 2 [L760] 2 x$w_buff1_used = x$w_buff0_used [L761] 2 x$w_buff0_used = (_Bool)1 [L762] CALL 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L18] COND FALSE 2 !(!expression) [L762] RET 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L763] 2 x$r_buff1_thd0 = x$r_buff0_thd0 [L764] 2 x$r_buff1_thd1 = x$r_buff0_thd1 [L765] 2 x$r_buff1_thd2 = x$r_buff0_thd2 [L766] 2 x$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$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L769] 2 weak$$choice0 = __VERIFIER_nondet_bool() [L770] 2 weak$$choice2 = __VERIFIER_nondet_bool() [L771] 2 x$flush_delayed = weak$$choice2 [L772] 2 x$mem_tmp = x [L773] 2 x = !x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x : (x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : x$w_buff1) [L774] 2 x$w_buff0 = weak$$choice2 ? x$w_buff0 : (!x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x$w_buff0 : (x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : x$w_buff0)) [L775] 2 x$w_buff1 = weak$$choice2 ? x$w_buff1 : (!x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x$w_buff1 : (x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff1 : x$w_buff1)) [L776] 2 x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : (!x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x$w_buff0_used : (x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$w_buff0_used)) [L777] 2 x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : (!x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x$w_buff1_used : (x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L778] 2 x$r_buff0_thd2 = weak$$choice2 ? x$r_buff0_thd2 : (!x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x$r_buff0_thd2 : (x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$r_buff0_thd2)) [L779] 2 x$r_buff1_thd2 = weak$$choice2 ? x$r_buff1_thd2 : (!x$w_buff0_used || !x$r_buff0_thd2 && !x$w_buff1_used || !x$r_buff0_thd2 && !x$r_buff1_thd2 ? x$r_buff1_thd2 : (x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : (_Bool)0)) [L780] 2 __unbuffered_p1_EAX = x [L781] 2 x = x$flush_delayed ? x$mem_tmp : x [L782] 2 x$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$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L785] 2 __unbuffered_p1_EBX = y 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$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L738] 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$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1] [L741] 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$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=1, y=1] [L744] 1 x = x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd1 ? x$w_buff1 : x) [L745] 1 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$w_buff0_used [L746] 1 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd1 || x$w_buff1_used && x$r_buff1_thd1 ? (_Bool)0 : x$w_buff1_used [L747] 1 x$r_buff0_thd1 = x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$r_buff0_thd1 [L748] 1 x$r_buff1_thd1 = x$w_buff0_used && x$r_buff0_thd1 || x$w_buff1_used && x$r_buff1_thd1 ? (_Bool)0 : x$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$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=1, y=1] [L788] 2 x = x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x) [L789] 2 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$w_buff0_used [L790] 2 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd2 || x$w_buff1_used && x$r_buff1_thd2 ? (_Bool)0 : x$w_buff1_used [L791] 2 x$r_buff0_thd2 = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$r_buff0_thd2 [L792] 2 x$r_buff1_thd2 = x$w_buff0_used && x$r_buff0_thd2 || x$w_buff1_used && x$r_buff1_thd2 ? (_Bool)0 : x$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$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [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$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [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$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [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, t597=-2, t598=-1, weak$$choice0=1, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [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 x = x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x) [L820] 0 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used [L821] 0 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd0 || x$w_buff1_used && x$r_buff1_thd0 ? (_Bool)0 : x$w_buff1_used [L822] 0 x$r_buff0_thd0 = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0 [L823] 0 x$r_buff1_thd0 = x$w_buff0_used && x$r_buff0_thd0 || x$w_buff1_used && x$r_buff1_thd0 ? (_Bool)0 : x$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, t597=-2, t598=-1, weak$$choice0=1, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [L826] 0 weak$$choice0 = __VERIFIER_nondet_bool() [L827] 0 weak$$choice2 = __VERIFIER_nondet_bool() [L828] 0 x$flush_delayed = weak$$choice2 [L829] 0 x$mem_tmp = x [L830] 0 x = !x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff1) [L831] 0 x$w_buff0 = weak$$choice2 ? x$w_buff0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff0 : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff0)) [L832] 0 x$w_buff1 = weak$$choice2 ? x$w_buff1 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff1 : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff1 : x$w_buff1)) [L833] 0 x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff0_used : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used)) [L834] 0 x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff1_used : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L835] 0 x$r_buff0_thd0 = weak$$choice2 ? x$r_buff0_thd0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$r_buff0_thd0 : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0)) [L836] 0 x$r_buff1_thd0 = weak$$choice2 ? x$r_buff1_thd0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$r_buff1_thd0 : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L837] 0 main$tmp_guard1 = !(x == 2 && __unbuffered_p1_EAX == 2 && __unbuffered_p1_EBX == 0) [L838] 0 x = x$flush_delayed ? x$mem_tmp : x [L839] 0 x$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, t597=-2, t598=-1, weak$$choice0=1, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [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=1, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] [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=1, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=1] - 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: 4.7s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 1.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 191 SdHoareTripleChecker+Valid, 0.6s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 186 mSDsluCounter, 60 SdHoareTripleChecker+Invalid, 0.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 58 mSDsCounter, 23 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 644 IncrementalHoareTripleChecker+Invalid, 667 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 23 mSolverCounterUnsat, 2 mSDtfsCounter, 644 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 35 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=98occurred in iteration=3, 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, 2.6s InterpolantComputationTime, 104 NumberOfCodeBlocks, 104 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 76 ConstructedInterpolants, 0 QuantifiedInterpolants, 572 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-13 21:30:41,777 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Writing human readable error path to file UltimateCounterExample.errorpath Result: FALSE