./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/safe028_rmo.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/safe028_rmo.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 f2554c8e438e3af7ef33c0e1415937b85e1e4893b09cefba11e131adcc4208eb --- Real Ultimate output --- This is Ultimate 0.3.0-?-f8ab0bd-m [2025-03-13 21:35:24,529 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-13 21:35:24,581 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-13 21:35:24,586 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-13 21:35:24,586 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-13 21:35:24,606 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-13 21:35:24,607 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-13 21:35:24,607 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-13 21:35:24,608 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-13 21:35:24,608 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-13 21:35:24,609 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-13 21:35:24,609 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-13 21:35:24,609 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-13 21:35:24,609 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-13 21:35:24,609 INFO L153 SettingsManager]: * Use SBE=true [2025-03-13 21:35:24,609 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-13 21:35:24,610 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-13 21:35:24,610 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-13 21:35:24,610 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-13 21:35:24,610 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-13 21:35:24,610 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-13 21:35:24,610 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-13 21:35:24,610 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-13 21:35:24,610 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-13 21:35:24,610 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-13 21:35:24,610 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-13 21:35:24,611 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-13 21:35:24,611 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-13 21:35:24,611 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-13 21:35:24,611 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-13 21:35:24,611 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-13 21:35:24,611 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-13 21:35:24,611 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-13 21:35:24,611 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-13 21:35:24,611 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-13 21:35:24,612 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-13 21:35:24,612 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-13 21:35:24,612 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-13 21:35:24,612 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-13 21:35:24,612 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-13 21:35:24,612 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-13 21:35:24,612 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-13 21:35:24,612 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-13 21:35:24,612 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 -> f2554c8e438e3af7ef33c0e1415937b85e1e4893b09cefba11e131adcc4208eb [2025-03-13 21:35:24,868 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-13 21:35:24,876 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-13 21:35:24,878 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-13 21:35:24,880 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-13 21:35:24,880 INFO L274 PluginConnector]: CDTParser initialized [2025-03-13 21:35:24,881 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/safe028_rmo.i [2025-03-13 21:35:26,026 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/aa4dc6abc/0788991097c14c4185a484bbfb2a5390/FLAG962b9fd7d [2025-03-13 21:35:26,328 INFO L384 CDTParser]: Found 1 translation units. [2025-03-13 21:35:26,329 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe028_rmo.i [2025-03-13 21:35:26,345 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/aa4dc6abc/0788991097c14c4185a484bbfb2a5390/FLAG962b9fd7d [2025-03-13 21:35:26,603 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/aa4dc6abc/0788991097c14c4185a484bbfb2a5390 [2025-03-13 21:35:26,605 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-13 21:35:26,606 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-13 21:35:26,607 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-13 21:35:26,607 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-13 21:35:26,610 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-13 21:35:26,610 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.03 09:35:26" (1/1) ... [2025-03-13 21:35:26,611 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@66dc76ab and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26, skipping insertion in model container [2025-03-13 21:35:26,611 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.03 09:35:26" (1/1) ... [2025-03-13 21:35:26,639 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-13 21:35:26,745 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/safe028_rmo.i[988,1001] [2025-03-13 21:35:26,857 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-13 21:35:26,864 INFO L200 MainTranslator]: Completed pre-run [2025-03-13 21:35:26,871 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/safe028_rmo.i[988,1001] [2025-03-13 21:35:26,902 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-13 21:35:26,929 INFO L204 MainTranslator]: Completed translation [2025-03-13 21:35:26,930 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26 WrapperNode [2025-03-13 21:35:26,930 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-13 21:35:26,930 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-13 21:35:26,930 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-13 21:35:26,930 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-13 21:35:26,934 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:35:26" (1/1) ... [2025-03-13 21:35:26,945 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:35:26" (1/1) ... [2025-03-13 21:35:26,958 INFO L138 Inliner]: procedures = 175, calls = 63, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 125 [2025-03-13 21:35:26,958 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-13 21:35:26,959 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-13 21:35:26,959 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-13 21:35:26,959 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-13 21:35:26,964 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26" (1/1) ... [2025-03-13 21:35:26,964 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26" (1/1) ... [2025-03-13 21:35:26,967 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26" (1/1) ... [2025-03-13 21:35:26,978 INFO L175 MemorySlicer]: Split 23 memory accesses to 2 slices as follows [2, 21]. 91 percent of accesses are in the largest equivalence class. The 3 initializations are split as follows [2, 1]. The 8 writes are split as follows [0, 8]. [2025-03-13 21:35:26,978 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26" (1/1) ... [2025-03-13 21:35:26,979 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26" (1/1) ... [2025-03-13 21:35:26,985 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26" (1/1) ... [2025-03-13 21:35:26,986 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26" (1/1) ... [2025-03-13 21:35:26,987 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26" (1/1) ... [2025-03-13 21:35:26,988 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26" (1/1) ... [2025-03-13 21:35:26,990 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-13 21:35:26,991 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-13 21:35:26,991 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-13 21:35:26,991 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-13 21:35:26,991 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26" (1/1) ... [2025-03-13 21:35:26,999 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-13 21:35:27,015 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-13 21:35:27,028 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:35:27,034 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:35:27,050 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-03-13 21:35:27,051 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-03-13 21:35:27,051 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-03-13 21:35:27,051 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-03-13 21:35:27,051 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-03-13 21:35:27,051 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-13 21:35:27,051 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2025-03-13 21:35:27,051 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2025-03-13 21:35:27,051 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2025-03-13 21:35:27,051 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2025-03-13 21:35:27,051 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2025-03-13 21:35:27,051 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2025-03-13 21:35:27,051 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-13 21:35:27,051 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-03-13 21:35:27,051 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-03-13 21:35:27,051 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-13 21:35:27,051 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-13 21:35:27,053 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:35:27,174 INFO L256 CfgBuilder]: Building ICFG [2025-03-13 21:35:27,176 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-13 21:35:27,529 INFO L303 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-03-13 21:35:27,530 INFO L313 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-13 21:35:27,530 INFO L318 CfgBuilder]: Performing block encoding [2025-03-13 21:35:27,851 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-13 21:35:27,851 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:35:27 BoogieIcfgContainer [2025-03-13 21:35:27,851 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-13 21:35:27,853 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-13 21:35:27,853 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-13 21:35:27,856 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-13 21:35:27,856 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 13.03 09:35:26" (1/3) ... [2025-03-13 21:35:27,857 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3548c33f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.03 09:35:27, skipping insertion in model container [2025-03-13 21:35:27,857 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:35:26" (2/3) ... [2025-03-13 21:35:27,857 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3548c33f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.03 09:35:27, skipping insertion in model container [2025-03-13 21:35:27,857 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:35:27" (3/3) ... [2025-03-13 21:35:27,858 INFO L128 eAbstractionObserver]: Analyzing ICFG safe028_rmo.i [2025-03-13 21:35:27,868 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-13 21:35:27,869 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG safe028_rmo.i that has 4 procedures, 38 locations, 1 initial locations, 0 loop locations, and 1 error locations. [2025-03-13 21:35:27,869 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-03-13 21:35:27,919 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2025-03-13 21:35:27,943 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 47 places, 38 transitions, 88 flow [2025-03-13 21:35:27,968 INFO L124 PetriNetUnfolderBase]: 1/35 cut-off events. [2025-03-13 21:35:27,970 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-13 21:35:27,971 INFO L83 FinitePrefix]: Finished finitePrefix Result has 45 conditions, 35 events. 1/35 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 61 event pairs, 0 based on Foata normal form. 0/33 useless extension candidates. Maximal degree in co-relation 37. Up to 2 conditions per place. [2025-03-13 21:35:27,972 INFO L82 GeneralOperation]: Start removeDead. Operand has 47 places, 38 transitions, 88 flow [2025-03-13 21:35:27,973 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 42 places, 32 transitions, 73 flow [2025-03-13 21:35:27,979 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-13 21:35:27,986 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;@30904995, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-13 21:35:27,986 INFO L334 AbstractCegarLoop]: Starting to check reachability of 4 error locations. [2025-03-13 21:35:27,998 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-03-13 21:35:27,998 INFO L124 PetriNetUnfolderBase]: 0/31 cut-off events. [2025-03-13 21:35:27,999 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-13 21:35:27,999 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:35:27,999 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:35:27,999 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:35:28,002 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:35:28,003 INFO L85 PathProgramCache]: Analyzing trace with hash 815495659, now seen corresponding path program 1 times [2025-03-13 21:35:28,007 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:35:28,008 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [781606095] [2025-03-13 21:35:28,008 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:35:28,008 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:35:28,067 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 14 statements into 1 equivalence classes. [2025-03-13 21:35:28,148 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 14 of 14 statements. [2025-03-13 21:35:28,149 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:35:28,149 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:35:28,489 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:35:28,490 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:35:28,490 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [781606095] [2025-03-13 21:35:28,491 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [781606095] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:35:28,491 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:35:28,491 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-03-13 21:35:28,492 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [240643173] [2025-03-13 21:35:28,494 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:35:28,500 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-03-13 21:35:28,503 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:35:28,523 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-03-13 21:35:28,524 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-03-13 21:35:28,526 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 38 [2025-03-13 21:35:28,528 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 42 places, 32 transitions, 73 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:35:28,528 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:35:28,528 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 38 [2025-03-13 21:35:28,529 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:35:29,309 INFO L124 PetriNetUnfolderBase]: 3053/4829 cut-off events. [2025-03-13 21:35:29,310 INFO L125 PetriNetUnfolderBase]: For 34/34 co-relation queries the response was YES. [2025-03-13 21:35:29,322 INFO L83 FinitePrefix]: Finished finitePrefix Result has 9438 conditions, 4829 events. 3053/4829 cut-off events. For 34/34 co-relation queries the response was YES. Maximal size of possible extension queue 207. Compared 27650 event pairs, 504 based on Foata normal form. 210/5024 useless extension candidates. Maximal degree in co-relation 9427. Up to 2466 conditions per place. [2025-03-13 21:35:29,345 INFO L140 encePairwiseOnDemand]: 32/38 looper letters, 54 selfloop transitions, 5 changer transitions 1/65 dead transitions. [2025-03-13 21:35:29,346 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 45 places, 65 transitions, 265 flow [2025-03-13 21:35:29,347 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-03-13 21:35:29,348 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-03-13 21:35:29,354 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 98 transitions. [2025-03-13 21:35:29,357 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6447368421052632 [2025-03-13 21:35:29,358 INFO L175 Difference]: Start difference. First operand has 42 places, 32 transitions, 73 flow. Second operand 4 states and 98 transitions. [2025-03-13 21:35:29,359 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 45 places, 65 transitions, 265 flow [2025-03-13 21:35:29,363 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 42 places, 65 transitions, 260 flow, removed 0 selfloop flow, removed 3 redundant places. [2025-03-13 21:35:29,367 INFO L231 Difference]: Finished difference. Result has 44 places, 35 transitions, 104 flow [2025-03-13 21:35:29,369 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=70, PETRI_DIFFERENCE_MINUEND_PLACES=39, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=32, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=27, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=104, PETRI_PLACES=44, PETRI_TRANSITIONS=35} [2025-03-13 21:35:29,373 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 2 predicate places. [2025-03-13 21:35:29,373 INFO L471 AbstractCegarLoop]: Abstraction has has 44 places, 35 transitions, 104 flow [2025-03-13 21:35:29,374 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:35:29,374 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:35:29,374 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:35:29,375 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-03-13 21:35:29,375 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:35:29,376 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:35:29,376 INFO L85 PathProgramCache]: Analyzing trace with hash 153993841, now seen corresponding path program 1 times [2025-03-13 21:35:29,376 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:35:29,376 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1034859374] [2025-03-13 21:35:29,376 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:35:29,376 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:35:29,397 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 18 statements into 1 equivalence classes. [2025-03-13 21:35:29,473 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 18 of 18 statements. [2025-03-13 21:35:29,474 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:35:29,474 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:35:29,679 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:35:29,679 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:35:29,679 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1034859374] [2025-03-13 21:35:29,679 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1034859374] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:35:29,679 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:35:29,679 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-03-13 21:35:29,680 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1375491419] [2025-03-13 21:35:29,680 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:35:29,680 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-13 21:35:29,681 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:35:29,681 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-13 21:35:29,681 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-03-13 21:35:29,682 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 38 [2025-03-13 21:35:29,682 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 44 places, 35 transitions, 104 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:35:29,682 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:35:29,682 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 38 [2025-03-13 21:35:29,682 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:35:30,078 INFO L124 PetriNetUnfolderBase]: 1792/2850 cut-off events. [2025-03-13 21:35:30,079 INFO L125 PetriNetUnfolderBase]: For 642/642 co-relation queries the response was YES. [2025-03-13 21:35:30,086 INFO L83 FinitePrefix]: Finished finitePrefix Result has 6553 conditions, 2850 events. 1792/2850 cut-off events. For 642/642 co-relation queries the response was YES. Maximal size of possible extension queue 99. Compared 14247 event pairs, 318 based on Foata normal form. 150/2985 useless extension candidates. Maximal degree in co-relation 6541. Up to 939 conditions per place. [2025-03-13 21:35:30,095 INFO L140 encePairwiseOnDemand]: 32/38 looper letters, 69 selfloop transitions, 8 changer transitions 1/83 dead transitions. [2025-03-13 21:35:30,095 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 48 places, 83 transitions, 377 flow [2025-03-13 21:35:30,096 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-03-13 21:35:30,096 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-03-13 21:35:30,097 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 125 transitions. [2025-03-13 21:35:30,098 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6578947368421053 [2025-03-13 21:35:30,098 INFO L175 Difference]: Start difference. First operand has 44 places, 35 transitions, 104 flow. Second operand 5 states and 125 transitions. [2025-03-13 21:35:30,098 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 48 places, 83 transitions, 377 flow [2025-03-13 21:35:30,100 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 83 transitions, 367 flow, removed 1 selfloop flow, removed 2 redundant places. [2025-03-13 21:35:30,102 INFO L231 Difference]: Finished difference. Result has 48 places, 38 transitions, 144 flow [2025-03-13 21:35:30,102 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=96, PETRI_DIFFERENCE_MINUEND_PLACES=42, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=35, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=27, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=144, PETRI_PLACES=48, PETRI_TRANSITIONS=38} [2025-03-13 21:35:30,103 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 6 predicate places. [2025-03-13 21:35:30,103 INFO L471 AbstractCegarLoop]: Abstraction has has 48 places, 38 transitions, 144 flow [2025-03-13 21:35:30,103 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:35:30,104 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:35:30,104 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:35:30,104 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-13 21:35:30,104 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:35:30,105 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:35:30,105 INFO L85 PathProgramCache]: Analyzing trace with hash -808451507, now seen corresponding path program 1 times [2025-03-13 21:35:30,105 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:35:30,105 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1184781671] [2025-03-13 21:35:30,106 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:35:30,106 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:35:30,122 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 23 statements into 1 equivalence classes. [2025-03-13 21:35:30,203 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-03-13 21:35:30,204 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:35:30,204 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:35:30,406 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:35:30,407 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:35:30,407 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1184781671] [2025-03-13 21:35:30,407 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1184781671] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:35:30,407 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:35:30,407 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-03-13 21:35:30,407 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1871391994] [2025-03-13 21:35:30,407 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:35:30,407 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-13 21:35:30,407 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:35:30,408 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-13 21:35:30,408 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2025-03-13 21:35:30,408 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 38 [2025-03-13 21:35:30,408 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 48 places, 38 transitions, 144 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:35:30,408 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:35:30,408 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 38 [2025-03-13 21:35:30,408 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:35:30,681 INFO L124 PetriNetUnfolderBase]: 1125/1753 cut-off events. [2025-03-13 21:35:30,681 INFO L125 PetriNetUnfolderBase]: For 1132/1132 co-relation queries the response was YES. [2025-03-13 21:35:30,684 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4429 conditions, 1753 events. 1125/1753 cut-off events. For 1132/1132 co-relation queries the response was YES. Maximal size of possible extension queue 75. Compared 7751 event pairs, 283 based on Foata normal form. 56/1794 useless extension candidates. Maximal degree in co-relation 4415. Up to 658 conditions per place. [2025-03-13 21:35:30,690 INFO L140 encePairwiseOnDemand]: 32/38 looper letters, 58 selfloop transitions, 11 changer transitions 1/75 dead transitions. [2025-03-13 21:35:30,690 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 53 places, 75 transitions, 368 flow [2025-03-13 21:35:30,691 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-03-13 21:35:30,691 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-03-13 21:35:30,692 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 126 transitions. [2025-03-13 21:35:30,693 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5526315789473685 [2025-03-13 21:35:30,694 INFO L175 Difference]: Start difference. First operand has 48 places, 38 transitions, 144 flow. Second operand 6 states and 126 transitions. [2025-03-13 21:35:30,694 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 53 places, 75 transitions, 368 flow [2025-03-13 21:35:30,704 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 49 places, 75 transitions, 343 flow, removed 4 selfloop flow, removed 4 redundant places. [2025-03-13 21:35:30,705 INFO L231 Difference]: Finished difference. Result has 51 places, 38 transitions, 158 flow [2025-03-13 21:35:30,705 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=122, PETRI_DIFFERENCE_MINUEND_PLACES=44, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=38, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=11, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=27, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=158, PETRI_PLACES=51, PETRI_TRANSITIONS=38} [2025-03-13 21:35:30,706 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 9 predicate places. [2025-03-13 21:35:30,706 INFO L471 AbstractCegarLoop]: Abstraction has has 51 places, 38 transitions, 158 flow [2025-03-13 21:35:30,707 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:35:30,707 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:35:30,707 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:35:30,707 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-03-13 21:35:30,707 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:35:30,708 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:35:30,708 INFO L85 PathProgramCache]: Analyzing trace with hash -374749354, now seen corresponding path program 1 times [2025-03-13 21:35:30,708 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:35:30,708 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1740392335] [2025-03-13 21:35:30,708 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:35:30,708 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:35:30,725 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 29 statements into 1 equivalence classes. [2025-03-13 21:35:30,816 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 29 of 29 statements. [2025-03-13 21:35:30,817 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:35:30,817 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:35:31,147 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:35:31,148 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:35:31,148 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1740392335] [2025-03-13 21:35:31,148 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1740392335] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:35:31,148 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:35:31,148 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2025-03-13 21:35:31,148 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1405426465] [2025-03-13 21:35:31,148 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:35:31,149 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-13 21:35:31,149 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:35:31,149 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-13 21:35:31,149 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2025-03-13 21:35:31,158 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 8 out of 38 [2025-03-13 21:35:31,158 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 51 places, 38 transitions, 158 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:35:31,158 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:35:31,158 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 8 of 38 [2025-03-13 21:35:31,158 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:35:31,549 INFO L124 PetriNetUnfolderBase]: 1549/2394 cut-off events. [2025-03-13 21:35:31,550 INFO L125 PetriNetUnfolderBase]: For 1874/1874 co-relation queries the response was YES. [2025-03-13 21:35:31,553 INFO L83 FinitePrefix]: Finished finitePrefix Result has 6179 conditions, 2394 events. 1549/2394 cut-off events. For 1874/1874 co-relation queries the response was YES. Maximal size of possible extension queue 111. Compared 11407 event pairs, 205 based on Foata normal form. 8/2399 useless extension candidates. Maximal degree in co-relation 6164. Up to 1380 conditions per place. [2025-03-13 21:35:31,557 INFO L140 encePairwiseOnDemand]: 33/38 looper letters, 43 selfloop transitions, 1 changer transitions 36/84 dead transitions. [2025-03-13 21:35:31,557 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 56 places, 84 transitions, 510 flow [2025-03-13 21:35:31,558 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-03-13 21:35:31,558 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-03-13 21:35:31,558 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 115 transitions. [2025-03-13 21:35:31,559 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5043859649122807 [2025-03-13 21:35:31,559 INFO L175 Difference]: Start difference. First operand has 51 places, 38 transitions, 158 flow. Second operand 6 states and 115 transitions. [2025-03-13 21:35:31,559 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 56 places, 84 transitions, 510 flow [2025-03-13 21:35:31,565 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 48 places, 84 transitions, 385 flow, removed 20 selfloop flow, removed 8 redundant places. [2025-03-13 21:35:31,566 INFO L231 Difference]: Finished difference. Result has 52 places, 38 transitions, 113 flow [2025-03-13 21:35:31,566 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=102, PETRI_DIFFERENCE_MINUEND_PLACES=43, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=38, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=1, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=37, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=113, PETRI_PLACES=52, PETRI_TRANSITIONS=38} [2025-03-13 21:35:31,566 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 10 predicate places. [2025-03-13 21:35:31,566 INFO L471 AbstractCegarLoop]: Abstraction has has 52 places, 38 transitions, 113 flow [2025-03-13 21:35:31,567 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:35:31,567 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:35:31,567 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:35:31,567 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-03-13 21:35:31,567 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:35:31,567 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:35:31,567 INFO L85 PathProgramCache]: Analyzing trace with hash 161458538, now seen corresponding path program 2 times [2025-03-13 21:35:31,568 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:35:31,568 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [595089502] [2025-03-13 21:35:31,568 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-03-13 21:35:31,568 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:35:31,591 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 29 statements into 1 equivalence classes. [2025-03-13 21:35:31,667 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 29 of 29 statements. [2025-03-13 21:35:31,667 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-03-13 21:35:31,667 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:35:33,614 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:35:33,614 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:35:33,614 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [595089502] [2025-03-13 21:35:33,614 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [595089502] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:35:33,614 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:35:33,615 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2025-03-13 21:35:33,615 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1202372379] [2025-03-13 21:35:33,615 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:35:33,615 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2025-03-13 21:35:33,615 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:35:33,616 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2025-03-13 21:35:33,616 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2025-03-13 21:35:33,626 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 8 out of 38 [2025-03-13 21:35:33,626 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 52 places, 38 transitions, 113 flow. Second operand has 10 states, 10 states have (on average 10.5) internal successors, (105), 10 states have internal predecessors, (105), 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:35:33,627 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:35:33,627 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 8 of 38 [2025-03-13 21:35:33,627 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:35:34,101 INFO L124 PetriNetUnfolderBase]: 1405/2237 cut-off events. [2025-03-13 21:35:34,101 INFO L125 PetriNetUnfolderBase]: For 383/383 co-relation queries the response was YES. [2025-03-13 21:35:34,104 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5091 conditions, 2237 events. 1405/2237 cut-off events. For 383/383 co-relation queries the response was YES. Maximal size of possible extension queue 101. Compared 10677 event pairs, 193 based on Foata normal form. 8/2239 useless extension candidates. Maximal degree in co-relation 5077. Up to 1248 conditions per place. [2025-03-13 21:35:34,107 INFO L140 encePairwiseOnDemand]: 32/38 looper letters, 41 selfloop transitions, 2 changer transitions 37/84 dead transitions. [2025-03-13 21:35:34,107 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 55 places, 84 transitions, 405 flow [2025-03-13 21:35:34,108 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-03-13 21:35:34,108 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 7 states. [2025-03-13 21:35:34,112 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 123 transitions. [2025-03-13 21:35:34,112 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.462406015037594 [2025-03-13 21:35:34,112 INFO L175 Difference]: Start difference. First operand has 52 places, 38 transitions, 113 flow. Second operand 7 states and 123 transitions. [2025-03-13 21:35:34,112 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 55 places, 84 transitions, 405 flow [2025-03-13 21:35:34,113 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 51 places, 84 transitions, 393 flow, removed 5 selfloop flow, removed 4 redundant places. [2025-03-13 21:35:34,113 INFO L231 Difference]: Finished difference. Result has 55 places, 38 transitions, 119 flow [2025-03-13 21:35:34,114 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=106, PETRI_DIFFERENCE_MINUEND_PLACES=45, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=38, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=36, PETRI_DIFFERENCE_SUBTRAHEND_STATES=7, PETRI_FLOW=119, PETRI_PLACES=55, PETRI_TRANSITIONS=38} [2025-03-13 21:35:34,114 INFO L279 CegarLoopForPetriNet]: 42 programPoint places, 13 predicate places. [2025-03-13 21:35:34,114 INFO L471 AbstractCegarLoop]: Abstraction has has 55 places, 38 transitions, 119 flow [2025-03-13 21:35:34,114 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 10.5) internal successors, (105), 10 states have internal predecessors, (105), 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:35:34,114 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:35:34,114 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:35:34,114 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-03-13 21:35:34,114 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:35:34,115 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:35:34,115 INFO L85 PathProgramCache]: Analyzing trace with hash 1532933780, now seen corresponding path program 3 times [2025-03-13 21:35:34,115 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:35:34,115 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1373958944] [2025-03-13 21:35:34,115 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-03-13 21:35:34,115 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:35:34,126 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 29 statements into 1 equivalence classes. [2025-03-13 21:35:34,184 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 29 of 29 statements. [2025-03-13 21:35:34,184 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-03-13 21:35:34,184 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-13 21:35:34,184 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-13 21:35:34,190 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 29 statements into 1 equivalence classes. [2025-03-13 21:35:34,244 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 29 of 29 statements. [2025-03-13 21:35:34,244 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:35:34,244 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-13 21:35:34,269 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-13 21:35:34,270 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-13 21:35:34,270 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (3 of 4 remaining) [2025-03-13 21:35:34,272 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 4 remaining) [2025-03-13 21:35:34,272 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 4 remaining) [2025-03-13 21:35:34,272 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (0 of 4 remaining) [2025-03-13 21:35:34,272 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2025-03-13 21:35:34,273 INFO L422 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1] [2025-03-13 21:35:34,361 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-03-13 21:35:34,362 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-13 21:35:34,366 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 13.03 09:35:34 BasicIcfg [2025-03-13 21:35:34,367 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-13 21:35:34,367 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-13 21:35:34,367 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-13 21:35:34,367 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-13 21:35:34,368 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:35:27" (3/4) ... [2025-03-13 21:35:34,369 INFO L140 WitnessPrinter]: Generating witness for reachability counterexample [2025-03-13 21:35:34,467 INFO L127 tionWitnessGenerator]: Generated YAML witness of length 6. [2025-03-13 21:35:34,500 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-03-13 21:35:34,502 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.yml [2025-03-13 21:35:34,502 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-13 21:35:34,503 INFO L158 Benchmark]: Toolchain (without parser) took 7896.74ms. Allocated memory was 142.6MB in the beginning and 536.9MB in the end (delta: 394.3MB). Free memory was 104.5MB in the beginning and 325.3MB in the end (delta: -220.8MB). Peak memory consumption was 175.5MB. Max. memory is 16.1GB. [2025-03-13 21:35:34,504 INFO L158 Benchmark]: CDTParser took 0.21ms. Allocated memory is still 201.3MB. Free memory is still 125.5MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-13 21:35:34,504 INFO L158 Benchmark]: CACSL2BoogieTranslator took 323.17ms. Allocated memory is still 142.6MB. Free memory was 104.5MB in the beginning and 80.4MB in the end (delta: 24.1MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-13 21:35:34,504 INFO L158 Benchmark]: Boogie Procedure Inliner took 28.00ms. Allocated memory is still 142.6MB. Free memory was 80.4MB in the beginning and 78.4MB in the end (delta: 2.1MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-13 21:35:34,505 INFO L158 Benchmark]: Boogie Preprocessor took 31.29ms. Allocated memory is still 142.6MB. Free memory was 78.4MB in the beginning and 75.1MB in the end (delta: 3.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-13 21:35:34,505 INFO L158 Benchmark]: IcfgBuilder took 860.90ms. Allocated memory is still 142.6MB. Free memory was 75.1MB in the beginning and 89.9MB in the end (delta: -14.8MB). Peak memory consumption was 51.1MB. Max. memory is 16.1GB. [2025-03-13 21:35:34,506 INFO L158 Benchmark]: TraceAbstraction took 6513.94ms. Allocated memory was 142.6MB in the beginning and 536.9MB in the end (delta: 394.3MB). Free memory was 89.0MB in the beginning and 350.5MB in the end (delta: -261.5MB). Peak memory consumption was 129.3MB. Max. memory is 16.1GB. [2025-03-13 21:35:34,506 INFO L158 Benchmark]: Witness Printer took 134.56ms. Allocated memory is still 536.9MB. Free memory was 350.5MB in the beginning and 325.3MB in the end (delta: 25.2MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-13 21:35:34,508 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.21ms. Allocated memory is still 201.3MB. Free memory is still 125.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 323.17ms. Allocated memory is still 142.6MB. Free memory was 104.5MB in the beginning and 80.4MB in the end (delta: 24.1MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 28.00ms. Allocated memory is still 142.6MB. Free memory was 80.4MB in the beginning and 78.4MB in the end (delta: 2.1MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 31.29ms. Allocated memory is still 142.6MB. Free memory was 78.4MB in the beginning and 75.1MB in the end (delta: 3.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 860.90ms. Allocated memory is still 142.6MB. Free memory was 75.1MB in the beginning and 89.9MB in the end (delta: -14.8MB). Peak memory consumption was 51.1MB. Max. memory is 16.1GB. * TraceAbstraction took 6513.94ms. Allocated memory was 142.6MB in the beginning and 536.9MB in the end (delta: 394.3MB). Free memory was 89.0MB in the beginning and 350.5MB in the end (delta: -261.5MB). Peak memory consumption was 129.3MB. Max. memory is 16.1GB. * Witness Printer took 134.56ms. Allocated memory is still 536.9MB. Free memory was 350.5MB in the beginning and 325.3MB in the end (delta: 25.2MB). 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; [L714] 0 int __unbuffered_p2_EAX = 0; [L715] 0 _Bool __unbuffered_p2_EAX$flush_delayed; [L716] 0 int __unbuffered_p2_EAX$mem_tmp; [L717] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd0; [L718] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd1; [L719] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd2; [L720] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd3; [L721] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd0; [L722] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd1; [L723] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd2; [L724] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd3; [L725] 0 _Bool __unbuffered_p2_EAX$read_delayed; [L726] 0 int *__unbuffered_p2_EAX$read_delayed_var; [L727] 0 int __unbuffered_p2_EAX$w_buff0; [L728] 0 _Bool __unbuffered_p2_EAX$w_buff0_used; [L729] 0 int __unbuffered_p2_EAX$w_buff1; [L730] 0 _Bool __unbuffered_p2_EAX$w_buff1_used; [L732] 0 int __unbuffered_p2_EBX = 0; [L733] 0 _Bool main$tmp_guard0; [L734] 0 _Bool main$tmp_guard1; [L736] 0 int x = 0; [L736] 0 int x = 0; [L737] 0 _Bool x$flush_delayed; [L738] 0 int x$mem_tmp; [L739] 0 _Bool x$r_buff0_thd0; [L740] 0 _Bool x$r_buff0_thd1; [L741] 0 _Bool x$r_buff0_thd2; [L742] 0 _Bool x$r_buff0_thd3; [L743] 0 _Bool x$r_buff1_thd0; [L744] 0 _Bool x$r_buff1_thd1; [L745] 0 _Bool x$r_buff1_thd2; [L746] 0 _Bool x$r_buff1_thd3; [L747] 0 _Bool x$read_delayed; [L748] 0 int *x$read_delayed_var; [L749] 0 int x$w_buff0; [L750] 0 _Bool x$w_buff0_used; [L751] 0 int x$w_buff1; [L752] 0 _Bool x$w_buff1_used; [L754] 0 int y = 0; [L755] 0 _Bool weak$$choice0; [L756] 0 _Bool weak$$choice1; [L757] 0 _Bool weak$$choice2; [L851] 0 pthread_t t2461; [L852] FCALL, FORK 0 pthread_create(&t2461, ((void *)0), P0, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=0, __unbuffered_p2_EAX$read_delayed_var={0:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t2461=-1, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=0] [L853] 0 pthread_t t2462; [L854] FCALL, FORK 0 pthread_create(&t2462, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=0, __unbuffered_p2_EAX$read_delayed_var={0:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t2461=-1, t2462=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=0] [L855] 0 pthread_t t2463; [L856] FCALL, FORK 0 pthread_create(&t2463, ((void *)0), P2, ((void *)0)) VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=0, __unbuffered_p2_EAX$read_delayed_var={0:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t2461=-1, t2462=0, t2463=1, weak$$choice0=0, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=0] [L808] 3 weak$$choice0 = __VERIFIER_nondet_bool() [L809] 3 weak$$choice2 = __VERIFIER_nondet_bool() [L810] 3 x$flush_delayed = weak$$choice2 [L811] EXPR 3 \read(x) [L811] 3 x$mem_tmp = x [L812] EXPR 3 !x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : x$w_buff1) [L812] EXPR 3 \read(x) [L812] EXPR 3 !x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : x$w_buff1) [L812] 3 x = !x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : x$w_buff1) [L813] 3 x$w_buff0 = weak$$choice2 ? x$w_buff0 : (!x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x$w_buff0 : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : x$w_buff0)) [L814] 3 x$w_buff1 = weak$$choice2 ? x$w_buff1 : (!x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x$w_buff1 : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff1 : x$w_buff1)) [L815] 3 x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : (!x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x$w_buff0_used : (x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$w_buff0_used)) [L816] 3 x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : (!x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x$w_buff1_used : (x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : (_Bool)0)) [L817] 3 x$r_buff0_thd3 = weak$$choice2 ? x$r_buff0_thd3 : (!x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x$r_buff0_thd3 : (x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$r_buff0_thd3)) [L818] 3 x$r_buff1_thd3 = weak$$choice2 ? x$r_buff1_thd3 : (!x$w_buff0_used || !x$r_buff0_thd3 && !x$w_buff1_used || !x$r_buff0_thd3 && !x$r_buff1_thd3 ? x$r_buff1_thd3 : (x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : (_Bool)0)) [L819] 3 __unbuffered_p2_EAX$read_delayed = (_Bool)1 [L820] 3 __unbuffered_p2_EAX$read_delayed_var = &x [L821] EXPR 3 \read(x) [L821] 3 __unbuffered_p2_EAX = x [L822] EXPR 3 x$flush_delayed ? x$mem_tmp : x [L822] EXPR 3 x$flush_delayed ? x$mem_tmp : x [L822] 3 x = x$flush_delayed ? x$mem_tmp : x [L823] 3 x$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=0] [L826] 3 __unbuffered_p2_EBX = y VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=0] [L761] 1 y = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L766] 1 weak$$choice0 = __VERIFIER_nondet_bool() [L767] 1 weak$$choice2 = __VERIFIER_nondet_bool() [L768] 1 x$flush_delayed = weak$$choice2 [L769] EXPR 1 \read(x) [L769] 1 x$mem_tmp = x [L770] EXPR 1 !x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x : (x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : x$w_buff1) [L770] EXPR 1 \read(x) [L770] EXPR 1 !x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x : (x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : x$w_buff1) [L770] 1 x = !x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x : (x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : x$w_buff1) [L771] 1 x$w_buff0 = weak$$choice2 ? x$w_buff0 : (!x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x$w_buff0 : (x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : x$w_buff0)) [L772] 1 x$w_buff1 = weak$$choice2 ? x$w_buff1 : (!x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x$w_buff1 : (x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff1 : x$w_buff1)) [L773] 1 x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : (!x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x$w_buff0_used : (x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$w_buff0_used)) [L774] 1 x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : (!x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x$w_buff1_used : (x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : (_Bool)0)) [L775] 1 x$r_buff0_thd1 = weak$$choice2 ? x$r_buff0_thd1 : (!x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x$r_buff0_thd1 : (x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$r_buff0_thd1)) [L776] 1 x$r_buff1_thd1 = weak$$choice2 ? x$r_buff1_thd1 : (!x$w_buff0_used || !x$r_buff0_thd1 && !x$w_buff1_used || !x$r_buff0_thd1 && !x$r_buff1_thd1 ? x$r_buff1_thd1 : (x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : (_Bool)0)) [L777] EXPR 1 \read(x) [L777] 1 __unbuffered_p0_EAX = x [L778] EXPR 1 x$flush_delayed ? x$mem_tmp : x [L778] EXPR 1 x$flush_delayed ? x$mem_tmp : x [L778] 1 x = x$flush_delayed ? x$mem_tmp : x [L779] 1 x$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L784] 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=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L829] EXPR 3 x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x) [L829] EXPR 3 x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x [L829] EXPR 3 \read(x) [L829] EXPR 3 x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x [L829] EXPR 3 x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x) [L829] 3 x = x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x) [L830] 3 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$w_buff0_used [L831] 3 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd3 || x$w_buff1_used && x$r_buff1_thd3 ? (_Bool)0 : x$w_buff1_used [L832] 3 x$r_buff0_thd3 = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$r_buff0_thd3 [L833] 3 x$r_buff1_thd3 = x$w_buff0_used && x$r_buff0_thd3 || x$w_buff1_used && x$r_buff1_thd3 ? (_Bool)0 : x$r_buff1_thd3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L791] 2 x = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L794] EXPR 2 x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x) [L794] EXPR 2 x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x [L794] EXPR 2 \read(x) [L794] EXPR 2 x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x [L794] EXPR 2 x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x) [L794] 2 x = x$w_buff0_used && x$r_buff0_thd2 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd2 ? x$w_buff1 : x) [L795] 2 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$w_buff0_used [L796] 2 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd2 || x$w_buff1_used && x$r_buff1_thd2 ? (_Bool)0 : x$w_buff1_used [L797] 2 x$r_buff0_thd2 = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$r_buff0_thd2 [L798] 2 x$r_buff1_thd2 = x$w_buff0_used && x$r_buff0_thd2 || x$w_buff1_used && x$r_buff1_thd2 ? (_Bool)0 : x$r_buff1_thd2 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L801] 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=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L836] 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=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L858] 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=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t2461=-1, t2462=0, t2463=1, weak$$choice0=0, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L860] CALL 0 assume_abort_if_not(main$tmp_guard0) [L4] COND FALSE 0 !(!cond) [L860] RET 0 assume_abort_if_not(main$tmp_guard0) [L862] EXPR 0 x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x) [L862] EXPR 0 x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x [L862] EXPR 0 \read(x) [L862] EXPR 0 x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x [L862] EXPR 0 x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x) [L862] 0 x = x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x) [L863] 0 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used [L864] 0 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd0 || x$w_buff1_used && x$r_buff1_thd0 ? (_Bool)0 : x$w_buff1_used [L865] 0 x$r_buff0_thd0 = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0 [L866] 0 x$r_buff1_thd0 = x$w_buff0_used && x$r_buff0_thd0 || x$w_buff1_used && x$r_buff1_thd0 ? (_Bool)0 : x$r_buff1_thd0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=0, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t2461=-1, t2462=0, t2463=1, weak$$choice0=0, weak$$choice1=0, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L869] 0 weak$$choice1 = __VERIFIER_nondet_bool() [L870] EXPR 0 __unbuffered_p2_EAX$read_delayed ? (weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX) : __unbuffered_p2_EAX [L870] EXPR 0 weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX [L870] EXPR 0 \read(*__unbuffered_p2_EAX$read_delayed_var) [L870] EXPR 0 weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX [L870] EXPR 0 __unbuffered_p2_EAX$read_delayed ? (weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX) : __unbuffered_p2_EAX [L870] 0 __unbuffered_p2_EAX = __unbuffered_p2_EAX$read_delayed ? (weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX) : __unbuffered_p2_EAX [L871] 0 main$tmp_guard1 = !(__unbuffered_p0_EAX == 0 && __unbuffered_p2_EAX == 1 && __unbuffered_p2_EBX == 0) VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t2461=-1, t2462=0, t2463=1, weak$$choice0=0, weak$$choice1=1, weak$$choice2=1, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L873] 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=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, 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$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [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=0, __unbuffered_p2_EAX$flush_delayed=0, __unbuffered_p2_EAX$mem_tmp=0, __unbuffered_p2_EAX$r_buff0_thd0=0, __unbuffered_p2_EAX$r_buff0_thd1=0, __unbuffered_p2_EAX$r_buff0_thd2=0, __unbuffered_p2_EAX$r_buff0_thd3=0, __unbuffered_p2_EAX$r_buff1_thd0=0, __unbuffered_p2_EAX$r_buff1_thd1=0, __unbuffered_p2_EAX$r_buff1_thd2=0, __unbuffered_p2_EAX$r_buff1_thd3=0, __unbuffered_p2_EAX$read_delayed=1, __unbuffered_p2_EAX$read_delayed_var={3:0}, __unbuffered_p2_EAX$w_buff0=0, __unbuffered_p2_EAX$w_buff0_used=0, __unbuffered_p2_EAX$w_buff1=0, __unbuffered_p2_EAX$w_buff1_used=0, __unbuffered_p2_EAX=1, __unbuffered_p2_EBX=0, 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$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] - UnprovableResult [Line: 854]: 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: 856]: 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: 852]: 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, 62 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: 6.3s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 2.5s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 349 SdHoareTripleChecker+Valid, 0.8s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 343 mSDsluCounter, 53 SdHoareTripleChecker+Invalid, 0.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 53 mSDsCounter, 22 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 779 IncrementalHoareTripleChecker+Invalid, 801 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 22 mSolverCounterUnsat, 0 mSDtfsCounter, 779 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 39 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=158occurred in iteration=3, InterpolantAutomatonStates: 28, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.5s SatisfiabilityAnalysisTime, 3.0s InterpolantComputationTime, 142 NumberOfCodeBlocks, 142 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 108 ConstructedInterpolants, 0 QuantifiedInterpolants, 760 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:35:34,524 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