./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/safe018_power.opt.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/safe018_power.opt.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 81ed16bb51b8da596bb3c9a2024b72d3baf359b31125524126025207d822fe2c --- Real Ultimate output --- This is Ultimate 0.3.0-?-f8ab0bd-m [2025-03-13 21:34:38,905 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-13 21:34:38,956 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-13 21:34:38,964 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-13 21:34:38,964 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-13 21:34:38,987 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-13 21:34:38,988 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-13 21:34:38,988 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-13 21:34:38,988 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-13 21:34:38,988 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-13 21:34:38,989 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-13 21:34:38,989 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-13 21:34:38,989 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-13 21:34:38,989 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-13 21:34:38,990 INFO L153 SettingsManager]: * Use SBE=true [2025-03-13 21:34:38,990 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-13 21:34:38,990 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-13 21:34:38,990 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-13 21:34:38,990 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-13 21:34:38,990 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-13 21:34:38,990 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-13 21:34:38,990 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-13 21:34:38,991 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-13 21:34:38,991 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-13 21:34:38,991 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-13 21:34:38,992 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-13 21:34:38,992 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-13 21:34:38,992 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-13 21:34:38,992 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 -> 81ed16bb51b8da596bb3c9a2024b72d3baf359b31125524126025207d822fe2c [2025-03-13 21:34:39,236 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-13 21:34:39,244 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-13 21:34:39,246 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-13 21:34:39,247 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-13 21:34:39,247 INFO L274 PluginConnector]: CDTParser initialized [2025-03-13 21:34:39,248 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/safe018_power.opt.i [2025-03-13 21:34:40,432 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/48edec216/16efad22d85347818e09afc0f69cde18/FLAG0e5a2f90e [2025-03-13 21:34:40,687 INFO L384 CDTParser]: Found 1 translation units. [2025-03-13 21:34:40,688 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe018_power.opt.i [2025-03-13 21:34:40,699 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/48edec216/16efad22d85347818e09afc0f69cde18/FLAG0e5a2f90e [2025-03-13 21:34:40,709 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/48edec216/16efad22d85347818e09afc0f69cde18 [2025-03-13 21:34:40,711 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-13 21:34:40,713 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-13 21:34:40,714 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-13 21:34:40,714 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-13 21:34:40,717 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-13 21:34:40,717 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.03 09:34:40" (1/1) ... [2025-03-13 21:34:40,718 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@753654d8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:40, skipping insertion in model container [2025-03-13 21:34:40,718 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 13.03 09:34:40" (1/1) ... [2025-03-13 21:34:40,746 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-13 21:34:40,854 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/safe018_power.opt.i[994,1007] [2025-03-13 21:34:40,967 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-13 21:34:40,983 INFO L200 MainTranslator]: Completed pre-run [2025-03-13 21:34:40,990 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/safe018_power.opt.i[994,1007] [2025-03-13 21:34:41,034 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-13 21:34:41,061 INFO L204 MainTranslator]: Completed translation [2025-03-13 21:34:41,062 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41 WrapperNode [2025-03-13 21:34:41,063 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-13 21:34:41,063 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-13 21:34:41,063 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-13 21:34:41,064 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-13 21:34:41,068 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (1/1) ... [2025-03-13 21:34:41,083 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (1/1) ... [2025-03-13 21:34:41,099 INFO L138 Inliner]: procedures = 175, calls = 63, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 166 [2025-03-13 21:34:41,100 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-13 21:34:41,100 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-13 21:34:41,101 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-13 21:34:41,101 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-13 21:34:41,108 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (1/1) ... [2025-03-13 21:34:41,108 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (1/1) ... [2025-03-13 21:34:41,111 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (1/1) ... [2025-03-13 21:34:41,127 INFO L175 MemorySlicer]: Split 24 memory accesses to 2 slices as follows [2, 22]. 92 percent of accesses are in the largest equivalence class. The 3 initializations are split as follows [2, 1]. The 7 writes are split as follows [0, 7]. [2025-03-13 21:34:41,127 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (1/1) ... [2025-03-13 21:34:41,127 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (1/1) ... [2025-03-13 21:34:41,135 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (1/1) ... [2025-03-13 21:34:41,136 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (1/1) ... [2025-03-13 21:34:41,138 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (1/1) ... [2025-03-13 21:34:41,138 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (1/1) ... [2025-03-13 21:34:41,141 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-13 21:34:41,141 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-13 21:34:41,141 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-13 21:34:41,142 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-13 21:34:41,142 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (1/1) ... [2025-03-13 21:34:41,148 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-13 21:34:41,157 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-13 21:34:41,169 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-13 21:34:41,174 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2025-03-13 21:34:41,192 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2025-03-13 21:34:41,192 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2025-03-13 21:34:41,192 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-03-13 21:34:41,192 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-13 21:34:41,192 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-13 21:34:41,194 WARN L225 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-03-13 21:34:41,312 INFO L256 CfgBuilder]: Building ICFG [2025-03-13 21:34:41,313 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-13 21:34:41,670 INFO L303 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-03-13 21:34:41,671 INFO L313 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-13 21:34:41,671 INFO L318 CfgBuilder]: Performing block encoding [2025-03-13 21:34:42,071 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-13 21:34:42,072 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:34:42 BoogieIcfgContainer [2025-03-13 21:34:42,072 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-13 21:34:42,073 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-13 21:34:42,074 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-13 21:34:42,078 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-13 21:34:42,078 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 13.03 09:34:40" (1/3) ... [2025-03-13 21:34:42,079 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@10953381 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.03 09:34:42, skipping insertion in model container [2025-03-13 21:34:42,079 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 13.03 09:34:41" (2/3) ... [2025-03-13 21:34:42,079 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@10953381 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 13.03 09:34:42, skipping insertion in model container [2025-03-13 21:34:42,079 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:34:42" (3/3) ... [2025-03-13 21:34:42,080 INFO L128 eAbstractionObserver]: Analyzing ICFG safe018_power.opt.i [2025-03-13 21:34:42,093 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-13 21:34:42,097 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG safe018_power.opt.i that has 4 procedures, 38 locations, 1 initial locations, 0 loop locations, and 2 error locations. [2025-03-13 21:34:42,097 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-03-13 21:34:42,157 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2025-03-13 21:34:42,180 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 47 places, 38 transitions, 88 flow [2025-03-13 21:34:42,210 INFO L124 PetriNetUnfolderBase]: 1/35 cut-off events. [2025-03-13 21:34:42,213 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-13 21:34:42,216 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 65 event pairs, 0 based on Foata normal form. 0/32 useless extension candidates. Maximal degree in co-relation 37. Up to 2 conditions per place. [2025-03-13 21:34:42,217 INFO L82 GeneralOperation]: Start removeDead. Operand has 47 places, 38 transitions, 88 flow [2025-03-13 21:34:42,220 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 44 places, 35 transitions, 79 flow [2025-03-13 21:34:42,228 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-13 21:34:42,239 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;@46fd086f, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-13 21:34:42,241 INFO L334 AbstractCegarLoop]: Starting to check reachability of 6 error locations. [2025-03-13 21:34:42,245 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-03-13 21:34:42,246 INFO L124 PetriNetUnfolderBase]: 0/9 cut-off events. [2025-03-13 21:34:42,246 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-13 21:34:42,247 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:42,247 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1] [2025-03-13 21:34:42,247 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting P1Err0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-03-13 21:34:42,252 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:42,252 INFO L85 PathProgramCache]: Analyzing trace with hash -1559976578, now seen corresponding path program 1 times [2025-03-13 21:34:42,258 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:42,258 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [753224415] [2025-03-13 21:34:42,258 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:34:42,259 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:42,325 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-03-13 21:34:42,359 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-03-13 21:34:42,360 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:34:42,360 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:34:42,701 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-13 21:34:42,703 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:34:42,704 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [753224415] [2025-03-13 21:34:42,704 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [753224415] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:34:42,705 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:34:42,705 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-03-13 21:34:42,706 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [776363796] [2025-03-13 21:34:42,706 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:34:42,710 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-03-13 21:34:42,713 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:34:42,726 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-03-13 21:34:42,727 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-03-13 21:34:42,728 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 38 [2025-03-13 21:34:42,730 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 44 places, 35 transitions, 79 flow. Second operand has 3 states, 3 states have (on average 10.666666666666666) internal successors, (32), 3 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-13 21:34:42,730 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:34:42,730 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 38 [2025-03-13 21:34:42,731 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:34:43,621 INFO L124 PetriNetUnfolderBase]: 3481/5090 cut-off events. [2025-03-13 21:34:43,622 INFO L125 PetriNetUnfolderBase]: For 32/32 co-relation queries the response was YES. [2025-03-13 21:34:43,634 INFO L83 FinitePrefix]: Finished finitePrefix Result has 10163 conditions, 5090 events. 3481/5090 cut-off events. For 32/32 co-relation queries the response was YES. Maximal size of possible extension queue 218. Compared 27306 event pairs, 465 based on Foata normal form. 174/5223 useless extension candidates. Maximal degree in co-relation 10152. Up to 4217 conditions per place. [2025-03-13 21:34:43,655 INFO L140 encePairwiseOnDemand]: 34/38 looper letters, 42 selfloop transitions, 2 changer transitions 2/52 dead transitions. [2025-03-13 21:34:43,656 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 45 places, 52 transitions, 208 flow [2025-03-13 21:34:43,657 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-03-13 21:34:43,658 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-03-13 21:34:43,663 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 76 transitions. [2025-03-13 21:34:43,666 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6666666666666666 [2025-03-13 21:34:43,667 INFO L175 Difference]: Start difference. First operand has 44 places, 35 transitions, 79 flow. Second operand 3 states and 76 transitions. [2025-03-13 21:34:43,667 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 45 places, 52 transitions, 208 flow [2025-03-13 21:34:43,672 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 42 places, 52 transitions, 204 flow, removed 0 selfloop flow, removed 3 redundant places. [2025-03-13 21:34:43,673 INFO L231 Difference]: Finished difference. Result has 42 places, 32 transitions, 74 flow [2025-03-13 21:34:43,675 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=72, PETRI_DIFFERENCE_MINUEND_PLACES=40, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=33, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=31, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=74, PETRI_PLACES=42, PETRI_TRANSITIONS=32} [2025-03-13 21:34:43,679 INFO L279 CegarLoopForPetriNet]: 44 programPoint places, -2 predicate places. [2025-03-13 21:34:43,679 INFO L471 AbstractCegarLoop]: Abstraction has has 42 places, 32 transitions, 74 flow [2025-03-13 21:34:43,679 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 10.666666666666666) internal successors, (32), 3 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-13 21:34:43,679 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:43,679 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:34:43,680 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-03-13 21:34:43,680 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-03-13 21:34:43,680 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:43,680 INFO L85 PathProgramCache]: Analyzing trace with hash -161329604, now seen corresponding path program 1 times [2025-03-13 21:34:43,680 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:43,680 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1534421101] [2025-03-13 21:34:43,680 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:34:43,680 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:43,698 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 14 statements into 1 equivalence classes. [2025-03-13 21:34:43,746 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 14 of 14 statements. [2025-03-13 21:34:43,746 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:34:43,746 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:34:43,916 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-13 21:34:43,917 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:34:43,917 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1534421101] [2025-03-13 21:34:43,917 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1534421101] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:34:43,917 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:34:43,917 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-03-13 21:34:43,918 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1934975779] [2025-03-13 21:34:43,918 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:34:43,919 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-03-13 21:34:43,919 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:34:43,920 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-03-13 21:34:43,920 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-03-13 21:34:43,920 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 38 [2025-03-13 21:34:43,920 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 42 places, 32 transitions, 74 flow. Second operand has 4 states, 4 states have (on average 12.0) internal successors, (48), 4 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-13 21:34:43,920 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:34:43,920 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 38 [2025-03-13 21:34:43,921 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:34:44,409 INFO L124 PetriNetUnfolderBase]: 2629/4307 cut-off events. [2025-03-13 21:34:44,410 INFO L125 PetriNetUnfolderBase]: For 220/220 co-relation queries the response was YES. [2025-03-13 21:34:44,415 INFO L83 FinitePrefix]: Finished finitePrefix Result has 8507 conditions, 4307 events. 2629/4307 cut-off events. For 220/220 co-relation queries the response was YES. Maximal size of possible extension queue 194. Compared 25511 event pairs, 411 based on Foata normal form. 180/4343 useless extension candidates. Maximal degree in co-relation 8497. Up to 2161 conditions per place. [2025-03-13 21:34:44,428 INFO L140 encePairwiseOnDemand]: 32/38 looper letters, 51 selfloop transitions, 5 changer transitions 1/63 dead transitions. [2025-03-13 21:34:44,429 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 44 places, 63 transitions, 258 flow [2025-03-13 21:34:44,429 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-03-13 21:34:44,429 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-03-13 21:34:44,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 95 transitions. [2025-03-13 21:34:44,431 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.625 [2025-03-13 21:34:44,431 INFO L175 Difference]: Start difference. First operand has 42 places, 32 transitions, 74 flow. Second operand 4 states and 95 transitions. [2025-03-13 21:34:44,431 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 44 places, 63 transitions, 258 flow [2025-03-13 21:34:44,432 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 42 places, 63 transitions, 250 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-13 21:34:44,434 INFO L231 Difference]: Finished difference. Result has 44 places, 35 transitions, 104 flow [2025-03-13 21:34:44,435 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:34:44,435 INFO L279 CegarLoopForPetriNet]: 44 programPoint places, 0 predicate places. [2025-03-13 21:34:44,435 INFO L471 AbstractCegarLoop]: Abstraction has has 44 places, 35 transitions, 104 flow [2025-03-13 21:34:44,435 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 12.0) internal successors, (48), 4 states have internal predecessors, (48), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-13 21:34:44,436 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:44,436 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:34:44,436 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-13 21:34:44,437 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-03-13 21:34:44,437 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:44,437 INFO L85 PathProgramCache]: Analyzing trace with hash 1038721743, now seen corresponding path program 1 times [2025-03-13 21:34:44,437 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:44,437 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1142911503] [2025-03-13 21:34:44,437 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:34:44,437 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:44,458 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 18 statements into 1 equivalence classes. [2025-03-13 21:34:44,509 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 18 of 18 statements. [2025-03-13 21:34:44,512 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:34:44,512 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:34:44,682 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-13 21:34:44,682 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:34:44,683 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1142911503] [2025-03-13 21:34:44,683 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1142911503] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:34:44,683 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:34:44,683 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-03-13 21:34:44,683 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1421498706] [2025-03-13 21:34:44,683 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:34:44,683 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-13 21:34:44,684 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:34:44,684 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-13 21:34:44,684 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-03-13 21:34:44,684 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 38 [2025-03-13 21:34:44,684 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:34:44,684 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:34:44,684 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 38 [2025-03-13 21:34:44,685 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:34:45,122 INFO L124 PetriNetUnfolderBase]: 1565/2555 cut-off events. [2025-03-13 21:34:45,123 INFO L125 PetriNetUnfolderBase]: For 578/578 co-relation queries the response was YES. [2025-03-13 21:34:45,126 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5821 conditions, 2555 events. 1565/2555 cut-off events. For 578/578 co-relation queries the response was YES. Maximal size of possible extension queue 92. Compared 12992 event pairs, 253 based on Foata normal form. 132/2623 useless extension candidates. Maximal degree in co-relation 5809. Up to 792 conditions per place. [2025-03-13 21:34:45,152 INFO L140 encePairwiseOnDemand]: 32/38 looper letters, 65 selfloop transitions, 8 changer transitions 1/80 dead transitions. [2025-03-13 21:34:45,153 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 48 places, 80 transitions, 363 flow [2025-03-13 21:34:45,153 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-03-13 21:34:45,153 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-03-13 21:34:45,155 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 121 transitions. [2025-03-13 21:34:45,156 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6368421052631579 [2025-03-13 21:34:45,156 INFO L175 Difference]: Start difference. First operand has 44 places, 35 transitions, 104 flow. Second operand 5 states and 121 transitions. [2025-03-13 21:34:45,156 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 48 places, 80 transitions, 363 flow [2025-03-13 21:34:45,159 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 80 transitions, 353 flow, removed 1 selfloop flow, removed 2 redundant places. [2025-03-13 21:34:45,160 INFO L231 Difference]: Finished difference. Result has 48 places, 38 transitions, 144 flow [2025-03-13 21:34:45,160 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:34:45,161 INFO L279 CegarLoopForPetriNet]: 44 programPoint places, 4 predicate places. [2025-03-13 21:34:45,161 INFO L471 AbstractCegarLoop]: Abstraction has has 48 places, 38 transitions, 144 flow [2025-03-13 21:34:45,161 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 12.0) internal successors, (60), 5 states have internal predecessors, (60), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-13 21:34:45,161 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:45,161 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:34:45,162 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-03-13 21:34:45,162 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-03-13 21:34:45,162 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:45,162 INFO L85 PathProgramCache]: Analyzing trace with hash 618881638, now seen corresponding path program 1 times [2025-03-13 21:34:45,163 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:45,163 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2078693021] [2025-03-13 21:34:45,163 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:34:45,163 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:45,174 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 23 statements into 1 equivalence classes. [2025-03-13 21:34:45,213 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 23 of 23 statements. [2025-03-13 21:34:45,214 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:34:45,214 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:34:45,390 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-13 21:34:45,390 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:34:45,390 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2078693021] [2025-03-13 21:34:45,390 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2078693021] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:34:45,391 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:34:45,391 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-03-13 21:34:45,391 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1547139093] [2025-03-13 21:34:45,391 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:34:45,391 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-13 21:34:45,391 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:34:45,392 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-13 21:34:45,392 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2025-03-13 21:34:45,392 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 9 out of 38 [2025-03-13 21:34:45,392 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:34:45,392 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:34:45,392 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 9 of 38 [2025-03-13 21:34:45,392 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:34:45,663 INFO L124 PetriNetUnfolderBase]: 969/1527 cut-off events. [2025-03-13 21:34:45,664 INFO L125 PetriNetUnfolderBase]: For 1026/1026 co-relation queries the response was YES. [2025-03-13 21:34:45,668 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3879 conditions, 1527 events. 969/1527 cut-off events. For 1026/1026 co-relation queries the response was YES. Maximal size of possible extension queue 67. Compared 6670 event pairs, 223 based on Foata normal form. 52/1559 useless extension candidates. Maximal degree in co-relation 3865. Up to 556 conditions per place. [2025-03-13 21:34:45,673 INFO L140 encePairwiseOnDemand]: 32/38 looper letters, 55 selfloop transitions, 11 changer transitions 1/73 dead transitions. [2025-03-13 21:34:45,673 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 53 places, 73 transitions, 358 flow [2025-03-13 21:34:45,673 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-03-13 21:34:45,673 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-03-13 21:34:45,675 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 123 transitions. [2025-03-13 21:34:45,675 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5394736842105263 [2025-03-13 21:34:45,675 INFO L175 Difference]: Start difference. First operand has 48 places, 38 transitions, 144 flow. Second operand 6 states and 123 transitions. [2025-03-13 21:34:45,675 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 53 places, 73 transitions, 358 flow [2025-03-13 21:34:45,682 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 49 places, 73 transitions, 333 flow, removed 4 selfloop flow, removed 4 redundant places. [2025-03-13 21:34:45,683 INFO L231 Difference]: Finished difference. Result has 51 places, 38 transitions, 158 flow [2025-03-13 21:34:45,683 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:34:45,684 INFO L279 CegarLoopForPetriNet]: 44 programPoint places, 7 predicate places. [2025-03-13 21:34:45,684 INFO L471 AbstractCegarLoop]: Abstraction has has 51 places, 38 transitions, 158 flow [2025-03-13 21:34:45,685 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 12.166666666666666) internal successors, (73), 6 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-13 21:34:45,685 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:45,685 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:34:45,685 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-03-13 21:34:45,685 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-03-13 21:34:45,685 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:45,686 INFO L85 PathProgramCache]: Analyzing trace with hash -280767669, now seen corresponding path program 1 times [2025-03-13 21:34:45,686 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:45,686 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1418271707] [2025-03-13 21:34:45,686 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-13 21:34:45,686 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:45,704 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 28 statements into 1 equivalence classes. [2025-03-13 21:34:45,816 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 28 of 28 statements. [2025-03-13 21:34:45,816 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:34:45,816 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:34:46,138 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-13 21:34:46,138 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:34:46,138 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1418271707] [2025-03-13 21:34:46,138 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1418271707] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:34:46,138 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:34:46,138 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-03-13 21:34:46,138 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [814297452] [2025-03-13 21:34:46,138 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:34:46,139 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-13 21:34:46,139 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:34:46,139 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-13 21:34:46,139 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2025-03-13 21:34:46,144 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 8 out of 38 [2025-03-13 21:34:46,145 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.0) internal successors, (72), 6 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-13 21:34:46,145 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:34:46,145 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 8 of 38 [2025-03-13 21:34:46,145 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:34:46,420 INFO L124 PetriNetUnfolderBase]: 1319/2073 cut-off events. [2025-03-13 21:34:46,420 INFO L125 PetriNetUnfolderBase]: For 1662/1662 co-relation queries the response was YES. [2025-03-13 21:34:46,426 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5378 conditions, 2073 events. 1319/2073 cut-off events. For 1662/1662 co-relation queries the response was YES. Maximal size of possible extension queue 97. Compared 9378 event pairs, 329 based on Foata normal form. 8/2069 useless extension candidates. Maximal degree in co-relation 5363. Up to 772 conditions per place. [2025-03-13 21:34:46,430 INFO L140 encePairwiseOnDemand]: 32/38 looper letters, 45 selfloop transitions, 3 changer transitions 26/79 dead transitions. [2025-03-13 21:34:46,430 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 56 places, 79 transitions, 484 flow [2025-03-13 21:34:46,431 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-03-13 21:34:46,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-03-13 21:34:46,431 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 109 transitions. [2025-03-13 21:34:46,433 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.4780701754385965 [2025-03-13 21:34:46,433 INFO L175 Difference]: Start difference. First operand has 51 places, 38 transitions, 158 flow. Second operand 6 states and 109 transitions. [2025-03-13 21:34:46,433 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 56 places, 79 transitions, 484 flow [2025-03-13 21:34:46,441 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 48 places, 79 transitions, 359 flow, removed 20 selfloop flow, removed 8 redundant places. [2025-03-13 21:34:46,442 INFO L231 Difference]: Finished difference. Result has 51 places, 38 transitions, 116 flow [2025-03-13 21:34:46,443 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=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=35, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=116, PETRI_PLACES=51, PETRI_TRANSITIONS=38} [2025-03-13 21:34:46,443 INFO L279 CegarLoopForPetriNet]: 44 programPoint places, 7 predicate places. [2025-03-13 21:34:46,444 INFO L471 AbstractCegarLoop]: Abstraction has has 51 places, 38 transitions, 116 flow [2025-03-13 21:34:46,444 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 12.0) internal successors, (72), 6 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-13 21:34:46,444 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:46,444 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:34:46,444 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-03-13 21:34:46,444 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-03-13 21:34:46,445 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:46,445 INFO L85 PathProgramCache]: Analyzing trace with hash 556140829, now seen corresponding path program 2 times [2025-03-13 21:34:46,445 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:46,446 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [641084487] [2025-03-13 21:34:46,446 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-03-13 21:34:46,446 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:46,462 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 28 statements into 1 equivalence classes. [2025-03-13 21:34:46,580 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 28 of 28 statements. [2025-03-13 21:34:46,581 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-03-13 21:34:46,581 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:34:49,828 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-13 21:34:49,829 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:34:49,829 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [641084487] [2025-03-13 21:34:49,829 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [641084487] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:34:49,829 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:34:49,829 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2025-03-13 21:34:49,829 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1434227033] [2025-03-13 21:34:49,829 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:34:49,829 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2025-03-13 21:34:49,830 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:34:49,830 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2025-03-13 21:34:49,830 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=89, Unknown=0, NotChecked=0, Total=110 [2025-03-13 21:34:49,840 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 8 out of 38 [2025-03-13 21:34:49,840 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 51 places, 38 transitions, 116 flow. Second operand has 11 states, 11 states have (on average 10.181818181818182) internal successors, (112), 11 states have internal predecessors, (112), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-13 21:34:49,841 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:34:49,841 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 8 of 38 [2025-03-13 21:34:49,841 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:34:50,546 INFO L124 PetriNetUnfolderBase]: 1173/1873 cut-off events. [2025-03-13 21:34:50,546 INFO L125 PetriNetUnfolderBase]: For 278/278 co-relation queries the response was YES. [2025-03-13 21:34:50,548 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4307 conditions, 1873 events. 1173/1873 cut-off events. For 278/278 co-relation queries the response was YES. Maximal size of possible extension queue 89. Compared 8462 event pairs, 416 based on Foata normal form. 8/1880 useless extension candidates. Maximal degree in co-relation 4293. Up to 873 conditions per place. [2025-03-13 21:34:50,552 INFO L140 encePairwiseOnDemand]: 28/38 looper letters, 77 selfloop transitions, 9 changer transitions 20/111 dead transitions. [2025-03-13 21:34:50,553 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 58 places, 111 transitions, 540 flow [2025-03-13 21:34:50,553 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2025-03-13 21:34:50,553 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2025-03-13 21:34:50,554 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 167 transitions. [2025-03-13 21:34:50,554 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.4394736842105263 [2025-03-13 21:34:50,554 INFO L175 Difference]: Start difference. First operand has 51 places, 38 transitions, 116 flow. Second operand 10 states and 167 transitions. [2025-03-13 21:34:50,555 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 58 places, 111 transitions, 540 flow [2025-03-13 21:34:50,556 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 53 places, 111 transitions, 516 flow, removed 5 selfloop flow, removed 5 redundant places. [2025-03-13 21:34:50,557 INFO L231 Difference]: Finished difference. Result has 59 places, 46 transitions, 167 flow [2025-03-13 21:34:50,557 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=104, PETRI_DIFFERENCE_MINUEND_PLACES=44, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=38, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=31, PETRI_DIFFERENCE_SUBTRAHEND_STATES=10, PETRI_FLOW=167, PETRI_PLACES=59, PETRI_TRANSITIONS=46} [2025-03-13 21:34:50,558 INFO L279 CegarLoopForPetriNet]: 44 programPoint places, 15 predicate places. [2025-03-13 21:34:50,558 INFO L471 AbstractCegarLoop]: Abstraction has has 59 places, 46 transitions, 167 flow [2025-03-13 21:34:50,558 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 10.181818181818182) internal successors, (112), 11 states have internal predecessors, (112), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-13 21:34:50,558 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:50,559 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:34:50,559 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2025-03-13 21:34:50,559 INFO L396 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-03-13 21:34:50,559 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:50,560 INFO L85 PathProgramCache]: Analyzing trace with hash 1244605259, now seen corresponding path program 3 times [2025-03-13 21:34:50,560 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:50,560 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1191130699] [2025-03-13 21:34:50,560 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-03-13 21:34:50,560 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:50,576 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 28 statements into 1 equivalence classes. [2025-03-13 21:34:50,637 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 28 of 28 statements. [2025-03-13 21:34:50,637 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-03-13 21:34:50,638 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-13 21:34:52,289 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-03-13 21:34:52,289 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-13 21:34:52,289 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1191130699] [2025-03-13 21:34:52,289 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1191130699] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-13 21:34:52,289 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-13 21:34:52,289 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2025-03-13 21:34:52,289 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2101142410] [2025-03-13 21:34:52,289 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-13 21:34:52,289 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2025-03-13 21:34:52,290 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-13 21:34:52,290 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2025-03-13 21:34:52,290 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=70, Unknown=0, NotChecked=0, Total=90 [2025-03-13 21:34:52,305 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 8 out of 38 [2025-03-13 21:34:52,305 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 59 places, 46 transitions, 167 flow. Second operand has 10 states, 10 states have (on average 10.4) internal successors, (104), 10 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-13 21:34:52,305 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-13 21:34:52,305 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 8 of 38 [2025-03-13 21:34:52,305 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-13 21:34:52,819 INFO L124 PetriNetUnfolderBase]: 1357/2169 cut-off events. [2025-03-13 21:34:52,820 INFO L125 PetriNetUnfolderBase]: For 783/783 co-relation queries the response was YES. [2025-03-13 21:34:52,824 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5336 conditions, 2169 events. 1357/2169 cut-off events. For 783/783 co-relation queries the response was YES. Maximal size of possible extension queue 104. Compared 10053 event pairs, 525 based on Foata normal form. 8/2176 useless extension candidates. Maximal degree in co-relation 5319. Up to 989 conditions per place. [2025-03-13 21:34:52,832 INFO L140 encePairwiseOnDemand]: 29/38 looper letters, 76 selfloop transitions, 6 changer transitions 36/123 dead transitions. [2025-03-13 21:34:52,832 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 64 places, 123 transitions, 643 flow [2025-03-13 21:34:52,833 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2025-03-13 21:34:52,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2025-03-13 21:34:52,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 165 transitions. [2025-03-13 21:34:52,834 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.4824561403508772 [2025-03-13 21:34:52,834 INFO L175 Difference]: Start difference. First operand has 59 places, 46 transitions, 167 flow. Second operand 9 states and 165 transitions. [2025-03-13 21:34:52,834 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 64 places, 123 transitions, 643 flow [2025-03-13 21:34:52,836 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 61 places, 123 transitions, 633 flow, removed 5 selfloop flow, removed 3 redundant places. [2025-03-13 21:34:52,837 INFO L231 Difference]: Finished difference. Result has 65 places, 44 transitions, 175 flow [2025-03-13 21:34:52,838 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=38, PETRI_DIFFERENCE_MINUEND_FLOW=161, PETRI_DIFFERENCE_MINUEND_PLACES=53, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=46, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=40, PETRI_DIFFERENCE_SUBTRAHEND_STATES=9, PETRI_FLOW=175, PETRI_PLACES=65, PETRI_TRANSITIONS=44} [2025-03-13 21:34:52,839 INFO L279 CegarLoopForPetriNet]: 44 programPoint places, 21 predicate places. [2025-03-13 21:34:52,839 INFO L471 AbstractCegarLoop]: Abstraction has has 65 places, 44 transitions, 175 flow [2025-03-13 21:34:52,839 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 10.4) internal successors, (104), 10 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-13 21:34:52,839 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-13 21:34:52,839 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-13 21:34:52,839 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2025-03-13 21:34:52,841 INFO L396 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 3 more)] === [2025-03-13 21:34:52,841 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-13 21:34:52,841 INFO L85 PathProgramCache]: Analyzing trace with hash -714857145, now seen corresponding path program 4 times [2025-03-13 21:34:52,841 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-13 21:34:52,841 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1591993108] [2025-03-13 21:34:52,841 INFO L95 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2025-03-13 21:34:52,841 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-13 21:34:52,859 INFO L108 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST partitioned 28 statements into 2 equivalence classes. [2025-03-13 21:34:52,938 INFO L111 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) and asserted 28 of 28 statements. [2025-03-13 21:34:52,938 INFO L114 AnnotateAndAsserter]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 2 check-sat command(s) [2025-03-13 21:34:52,938 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-13 21:34:52,938 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-13 21:34:52,945 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 28 statements into 1 equivalence classes. [2025-03-13 21:34:53,036 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 28 of 28 statements. [2025-03-13 21:34:53,037 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-13 21:34:53,037 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-13 21:34:53,074 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-13 21:34:53,074 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-13 21:34:53,075 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (5 of 6 remaining) [2025-03-13 21:34:53,076 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (4 of 6 remaining) [2025-03-13 21:34:53,076 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (3 of 6 remaining) [2025-03-13 21:34:53,076 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 6 remaining) [2025-03-13 21:34:53,076 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 6 remaining) [2025-03-13 21:34:53,077 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 6 remaining) [2025-03-13 21:34:53,077 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2025-03-13 21:34:53,077 INFO L422 BasicCegarLoop]: Path program histogram: [4, 1, 1, 1, 1] [2025-03-13 21:34:53,181 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-03-13 21:34:53,182 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-13 21:34:53,187 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 13.03 09:34:53 BasicIcfg [2025-03-13 21:34:53,187 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-13 21:34:53,187 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-13 21:34:53,188 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-13 21:34:53,188 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-13 21:34:53,188 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 13.03 09:34:42" (3/4) ... [2025-03-13 21:34:53,189 INFO L140 WitnessPrinter]: Generating witness for reachability counterexample [2025-03-13 21:34:53,294 INFO L127 tionWitnessGenerator]: Generated YAML witness of length 9. [2025-03-13 21:34:53,326 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-03-13 21:34:53,326 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.yml [2025-03-13 21:34:53,326 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-13 21:34:53,327 INFO L158 Benchmark]: Toolchain (without parser) took 12614.53ms. Allocated memory was 167.8MB in the beginning and 847.2MB in the end (delta: 679.5MB). Free memory was 131.2MB in the beginning and 549.1MB in the end (delta: -417.9MB). Peak memory consumption was 262.8MB. Max. memory is 16.1GB. [2025-03-13 21:34:53,327 INFO L158 Benchmark]: CDTParser took 0.28ms. Allocated memory is still 201.3MB. Free memory is still 126.5MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-13 21:34:53,327 INFO L158 Benchmark]: CACSL2BoogieTranslator took 349.33ms. Allocated memory is still 167.8MB. Free memory was 130.7MB in the beginning and 105.6MB in the end (delta: 25.2MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-13 21:34:53,328 INFO L158 Benchmark]: Boogie Procedure Inliner took 36.63ms. Allocated memory is still 167.8MB. Free memory was 105.6MB in the beginning and 103.0MB in the end (delta: 2.5MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-13 21:34:53,328 INFO L158 Benchmark]: Boogie Preprocessor took 40.43ms. Allocated memory is still 167.8MB. Free memory was 103.0MB in the beginning and 98.8MB in the end (delta: 4.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-13 21:34:53,328 INFO L158 Benchmark]: IcfgBuilder took 930.52ms. Allocated memory is still 167.8MB. Free memory was 98.8MB in the beginning and 115.8MB in the end (delta: -16.9MB). Peak memory consumption was 69.3MB. Max. memory is 16.1GB. [2025-03-13 21:34:53,328 INFO L158 Benchmark]: TraceAbstraction took 11113.48ms. Allocated memory was 167.8MB in the beginning and 847.2MB in the end (delta: 679.5MB). Free memory was 114.9MB in the beginning and 574.2MB in the end (delta: -459.3MB). Peak memory consumption was 216.8MB. Max. memory is 16.1GB. [2025-03-13 21:34:53,328 INFO L158 Benchmark]: Witness Printer took 138.96ms. Allocated memory is still 847.2MB. Free memory was 574.2MB in the beginning and 549.1MB in the end (delta: 25.2MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-13 21:34:53,329 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.28ms. Allocated memory is still 201.3MB. Free memory is still 126.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 349.33ms. Allocated memory is still 167.8MB. Free memory was 130.7MB in the beginning and 105.6MB in the end (delta: 25.2MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 36.63ms. Allocated memory is still 167.8MB. Free memory was 105.6MB in the beginning and 103.0MB in the end (delta: 2.5MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 40.43ms. Allocated memory is still 167.8MB. Free memory was 103.0MB in the beginning and 98.8MB in the end (delta: 4.2MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 930.52ms. Allocated memory is still 167.8MB. Free memory was 98.8MB in the beginning and 115.8MB in the end (delta: -16.9MB). Peak memory consumption was 69.3MB. Max. memory is 16.1GB. * TraceAbstraction took 11113.48ms. Allocated memory was 167.8MB in the beginning and 847.2MB in the end (delta: 679.5MB). Free memory was 114.9MB in the beginning and 574.2MB in the end (delta: -459.3MB). Peak memory consumption was 216.8MB. Max. memory is 16.1GB. * Witness Printer took 138.96ms. Allocated memory is still 847.2MB. Free memory was 574.2MB in the beginning and 549.1MB 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_p0_EBX = 0; [L716] 0 int __unbuffered_p2_EAX = 0; [L717] 0 _Bool __unbuffered_p2_EAX$flush_delayed; [L718] 0 int __unbuffered_p2_EAX$mem_tmp; [L719] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd0; [L720] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd1; [L721] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd2; [L722] 0 _Bool __unbuffered_p2_EAX$r_buff0_thd3; [L723] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd0; [L724] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd1; [L725] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd2; [L726] 0 _Bool __unbuffered_p2_EAX$r_buff1_thd3; [L727] 0 _Bool __unbuffered_p2_EAX$read_delayed; [L728] 0 int *__unbuffered_p2_EAX$read_delayed_var; [L729] 0 int __unbuffered_p2_EAX$w_buff0; [L730] 0 _Bool __unbuffered_p2_EAX$w_buff0_used; [L731] 0 int __unbuffered_p2_EAX$w_buff1; [L732] 0 _Bool __unbuffered_p2_EAX$w_buff1_used; [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; [L859] 0 pthread_t t2204; [L860] FCALL, FORK 0 pthread_create(&t2204, ((void *)0), P0, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=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, main$tmp_guard0=0, main$tmp_guard1=0, t2204=-2, 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] [L861] 0 pthread_t t2205; [L862] FCALL, FORK 0 pthread_create(&t2205, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=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, main$tmp_guard0=0, main$tmp_guard1=0, t2204=-2, t2205=-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] [L863] 0 pthread_t t2206; [L864] FCALL, FORK 0 pthread_create(&t2206, ((void *)0), P2, ((void *)0)) VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=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, main$tmp_guard0=0, main$tmp_guard1=0, t2204=-2, t2205=-1, t2206=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] [L789] 2 x$w_buff1 = x$w_buff0 [L790] 2 x$w_buff0 = 1 [L791] 2 x$w_buff1_used = x$w_buff0_used [L792] 2 x$w_buff0_used = (_Bool)1 [L793] CALL 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L19] COND FALSE 2 !(!expression) [L793] RET 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L794] 2 x$r_buff1_thd0 = x$r_buff0_thd0 [L795] 2 x$r_buff1_thd1 = x$r_buff0_thd1 [L796] 2 x$r_buff1_thd2 = x$r_buff0_thd2 [L797] 2 x$r_buff1_thd3 = x$r_buff0_thd3 [L798] 2 x$r_buff0_thd2 = (_Bool)1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=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, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=0] [L815] 3 weak$$choice0 = __VERIFIER_nondet_bool() [L816] 3 weak$$choice2 = __VERIFIER_nondet_bool() [L817] 3 x$flush_delayed = weak$$choice2 [L818] EXPR 3 \read(x) [L818] 3 x$mem_tmp = x [L819] 3 weak$$choice1 = __VERIFIER_nondet_bool() [L820] EXPR 3 !x$w_buff0_used ? x : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x : (weak$$choice1 ? x$w_buff0 : x$w_buff1)) : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x$w_buff1 : x$w_buff0) : (weak$$choice0 ? x$w_buff0 : x)))) [L820] EXPR 3 x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x : (weak$$choice1 ? x$w_buff0 : x$w_buff1)) : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x$w_buff1 : x$w_buff0) : (weak$$choice0 ? x$w_buff0 : x))) [L820] EXPR 3 x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x : (weak$$choice1 ? x$w_buff0 : x$w_buff1)) : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x$w_buff1 : x$w_buff0) : (weak$$choice0 ? x$w_buff0 : x)) [L820] EXPR 3 x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x$w_buff1 : x$w_buff0) : (weak$$choice0 ? x$w_buff0 : x) [L820] EXPR 3 weak$$choice0 ? x$w_buff0 : x [L820] EXPR 3 weak$$choice0 ? x$w_buff0 : x [L820] EXPR 3 x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x$w_buff1 : x$w_buff0) : (weak$$choice0 ? x$w_buff0 : x) [L820] EXPR 3 x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x : (weak$$choice1 ? x$w_buff0 : x$w_buff1)) : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x$w_buff1 : x$w_buff0) : (weak$$choice0 ? x$w_buff0 : x)) [L820] EXPR 3 x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x : (weak$$choice1 ? x$w_buff0 : x$w_buff1)) : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x$w_buff1 : x$w_buff0) : (weak$$choice0 ? x$w_buff0 : x))) [L820] EXPR 3 !x$w_buff0_used ? x : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x : (weak$$choice1 ? x$w_buff0 : x$w_buff1)) : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x$w_buff1 : x$w_buff0) : (weak$$choice0 ? x$w_buff0 : x)))) [L820] 3 x = !x$w_buff0_used ? x : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x : (weak$$choice1 ? x$w_buff0 : x$w_buff1)) : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x$w_buff1 : x$w_buff0) : (weak$$choice0 ? x$w_buff0 : x)))) [L821] 3 x$w_buff0 = weak$$choice2 ? x$w_buff0 : (!x$w_buff0_used ? x$w_buff0 : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? x$w_buff0 : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? x$w_buff0 : x$w_buff0)))) [L822] 3 x$w_buff1 = weak$$choice2 ? x$w_buff1 : (!x$w_buff0_used ? x$w_buff1 : (x$w_buff0_used && x$r_buff0_thd3 ? x$w_buff1 : (x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? x$w_buff1 : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? x$w_buff1 : x$w_buff1)))) [L823] 3 x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : (!x$w_buff0_used ? x$w_buff0_used : (x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : (x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? weak$$choice0 || !weak$$choice1 : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? weak$$choice0 : weak$$choice0)))) [L824] 3 x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : (!x$w_buff0_used ? x$w_buff1_used : (x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : (x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? weak$$choice0 : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (_Bool)0 : (_Bool)0)))) [L825] 3 x$r_buff0_thd3 = weak$$choice2 ? x$r_buff0_thd3 : (!x$w_buff0_used ? x$r_buff0_thd3 : (x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : (x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? x$r_buff0_thd3 : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (_Bool)0 : (_Bool)0)))) [L826] 3 x$r_buff1_thd3 = weak$$choice2 ? x$r_buff1_thd3 : (!x$w_buff0_used ? x$r_buff1_thd3 : (x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : (x$w_buff0_used && !x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (weak$$choice0 ? x$r_buff1_thd3 : (_Bool)0) : (x$w_buff0_used && x$r_buff1_thd3 && x$w_buff1_used && !x$r_buff0_thd3 ? (_Bool)0 : (_Bool)0)))) [L827] 3 __unbuffered_p2_EAX$read_delayed = (_Bool)1 [L828] 3 __unbuffered_p2_EAX$read_delayed_var = &x [L829] EXPR 3 \read(x) [L829] 3 __unbuffered_p2_EAX = x [L830] EXPR 3 x$flush_delayed ? x$mem_tmp : x [L830] EXPR 3 x$flush_delayed ? x$mem_tmp : x [L830] 3 x = x$flush_delayed ? x$mem_tmp : x [L831] 3 x$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=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, 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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=0] [L834] 3 y = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p0_EBX=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, 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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L761] 1 __unbuffered_p0_EAX = y VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=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, 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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L837] 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) [L837] EXPR 3 x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x [L837] EXPR 3 \read(x) [L837] EXPR 3 x$w_buff1_used && x$r_buff1_thd3 ? x$w_buff1 : x [L837] 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) [L837] 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) [L838] 3 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$w_buff0_used [L839] 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 [L840] 3 x$r_buff0_thd3 = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$r_buff0_thd3 [L841] 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}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=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, 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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L764] 1 weak$$choice0 = __VERIFIER_nondet_bool() [L765] 1 weak$$choice2 = __VERIFIER_nondet_bool() [L766] 1 x$flush_delayed = weak$$choice2 [L767] EXPR 1 \read(x) [L767] 1 x$mem_tmp = x [L768] 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) [L768] EXPR 1 \read(x) [L768] 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) [L768] 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) [L769] 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)) [L770] 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)) [L771] 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)) [L772] 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)) [L773] 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)) [L774] 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)) [L775] EXPR 1 \read(x) [L775] 1 __unbuffered_p0_EBX = x [L776] EXPR 1 x$flush_delayed ? x$mem_tmp : x [L776] EXPR 1 \read(x) [L776] EXPR 1 x$flush_delayed ? x$mem_tmp : x [L776] 1 x = x$flush_delayed ? x$mem_tmp : x [L777] 1 x$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=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, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, 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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L801] 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) [L801] 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) [L801] 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) [L802] 2 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$w_buff0_used [L803] 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 [L804] 2 x$r_buff0_thd2 = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$r_buff0_thd2 [L805] 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=0, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=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, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_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=1, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L808] 2 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=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, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, weak$$choice1=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_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=1, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L844] 3 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=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, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, 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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L782] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=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, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=1, 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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L866] 0 main$tmp_guard0 = __unbuffered_cnt == 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=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, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t2204=-2, t2205=-1, t2206=0, weak$$choice0=1, 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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L868] CALL 0 assume_abort_if_not(main$tmp_guard0) [L4] COND FALSE 0 !(!cond) [L868] RET 0 assume_abort_if_not(main$tmp_guard0) [L870] 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) [L870] EXPR 0 x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x [L870] EXPR 0 \read(x) [L870] EXPR 0 x$w_buff1_used && x$r_buff1_thd0 ? x$w_buff1 : x [L870] 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) [L870] 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) [L871] 0 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used [L872] 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 [L873] 0 x$r_buff0_thd0 = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0 [L874] 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}, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=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, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t2204=-2, t2205=-1, t2206=0, weak$$choice0=1, 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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L877] 0 weak$$choice1 = __VERIFIER_nondet_bool() [L878] EXPR 0 __unbuffered_p2_EAX$read_delayed ? (weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX) : __unbuffered_p2_EAX [L878] EXPR 0 weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX [L878] EXPR 0 weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX [L878] EXPR 0 __unbuffered_p2_EAX$read_delayed ? (weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX) : __unbuffered_p2_EAX [L878] 0 __unbuffered_p2_EAX = __unbuffered_p2_EAX$read_delayed ? (weak$$choice1 ? *__unbuffered_p2_EAX$read_delayed_var : __unbuffered_p2_EAX) : __unbuffered_p2_EAX [L879] 0 main$tmp_guard1 = !(__unbuffered_p0_EAX == 1 && __unbuffered_p0_EBX == 0 && __unbuffered_p2_EAX == 1) VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=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, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t2204=-2, t2205=-1, t2206=0, weak$$choice0=1, 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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] [L881] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L19] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=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, arg={0:0}, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, 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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, 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(expression)=0, __unbuffered_cnt=3, __unbuffered_p0_EAX=1, __unbuffered_p0_EBX=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, arg={0:0}, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, 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=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=1, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x={3:0}, y=1] - UnprovableResult [Line: 19]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: Not analyzed. - UnprovableResult [Line: 862]: 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: 860]: 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: 864]: 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, 6 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: 10.9s, OverallIterations: 8, TraceHistogramMax: 1, PathProgramHistogramMax: 4, EmptinessCheckTime: 0.0s, AutomataDifference: 3.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 402 SdHoareTripleChecker+Valid, 1.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 394 mSDsluCounter, 108 SdHoareTripleChecker+Invalid, 1.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 107 mSDsCounter, 28 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1510 IncrementalHoareTripleChecker+Invalid, 1538 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 28 mSolverCounterUnsat, 1 mSDtfsCounter, 1510 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 52 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 46 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 25 ImplicationChecksByTransitivity, 0.6s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=175occurred in iteration=7, InterpolantAutomatonStates: 43, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.6s SatisfiabilityAnalysisTime, 6.1s InterpolantComputationTime, 173 NumberOfCodeBlocks, 173 NumberOfCodeBlocksAsserted, 9 NumberOfCheckSat, 138 ConstructedInterpolants, 0 QuantifiedInterpolants, 1906 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 7 InterpolantComputations, 7 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available, ConComCheckerStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2025-03-13 21:34:53,345 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