./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/mix006_tso.oepc.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/mix006_tso.oepc.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 a555daf8b3d43d9709cd95be6561d3a47f75ee906fd0e296710c365eb1f220a2 --- Real Ultimate output --- This is Ultimate 0.3.0-?-f8ab0bd-m [2025-03-13 21:29:24,078 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-13 21:29:24,129 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-13 21:29:24,136 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-13 21:29:24,136 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-13 21:29:24,163 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-13 21:29:24,164 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-13 21:29:24,164 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-13 21:29:24,164 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-13 21:29:24,164 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-13 21:29:24,164 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-13 21:29:24,165 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-13 21:29:24,165 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-13 21:29:24,165 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-13 21:29:24,165 INFO L153 SettingsManager]: * Use SBE=true [2025-03-13 21:29:24,165 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-13 21:29:24,165 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-13 21:29:24,165 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-13 21:29:24,165 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-13 21:29:24,165 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-13 21:29:24,165 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-13 21:29:24,167 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-13 21:29:24,167 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-13 21:29:24,167 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-13 21:29:24,167 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-13 21:29:24,167 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-13 21:29:24,167 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-13 21:29:24,167 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-13 21:29:24,167 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-13 21:29:24,167 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-13 21:29:24,168 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-13 21:29:24,168 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-13 21:29:24,168 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-13 21:29:24,168 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-13 21:29:24,168 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-13 21:29:24,168 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-13 21:29:24,168 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-13 21:29:24,168 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-13 21:29:24,168 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-13 21:29:24,168 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-13 21:29:24,168 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-13 21:29:24,168 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-13 21:29:24,168 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-13 21:29:24,168 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 -> a555daf8b3d43d9709cd95be6561d3a47f75ee906fd0e296710c365eb1f220a2 [2025-03-13 21:29:24,395 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-13 21:29:24,402 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-13 21:29:24,405 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-13 21:29:24,406 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-13 21:29:24,406 INFO L274 PluginConnector]: CDTParser initialized [2025-03-13 21:29:24,407 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/mix006_tso.oepc.i [2025-03-13 21:29:25,565 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a6a82a8bb/80de19fb83c24dc4a5ca3369cf383faa/FLAG2a1ee9957 [2025-03-13 21:29:25,846 INFO L384 CDTParser]: Found 1 translation units. [2025-03-13 21:29:25,849 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/mix006_tso.oepc.i [2025-03-13 21:29:25,859 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a6a82a8bb/80de19fb83c24dc4a5ca3369cf383faa/FLAG2a1ee9957 [2025-03-13 21:29:26,140 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a6a82a8bb/80de19fb83c24dc4a5ca3369cf383faa [2025-03-13 21:29:26,142 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-13 21:29:26,143 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-13 21:29:26,143 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-13 21:29:26,144 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-13 21:29:26,146 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-13 21:29:26,147 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.03 09:29:26" (1/1) ... [2025-03-13 21:29:26,147 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@ea394c8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26, skipping insertion in model container [2025-03-13 21:29:26,148 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.03 09:29:26" (1/1) ... [2025-03-13 21:29:26,181 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-13 21:29:26,303 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/mix006_tso.oepc.i[949,962] [2025-03-13 21:29:26,525 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-13 21:29:26,537 INFO L200 MainTranslator]: Completed pre-run [2025-03-13 21:29:26,546 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/mix006_tso.oepc.i[949,962] [2025-03-13 21:29:26,597 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-13 21:29:26,627 INFO L204 MainTranslator]: Completed translation [2025-03-13 21:29:26,628 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26 WrapperNode [2025-03-13 21:29:26,628 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-13 21:29:26,629 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-13 21:29:26,629 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-13 21:29:26,629 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-13 21:29:26,635 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:29:26" (1/1) ... [2025-03-13 21:29:26,657 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:29:26" (1/1) ... [2025-03-13 21:29:26,695 INFO L138 Inliner]: procedures = 175, calls = 47, calls flagged for inlining = 6, calls inlined = 6, statements flattened = 259 [2025-03-13 21:29:26,695 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-13 21:29:26,696 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-13 21:29:26,696 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-13 21:29:26,696 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-13 21:29:26,707 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26" (1/1) ... [2025-03-13 21:29:26,707 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26" (1/1) ... [2025-03-13 21:29:26,712 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26" (1/1) ... [2025-03-13 21:29:26,736 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:29:26,736 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26" (1/1) ... [2025-03-13 21:29:26,736 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26" (1/1) ... [2025-03-13 21:29:26,743 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26" (1/1) ... [2025-03-13 21:29:26,745 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26" (1/1) ... [2025-03-13 21:29:26,747 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26" (1/1) ... [2025-03-13 21:29:26,748 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26" (1/1) ... [2025-03-13 21:29:26,755 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-13 21:29:26,756 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-13 21:29:26,756 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-13 21:29:26,756 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-13 21:29:26,758 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26" (1/1) ... [2025-03-13 21:29:26,763 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-13 21:29:26,777 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-13 21:29:26,791 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:29:26,794 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:29:26,814 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-03-13 21:29:26,815 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-13 21:29:26,815 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2025-03-13 21:29:26,815 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2025-03-13 21:29:26,815 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2025-03-13 21:29:26,815 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2025-03-13 21:29:26,815 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2025-03-13 21:29:26,815 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2025-03-13 21:29:26,815 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-13 21:29:26,815 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-03-13 21:29:26,815 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-13 21:29:26,815 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-13 21:29:26,816 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:29:26,944 INFO L256 CfgBuilder]: Building ICFG [2025-03-13 21:29:26,946 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-13 21:29:27,332 INFO L303 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-03-13 21:29:27,333 INFO L313 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-13 21:29:27,333 INFO L318 CfgBuilder]: Performing block encoding [2025-03-13 21:29:27,751 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-13 21:29:27,752 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:29:27 BoogieIcfgContainer [2025-03-13 21:29:27,752 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-13 21:29:27,754 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-13 21:29:27,754 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-13 21:29:27,758 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-13 21:29:27,758 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 13.03 09:29:26" (1/3) ... [2025-03-13 21:29:27,759 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7e3b86c2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.03 09:29:27, skipping insertion in model container [2025-03-13 21:29:27,759 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:29:26" (2/3) ... [2025-03-13 21:29:27,759 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7e3b86c2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.03 09:29:27, skipping insertion in model container [2025-03-13 21:29:27,759 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:29:27" (3/3) ... [2025-03-13 21:29:27,760 INFO L128 eAbstractionObserver]: Analyzing ICFG mix006_tso.oepc.i [2025-03-13 21:29:27,774 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-13 21:29:27,775 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG mix006_tso.oepc.i that has 4 procedures, 42 locations, 1 initial locations, 0 loop locations, and 3 error locations. [2025-03-13 21:29:27,776 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-03-13 21:29:27,832 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2025-03-13 21:29:27,860 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 51 places, 42 transitions, 96 flow [2025-03-13 21:29:27,890 INFO L124 PetriNetUnfolderBase]: 1/39 cut-off events. [2025-03-13 21:29:27,891 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-13 21:29:27,898 INFO L83 FinitePrefix]: Finished finitePrefix Result has 49 conditions, 39 events. 1/39 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 80 event pairs, 0 based on Foata normal form. 0/35 useless extension candidates. Maximal degree in co-relation 41. Up to 2 conditions per place. [2025-03-13 21:29:27,898 INFO L82 GeneralOperation]: Start removeDead. Operand has 51 places, 42 transitions, 96 flow [2025-03-13 21:29:27,900 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 48 places, 39 transitions, 87 flow [2025-03-13 21:29:27,909 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-13 21:29:27,925 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;@274d653f, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-13 21:29:27,925 INFO L334 AbstractCegarLoop]: Starting to check reachability of 8 error locations. [2025-03-13 21:29:27,932 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-03-13 21:29:27,932 INFO L124 PetriNetUnfolderBase]: 0/10 cut-off events. [2025-03-13 21:29:27,932 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-13 21:29:27,932 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:27,933 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1] [2025-03-13 21:29:27,933 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting P1Err0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, P2Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (and 5 more)] === [2025-03-13 21:29:27,936 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:27,936 INFO L85 PathProgramCache]: Analyzing trace with hash -273462415, now seen corresponding path program 1 times [2025-03-13 21:29:27,941 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:27,942 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [589969463] [2025-03-13 21:29:27,942 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:29:27,942 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:28,008 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-03-13 21:29:28,045 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-03-13 21:29:28,046 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:29:28,046 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:28,293 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:29:28,293 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:28,293 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [589969463] [2025-03-13 21:29:28,294 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [589969463] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:28,294 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:28,294 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-03-13 21:29:28,295 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [562187173] [2025-03-13 21:29:28,295 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:28,299 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-03-13 21:29:28,302 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:28,319 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-03-13 21:29:28,320 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-03-13 21:29:28,321 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 42 [2025-03-13 21:29:28,324 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 48 places, 39 transitions, 87 flow. Second operand has 3 states, 3 states have (on average 10.666666666666666) internal successors, (32), 3 states have internal predecessors, (32), 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:29:28,324 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:28,324 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 42 [2025-03-13 21:29:28,325 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:29,689 INFO L124 PetriNetUnfolderBase]: 6713/9612 cut-off events. [2025-03-13 21:29:29,690 INFO L125 PetriNetUnfolderBase]: For 44/44 co-relation queries the response was YES. [2025-03-13 21:29:29,712 INFO L83 FinitePrefix]: Finished finitePrefix Result has 19213 conditions, 9612 events. 6713/9612 cut-off events. For 44/44 co-relation queries the response was YES. Maximal size of possible extension queue 369. Compared 54506 event pairs, 629 based on Foata normal form. 330/9557 useless extension candidates. Maximal degree in co-relation 19202. Up to 8461 conditions per place. [2025-03-13 21:29:29,751 INFO L140 encePairwiseOnDemand]: 38/42 looper letters, 50 selfloop transitions, 2 changer transitions 0/58 dead transitions. [2025-03-13 21:29:29,752 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 49 places, 58 transitions, 232 flow [2025-03-13 21:29:29,753 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-03-13 21:29:29,755 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-03-13 21:29:29,761 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 82 transitions. [2025-03-13 21:29:29,762 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6507936507936508 [2025-03-13 21:29:29,763 INFO L175 Difference]: Start difference. First operand has 48 places, 39 transitions, 87 flow. Second operand 3 states and 82 transitions. [2025-03-13 21:29:29,764 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 49 places, 58 transitions, 232 flow [2025-03-13 21:29:29,767 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 58 transitions, 228 flow, removed 0 selfloop flow, removed 3 redundant places. [2025-03-13 21:29:29,773 INFO L231 Difference]: Finished difference. Result has 46 places, 37 transitions, 84 flow [2025-03-13 21:29:29,774 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=80, PETRI_DIFFERENCE_MINUEND_PLACES=44, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=37, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=35, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=84, PETRI_PLACES=46, PETRI_TRANSITIONS=37} [2025-03-13 21:29:29,778 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, -2 predicate places. [2025-03-13 21:29:29,779 INFO L471 AbstractCegarLoop]: Abstraction has has 46 places, 37 transitions, 84 flow [2025-03-13 21:29:29,780 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 10.666666666666666) internal successors, (32), 3 states have internal predecessors, (32), 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:29:29,781 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:29,781 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:29:29,781 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-03-13 21:29:29,781 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting P2Err0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, P2Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (and 5 more)] === [2025-03-13 21:29:29,782 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:29,782 INFO L85 PathProgramCache]: Analyzing trace with hash -805265535, now seen corresponding path program 1 times [2025-03-13 21:29:29,782 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:29,782 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [383281149] [2025-03-13 21:29:29,782 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:29:29,783 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:29,796 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 8 statements into 1 equivalence classes. [2025-03-13 21:29:29,807 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 8 of 8 statements. [2025-03-13 21:29:29,807 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:29:29,807 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:29,985 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:29:29,986 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:29,986 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [383281149] [2025-03-13 21:29:29,986 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [383281149] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:29,986 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:29,986 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-03-13 21:29:29,986 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1157814085] [2025-03-13 21:29:29,987 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:29,987 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-03-13 21:29:29,987 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:29,988 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-03-13 21:29:29,988 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-03-13 21:29:29,988 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 42 [2025-03-13 21:29:29,988 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 46 places, 37 transitions, 84 flow. Second operand has 3 states, 3 states have (on average 11.333333333333334) internal successors, (34), 3 states have internal predecessors, (34), 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:29:29,988 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:29,988 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 42 [2025-03-13 21:29:29,989 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:30,841 INFO L124 PetriNetUnfolderBase]: 5851/8435 cut-off events. [2025-03-13 21:29:30,842 INFO L125 PetriNetUnfolderBase]: For 348/348 co-relation queries the response was YES. [2025-03-13 21:29:30,853 INFO L83 FinitePrefix]: Finished finitePrefix Result has 17185 conditions, 8435 events. 5851/8435 cut-off events. For 348/348 co-relation queries the response was YES. Maximal size of possible extension queue 306. Compared 45011 event pairs, 679 based on Foata normal form. 0/8382 useless extension candidates. Maximal degree in co-relation 17175. Up to 7189 conditions per place. [2025-03-13 21:29:30,881 INFO L140 encePairwiseOnDemand]: 39/42 looper letters, 44 selfloop transitions, 2 changer transitions 2/54 dead transitions. [2025-03-13 21:29:30,882 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 47 places, 54 transitions, 216 flow [2025-03-13 21:29:30,882 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-03-13 21:29:30,882 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-03-13 21:29:30,883 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 76 transitions. [2025-03-13 21:29:30,883 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6031746031746031 [2025-03-13 21:29:30,883 INFO L175 Difference]: Start difference. First operand has 46 places, 37 transitions, 84 flow. Second operand 3 states and 76 transitions. [2025-03-13 21:29:30,883 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 47 places, 54 transitions, 216 flow [2025-03-13 21:29:30,884 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 45 places, 54 transitions, 210 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-13 21:29:30,886 INFO L231 Difference]: Finished difference. Result has 45 places, 35 transitions, 80 flow [2025-03-13 21:29:30,886 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=78, PETRI_DIFFERENCE_MINUEND_PLACES=43, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=36, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=34, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=80, PETRI_PLACES=45, PETRI_TRANSITIONS=35} [2025-03-13 21:29:30,886 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, -3 predicate places. [2025-03-13 21:29:30,886 INFO L471 AbstractCegarLoop]: Abstraction has has 45 places, 35 transitions, 80 flow [2025-03-13 21:29:30,886 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 11.333333333333334) internal successors, (34), 3 states have internal predecessors, (34), 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:29:30,886 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:30,887 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:29:30,887 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-13 21:29:30,887 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, P2Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (and 5 more)] === [2025-03-13 21:29:30,887 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:30,887 INFO L85 PathProgramCache]: Analyzing trace with hash 743252416, now seen corresponding path program 1 times [2025-03-13 21:29:30,887 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:30,887 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [555287075] [2025-03-13 21:29:30,887 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:29:30,887 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:30,902 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 14 statements into 1 equivalence classes. [2025-03-13 21:29:30,966 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 14 of 14 statements. [2025-03-13 21:29:30,966 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:29:30,966 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:31,180 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:29:31,180 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:31,180 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [555287075] [2025-03-13 21:29:31,180 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [555287075] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:31,180 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:31,181 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-03-13 21:29:31,181 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [315750965] [2025-03-13 21:29:31,181 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:31,181 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-03-13 21:29:31,181 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:31,181 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-03-13 21:29:31,181 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-03-13 21:29:31,181 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 42 [2025-03-13 21:29:31,182 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 45 places, 35 transitions, 80 flow. Second operand has 4 states, 4 states have (on average 12.0) internal successors, (48), 4 states have internal predecessors, (48), 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:29:31,182 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:31,182 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 42 [2025-03-13 21:29:31,182 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:32,139 INFO L124 PetriNetUnfolderBase]: 4157/6697 cut-off events. [2025-03-13 21:29:32,140 INFO L125 PetriNetUnfolderBase]: For 236/236 co-relation queries the response was YES. [2025-03-13 21:29:32,147 INFO L83 FinitePrefix]: Finished finitePrefix Result has 13141 conditions, 6697 events. 4157/6697 cut-off events. For 236/236 co-relation queries the response was YES. Maximal size of possible extension queue 255. Compared 40782 event pairs, 798 based on Foata normal form. 294/6786 useless extension candidates. Maximal degree in co-relation 13131. Up to 3216 conditions per place. [2025-03-13 21:29:32,167 INFO L140 encePairwiseOnDemand]: 36/42 looper letters, 60 selfloop transitions, 5 changer transitions 1/72 dead transitions. [2025-03-13 21:29:32,169 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 47 places, 72 transitions, 294 flow [2025-03-13 21:29:32,170 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-03-13 21:29:32,170 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-03-13 21:29:32,171 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 104 transitions. [2025-03-13 21:29:32,171 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6190476190476191 [2025-03-13 21:29:32,171 INFO L175 Difference]: Start difference. First operand has 45 places, 35 transitions, 80 flow. Second operand 4 states and 104 transitions. [2025-03-13 21:29:32,171 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 47 places, 72 transitions, 294 flow [2025-03-13 21:29:32,172 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 45 places, 72 transitions, 286 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-13 21:29:32,173 INFO L231 Difference]: Finished difference. Result has 47 places, 38 transitions, 110 flow [2025-03-13 21:29:32,173 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=76, PETRI_DIFFERENCE_MINUEND_PLACES=42, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=35, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=30, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=110, PETRI_PLACES=47, PETRI_TRANSITIONS=38} [2025-03-13 21:29:32,174 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, -1 predicate places. [2025-03-13 21:29:32,174 INFO L471 AbstractCegarLoop]: Abstraction has has 47 places, 38 transitions, 110 flow [2025-03-13 21:29:32,174 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 12.0) internal successors, (48), 4 states have internal predecessors, (48), 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:29:32,174 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:32,174 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:29:32,174 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-03-13 21:29:32,175 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, P2Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (and 5 more)] === [2025-03-13 21:29:32,175 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:32,175 INFO L85 PathProgramCache]: Analyzing trace with hash -101782398, now seen corresponding path program 1 times [2025-03-13 21:29:32,175 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:32,175 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1497391459] [2025-03-13 21:29:32,175 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:29:32,175 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:32,185 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 19 statements into 1 equivalence classes. [2025-03-13 21:29:32,286 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 19 of 19 statements. [2025-03-13 21:29:32,289 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:29:32,289 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:32,461 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-13 21:29:32,461 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:32,461 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1497391459] [2025-03-13 21:29:32,461 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1497391459] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:32,461 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:32,461 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-03-13 21:29:32,462 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1954409948] [2025-03-13 21:29:32,462 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:32,462 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-13 21:29:32,463 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:32,464 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-13 21:29:32,464 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-03-13 21:29:32,464 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 42 [2025-03-13 21:29:32,464 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 47 places, 38 transitions, 110 flow. Second operand has 5 states, 5 states have (on average 12.2) internal successors, (61), 5 states have internal predecessors, (61), 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:29:32,464 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:32,464 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 42 [2025-03-13 21:29:32,464 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:32,911 INFO L124 PetriNetUnfolderBase]: 2362/3762 cut-off events. [2025-03-13 21:29:32,912 INFO L125 PetriNetUnfolderBase]: For 785/785 co-relation queries the response was YES. [2025-03-13 21:29:32,918 INFO L83 FinitePrefix]: Finished finitePrefix Result has 8515 conditions, 3762 events. 2362/3762 cut-off events. For 785/785 co-relation queries the response was YES. Maximal size of possible extension queue 113. Compared 19441 event pairs, 516 based on Foata normal form. 194/3881 useless extension candidates. Maximal degree in co-relation 8503. Up to 1305 conditions per place. [2025-03-13 21:29:32,930 INFO L140 encePairwiseOnDemand]: 36/42 looper letters, 77 selfloop transitions, 8 changer transitions 1/92 dead transitions. [2025-03-13 21:29:32,930 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 51 places, 92 transitions, 411 flow [2025-03-13 21:29:32,931 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-03-13 21:29:32,931 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-03-13 21:29:32,931 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 133 transitions. [2025-03-13 21:29:32,931 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6333333333333333 [2025-03-13 21:29:32,931 INFO L175 Difference]: Start difference. First operand has 47 places, 38 transitions, 110 flow. Second operand 5 states and 133 transitions. [2025-03-13 21:29:32,931 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 51 places, 92 transitions, 411 flow [2025-03-13 21:29:32,934 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 49 places, 92 transitions, 401 flow, removed 1 selfloop flow, removed 2 redundant places. [2025-03-13 21:29:32,936 INFO L231 Difference]: Finished difference. Result has 51 places, 41 transitions, 150 flow [2025-03-13 21:29:32,937 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=102, PETRI_DIFFERENCE_MINUEND_PLACES=45, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=38, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=30, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=150, PETRI_PLACES=51, PETRI_TRANSITIONS=41} [2025-03-13 21:29:32,937 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, 3 predicate places. [2025-03-13 21:29:32,938 INFO L471 AbstractCegarLoop]: Abstraction has has 51 places, 41 transitions, 150 flow [2025-03-13 21:29:32,938 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 12.2) internal successors, (61), 5 states have internal predecessors, (61), 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:29:32,938 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:32,938 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:29:32,938 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-03-13 21:29:32,938 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, P2Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (and 5 more)] === [2025-03-13 21:29:32,939 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:32,939 INFO L85 PathProgramCache]: Analyzing trace with hash -1010845198, now seen corresponding path program 1 times [2025-03-13 21:29:32,939 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:32,939 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [778345695] [2025-03-13 21:29:32,939 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:29:32,939 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:32,950 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 25 statements into 1 equivalence classes. [2025-03-13 21:29:33,088 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-03-13 21:29:33,090 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:29:33,090 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:33,390 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:29:33,391 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:33,391 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [778345695] [2025-03-13 21:29:33,392 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [778345695] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:33,392 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:33,392 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-03-13 21:29:33,392 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1731571725] [2025-03-13 21:29:33,392 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:33,392 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-13 21:29:33,393 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:33,393 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-13 21:29:33,393 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2025-03-13 21:29:33,395 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 42 [2025-03-13 21:29:33,395 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 51 places, 41 transitions, 150 flow. Second operand has 6 states, 6 states have (on average 12.5) internal successors, (75), 6 states have internal predecessors, (75), 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:29:33,395 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:33,395 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 42 [2025-03-13 21:29:33,395 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:33,679 INFO L124 PetriNetUnfolderBase]: 1533/2355 cut-off events. [2025-03-13 21:29:33,679 INFO L125 PetriNetUnfolderBase]: For 1374/1374 co-relation queries the response was YES. [2025-03-13 21:29:33,682 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5817 conditions, 2355 events. 1533/2355 cut-off events. For 1374/1374 co-relation queries the response was YES. Maximal size of possible extension queue 89. Compared 10679 event pairs, 467 based on Foata normal form. 64/2400 useless extension candidates. Maximal degree in co-relation 5803. Up to 906 conditions per place. [2025-03-13 21:29:33,687 INFO L140 encePairwiseOnDemand]: 36/42 looper letters, 64 selfloop transitions, 11 changer transitions 1/82 dead transitions. [2025-03-13 21:29:33,687 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 56 places, 82 transitions, 394 flow [2025-03-13 21:29:33,688 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-03-13 21:29:33,688 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-03-13 21:29:33,688 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 132 transitions. [2025-03-13 21:29:33,688 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5238095238095238 [2025-03-13 21:29:33,689 INFO L175 Difference]: Start difference. First operand has 51 places, 41 transitions, 150 flow. Second operand 6 states and 132 transitions. [2025-03-13 21:29:33,689 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 56 places, 82 transitions, 394 flow [2025-03-13 21:29:33,695 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 52 places, 82 transitions, 369 flow, removed 4 selfloop flow, removed 4 redundant places. [2025-03-13 21:29:33,695 INFO L231 Difference]: Finished difference. Result has 54 places, 41 transitions, 164 flow [2025-03-13 21:29:33,696 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=128, PETRI_DIFFERENCE_MINUEND_PLACES=47, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=41, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=11, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=30, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=164, PETRI_PLACES=54, PETRI_TRANSITIONS=41} [2025-03-13 21:29:33,696 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, 6 predicate places. [2025-03-13 21:29:33,697 INFO L471 AbstractCegarLoop]: Abstraction has has 54 places, 41 transitions, 164 flow [2025-03-13 21:29:33,697 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 12.5) internal successors, (75), 6 states have internal predecessors, (75), 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:29:33,698 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:33,698 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:29:33,698 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-03-13 21:29:33,700 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, P2Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (and 5 more)] === [2025-03-13 21:29:33,700 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:33,700 INFO L85 PathProgramCache]: Analyzing trace with hash 572694326, now seen corresponding path program 1 times [2025-03-13 21:29:33,700 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:33,700 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [682745402] [2025-03-13 21:29:33,700 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:29:33,700 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:33,713 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 31 statements into 1 equivalence classes. [2025-03-13 21:29:33,924 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 31 of 31 statements. [2025-03-13 21:29:33,924 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:29:33,925 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:34,271 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:29:34,271 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:34,271 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [682745402] [2025-03-13 21:29:34,271 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [682745402] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:34,272 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:34,272 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2025-03-13 21:29:34,272 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [312652906] [2025-03-13 21:29:34,272 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:34,272 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-13 21:29:34,273 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:34,273 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-13 21:29:34,273 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2025-03-13 21:29:34,278 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 8 out of 42 [2025-03-13 21:29:34,278 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 54 places, 41 transitions, 164 flow. Second operand has 6 states, 6 states have (on average 12.5) internal successors, (75), 6 states have internal predecessors, (75), 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:29:34,278 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:34,278 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 8 of 42 [2025-03-13 21:29:34,278 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:34,719 INFO L124 PetriNetUnfolderBase]: 2023/3104 cut-off events. [2025-03-13 21:29:34,719 INFO L125 PetriNetUnfolderBase]: For 2080/2080 co-relation queries the response was YES. [2025-03-13 21:29:34,724 INFO L83 FinitePrefix]: Finished finitePrefix Result has 7811 conditions, 3104 events. 2023/3104 cut-off events. For 2080/2080 co-relation queries the response was YES. Maximal size of possible extension queue 123. Compared 15017 event pairs, 280 based on Foata normal form. 8/3108 useless extension candidates. Maximal degree in co-relation 7796. Up to 1845 conditions per place. [2025-03-13 21:29:34,728 INFO L140 encePairwiseOnDemand]: 37/42 looper letters, 47 selfloop transitions, 1 changer transitions 38/91 dead transitions. [2025-03-13 21:29:34,728 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 59 places, 91 transitions, 536 flow [2025-03-13 21:29:34,729 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-03-13 21:29:34,729 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-03-13 21:29:34,729 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 121 transitions. [2025-03-13 21:29:34,729 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.4801587301587302 [2025-03-13 21:29:34,729 INFO L175 Difference]: Start difference. First operand has 54 places, 41 transitions, 164 flow. Second operand 6 states and 121 transitions. [2025-03-13 21:29:34,730 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 59 places, 91 transitions, 536 flow [2025-03-13 21:29:34,736 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 51 places, 91 transitions, 411 flow, removed 20 selfloop flow, removed 8 redundant places. [2025-03-13 21:29:34,736 INFO L231 Difference]: Finished difference. Result has 55 places, 41 transitions, 119 flow [2025-03-13 21:29:34,736 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=108, PETRI_DIFFERENCE_MINUEND_PLACES=46, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=41, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=40, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=119, PETRI_PLACES=55, PETRI_TRANSITIONS=41} [2025-03-13 21:29:34,737 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, 7 predicate places. [2025-03-13 21:29:34,737 INFO L471 AbstractCegarLoop]: Abstraction has has 55 places, 41 transitions, 119 flow [2025-03-13 21:29:34,737 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 12.5) internal successors, (75), 6 states have internal predecessors, (75), 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:29:34,737 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:34,737 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:29:34,737 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2025-03-13 21:29:34,737 INFO L396 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, P2Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (and 5 more)] === [2025-03-13 21:29:34,738 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:34,738 INFO L85 PathProgramCache]: Analyzing trace with hash -404034388, now seen corresponding path program 2 times [2025-03-13 21:29:34,738 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:34,738 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1426262485] [2025-03-13 21:29:34,738 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-03-13 21:29:34,738 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:34,749 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 31 statements into 1 equivalence classes. [2025-03-13 21:29:34,907 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 31 of 31 statements. [2025-03-13 21:29:34,908 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-03-13 21:29:34,908 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:29:38,603 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:29:38,604 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:29:38,604 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1426262485] [2025-03-13 21:29:38,604 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1426262485] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:29:38,604 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:29:38,604 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2025-03-13 21:29:38,604 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1583472834] [2025-03-13 21:29:38,604 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:29:38,604 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2025-03-13 21:29:38,605 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:29:38,605 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2025-03-13 21:29:38,605 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=88, Unknown=0, NotChecked=0, Total=110 [2025-03-13 21:29:38,622 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 8 out of 42 [2025-03-13 21:29:38,623 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 55 places, 41 transitions, 119 flow. Second operand has 11 states, 11 states have (on average 10.454545454545455) internal successors, (115), 11 states have internal predecessors, (115), 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:29:38,623 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:29:38,623 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 8 of 42 [2025-03-13 21:29:38,624 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:29:39,606 INFO L124 PetriNetUnfolderBase]: 2930/4606 cut-off events. [2025-03-13 21:29:39,607 INFO L125 PetriNetUnfolderBase]: For 766/766 co-relation queries the response was YES. [2025-03-13 21:29:39,614 INFO L83 FinitePrefix]: Finished finitePrefix Result has 10327 conditions, 4606 events. 2930/4606 cut-off events. For 766/766 co-relation queries the response was YES. Maximal size of possible extension queue 190. Compared 24505 event pairs, 615 based on Foata normal form. 8/4609 useless extension candidates. Maximal degree in co-relation 10313. Up to 1620 conditions per place. [2025-03-13 21:29:39,623 INFO L140 encePairwiseOnDemand]: 30/42 looper letters, 106 selfloop transitions, 21 changer transitions 41/173 dead transitions. [2025-03-13 21:29:39,623 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 63 places, 173 transitions, 821 flow [2025-03-13 21:29:39,623 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2025-03-13 21:29:39,623 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2025-03-13 21:29:39,624 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 243 transitions. [2025-03-13 21:29:39,625 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.48214285714285715 [2025-03-13 21:29:39,625 INFO L175 Difference]: Start difference. First operand has 55 places, 41 transitions, 119 flow. Second operand 12 states and 243 transitions. [2025-03-13 21:29:39,625 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 63 places, 173 transitions, 821 flow [2025-03-13 21:29:39,626 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 59 places, 173 transitions, 800 flow, removed 8 selfloop flow, removed 4 redundant places. [2025-03-13 21:29:39,630 INFO L231 Difference]: Finished difference. Result has 65 places, 64 transitions, 248 flow [2025-03-13 21:29:39,630 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=42, PETRI_DIFFERENCE_MINUEND_FLOW=112, PETRI_DIFFERENCE_MINUEND_PLACES=48, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=41, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=33, PETRI_DIFFERENCE_SUBTRAHEND_STATES=12, PETRI_FLOW=248, PETRI_PLACES=65, PETRI_TRANSITIONS=64} [2025-03-13 21:29:39,631 INFO L279 CegarLoopForPetriNet]: 48 programPoint places, 17 predicate places. [2025-03-13 21:29:39,631 INFO L471 AbstractCegarLoop]: Abstraction has has 65 places, 64 transitions, 248 flow [2025-03-13 21:29:39,631 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 10.454545454545455) internal successors, (115), 11 states have internal predecessors, (115), 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:29:39,631 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:29:39,632 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:29:39,632 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2025-03-13 21:29:39,632 INFO L396 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, P2Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (and 5 more)] === [2025-03-13 21:29:39,632 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:29:39,632 INFO L85 PathProgramCache]: Analyzing trace with hash 1251434268, now seen corresponding path program 3 times [2025-03-13 21:29:39,632 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:29:39,632 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [531971952] [2025-03-13 21:29:39,633 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-03-13 21:29:39,633 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:29:39,650 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 31 statements into 1 equivalence classes. [2025-03-13 21:29:39,780 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 31 of 31 statements. [2025-03-13 21:29:39,780 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-03-13 21:29:39,780 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-13 21:29:39,780 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-13 21:29:39,788 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 31 statements into 1 equivalence classes. [2025-03-13 21:29:39,916 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 31 of 31 statements. [2025-03-13 21:29:39,917 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:29:39,917 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-13 21:29:39,953 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-13 21:29:39,953 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-13 21:29:39,954 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (7 of 8 remaining) [2025-03-13 21:29:39,956 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (6 of 8 remaining) [2025-03-13 21:29:39,957 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P2Err0ASSERT_VIOLATIONERROR_FUNCTION (5 of 8 remaining) [2025-03-13 21:29:39,957 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (4 of 8 remaining) [2025-03-13 21:29:39,957 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (3 of 8 remaining) [2025-03-13 21:29:39,958 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 8 remaining) [2025-03-13 21:29:39,958 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (1 of 8 remaining) [2025-03-13 21:29:39,958 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P2Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 8 remaining) [2025-03-13 21:29:39,958 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2025-03-13 21:29:39,959 INFO L422 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1, 1] [2025-03-13 21:29:40,066 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-03-13 21:29:40,066 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-13 21:29:40,071 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 13.03 09:29:40 BasicIcfg [2025-03-13 21:29:40,071 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-13 21:29:40,072 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-13 21:29:40,072 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-13 21:29:40,072 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-13 21:29:40,073 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:29:27" (3/4) ... [2025-03-13 21:29:40,073 INFO L140 WitnessPrinter]: Generating witness for reachability counterexample [2025-03-13 21:29:40,175 INFO L127 tionWitnessGenerator]: Generated YAML witness of length 12. [2025-03-13 21:29:40,219 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-03-13 21:29:40,220 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.yml [2025-03-13 21:29:40,220 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-13 21:29:40,221 INFO L158 Benchmark]: Toolchain (without parser) took 14078.01ms. Allocated memory was 167.8MB in the beginning and 939.5MB in the end (delta: 771.8MB). Free memory was 132.0MB in the beginning and 742.4MB in the end (delta: -610.4MB). Peak memory consumption was 161.5MB. Max. memory is 16.1GB. [2025-03-13 21:29:40,221 INFO L158 Benchmark]: CDTParser took 0.26ms. Allocated memory is still 201.3MB. Free memory is still 116.0MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-13 21:29:40,221 INFO L158 Benchmark]: CACSL2BoogieTranslator took 484.81ms. Allocated memory is still 167.8MB. Free memory was 132.0MB in the beginning and 103.7MB in the end (delta: 28.3MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-13 21:29:40,222 INFO L158 Benchmark]: Boogie Procedure Inliner took 66.64ms. Allocated memory is still 167.8MB. Free memory was 103.7MB in the beginning and 99.5MB in the end (delta: 4.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-13 21:29:40,222 INFO L158 Benchmark]: Boogie Preprocessor took 59.12ms. Allocated memory is still 167.8MB. Free memory was 99.5MB in the beginning and 94.4MB in the end (delta: 5.0MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-13 21:29:40,222 INFO L158 Benchmark]: IcfgBuilder took 996.30ms. Allocated memory is still 167.8MB. Free memory was 94.4MB in the beginning and 107.9MB in the end (delta: -13.4MB). Peak memory consumption was 70.5MB. Max. memory is 16.1GB. [2025-03-13 21:29:40,222 INFO L158 Benchmark]: TraceAbstraction took 12317.36ms. Allocated memory was 167.8MB in the beginning and 939.5MB in the end (delta: 771.8MB). Free memory was 106.9MB in the beginning and 763.4MB in the end (delta: -656.4MB). Peak memory consumption was 575.5MB. Max. memory is 16.1GB. [2025-03-13 21:29:40,222 INFO L158 Benchmark]: Witness Printer took 148.07ms. Allocated memory is still 939.5MB. Free memory was 763.4MB in the beginning and 742.4MB in the end (delta: 21.0MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-13 21:29:40,223 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.26ms. Allocated memory is still 201.3MB. Free memory is still 116.0MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 484.81ms. Allocated memory is still 167.8MB. Free memory was 132.0MB in the beginning and 103.7MB in the end (delta: 28.3MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 66.64ms. Allocated memory is still 167.8MB. Free memory was 103.7MB in the beginning and 99.5MB in the end (delta: 4.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 59.12ms. Allocated memory is still 167.8MB. Free memory was 99.5MB in the beginning and 94.4MB in the end (delta: 5.0MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 996.30ms. Allocated memory is still 167.8MB. Free memory was 94.4MB in the beginning and 107.9MB in the end (delta: -13.4MB). Peak memory consumption was 70.5MB. Max. memory is 16.1GB. * TraceAbstraction took 12317.36ms. Allocated memory was 167.8MB in the beginning and 939.5MB in the end (delta: 771.8MB). Free memory was 106.9MB in the beginning and 763.4MB in the end (delta: -656.4MB). Peak memory consumption was 575.5MB. Max. memory is 16.1GB. * Witness Printer took 148.07ms. Allocated memory is still 939.5MB. Free memory was 763.4MB in the beginning and 742.4MB in the end (delta: 21.0MB). Peak memory consumption was 25.2MB. 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: [L709] 0 int __unbuffered_cnt = 0; [L711] 0 int __unbuffered_p1_EAX = 0; [L713] 0 int __unbuffered_p1_EBX = 0; [L715] 0 int __unbuffered_p2_EAX = 0; [L717] 0 int __unbuffered_p2_EBX = 0; [L718] 0 _Bool main$tmp_guard0; [L719] 0 _Bool main$tmp_guard1; [L721] 0 int x = 0; [L722] 0 _Bool x$flush_delayed; [L723] 0 int x$mem_tmp; [L724] 0 _Bool x$r_buff0_thd0; [L725] 0 _Bool x$r_buff0_thd1; [L726] 0 _Bool x$r_buff0_thd2; [L727] 0 _Bool x$r_buff0_thd3; [L728] 0 _Bool x$r_buff1_thd0; [L729] 0 _Bool x$r_buff1_thd1; [L730] 0 _Bool x$r_buff1_thd2; [L731] 0 _Bool x$r_buff1_thd3; [L732] 0 _Bool x$read_delayed; [L733] 0 int *x$read_delayed_var; [L734] 0 int x$w_buff0; [L735] 0 _Bool x$w_buff0_used; [L736] 0 int x$w_buff1; [L737] 0 _Bool x$w_buff1_used; [L739] 0 int y = 0; [L740] 0 _Bool y$flush_delayed; [L741] 0 int y$mem_tmp; [L742] 0 _Bool y$r_buff0_thd0; [L743] 0 _Bool y$r_buff0_thd1; [L744] 0 _Bool y$r_buff0_thd2; [L745] 0 _Bool y$r_buff0_thd3; [L746] 0 _Bool y$r_buff1_thd0; [L747] 0 _Bool y$r_buff1_thd1; [L748] 0 _Bool y$r_buff1_thd2; [L749] 0 _Bool y$r_buff1_thd3; [L750] 0 _Bool y$read_delayed; [L751] 0 int *y$read_delayed_var; [L752] 0 int y$w_buff0; [L753] 0 _Bool y$w_buff0_used; [L754] 0 int y$w_buff1; [L755] 0 _Bool y$w_buff1_used; [L757] 0 int z = 0; [L758] 0 _Bool weak$$choice0; [L759] 0 _Bool weak$$choice2; [L899] 0 pthread_t t171; [L900] FCALL, FORK 0 pthread_create(&t171, ((void *)0), P0, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t171=-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_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=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, z=0] [L901] 0 pthread_t t172; [L902] FCALL, FORK 0 pthread_create(&t172, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, t171=-1, t172=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=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=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, z=0] [L903] 0 pthread_t t173; [L904] FCALL, FORK 0 pthread_create(&t173, ((void *)0), P2, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, t171=-1, t172=0, t173=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_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=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, z=0] [L841] 3 y$w_buff1 = y$w_buff0 [L842] 3 y$w_buff0 = 1 [L843] 3 y$w_buff1_used = y$w_buff0_used [L844] 3 y$w_buff0_used = (_Bool)1 [L845] CALL 3 __VERIFIER_assert(!(y$w_buff1_used && y$w_buff0_used)) [L18] COND FALSE 3 !(!expression) [L845] RET 3 __VERIFIER_assert(!(y$w_buff1_used && y$w_buff0_used)) [L846] 3 y$r_buff1_thd0 = y$r_buff0_thd0 [L847] 3 y$r_buff1_thd1 = y$r_buff0_thd1 [L848] 3 y$r_buff1_thd2 = y$r_buff0_thd2 [L849] 3 y$r_buff1_thd3 = y$r_buff0_thd3 [L850] 3 y$r_buff0_thd3 = (_Bool)1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=0, __unbuffered_p2_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=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=0] [L853] 3 weak$$choice0 = __VERIFIER_nondet_bool() [L854] 3 weak$$choice2 = __VERIFIER_nondet_bool() [L855] 3 y$flush_delayed = weak$$choice2 [L856] 3 y$mem_tmp = y [L857] 3 y = !y$w_buff0_used || !y$r_buff0_thd3 && !y$w_buff1_used || !y$r_buff0_thd3 && !y$r_buff1_thd3 ? y : (y$w_buff0_used && y$r_buff0_thd3 ? y$w_buff0 : y$w_buff1) [L858] 3 y$w_buff0 = weak$$choice2 ? y$w_buff0 : (!y$w_buff0_used || !y$r_buff0_thd3 && !y$w_buff1_used || !y$r_buff0_thd3 && !y$r_buff1_thd3 ? y$w_buff0 : (y$w_buff0_used && y$r_buff0_thd3 ? y$w_buff0 : y$w_buff0)) [L859] 3 y$w_buff1 = weak$$choice2 ? y$w_buff1 : (!y$w_buff0_used || !y$r_buff0_thd3 && !y$w_buff1_used || !y$r_buff0_thd3 && !y$r_buff1_thd3 ? y$w_buff1 : (y$w_buff0_used && y$r_buff0_thd3 ? y$w_buff1 : y$w_buff1)) [L860] 3 y$w_buff0_used = weak$$choice2 ? y$w_buff0_used : (!y$w_buff0_used || !y$r_buff0_thd3 && !y$w_buff1_used || !y$r_buff0_thd3 && !y$r_buff1_thd3 ? y$w_buff0_used : (y$w_buff0_used && y$r_buff0_thd3 ? (_Bool)0 : y$w_buff0_used)) [L861] 3 y$w_buff1_used = weak$$choice2 ? y$w_buff1_used : (!y$w_buff0_used || !y$r_buff0_thd3 && !y$w_buff1_used || !y$r_buff0_thd3 && !y$r_buff1_thd3 ? y$w_buff1_used : (y$w_buff0_used && y$r_buff0_thd3 ? (_Bool)0 : (_Bool)0)) [L862] 3 y$r_buff0_thd3 = weak$$choice2 ? y$r_buff0_thd3 : (!y$w_buff0_used || !y$r_buff0_thd3 && !y$w_buff1_used || !y$r_buff0_thd3 && !y$r_buff1_thd3 ? y$r_buff0_thd3 : (y$w_buff0_used && y$r_buff0_thd3 ? (_Bool)0 : y$r_buff0_thd3)) [L863] 3 y$r_buff1_thd3 = weak$$choice2 ? y$r_buff1_thd3 : (!y$w_buff0_used || !y$r_buff0_thd3 && !y$w_buff1_used || !y$r_buff0_thd3 && !y$r_buff1_thd3 ? y$r_buff1_thd3 : (y$w_buff0_used && y$r_buff0_thd3 ? (_Bool)0 : (_Bool)0)) [L864] 3 __unbuffered_p2_EAX = y [L865] 3 y = y$flush_delayed ? y$mem_tmp : y [L866] 3 y$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, 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=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=0] [L869] 3 __unbuffered_p2_EBX = z VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, 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=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=0] [L763] 1 z = 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, 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=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=1] [L766] 1 x = 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, 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=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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=1, 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_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=1] [L769] 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) [L770] 1 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$w_buff0_used [L771] 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 [L772] 1 x$r_buff0_thd1 = x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$r_buff0_thd1 [L773] 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=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, 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=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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=1, 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_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=1] [L776] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, 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=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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=1, 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_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=1] [L783] 2 x$w_buff1 = x$w_buff0 [L784] 2 x$w_buff0 = 2 [L785] 2 x$w_buff1_used = x$w_buff0_used [L786] 2 x$w_buff0_used = (_Bool)1 [L787] CALL 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L18] COND FALSE 2 !(!expression) [L787] RET 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L788] 2 x$r_buff1_thd0 = x$r_buff0_thd0 [L789] 2 x$r_buff1_thd1 = x$r_buff0_thd1 [L790] 2 x$r_buff1_thd2 = x$r_buff0_thd2 [L791] 2 x$r_buff1_thd3 = x$r_buff0_thd3 [L792] 2 x$r_buff0_thd2 = (_Bool)1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, 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_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=1] [L795] 2 weak$$choice0 = __VERIFIER_nondet_bool() [L796] 2 weak$$choice2 = __VERIFIER_nondet_bool() [L797] 2 x$flush_delayed = weak$$choice2 [L798] 2 x$mem_tmp = x [L799] 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) [L800] 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)) [L801] 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)) [L802] 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)) [L803] 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)) [L804] 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)) [L805] 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)) [L806] 2 __unbuffered_p1_EAX = x [L807] 2 x = x$flush_delayed ? x$mem_tmp : x [L808] 2 x$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_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=1, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=1] [L811] 2 weak$$choice0 = __VERIFIER_nondet_bool() [L812] 2 weak$$choice2 = __VERIFIER_nondet_bool() [L813] 2 y$flush_delayed = weak$$choice2 [L814] 2 y$mem_tmp = y [L815] 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) [L816] 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)) [L817] 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)) [L818] 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)) [L819] 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)) [L820] 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)) [L821] 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)) [L822] 2 __unbuffered_p1_EBX = y [L823] 2 y = y$flush_delayed ? y$mem_tmp : y [L824] 2 y$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=1, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=1] [L827] 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) [L828] 2 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$w_buff0_used [L829] 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 [L830] 2 x$r_buff0_thd2 = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$r_buff0_thd2 [L831] 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=1, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=1, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=1] [L872] 3 x = x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x) [L873] 3 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$w_buff0_used [L874] 3 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd3 || x$w_buff1_used && x$r_buff1_thd3 ? (_Bool)0 : x$w_buff1_used [L875] 3 x$r_buff0_thd3 = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$r_buff0_thd3 [L876] 3 x$r_buff1_thd3 = x$w_buff0_used && x$r_buff0_thd3 || x$w_buff1_used && x$r_buff1_thd3 ? (_Bool)0 : x$r_buff1_thd3 [L877] 3 y = y$w_buff0_used && y$r_buff0_thd3 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd3 ? y$w_buff1 : y) [L878] 3 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd3 ? (_Bool)0 : y$w_buff0_used [L879] 3 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd3 || y$w_buff1_used && y$r_buff1_thd3 ? (_Bool)0 : y$w_buff1_used [L880] 3 y$r_buff0_thd3 = y$w_buff0_used && y$r_buff0_thd3 ? (_Bool)0 : y$r_buff0_thd3 [L881] 3 y$r_buff1_thd3 = y$w_buff0_used && y$r_buff0_thd3 || y$w_buff1_used && y$r_buff1_thd3 ? (_Bool)0 : y$r_buff1_thd3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=1, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=1, z=1] [L834] 2 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=1, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=1, z=1] [L884] 3 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=1, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=1, z=1] [L906] 0 main$tmp_guard0 = __unbuffered_cnt == 3 VAL [\old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t171=-1, t172=0, t173=1, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=1, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=1, z=1] [L908] CALL 0 assume_abort_if_not(main$tmp_guard0) [L3] COND FALSE 0 !(!cond) [L908] RET 0 assume_abort_if_not(main$tmp_guard0) [L910] 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) [L911] 0 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used [L912] 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 [L913] 0 x$r_buff0_thd0 = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0 [L914] 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 [L915] 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) [L916] 0 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$w_buff0_used [L917] 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 [L918] 0 y$r_buff0_thd0 = y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$r_buff0_thd0 [L919] 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=3, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t171=-1, t172=0, t173=1, weak$$choice0=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=1, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=1, z=1] [L922] 0 weak$$choice0 = __VERIFIER_nondet_bool() [L923] 0 weak$$choice2 = __VERIFIER_nondet_bool() [L924] 0 x$flush_delayed = weak$$choice2 [L925] 0 x$mem_tmp = x [L926] 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) [L927] 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)) [L928] 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)) [L929] 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)) [L930] 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)) [L931] 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)) [L932] 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)) [L933] 0 main$tmp_guard1 = !(x == 2 && __unbuffered_p1_EAX == 2 && __unbuffered_p1_EBX == 0 && __unbuffered_p2_EAX == 1 && __unbuffered_p2_EBX == 0) [L934] 0 x = x$flush_delayed ? x$mem_tmp : x [L935] 0 x$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t171=-1, t172=0, t173=1, weak$$choice0=0, weak$$choice2=0, 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_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=1, z=1] [L937] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L18] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, 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_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=1, z=1] [L18] 0 reach_error() VAL [\old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p1_EAX=2, __unbuffered_p1_EBX=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, 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_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=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$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff0_thd3=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$r_buff1_thd3=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=1, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=1, z=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: 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: 902]: 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: 904]: 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: 900]: 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 7 procedures, 70 locations, 8 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 12.1s, OverallIterations: 8, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 5.6s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 469 SdHoareTripleChecker+Valid, 1.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 464 mSDsluCounter, 100 SdHoareTripleChecker+Invalid, 1.3s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 98 mSDsCounter, 41 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1333 IncrementalHoareTripleChecker+Invalid, 1374 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 41 mSolverCounterUnsat, 2 mSDtfsCounter, 1333 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 46 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 20 ImplicationChecksByTransitivity, 0.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=248occurred in iteration=7, InterpolantAutomatonStates: 39, 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.9s SatisfiabilityAnalysisTime, 5.1s InterpolantComputationTime, 165 NumberOfCodeBlocks, 165 NumberOfCodeBlocksAsserted, 8 NumberOfCheckSat, 127 ConstructedInterpolants, 0 QuantifiedInterpolants, 1256 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 7 InterpolantComputations, 7 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:29:40,249 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