./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/safe009_rmo.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/safe009_rmo.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 d4dfc0bbdb080812f042fcb42d1e3b37e9e0d49ae456458f71f0b25bb99756b4 --- Real Ultimate output --- This is Ultimate 0.3.0-?-f8ab0bd-m [2025-03-13 21:34:10,803 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-13 21:34:10,853 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-13 21:34:10,857 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-13 21:34:10,857 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-13 21:34:10,878 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-13 21:34:10,879 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-13 21:34:10,879 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-13 21:34:10,879 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-13 21:34:10,879 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-13 21:34:10,880 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-13 21:34:10,880 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-13 21:34:10,880 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-13 21:34:10,880 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-13 21:34:10,881 INFO L153 SettingsManager]: * Use SBE=true [2025-03-13 21:34:10,881 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-13 21:34:10,881 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-13 21:34:10,881 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-13 21:34:10,881 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-13 21:34:10,881 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-13 21:34:10,881 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-13 21:34:10,882 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-13 21:34:10,882 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-13 21:34:10,882 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-13 21:34:10,882 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-13 21:34:10,882 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-13 21:34:10,882 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-13 21:34:10,882 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-13 21:34:10,882 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-13 21:34:10,882 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-13 21:34:10,883 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-13 21:34:10,883 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-13 21:34:10,883 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-13 21:34:10,883 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-13 21:34:10,883 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-13 21:34:10,883 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-13 21:34:10,883 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-13 21:34:10,883 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-13 21:34:10,883 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-13 21:34:10,883 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-13 21:34:10,883 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-13 21:34:10,883 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-13 21:34:10,884 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-13 21:34:10,884 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 -> d4dfc0bbdb080812f042fcb42d1e3b37e9e0d49ae456458f71f0b25bb99756b4 [2025-03-13 21:34:11,085 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-13 21:34:11,095 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-13 21:34:11,097 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-13 21:34:11,098 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-13 21:34:11,098 INFO L274 PluginConnector]: CDTParser initialized [2025-03-13 21:34:11,099 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/safe009_rmo.oepc.i [2025-03-13 21:34:12,256 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/808094de2/310a78ded49041688fd7e3cbf1defa7e/FLAG3a77ae912 [2025-03-13 21:34:12,549 INFO L384 CDTParser]: Found 1 translation units. [2025-03-13 21:34:12,550 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe009_rmo.oepc.i [2025-03-13 21:34:12,565 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/808094de2/310a78ded49041688fd7e3cbf1defa7e/FLAG3a77ae912 [2025-03-13 21:34:12,579 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/808094de2/310a78ded49041688fd7e3cbf1defa7e [2025-03-13 21:34:12,582 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-13 21:34:12,583 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-13 21:34:12,584 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-13 21:34:12,585 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-13 21:34:12,587 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-13 21:34:12,588 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.03 09:34:12" (1/1) ... [2025-03-13 21:34:12,590 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@74879232 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12, skipping insertion in model container [2025-03-13 21:34:12,590 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.03 09:34:12" (1/1) ... [2025-03-13 21:34:12,622 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-13 21:34:12,744 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/safe009_rmo.oepc.i[993,1006] [2025-03-13 21:34:12,861 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-13 21:34:12,870 INFO L200 MainTranslator]: Completed pre-run [2025-03-13 21:34:12,885 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/safe009_rmo.oepc.i[993,1006] [2025-03-13 21:34:12,947 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-13 21:34:12,978 INFO L204 MainTranslator]: Completed translation [2025-03-13 21:34:12,978 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12 WrapperNode [2025-03-13 21:34:12,979 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-13 21:34:12,979 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-13 21:34:12,979 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-13 21:34:12,979 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-13 21:34:12,984 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:34:12" (1/1) ... [2025-03-13 21:34:12,995 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:34:12" (1/1) ... [2025-03-13 21:34:13,010 INFO L138 Inliner]: procedures = 175, calls = 62, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 159 [2025-03-13 21:34:13,011 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-13 21:34:13,011 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-13 21:34:13,012 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-13 21:34:13,012 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-13 21:34:13,018 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12" (1/1) ... [2025-03-13 21:34:13,018 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12" (1/1) ... [2025-03-13 21:34:13,025 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12" (1/1) ... [2025-03-13 21:34:13,045 INFO L175 MemorySlicer]: Split 24 memory accesses to 2 slices as follows [2, 22]. 92 percent of accesses are in the largest equivalence class. The 3 initializations are split as follows [2, 1]. The 9 writes are split as follows [0, 9]. [2025-03-13 21:34:13,045 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12" (1/1) ... [2025-03-13 21:34:13,045 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12" (1/1) ... [2025-03-13 21:34:13,052 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12" (1/1) ... [2025-03-13 21:34:13,060 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12" (1/1) ... [2025-03-13 21:34:13,062 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12" (1/1) ... [2025-03-13 21:34:13,063 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12" (1/1) ... [2025-03-13 21:34:13,067 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-13 21:34:13,068 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-13 21:34:13,068 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-13 21:34:13,068 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-13 21:34:13,068 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12" (1/1) ... [2025-03-13 21:34:13,072 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-13 21:34:13,085 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-13 21:34:13,097 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:34:13,101 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:34:13,118 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-03-13 21:34:13,119 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-03-13 21:34:13,119 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-03-13 21:34:13,119 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-03-13 21:34:13,119 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-03-13 21:34:13,119 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-13 21:34:13,119 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2025-03-13 21:34:13,119 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2025-03-13 21:34:13,119 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2025-03-13 21:34:13,120 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2025-03-13 21:34:13,120 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2025-03-13 21:34:13,120 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2025-03-13 21:34:13,120 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-13 21:34:13,120 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-03-13 21:34:13,120 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-03-13 21:34:13,120 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-13 21:34:13,120 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-13 21:34:13,122 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:34:13,244 INFO L256 CfgBuilder]: Building ICFG [2025-03-13 21:34:13,246 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-13 21:34:13,597 INFO L303 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-03-13 21:34:13,598 INFO L313 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-13 21:34:13,598 INFO L318 CfgBuilder]: Performing block encoding [2025-03-13 21:34:13,949 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-13 21:34:13,950 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:34:13 BoogieIcfgContainer [2025-03-13 21:34:13,951 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-13 21:34:13,952 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-13 21:34:13,953 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-13 21:34:13,956 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-13 21:34:13,957 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 13.03 09:34:12" (1/3) ... [2025-03-13 21:34:13,957 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@182dfe42 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.03 09:34:13, skipping insertion in model container [2025-03-13 21:34:13,957 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:12" (2/3) ... [2025-03-13 21:34:13,958 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@182dfe42 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.03 09:34:13, skipping insertion in model container [2025-03-13 21:34:13,958 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:34:13" (3/3) ... [2025-03-13 21:34:13,959 INFO L128 eAbstractionObserver]: Analyzing ICFG safe009_rmo.oepc.i [2025-03-13 21:34:13,971 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-13 21:34:13,973 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG safe009_rmo.oepc.i that has 4 procedures, 37 locations, 1 initial locations, 0 loop locations, and 1 error locations. [2025-03-13 21:34:13,974 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-03-13 21:34:14,055 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2025-03-13 21:34:14,088 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 46 places, 37 transitions, 86 flow [2025-03-13 21:34:14,115 INFO L124 PetriNetUnfolderBase]: 1/34 cut-off events. [2025-03-13 21:34:14,120 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-13 21:34:14,122 INFO L83 FinitePrefix]: Finished finitePrefix Result has 44 conditions, 34 events. 1/34 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 58 event pairs, 0 based on Foata normal form. 0/32 useless extension candidates. Maximal degree in co-relation 36. Up to 2 conditions per place. [2025-03-13 21:34:14,123 INFO L82 GeneralOperation]: Start removeDead. Operand has 46 places, 37 transitions, 86 flow [2025-03-13 21:34:14,125 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 41 places, 31 transitions, 71 flow [2025-03-13 21:34:14,132 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-13 21:34:14,140 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;@42f1b58, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-13 21:34:14,141 INFO L334 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2025-03-13 21:34:14,154 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-03-13 21:34:14,154 INFO L124 PetriNetUnfolderBase]: 0/30 cut-off events. [2025-03-13 21:34:14,154 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-13 21:34:14,155 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:14,155 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:34:14,155 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-03-13 21:34:14,160 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:14,160 INFO L85 PathProgramCache]: Analyzing trace with hash -1162091378, now seen corresponding path program 1 times [2025-03-13 21:34:14,165 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:14,168 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [87244010] [2025-03-13 21:34:14,168 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:34:14,168 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:14,242 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 14 statements into 1 equivalence classes. [2025-03-13 21:34:14,403 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 14 of 14 statements. [2025-03-13 21:34:14,404 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:34:14,404 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:34:14,806 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:34:14,807 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:34:14,808 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [87244010] [2025-03-13 21:34:14,808 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [87244010] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:34:14,808 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:34:14,808 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-03-13 21:34:14,809 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [769001057] [2025-03-13 21:34:14,810 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:34:14,814 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-03-13 21:34:14,817 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:34:14,831 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-03-13 21:34:14,832 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-03-13 21:34:14,834 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 37 [2025-03-13 21:34:14,836 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 41 places, 31 transitions, 71 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:34:14,836 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:34:14,837 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 37 [2025-03-13 21:34:14,837 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:34:15,530 INFO L124 PetriNetUnfolderBase]: 2651/4211 cut-off events. [2025-03-13 21:34:15,531 INFO L125 PetriNetUnfolderBase]: For 34/34 co-relation queries the response was YES. [2025-03-13 21:34:15,542 INFO L83 FinitePrefix]: Finished finitePrefix Result has 8238 conditions, 4211 events. 2651/4211 cut-off events. For 34/34 co-relation queries the response was YES. Maximal size of possible extension queue 190. Compared 23723 event pairs, 425 based on Foata normal form. 180/4378 useless extension candidates. Maximal degree in co-relation 8227. Up to 2161 conditions per place. [2025-03-13 21:34:15,560 INFO L140 encePairwiseOnDemand]: 31/37 looper letters, 51 selfloop transitions, 5 changer transitions 1/62 dead transitions. [2025-03-13 21:34:15,561 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 44 places, 62 transitions, 253 flow [2025-03-13 21:34:15,562 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-03-13 21:34:15,564 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-03-13 21:34:15,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 95 transitions. [2025-03-13 21:34:15,574 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6418918918918919 [2025-03-13 21:34:15,575 INFO L175 Difference]: Start difference. First operand has 41 places, 31 transitions, 71 flow. Second operand 4 states and 95 transitions. [2025-03-13 21:34:15,576 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 44 places, 62 transitions, 253 flow [2025-03-13 21:34:15,580 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 41 places, 62 transitions, 248 flow, removed 0 selfloop flow, removed 3 redundant places. [2025-03-13 21:34:15,585 INFO L231 Difference]: Finished difference. Result has 43 places, 34 transitions, 102 flow [2025-03-13 21:34:15,587 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=37, PETRI_DIFFERENCE_MINUEND_FLOW=68, PETRI_DIFFERENCE_MINUEND_PLACES=38, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=31, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=102, PETRI_PLACES=43, PETRI_TRANSITIONS=34} [2025-03-13 21:34:15,589 INFO L279 CegarLoopForPetriNet]: 41 programPoint places, 2 predicate places. [2025-03-13 21:34:15,589 INFO L471 AbstractCegarLoop]: Abstraction has has 43 places, 34 transitions, 102 flow [2025-03-13 21:34:15,589 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:34:15,590 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:15,590 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:34:15,590 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-03-13 21:34:15,590 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-03-13 21:34:15,592 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:15,592 INFO L85 PathProgramCache]: Analyzing trace with hash 2020460334, now seen corresponding path program 1 times [2025-03-13 21:34:15,592 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:15,592 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1302233190] [2025-03-13 21:34:15,592 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:34:15,592 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:15,616 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 18 statements into 1 equivalence classes. [2025-03-13 21:34:15,703 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 18 of 18 statements. [2025-03-13 21:34:15,703 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:34:15,703 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:34:15,925 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:34:15,925 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:34:15,926 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1302233190] [2025-03-13 21:34:15,926 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1302233190] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:34:15,926 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:34:15,926 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-03-13 21:34:15,926 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1250535403] [2025-03-13 21:34:15,926 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:34:15,927 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-13 21:34:15,927 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:34:15,927 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-13 21:34:15,927 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-03-13 21:34:15,927 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 37 [2025-03-13 21:34:15,928 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 34 transitions, 102 flow. Second operand has 5 states, 5 states have (on average 12.0) internal successors, (60), 5 states have internal predecessors, (60), 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:34:15,928 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:34:15,928 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 37 [2025-03-13 21:34:15,928 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:34:16,368 INFO L124 PetriNetUnfolderBase]: 1587/2539 cut-off events. [2025-03-13 21:34:16,369 INFO L125 PetriNetUnfolderBase]: For 524/524 co-relation queries the response was YES. [2025-03-13 21:34:16,373 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5855 conditions, 2539 events. 1587/2539 cut-off events. For 524/524 co-relation queries the response was YES. Maximal size of possible extension queue 92. Compared 12587 event pairs, 267 based on Foata normal form. 132/2658 useless extension candidates. Maximal degree in co-relation 5843. Up to 804 conditions per place. [2025-03-13 21:34:16,382 INFO L140 encePairwiseOnDemand]: 31/37 looper letters, 65 selfloop transitions, 8 changer transitions 1/79 dead transitions. [2025-03-13 21:34:16,383 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 47 places, 79 transitions, 361 flow [2025-03-13 21:34:16,383 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-03-13 21:34:16,383 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-03-13 21:34:16,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 121 transitions. [2025-03-13 21:34:16,386 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.654054054054054 [2025-03-13 21:34:16,387 INFO L175 Difference]: Start difference. First operand has 43 places, 34 transitions, 102 flow. Second operand 5 states and 121 transitions. [2025-03-13 21:34:16,387 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 47 places, 79 transitions, 361 flow [2025-03-13 21:34:16,391 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 45 places, 79 transitions, 351 flow, removed 1 selfloop flow, removed 2 redundant places. [2025-03-13 21:34:16,394 INFO L231 Difference]: Finished difference. Result has 47 places, 37 transitions, 142 flow [2025-03-13 21:34:16,395 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=37, PETRI_DIFFERENCE_MINUEND_FLOW=94, PETRI_DIFFERENCE_MINUEND_PLACES=41, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=34, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=142, PETRI_PLACES=47, PETRI_TRANSITIONS=37} [2025-03-13 21:34:16,396 INFO L279 CegarLoopForPetriNet]: 41 programPoint places, 6 predicate places. [2025-03-13 21:34:16,396 INFO L471 AbstractCegarLoop]: Abstraction has has 47 places, 37 transitions, 142 flow [2025-03-13 21:34:16,396 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 12.0) internal successors, (60), 5 states have internal predecessors, (60), 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:34:16,396 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:16,397 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:34:16,397 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-13 21:34:16,397 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-03-13 21:34:16,398 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:16,399 INFO L85 PathProgramCache]: Analyzing trace with hash -1215983142, now seen corresponding path program 1 times [2025-03-13 21:34:16,399 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:16,399 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [19482301] [2025-03-13 21:34:16,399 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:34:16,400 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:16,425 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 23 statements into 1 equivalence classes. [2025-03-13 21:34:16,500 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-03-13 21:34:16,504 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:34:16,504 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:34:16,729 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:34:16,730 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:34:16,730 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [19482301] [2025-03-13 21:34:16,730 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [19482301] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:34:16,730 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:34:16,730 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-03-13 21:34:16,730 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [12354675] [2025-03-13 21:34:16,730 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:34:16,731 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-13 21:34:16,731 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:34:16,731 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-13 21:34:16,731 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2025-03-13 21:34:16,731 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 37 [2025-03-13 21:34:16,732 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 47 places, 37 transitions, 142 flow. Second operand has 6 states, 6 states have (on average 12.166666666666666) internal successors, (73), 6 states have internal predecessors, (73), 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:34:16,732 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:34:16,732 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 37 [2025-03-13 21:34:16,732 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:34:16,994 INFO L124 PetriNetUnfolderBase]: 991/1555 cut-off events. [2025-03-13 21:34:16,995 INFO L125 PetriNetUnfolderBase]: For 1002/1002 co-relation queries the response was YES. [2025-03-13 21:34:16,998 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3959 conditions, 1555 events. 991/1555 cut-off events. For 1002/1002 co-relation queries the response was YES. Maximal size of possible extension queue 69. Compared 6794 event pairs, 237 based on Foata normal form. 52/1594 useless extension candidates. Maximal degree in co-relation 3945. Up to 568 conditions per place. [2025-03-13 21:34:17,003 INFO L140 encePairwiseOnDemand]: 31/37 looper letters, 55 selfloop transitions, 11 changer transitions 1/72 dead transitions. [2025-03-13 21:34:17,004 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 52 places, 72 transitions, 356 flow [2025-03-13 21:34:17,004 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-03-13 21:34:17,004 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-03-13 21:34:17,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 123 transitions. [2025-03-13 21:34:17,005 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5540540540540541 [2025-03-13 21:34:17,005 INFO L175 Difference]: Start difference. First operand has 47 places, 37 transitions, 142 flow. Second operand 6 states and 123 transitions. [2025-03-13 21:34:17,005 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 52 places, 72 transitions, 356 flow [2025-03-13 21:34:17,013 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 48 places, 72 transitions, 331 flow, removed 4 selfloop flow, removed 4 redundant places. [2025-03-13 21:34:17,015 INFO L231 Difference]: Finished difference. Result has 50 places, 37 transitions, 156 flow [2025-03-13 21:34:17,015 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=37, PETRI_DIFFERENCE_MINUEND_FLOW=120, PETRI_DIFFERENCE_MINUEND_PLACES=43, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=37, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=11, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=156, PETRI_PLACES=50, PETRI_TRANSITIONS=37} [2025-03-13 21:34:17,016 INFO L279 CegarLoopForPetriNet]: 41 programPoint places, 9 predicate places. [2025-03-13 21:34:17,016 INFO L471 AbstractCegarLoop]: Abstraction has has 50 places, 37 transitions, 156 flow [2025-03-13 21:34:17,017 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 12.166666666666666) internal successors, (73), 6 states have internal predecessors, (73), 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:34:17,017 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:17,017 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] [2025-03-13 21:34:17,017 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-03-13 21:34:17,017 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-03-13 21:34:17,018 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:17,018 INFO L85 PathProgramCache]: Analyzing trace with hash 830091882, now seen corresponding path program 1 times [2025-03-13 21:34:17,018 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:17,018 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [525041851] [2025-03-13 21:34:17,018 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:34:17,018 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:17,033 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 28 statements into 1 equivalence classes. [2025-03-13 21:34:17,165 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 28 of 28 statements. [2025-03-13 21:34:17,166 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:34:17,166 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:34:17,500 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:34:17,500 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:34:17,500 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [525041851] [2025-03-13 21:34:17,500 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [525041851] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:34:17,500 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:34:17,501 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-03-13 21:34:17,501 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2029085590] [2025-03-13 21:34:17,501 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:34:17,501 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-13 21:34:17,502 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:34:17,503 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-13 21:34:17,503 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2025-03-13 21:34:17,512 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 8 out of 37 [2025-03-13 21:34:17,513 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 50 places, 37 transitions, 156 flow. Second operand has 6 states, 6 states have (on average 12.0) internal successors, (72), 6 states have internal predecessors, (72), 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:34:17,513 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:34:17,513 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 8 of 37 [2025-03-13 21:34:17,513 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:34:17,864 INFO L124 PetriNetUnfolderBase]: 1403/2191 cut-off events. [2025-03-13 21:34:17,865 INFO L125 PetriNetUnfolderBase]: For 1706/1706 co-relation queries the response was YES. [2025-03-13 21:34:17,868 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5744 conditions, 2191 events. 1403/2191 cut-off events. For 1706/1706 co-relation queries the response was YES. Maximal size of possible extension queue 105. Compared 10502 event pairs, 367 based on Foata normal form. 8/2193 useless extension candidates. Maximal degree in co-relation 5729. Up to 916 conditions per place. [2025-03-13 21:34:17,873 INFO L140 encePairwiseOnDemand]: 31/37 looper letters, 51 selfloop transitions, 3 changer transitions 26/84 dead transitions. [2025-03-13 21:34:17,873 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 55 places, 84 transitions, 512 flow [2025-03-13 21:34:17,874 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-03-13 21:34:17,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-03-13 21:34:17,874 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 115 transitions. [2025-03-13 21:34:17,874 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5180180180180181 [2025-03-13 21:34:17,875 INFO L175 Difference]: Start difference. First operand has 50 places, 37 transitions, 156 flow. Second operand 6 states and 115 transitions. [2025-03-13 21:34:17,875 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 55 places, 84 transitions, 512 flow [2025-03-13 21:34:17,881 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 47 places, 84 transitions, 387 flow, removed 20 selfloop flow, removed 8 redundant places. [2025-03-13 21:34:17,882 INFO L231 Difference]: Finished difference. Result has 50 places, 37 transitions, 114 flow [2025-03-13 21:34:17,882 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=37, PETRI_DIFFERENCE_MINUEND_FLOW=100, PETRI_DIFFERENCE_MINUEND_PLACES=42, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=37, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=34, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=114, PETRI_PLACES=50, PETRI_TRANSITIONS=37} [2025-03-13 21:34:17,882 INFO L279 CegarLoopForPetriNet]: 41 programPoint places, 9 predicate places. [2025-03-13 21:34:17,882 INFO L471 AbstractCegarLoop]: Abstraction has has 50 places, 37 transitions, 114 flow [2025-03-13 21:34:17,882 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 12.0) internal successors, (72), 6 states have internal predecessors, (72), 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:34:17,882 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:17,883 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] [2025-03-13 21:34:17,883 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-03-13 21:34:17,883 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-03-13 21:34:17,883 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:17,883 INFO L85 PathProgramCache]: Analyzing trace with hash 1464191348, now seen corresponding path program 2 times [2025-03-13 21:34:17,883 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:17,883 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [413091105] [2025-03-13 21:34:17,883 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-03-13 21:34:17,883 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:17,904 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 28 statements into 1 equivalence classes. [2025-03-13 21:34:17,968 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 28 of 28 statements. [2025-03-13 21:34:17,968 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-03-13 21:34:17,968 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:34:19,385 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:34:19,385 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:34:19,385 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [413091105] [2025-03-13 21:34:19,385 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [413091105] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:34:19,385 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:34:19,385 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2025-03-13 21:34:19,385 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1267172350] [2025-03-13 21:34:19,385 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:34:19,385 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2025-03-13 21:34:19,385 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:34:19,386 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2025-03-13 21:34:19,386 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2025-03-13 21:34:19,394 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 8 out of 37 [2025-03-13 21:34:19,394 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 50 places, 37 transitions, 114 flow. Second operand has 10 states, 10 states have (on average 10.4) internal successors, (104), 10 states have internal predecessors, (104), 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:34:19,395 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:34:19,395 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 8 of 37 [2025-03-13 21:34:19,395 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:34:19,827 INFO L124 PetriNetUnfolderBase]: 1063/1691 cut-off events. [2025-03-13 21:34:19,827 INFO L125 PetriNetUnfolderBase]: For 274/275 co-relation queries the response was YES. [2025-03-13 21:34:19,829 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3967 conditions, 1691 events. 1063/1691 cut-off events. For 274/275 co-relation queries the response was YES. Maximal size of possible extension queue 79. Compared 7244 event pairs, 105 based on Foata normal form. 8/1694 useless extension candidates. Maximal degree in co-relation 3953. Up to 632 conditions per place. [2025-03-13 21:34:19,836 INFO L140 encePairwiseOnDemand]: 29/37 looper letters, 47 selfloop transitions, 4 changer transitions 35/90 dead transitions. [2025-03-13 21:34:19,837 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 55 places, 90 transitions, 439 flow [2025-03-13 21:34:19,837 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2025-03-13 21:34:19,837 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2025-03-13 21:34:19,838 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 137 transitions. [2025-03-13 21:34:19,838 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.46283783783783783 [2025-03-13 21:34:19,838 INFO L175 Difference]: Start difference. First operand has 50 places, 37 transitions, 114 flow. Second operand 8 states and 137 transitions. [2025-03-13 21:34:19,838 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 55 places, 90 transitions, 439 flow [2025-03-13 21:34:19,839 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 50 places, 90 transitions, 415 flow, removed 5 selfloop flow, removed 5 redundant places. [2025-03-13 21:34:19,840 INFO L231 Difference]: Finished difference. Result has 54 places, 37 transitions, 122 flow [2025-03-13 21:34:19,840 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=37, PETRI_DIFFERENCE_MINUEND_FLOW=102, PETRI_DIFFERENCE_MINUEND_PLACES=43, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=37, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=4, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=33, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=122, PETRI_PLACES=54, PETRI_TRANSITIONS=37} [2025-03-13 21:34:19,840 INFO L279 CegarLoopForPetriNet]: 41 programPoint places, 13 predicate places. [2025-03-13 21:34:19,840 INFO L471 AbstractCegarLoop]: Abstraction has has 54 places, 37 transitions, 122 flow [2025-03-13 21:34:19,840 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 10.4) internal successors, (104), 10 states have internal predecessors, (104), 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:34:19,840 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:19,840 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] [2025-03-13 21:34:19,841 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-03-13 21:34:19,841 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES, ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 1 more)] === [2025-03-13 21:34:19,841 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:19,841 INFO L85 PathProgramCache]: Analyzing trace with hash -135318926, now seen corresponding path program 3 times [2025-03-13 21:34:19,841 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:19,841 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1334237377] [2025-03-13 21:34:19,841 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-03-13 21:34:19,841 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:19,861 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 28 statements into 1 equivalence classes. [2025-03-13 21:34:19,911 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 28 of 28 statements. [2025-03-13 21:34:19,912 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-03-13 21:34:19,912 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-13 21:34:19,912 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-13 21:34:19,918 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 28 statements into 1 equivalence classes. [2025-03-13 21:34:19,979 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 28 of 28 statements. [2025-03-13 21:34:19,979 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:34:19,979 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-13 21:34:20,004 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-13 21:34:20,005 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-13 21:34:20,006 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (3 of 4 remaining) [2025-03-13 21:34:20,008 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 4 remaining) [2025-03-13 21:34:20,008 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 4 remaining) [2025-03-13 21:34:20,008 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 4 remaining) [2025-03-13 21:34:20,009 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2025-03-13 21:34:20,009 INFO L422 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1] [2025-03-13 21:34:20,110 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-03-13 21:34:20,112 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-13 21:34:20,115 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 13.03 09:34:20 BasicIcfg [2025-03-13 21:34:20,116 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-13 21:34:20,117 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-13 21:34:20,117 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-13 21:34:20,117 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-13 21:34:20,117 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:34:13" (3/4) ... [2025-03-13 21:34:20,118 INFO L140 WitnessPrinter]: Generating witness for reachability counterexample [2025-03-13 21:34:20,204 INFO L127 tionWitnessGenerator]: Generated YAML witness of length 6. [2025-03-13 21:34:20,237 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-03-13 21:34:20,239 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.yml [2025-03-13 21:34:20,239 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-13 21:34:20,240 INFO L158 Benchmark]: Toolchain (without parser) took 7656.55ms. Allocated memory was 167.8MB in the beginning and 494.9MB in the end (delta: 327.2MB). Free memory was 133.3MB in the beginning and 397.9MB in the end (delta: -264.7MB). Peak memory consumption was 62.2MB. Max. memory is 16.1GB. [2025-03-13 21:34:20,240 INFO L158 Benchmark]: CDTParser took 0.22ms. Allocated memory is still 201.3MB. Free memory is still 125.6MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-13 21:34:20,241 INFO L158 Benchmark]: CACSL2BoogieTranslator took 394.69ms. Allocated memory is still 167.8MB. Free memory was 132.8MB in the beginning and 107.6MB in the end (delta: 25.2MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-13 21:34:20,241 INFO L158 Benchmark]: Boogie Procedure Inliner took 31.76ms. Allocated memory is still 167.8MB. Free memory was 107.6MB in the beginning and 105.1MB in the end (delta: 2.6MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-13 21:34:20,242 INFO L158 Benchmark]: Boogie Preprocessor took 55.66ms. Allocated memory is still 167.8MB. Free memory was 105.1MB in the beginning and 101.5MB in the end (delta: 3.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-13 21:34:20,243 INFO L158 Benchmark]: IcfgBuilder took 883.02ms. Allocated memory is still 167.8MB. Free memory was 101.5MB in the beginning and 64.8MB in the end (delta: 36.7MB). Peak memory consumption was 65.9MB. Max. memory is 16.1GB. [2025-03-13 21:34:20,243 INFO L158 Benchmark]: TraceAbstraction took 6163.82ms. Allocated memory was 167.8MB in the beginning and 494.9MB in the end (delta: 327.2MB). Free memory was 64.8MB in the beginning and 418.9MB in the end (delta: -354.1MB). Peak memory consumption was 248.9MB. Max. memory is 16.1GB. [2025-03-13 21:34:20,243 INFO L158 Benchmark]: Witness Printer took 122.08ms. Allocated memory is still 494.9MB. Free memory was 418.9MB in the beginning and 397.9MB in the end (delta: 21.0MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-13 21:34:20,244 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.22ms. Allocated memory is still 201.3MB. Free memory is still 125.6MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 394.69ms. Allocated memory is still 167.8MB. Free memory was 132.8MB in the beginning and 107.6MB in the end (delta: 25.2MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 31.76ms. Allocated memory is still 167.8MB. Free memory was 107.6MB in the beginning and 105.1MB in the end (delta: 2.6MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 55.66ms. Allocated memory is still 167.8MB. Free memory was 105.1MB in the beginning and 101.5MB in the end (delta: 3.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 883.02ms. Allocated memory is still 167.8MB. Free memory was 101.5MB in the beginning and 64.8MB in the end (delta: 36.7MB). Peak memory consumption was 65.9MB. Max. memory is 16.1GB. * TraceAbstraction took 6163.82ms. Allocated memory was 167.8MB in the beginning and 494.9MB in the end (delta: 327.2MB). Free memory was 64.8MB in the beginning and 418.9MB in the end (delta: -354.1MB). Peak memory consumption was 248.9MB. Max. memory is 16.1GB. * Witness Printer took 122.08ms. Allocated memory is still 494.9MB. Free memory was 418.9MB in the beginning and 397.9MB 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: 19]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L710] 0 int __unbuffered_cnt = 0; [L712] 0 int __unbuffered_p0_EAX = 0; [L713] 0 _Bool __unbuffered_p0_EAX$flush_delayed; [L714] 0 int __unbuffered_p0_EAX$mem_tmp; [L715] 0 _Bool __unbuffered_p0_EAX$r_buff0_thd0; [L716] 0 _Bool __unbuffered_p0_EAX$r_buff0_thd1; [L717] 0 _Bool __unbuffered_p0_EAX$r_buff0_thd2; [L718] 0 _Bool __unbuffered_p0_EAX$r_buff0_thd3; [L719] 0 _Bool __unbuffered_p0_EAX$r_buff1_thd0; [L720] 0 _Bool __unbuffered_p0_EAX$r_buff1_thd1; [L721] 0 _Bool __unbuffered_p0_EAX$r_buff1_thd2; [L722] 0 _Bool __unbuffered_p0_EAX$r_buff1_thd3; [L723] 0 _Bool __unbuffered_p0_EAX$read_delayed; [L724] 0 int *__unbuffered_p0_EAX$read_delayed_var; [L725] 0 int __unbuffered_p0_EAX$w_buff0; [L726] 0 _Bool __unbuffered_p0_EAX$w_buff0_used; [L727] 0 int __unbuffered_p0_EAX$w_buff1; [L728] 0 _Bool __unbuffered_p0_EAX$w_buff1_used; [L730] 0 int __unbuffered_p1_EAX = 0; [L731] 0 _Bool main$tmp_guard0; [L732] 0 _Bool main$tmp_guard1; [L734] 0 int x = 0; [L736] 0 int y = 0; [L736] 0 int y = 0; [L737] 0 _Bool y$flush_delayed; [L738] 0 int y$mem_tmp; [L739] 0 _Bool y$r_buff0_thd0; [L740] 0 _Bool y$r_buff0_thd1; [L741] 0 _Bool y$r_buff0_thd2; [L742] 0 _Bool y$r_buff0_thd3; [L743] 0 _Bool y$r_buff1_thd0; [L744] 0 _Bool y$r_buff1_thd1; [L745] 0 _Bool y$r_buff1_thd2; [L746] 0 _Bool y$r_buff1_thd3; [L747] 0 _Bool y$read_delayed; [L748] 0 int *y$read_delayed_var; [L749] 0 int y$w_buff0; [L750] 0 _Bool y$w_buff0_used; [L751] 0 int y$w_buff1; [L752] 0 _Bool y$w_buff1_used; [L753] 0 _Bool weak$$choice0; [L754] 0 _Bool weak$$choice1; [L755] 0 _Bool weak$$choice2; [L834] 0 pthread_t t1997; [L835] FCALL, FORK 0 pthread_create(&t1997, ((void *)0), P0, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=0, __unbuffered_p0_EAX$read_delayed_var={0:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=0, main$tmp_guard0=0, main$tmp_guard1=0, t1997=-3, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_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={3:0}] [L759] 1 weak$$choice0 = __VERIFIER_nondet_bool() [L760] 1 weak$$choice2 = __VERIFIER_nondet_bool() [L761] 1 y$flush_delayed = weak$$choice2 [L762] EXPR 1 \read(y) [L762] 1 y$mem_tmp = y [L763] EXPR 1 !y$w_buff0_used || !y$r_buff0_thd1 && !y$w_buff1_used || !y$r_buff0_thd1 && !y$r_buff1_thd1 ? y : (y$w_buff0_used && y$r_buff0_thd1 ? y$w_buff0 : y$w_buff1) [L763] EXPR 1 \read(y) [L763] EXPR 1 !y$w_buff0_used || !y$r_buff0_thd1 && !y$w_buff1_used || !y$r_buff0_thd1 && !y$r_buff1_thd1 ? y : (y$w_buff0_used && y$r_buff0_thd1 ? y$w_buff0 : y$w_buff1) [L763] 1 y = !y$w_buff0_used || !y$r_buff0_thd1 && !y$w_buff1_used || !y$r_buff0_thd1 && !y$r_buff1_thd1 ? y : (y$w_buff0_used && y$r_buff0_thd1 ? y$w_buff0 : y$w_buff1) [L764] 1 y$w_buff0 = weak$$choice2 ? y$w_buff0 : (!y$w_buff0_used || !y$r_buff0_thd1 && !y$w_buff1_used || !y$r_buff0_thd1 && !y$r_buff1_thd1 ? y$w_buff0 : (y$w_buff0_used && y$r_buff0_thd1 ? y$w_buff0 : y$w_buff0)) [L765] 1 y$w_buff1 = weak$$choice2 ? y$w_buff1 : (!y$w_buff0_used || !y$r_buff0_thd1 && !y$w_buff1_used || !y$r_buff0_thd1 && !y$r_buff1_thd1 ? y$w_buff1 : (y$w_buff0_used && y$r_buff0_thd1 ? y$w_buff1 : y$w_buff1)) [L766] 1 y$w_buff0_used = weak$$choice2 ? y$w_buff0_used : (!y$w_buff0_used || !y$r_buff0_thd1 && !y$w_buff1_used || !y$r_buff0_thd1 && !y$r_buff1_thd1 ? y$w_buff0_used : (y$w_buff0_used && y$r_buff0_thd1 ? (_Bool)0 : y$w_buff0_used)) [L767] 1 y$w_buff1_used = weak$$choice2 ? y$w_buff1_used : (!y$w_buff0_used || !y$r_buff0_thd1 && !y$w_buff1_used || !y$r_buff0_thd1 && !y$r_buff1_thd1 ? y$w_buff1_used : (y$w_buff0_used && y$r_buff0_thd1 ? (_Bool)0 : (_Bool)0)) [L768] 1 y$r_buff0_thd1 = weak$$choice2 ? y$r_buff0_thd1 : (!y$w_buff0_used || !y$r_buff0_thd1 && !y$w_buff1_used || !y$r_buff0_thd1 && !y$r_buff1_thd1 ? y$r_buff0_thd1 : (y$w_buff0_used && y$r_buff0_thd1 ? (_Bool)0 : y$r_buff0_thd1)) [L769] 1 y$r_buff1_thd1 = weak$$choice2 ? y$r_buff1_thd1 : (!y$w_buff0_used || !y$r_buff0_thd1 && !y$w_buff1_used || !y$r_buff0_thd1 && !y$r_buff1_thd1 ? y$r_buff1_thd1 : (y$w_buff0_used && y$r_buff0_thd1 ? (_Bool)0 : (_Bool)0)) [L770] 1 __unbuffered_p0_EAX$read_delayed = (_Bool)1 [L771] 1 __unbuffered_p0_EAX$read_delayed_var = &y [L772] EXPR 1 \read(y) [L772] 1 __unbuffered_p0_EAX = y [L773] EXPR 1 y$flush_delayed ? y$mem_tmp : y [L773] EXPR 1 y$flush_delayed ? y$mem_tmp : y [L773] 1 y = y$flush_delayed ? y$mem_tmp : y [L774] 1 y$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L836] 0 pthread_t t1998; [L837] FCALL, FORK 0 pthread_create(&t1998, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, t1997=-3, t1998=-2, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L777] 1 x = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L838] 0 pthread_t t1999; [L839] FCALL, FORK 0 pthread_create(&t1999, ((void *)0), P2, ((void *)0)) VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, t1997=-3, t1998=-2, t1999=-1, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L782] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L789] 2 __unbuffered_p1_EAX = x VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L792] 2 y = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L795] EXPR 2 y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd2 ? y$w_buff1 : y) [L795] EXPR 2 y$w_buff1_used && y$r_buff1_thd2 ? y$w_buff1 : y [L795] EXPR 2 \read(y) [L795] EXPR 2 y$w_buff1_used && y$r_buff1_thd2 ? y$w_buff1 : y [L795] EXPR 2 y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd2 ? y$w_buff1 : y) [L795] 2 y = y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd2 ? y$w_buff1 : y) [L796] 2 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$w_buff0_used [L797] 2 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd2 || y$w_buff1_used && y$r_buff1_thd2 ? (_Bool)0 : y$w_buff1_used [L798] 2 y$r_buff0_thd2 = y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$r_buff0_thd2 [L799] 2 y$r_buff1_thd2 = y$w_buff0_used && y$r_buff0_thd2 || y$w_buff1_used && y$r_buff1_thd2 ? (_Bool)0 : y$r_buff1_thd2 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L802] 2 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L809] 3 y = 2 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L812] EXPR 3 y$w_buff0_used && y$r_buff0_thd3 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd3 ? y$w_buff1 : y) [L812] EXPR 3 y$w_buff1_used && y$r_buff1_thd3 ? y$w_buff1 : y [L812] EXPR 3 \read(y) [L812] EXPR 3 y$w_buff1_used && y$r_buff1_thd3 ? y$w_buff1 : y [L812] EXPR 3 y$w_buff0_used && y$r_buff0_thd3 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd3 ? y$w_buff1 : y) [L812] 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) [L813] 3 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd3 ? (_Bool)0 : y$w_buff0_used [L814] 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 [L815] 3 y$r_buff0_thd3 = y$w_buff0_used && y$r_buff0_thd3 ? (_Bool)0 : y$r_buff0_thd3 [L816] 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}, \old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L819] 3 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L841] 0 main$tmp_guard0 = __unbuffered_cnt == 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1997=-3, t1998=-2, t1999=-1, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L843] CALL 0 assume_abort_if_not(main$tmp_guard0) [L4] COND FALSE 0 !(!cond) [L843] RET 0 assume_abort_if_not(main$tmp_guard0) [L845] EXPR 0 y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd0 ? y$w_buff1 : y) [L845] EXPR 0 y$w_buff1_used && y$r_buff1_thd0 ? y$w_buff1 : y [L845] EXPR 0 \read(y) [L845] EXPR 0 y$w_buff1_used && y$r_buff1_thd0 ? y$w_buff1 : y [L845] EXPR 0 y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd0 ? y$w_buff1 : y) [L845] 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) [L846] 0 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$w_buff0_used [L847] 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 [L848] 0 y$r_buff0_thd0 = y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$r_buff0_thd0 [L849] 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}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=0, __unbuffered_p1_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1997=-3, t1998=-2, t1999=-1, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=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={3:0}] [L852] 0 weak$$choice0 = __VERIFIER_nondet_bool() [L853] 0 weak$$choice2 = __VERIFIER_nondet_bool() [L854] 0 y$flush_delayed = weak$$choice2 [L855] EXPR 0 \read(y) [L855] 0 y$mem_tmp = y [L856] EXPR 0 !y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : y$w_buff1) [L856] EXPR 0 \read(y) [L856] EXPR 0 !y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : y$w_buff1) [L856] 0 y = !y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : y$w_buff1) [L857] 0 y$w_buff0 = weak$$choice2 ? y$w_buff0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff0 : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : y$w_buff0)) [L858] 0 y$w_buff1 = weak$$choice2 ? y$w_buff1 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff1 : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff1 : y$w_buff1)) [L859] 0 y$w_buff0_used = weak$$choice2 ? y$w_buff0_used : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff0_used : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$w_buff0_used)) [L860] 0 y$w_buff1_used = weak$$choice2 ? y$w_buff1_used : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff1_used : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L861] 0 y$r_buff0_thd0 = weak$$choice2 ? y$r_buff0_thd0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$r_buff0_thd0 : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$r_buff0_thd0)) [L862] 0 y$r_buff1_thd0 = weak$$choice2 ? y$r_buff1_thd0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$r_buff1_thd0 : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L863] 0 weak$$choice1 = __VERIFIER_nondet_bool() [L864] EXPR 0 __unbuffered_p0_EAX$read_delayed ? (weak$$choice1 ? *__unbuffered_p0_EAX$read_delayed_var : __unbuffered_p0_EAX) : __unbuffered_p0_EAX [L864] EXPR 0 weak$$choice1 ? *__unbuffered_p0_EAX$read_delayed_var : __unbuffered_p0_EAX [L864] EXPR 0 \read(*__unbuffered_p0_EAX$read_delayed_var) [L864] EXPR 0 weak$$choice1 ? *__unbuffered_p0_EAX$read_delayed_var : __unbuffered_p0_EAX [L864] EXPR 0 __unbuffered_p0_EAX$read_delayed ? (weak$$choice1 ? *__unbuffered_p0_EAX$read_delayed_var : __unbuffered_p0_EAX) : __unbuffered_p0_EAX [L864] 0 __unbuffered_p0_EAX = __unbuffered_p0_EAX$read_delayed ? (weak$$choice1 ? *__unbuffered_p0_EAX$read_delayed_var : __unbuffered_p0_EAX) : __unbuffered_p0_EAX [L865] EXPR 0 \read(y) [L865] 0 main$tmp_guard1 = !(y == 2 && __unbuffered_p0_EAX == 2 && __unbuffered_p1_EAX == 1) [L866] EXPR 0 y$flush_delayed ? y$mem_tmp : y [L866] EXPR 0 y$flush_delayed ? y$mem_tmp : y [L866] 0 y = y$flush_delayed ? y$mem_tmp : y [L867] 0 y$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=2, __unbuffered_p1_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1997=-3, t1998=-2, t1999=-1, weak$$choice0=0, weak$$choice1=1, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=2, 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={3:0}] [L869] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L19] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=2, __unbuffered_p1_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=1, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=2, 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={3:0}] [L19] 0 reach_error() VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p0_EAX$flush_delayed=0, __unbuffered_p0_EAX$mem_tmp=0, __unbuffered_p0_EAX$r_buff0_thd0=0, __unbuffered_p0_EAX$r_buff0_thd1=0, __unbuffered_p0_EAX$r_buff0_thd2=0, __unbuffered_p0_EAX$r_buff0_thd3=0, __unbuffered_p0_EAX$r_buff1_thd0=0, __unbuffered_p0_EAX$r_buff1_thd1=0, __unbuffered_p0_EAX$r_buff1_thd2=0, __unbuffered_p0_EAX$r_buff1_thd3=0, __unbuffered_p0_EAX$read_delayed=1, __unbuffered_p0_EAX$read_delayed_var={3:0}, __unbuffered_p0_EAX$w_buff0=0, __unbuffered_p0_EAX$w_buff0_used=0, __unbuffered_p0_EAX$w_buff1=0, __unbuffered_p0_EAX$w_buff1_used=0, __unbuffered_p0_EAX=2, __unbuffered_p1_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=1, weak$$choice2=1, x=1, y$flush_delayed=0, y$mem_tmp=2, 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={3:0}] - UnprovableResult [Line: 835]: 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: 837]: 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: 839]: 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, 60 locations, 4 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 5.9s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 2.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 401 SdHoareTripleChecker+Valid, 0.8s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 396 mSDsluCounter, 41 SdHoareTripleChecker+Invalid, 0.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 34 mSDsCounter, 29 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 666 IncrementalHoareTripleChecker+Invalid, 695 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 29 mSolverCounterUnsat, 7 mSDtfsCounter, 666 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 41 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 28 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=156occurred in iteration=3, InterpolantAutomatonStates: 29, 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.6s SatisfiabilityAnalysisTime, 2.6s InterpolantComputationTime, 139 NumberOfCodeBlocks, 139 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 106 ConstructedInterpolants, 0 QuantifiedInterpolants, 774 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 5 InterpolantComputations, 5 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available, ConComCheckerStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2025-03-13 21:34:20,261 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