./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/rfi001_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 735b3cc8 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/rfi001_power.opt_pso.opt_rmo.opt_tso.oepc_tso.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 4c09a669e55905e4420a018d9d131490861f4e5b62b0d12706f3ee95b5f0c90f --- Real Ultimate output --- This is Ultimate 0.3.0-?-735b3cc-m [2025-03-14 00:52:00,859 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-14 00:52:00,917 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-14 00:52:00,922 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-14 00:52:00,922 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-14 00:52:00,945 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-14 00:52:00,946 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-14 00:52:00,946 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-14 00:52:00,947 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-14 00:52:00,947 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-14 00:52:00,948 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-14 00:52:00,948 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-14 00:52:00,948 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-14 00:52:00,948 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-14 00:52:00,948 INFO L153 SettingsManager]: * Use SBE=true [2025-03-14 00:52:00,949 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-14 00:52:00,949 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-14 00:52:00,949 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-14 00:52:00,949 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-14 00:52:00,949 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-14 00:52:00,949 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-14 00:52:00,949 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-14 00:52:00,949 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-14 00:52:00,949 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-14 00:52:00,950 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-14 00:52:00,950 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-14 00:52:00,950 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-14 00:52:00,950 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-14 00:52:00,950 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-14 00:52:00,950 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-14 00:52:00,950 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-14 00:52:00,950 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-14 00:52:00,950 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-14 00:52:00,951 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-14 00:52:00,951 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-14 00:52:00,951 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-14 00:52:00,951 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-14 00:52:00,951 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-14 00:52:00,951 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-14 00:52:00,951 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-14 00:52:00,951 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-14 00:52:00,951 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-14 00:52:00,951 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-14 00:52:00,951 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 -> 4c09a669e55905e4420a018d9d131490861f4e5b62b0d12706f3ee95b5f0c90f [2025-03-14 00:52:01,185 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-14 00:52:01,191 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-14 00:52:01,193 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-14 00:52:01,193 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-14 00:52:01,194 INFO L274 PluginConnector]: CDTParser initialized [2025-03-14 00:52:01,194 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/rfi001_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i [2025-03-14 00:52:02,332 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5a3a8cdc3/b80b763ff6024725a4fffed6f4e176a7/FLAG7e502024f [2025-03-14 00:52:02,626 INFO L384 CDTParser]: Found 1 translation units. [2025-03-14 00:52:02,629 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/pthread-wmm/rfi001_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i [2025-03-14 00:52:02,644 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5a3a8cdc3/b80b763ff6024725a4fffed6f4e176a7/FLAG7e502024f [2025-03-14 00:52:02,925 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/5a3a8cdc3/b80b763ff6024725a4fffed6f4e176a7 [2025-03-14 00:52:02,927 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-14 00:52:02,929 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-14 00:52:02,932 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-14 00:52:02,932 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-14 00:52:02,936 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-14 00:52:02,936 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.03 12:52:02" (1/1) ... [2025-03-14 00:52:02,937 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@caa5209 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:02, skipping insertion in model container [2025-03-14 00:52:02,938 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.03 12:52:02" (1/1) ... [2025-03-14 00:52:02,978 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-14 00:52:03,115 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/rfi001_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i[983,996] [2025-03-14 00:52:03,239 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-14 00:52:03,247 INFO L200 MainTranslator]: Completed pre-run [2025-03-14 00:52:03,257 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/rfi001_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i[983,996] [2025-03-14 00:52:03,314 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-14 00:52:03,339 INFO L204 MainTranslator]: Completed translation [2025-03-14 00:52:03,341 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03 WrapperNode [2025-03-14 00:52:03,342 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-14 00:52:03,343 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-14 00:52:03,343 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-14 00:52:03,343 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-14 00:52:03,347 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (1/1) ... [2025-03-14 00:52:03,361 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (1/1) ... [2025-03-14 00:52:03,392 INFO L138 Inliner]: procedures = 174, calls = 37, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 130 [2025-03-14 00:52:03,395 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-14 00:52:03,396 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-14 00:52:03,396 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-14 00:52:03,396 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-14 00:52:03,404 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (1/1) ... [2025-03-14 00:52:03,404 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (1/1) ... [2025-03-14 00:52:03,406 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (1/1) ... [2025-03-14 00:52:03,425 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2025-03-14 00:52:03,427 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (1/1) ... [2025-03-14 00:52:03,427 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (1/1) ... [2025-03-14 00:52:03,431 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (1/1) ... [2025-03-14 00:52:03,433 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (1/1) ... [2025-03-14 00:52:03,434 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (1/1) ... [2025-03-14 00:52:03,434 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (1/1) ... [2025-03-14 00:52:03,436 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-14 00:52:03,440 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-14 00:52:03,440 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-14 00:52:03,440 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-14 00:52:03,441 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (1/1) ... [2025-03-14 00:52:03,448 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-14 00:52:03,458 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-14 00:52:03,471 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-14 00:52:03,476 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-14 00:52:03,493 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-03-14 00:52:03,493 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-14 00:52:03,493 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2025-03-14 00:52:03,493 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2025-03-14 00:52:03,493 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2025-03-14 00:52:03,493 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2025-03-14 00:52:03,494 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-14 00:52:03,494 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-03-14 00:52:03,494 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-14 00:52:03,494 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-14 00:52:03,495 WARN L225 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-03-14 00:52:03,611 INFO L256 CfgBuilder]: Building ICFG [2025-03-14 00:52:03,613 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-14 00:52:03,848 INFO L303 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-03-14 00:52:03,849 INFO L313 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-14 00:52:03,849 INFO L318 CfgBuilder]: Performing block encoding [2025-03-14 00:52:04,067 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-14 00:52:04,068 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 14.03 12:52:04 BoogieIcfgContainer [2025-03-14 00:52:04,068 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-14 00:52:04,070 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-14 00:52:04,070 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-14 00:52:04,073 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-14 00:52:04,073 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.03 12:52:02" (1/3) ... [2025-03-14 00:52:04,074 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@413b0867 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.03 12:52:04, skipping insertion in model container [2025-03-14 00:52:04,075 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.03 12:52:03" (2/3) ... [2025-03-14 00:52:04,075 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@413b0867 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.03 12:52:04, skipping insertion in model container [2025-03-14 00:52:04,075 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 14.03 12:52:04" (3/3) ... [2025-03-14 00:52:04,076 INFO L128 eAbstractionObserver]: Analyzing ICFG rfi001_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i [2025-03-14 00:52:04,087 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-14 00:52:04,089 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG rfi001_power.opt_pso.opt_rmo.opt_tso.oepc_tso.opt.i that has 3 procedures, 32 locations, 1 initial locations, 0 loop locations, and 2 error locations. [2025-03-14 00:52:04,089 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-03-14 00:52:04,124 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2025-03-14 00:52:04,154 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 38 places, 32 transitions, 72 flow [2025-03-14 00:52:04,180 INFO L124 PetriNetUnfolderBase]: 1/30 cut-off events. [2025-03-14 00:52:04,182 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-14 00:52:04,185 INFO L83 FinitePrefix]: Finished finitePrefix Result has 37 conditions, 30 events. 1/30 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 4. Compared 49 event pairs, 0 based on Foata normal form. 0/27 useless extension candidates. Maximal degree in co-relation 30. Up to 2 conditions per place. [2025-03-14 00:52:04,185 INFO L82 GeneralOperation]: Start removeDead. Operand has 38 places, 32 transitions, 72 flow [2025-03-14 00:52:04,187 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 36 places, 30 transitions, 66 flow [2025-03-14 00:52:04,193 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-14 00:52:04,206 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;@7b0df63d, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-14 00:52:04,206 INFO L334 AbstractCegarLoop]: Starting to check reachability of 5 error locations. [2025-03-14 00:52:04,210 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-03-14 00:52:04,211 INFO L124 PetriNetUnfolderBase]: 0/10 cut-off events. [2025-03-14 00:52:04,211 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-03-14 00:52:04,211 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:52:04,212 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1] [2025-03-14 00:52:04,212 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting P1Err0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:52:04,216 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:52:04,216 INFO L85 PathProgramCache]: Analyzing trace with hash 787247997, now seen corresponding path program 1 times [2025-03-14 00:52:04,221 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:52:04,224 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2142858482] [2025-03-14 00:52:04,224 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-14 00:52:04,224 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:52:04,313 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-03-14 00:52:04,342 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-03-14 00:52:04,343 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-14 00:52:04,343 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-14 00:52:04,598 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-14 00:52:04,599 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-14 00:52:04,599 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2142858482] [2025-03-14 00:52:04,599 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2142858482] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-14 00:52:04,599 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-14 00:52:04,599 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-03-14 00:52:04,601 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2077885817] [2025-03-14 00:52:04,601 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-14 00:52:04,605 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-03-14 00:52:04,608 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-14 00:52:04,624 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-03-14 00:52:04,624 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-03-14 00:52:04,626 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 32 [2025-03-14 00:52:04,627 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 36 places, 30 transitions, 66 flow. Second operand has 3 states, 3 states have (on average 8.666666666666666) internal successors, (26), 3 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-14 00:52:04,627 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-14 00:52:04,628 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 32 [2025-03-14 00:52:04,628 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-14 00:52:04,899 INFO L124 PetriNetUnfolderBase]: 619/1037 cut-off events. [2025-03-14 00:52:04,899 INFO L125 PetriNetUnfolderBase]: For 4/4 co-relation queries the response was YES. [2025-03-14 00:52:04,902 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2071 conditions, 1037 events. 619/1037 cut-off events. For 4/4 co-relation queries the response was YES. Maximal size of possible extension queue 53. Compared 4690 event pairs, 45 based on Foata normal form. 48/1076 useless extension candidates. Maximal degree in co-relation 2061. Up to 911 conditions per place. [2025-03-14 00:52:04,909 INFO L140 encePairwiseOnDemand]: 28/32 looper letters, 31 selfloop transitions, 2 changer transitions 2/40 dead transitions. [2025-03-14 00:52:04,909 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 37 places, 40 transitions, 156 flow [2025-03-14 00:52:04,911 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-03-14 00:52:04,912 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-03-14 00:52:04,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 59 transitions. [2025-03-14 00:52:04,919 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6145833333333334 [2025-03-14 00:52:04,920 INFO L175 Difference]: Start difference. First operand has 36 places, 30 transitions, 66 flow. Second operand 3 states and 59 transitions. [2025-03-14 00:52:04,920 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 37 places, 40 transitions, 156 flow [2025-03-14 00:52:04,925 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 35 places, 40 transitions, 154 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-14 00:52:04,927 INFO L231 Difference]: Finished difference. Result has 35 places, 27 transitions, 62 flow [2025-03-14 00:52:04,929 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=32, PETRI_DIFFERENCE_MINUEND_FLOW=60, PETRI_DIFFERENCE_MINUEND_PLACES=33, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=28, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=62, PETRI_PLACES=35, PETRI_TRANSITIONS=27} [2025-03-14 00:52:04,931 INFO L279 CegarLoopForPetriNet]: 36 programPoint places, -1 predicate places. [2025-03-14 00:52:04,932 INFO L471 AbstractCegarLoop]: Abstraction has has 35 places, 27 transitions, 62 flow [2025-03-14 00:52:04,932 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 8.666666666666666) internal successors, (26), 3 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-14 00:52:04,932 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:52:04,932 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-14 00:52:04,932 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-03-14 00:52:04,933 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:52:04,934 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:52:04,934 INFO L85 PathProgramCache]: Analyzing trace with hash -494509293, now seen corresponding path program 1 times [2025-03-14 00:52:04,934 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:52:04,935 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [578874100] [2025-03-14 00:52:04,935 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-14 00:52:04,935 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:52:04,955 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 12 statements into 1 equivalence classes. [2025-03-14 00:52:05,016 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 12 of 12 statements. [2025-03-14 00:52:05,018 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-14 00:52:05,018 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-14 00:52:05,235 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-14 00:52:05,236 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-14 00:52:05,236 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [578874100] [2025-03-14 00:52:05,236 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [578874100] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-14 00:52:05,236 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-14 00:52:05,236 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-03-14 00:52:05,236 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [810186665] [2025-03-14 00:52:05,236 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-14 00:52:05,237 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-03-14 00:52:05,238 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-14 00:52:05,239 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-03-14 00:52:05,239 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-03-14 00:52:05,239 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 32 [2025-03-14 00:52:05,239 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 35 places, 27 transitions, 62 flow. Second operand has 4 states, 4 states have (on average 9.5) internal successors, (38), 4 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-14 00:52:05,239 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-14 00:52:05,239 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 32 [2025-03-14 00:52:05,239 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-14 00:52:05,399 INFO L124 PetriNetUnfolderBase]: 355/707 cut-off events. [2025-03-14 00:52:05,400 INFO L125 PetriNetUnfolderBase]: For 28/28 co-relation queries the response was YES. [2025-03-14 00:52:05,402 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1385 conditions, 707 events. 355/707 cut-off events. For 28/28 co-relation queries the response was YES. Maximal size of possible extension queue 34. Compared 3327 event pairs, 103 based on Foata normal form. 48/728 useless extension candidates. Maximal degree in co-relation 1375. Up to 291 conditions per place. [2025-03-14 00:52:05,407 INFO L140 encePairwiseOnDemand]: 27/32 looper letters, 43 selfloop transitions, 4 changer transitions 1/53 dead transitions. [2025-03-14 00:52:05,408 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 37 places, 53 transitions, 216 flow [2025-03-14 00:52:05,408 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-03-14 00:52:05,408 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-03-14 00:52:05,409 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 78 transitions. [2025-03-14 00:52:05,409 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.609375 [2025-03-14 00:52:05,409 INFO L175 Difference]: Start difference. First operand has 35 places, 27 transitions, 62 flow. Second operand 4 states and 78 transitions. [2025-03-14 00:52:05,409 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 37 places, 53 transitions, 216 flow [2025-03-14 00:52:05,410 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 35 places, 53 transitions, 208 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-03-14 00:52:05,412 INFO L231 Difference]: Finished difference. Result has 37 places, 29 transitions, 84 flow [2025-03-14 00:52:05,413 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=32, PETRI_DIFFERENCE_MINUEND_FLOW=58, PETRI_DIFFERENCE_MINUEND_PLACES=32, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=27, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=23, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=84, PETRI_PLACES=37, PETRI_TRANSITIONS=29} [2025-03-14 00:52:05,413 INFO L279 CegarLoopForPetriNet]: 36 programPoint places, 1 predicate places. [2025-03-14 00:52:05,414 INFO L471 AbstractCegarLoop]: Abstraction has has 37 places, 29 transitions, 84 flow [2025-03-14 00:52:05,414 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 9.5) internal successors, (38), 4 states have internal predecessors, (38), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-14 00:52:05,414 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:52:05,414 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-03-14 00:52:05,414 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-14 00:52:05,414 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:52:05,415 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:52:05,415 INFO L85 PathProgramCache]: Analyzing trace with hash -562661336, now seen corresponding path program 1 times [2025-03-14 00:52:05,415 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:52:05,415 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1514719726] [2025-03-14 00:52:05,415 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-14 00:52:05,415 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:52:05,422 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 17 statements into 1 equivalence classes. [2025-03-14 00:52:05,479 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 17 of 17 statements. [2025-03-14 00:52:05,480 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-14 00:52:05,480 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-14 00:52:05,664 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-14 00:52:05,664 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-14 00:52:05,665 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1514719726] [2025-03-14 00:52:05,667 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1514719726] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-14 00:52:05,667 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-14 00:52:05,667 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-03-14 00:52:05,668 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [977822381] [2025-03-14 00:52:05,668 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-14 00:52:05,668 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-03-14 00:52:05,668 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-14 00:52:05,668 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-03-14 00:52:05,668 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-03-14 00:52:05,669 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 7 out of 32 [2025-03-14 00:52:05,669 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 37 places, 29 transitions, 84 flow. Second operand has 5 states, 5 states have (on average 9.8) internal successors, (49), 5 states have internal predecessors, (49), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-14 00:52:05,669 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-14 00:52:05,669 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 7 of 32 [2025-03-14 00:52:05,669 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-14 00:52:05,802 INFO L124 PetriNetUnfolderBase]: 177/345 cut-off events. [2025-03-14 00:52:05,802 INFO L125 PetriNetUnfolderBase]: For 80/80 co-relation queries the response was YES. [2025-03-14 00:52:05,803 INFO L83 FinitePrefix]: Finished finitePrefix Result has 807 conditions, 345 events. 177/345 cut-off events. For 80/80 co-relation queries the response was YES. Maximal size of possible extension queue 18. Compared 1193 event pairs, 69 based on Foata normal form. 24/362 useless extension candidates. Maximal degree in co-relation 795. Up to 146 conditions per place. [2025-03-14 00:52:05,805 INFO L140 encePairwiseOnDemand]: 27/32 looper letters, 34 selfloop transitions, 6 changer transitions 1/46 dead transitions. [2025-03-14 00:52:05,805 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 41 places, 46 transitions, 205 flow [2025-03-14 00:52:05,806 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-03-14 00:52:05,806 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-03-14 00:52:05,807 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2025-03-14 00:52:05,808 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.4875 [2025-03-14 00:52:05,808 INFO L175 Difference]: Start difference. First operand has 37 places, 29 transitions, 84 flow. Second operand 5 states and 78 transitions. [2025-03-14 00:52:05,808 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 41 places, 46 transitions, 205 flow [2025-03-14 00:52:05,809 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 39 places, 46 transitions, 196 flow, removed 1 selfloop flow, removed 2 redundant places. [2025-03-14 00:52:05,810 INFO L231 Difference]: Finished difference. Result has 41 places, 29 transitions, 100 flow [2025-03-14 00:52:05,810 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=32, PETRI_DIFFERENCE_MINUEND_FLOW=77, PETRI_DIFFERENCE_MINUEND_PLACES=35, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=29, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=6, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=23, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=100, PETRI_PLACES=41, PETRI_TRANSITIONS=29} [2025-03-14 00:52:05,810 INFO L279 CegarLoopForPetriNet]: 36 programPoint places, 5 predicate places. [2025-03-14 00:52:05,810 INFO L471 AbstractCegarLoop]: Abstraction has has 41 places, 29 transitions, 100 flow [2025-03-14 00:52:05,810 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 9.8) internal successors, (49), 5 states have internal predecessors, (49), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-03-14 00:52:05,810 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:52:05,812 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] [2025-03-14 00:52:05,812 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-03-14 00:52:05,812 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:52:05,814 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:52:05,814 INFO L85 PathProgramCache]: Analyzing trace with hash -1526630824, now seen corresponding path program 1 times [2025-03-14 00:52:05,814 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:52:05,814 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2084611992] [2025-03-14 00:52:05,814 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-14 00:52:05,814 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:52:05,828 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 24 statements into 1 equivalence classes. [2025-03-14 00:52:05,888 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 24 of 24 statements. [2025-03-14 00:52:05,889 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-14 00:52:05,889 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-14 00:52:06,509 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-14 00:52:06,510 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-14 00:52:06,510 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2084611992] [2025-03-14 00:52:06,510 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2084611992] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-14 00:52:06,511 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-14 00:52:06,511 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2025-03-14 00:52:06,511 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [30969638] [2025-03-14 00:52:06,511 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-14 00:52:06,512 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2025-03-14 00:52:06,512 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-14 00:52:06,512 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2025-03-14 00:52:06,513 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2025-03-14 00:52:06,522 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 32 [2025-03-14 00:52:06,523 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 41 places, 29 transitions, 100 flow. Second operand has 7 states, 7 states have (on average 9.0) internal successors, (63), 7 states have internal predecessors, (63), 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-14 00:52:06,523 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-14 00:52:06,523 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 32 [2025-03-14 00:52:06,523 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-14 00:52:06,810 INFO L124 PetriNetUnfolderBase]: 213/420 cut-off events. [2025-03-14 00:52:06,810 INFO L125 PetriNetUnfolderBase]: For 220/220 co-relation queries the response was YES. [2025-03-14 00:52:06,811 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1032 conditions, 420 events. 213/420 cut-off events. For 220/220 co-relation queries the response was YES. Maximal size of possible extension queue 19. Compared 1479 event pairs, 46 based on Foata normal form. 4/423 useless extension candidates. Maximal degree in co-relation 1018. Up to 234 conditions per place. [2025-03-14 00:52:06,812 INFO L140 encePairwiseOnDemand]: 24/32 looper letters, 27 selfloop transitions, 3 changer transitions 32/66 dead transitions. [2025-03-14 00:52:06,812 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 48 places, 66 transitions, 342 flow [2025-03-14 00:52:06,812 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2025-03-14 00:52:06,812 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2025-03-14 00:52:06,814 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 107 transitions. [2025-03-14 00:52:06,814 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.41796875 [2025-03-14 00:52:06,815 INFO L175 Difference]: Start difference. First operand has 41 places, 29 transitions, 100 flow. Second operand 8 states and 107 transitions. [2025-03-14 00:52:06,815 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 48 places, 66 transitions, 342 flow [2025-03-14 00:52:06,817 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 42 places, 66 transitions, 285 flow, removed 10 selfloop flow, removed 6 redundant places. [2025-03-14 00:52:06,819 INFO L231 Difference]: Finished difference. Result has 47 places, 29 transitions, 89 flow [2025-03-14 00:52:06,819 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=32, PETRI_DIFFERENCE_MINUEND_FLOW=72, PETRI_DIFFERENCE_MINUEND_PLACES=35, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=29, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=26, PETRI_DIFFERENCE_SUBTRAHEND_STATES=8, PETRI_FLOW=89, PETRI_PLACES=47, PETRI_TRANSITIONS=29} [2025-03-14 00:52:06,820 INFO L279 CegarLoopForPetriNet]: 36 programPoint places, 11 predicate places. [2025-03-14 00:52:06,820 INFO L471 AbstractCegarLoop]: Abstraction has has 47 places, 29 transitions, 89 flow [2025-03-14 00:52:06,820 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 9.0) internal successors, (63), 7 states have internal predecessors, (63), 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-14 00:52:06,820 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:52:06,820 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] [2025-03-14 00:52:06,821 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-03-14 00:52:06,821 INFO L396 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:52:06,821 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:52:06,822 INFO L85 PathProgramCache]: Analyzing trace with hash 1283925610, now seen corresponding path program 2 times [2025-03-14 00:52:06,822 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:52:06,822 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [802390597] [2025-03-14 00:52:06,822 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-03-14 00:52:06,822 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:52:06,835 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 24 statements into 1 equivalence classes. [2025-03-14 00:52:06,893 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 24 of 24 statements. [2025-03-14 00:52:06,894 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-03-14 00:52:06,894 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-14 00:52:08,339 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-14 00:52:08,339 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-14 00:52:08,339 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [802390597] [2025-03-14 00:52:08,339 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [802390597] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-14 00:52:08,339 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-14 00:52:08,339 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2025-03-14 00:52:08,339 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1908032075] [2025-03-14 00:52:08,339 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-14 00:52:08,339 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2025-03-14 00:52:08,340 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-14 00:52:08,341 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2025-03-14 00:52:08,341 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2025-03-14 00:52:08,353 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 6 out of 32 [2025-03-14 00:52:08,353 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 47 places, 29 transitions, 89 flow. Second operand has 10 states, 10 states have (on average 8.1) internal successors, (81), 10 states have internal predecessors, (81), 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-14 00:52:08,353 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-03-14 00:52:08,353 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 6 of 32 [2025-03-14 00:52:08,353 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-03-14 00:52:08,648 INFO L124 PetriNetUnfolderBase]: 160/339 cut-off events. [2025-03-14 00:52:08,648 INFO L125 PetriNetUnfolderBase]: For 60/60 co-relation queries the response was YES. [2025-03-14 00:52:08,649 INFO L83 FinitePrefix]: Finished finitePrefix Result has 780 conditions, 339 events. 160/339 cut-off events. For 60/60 co-relation queries the response was YES. Maximal size of possible extension queue 16. Compared 1188 event pairs, 28 based on Foata normal form. 4/342 useless extension candidates. Maximal degree in co-relation 764. Up to 126 conditions per place. [2025-03-14 00:52:08,650 INFO L140 encePairwiseOnDemand]: 24/32 looper letters, 26 selfloop transitions, 5 changer transitions 25/60 dead transitions. [2025-03-14 00:52:08,650 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 51 places, 60 transitions, 292 flow [2025-03-14 00:52:08,650 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2025-03-14 00:52:08,650 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 9 states. [2025-03-14 00:52:08,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 107 transitions. [2025-03-14 00:52:08,651 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.3715277777777778 [2025-03-14 00:52:08,651 INFO L175 Difference]: Start difference. First operand has 47 places, 29 transitions, 89 flow. Second operand 9 states and 107 transitions. [2025-03-14 00:52:08,651 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 51 places, 60 transitions, 292 flow [2025-03-14 00:52:08,652 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 46 places, 60 transitions, 272 flow, removed 9 selfloop flow, removed 5 redundant places. [2025-03-14 00:52:08,653 INFO L231 Difference]: Finished difference. Result has 49 places, 29 transitions, 95 flow [2025-03-14 00:52:08,653 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=32, PETRI_DIFFERENCE_MINUEND_FLOW=79, PETRI_DIFFERENCE_MINUEND_PLACES=38, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=29, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=24, PETRI_DIFFERENCE_SUBTRAHEND_STATES=9, PETRI_FLOW=95, PETRI_PLACES=49, PETRI_TRANSITIONS=29} [2025-03-14 00:52:08,653 INFO L279 CegarLoopForPetriNet]: 36 programPoint places, 13 predicate places. [2025-03-14 00:52:08,653 INFO L471 AbstractCegarLoop]: Abstraction has has 49 places, 29 transitions, 95 flow [2025-03-14 00:52:08,654 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 8.1) internal successors, (81), 10 states have internal predecessors, (81), 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-14 00:52:08,654 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-03-14 00:52:08,654 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] [2025-03-14 00:52:08,654 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-03-14 00:52:08,654 INFO L396 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [P1Err0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION, ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (and 2 more)] === [2025-03-14 00:52:08,655 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-14 00:52:08,655 INFO L85 PathProgramCache]: Analyzing trace with hash 856241858, now seen corresponding path program 3 times [2025-03-14 00:52:08,655 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-14 00:52:08,655 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1479364113] [2025-03-14 00:52:08,656 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2025-03-14 00:52:08,656 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-14 00:52:08,663 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 partitioned 24 statements into 1 equivalence classes. [2025-03-14 00:52:08,692 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) and asserted 24 of 24 statements. [2025-03-14 00:52:08,692 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST2 issued 1 check-sat command(s) [2025-03-14 00:52:08,692 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-14 00:52:08,692 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-14 00:52:08,699 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 24 statements into 1 equivalence classes. [2025-03-14 00:52:08,740 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 24 of 24 statements. [2025-03-14 00:52:08,741 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-14 00:52:08,741 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-14 00:52:08,767 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-14 00:52:08,767 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-14 00:52:08,768 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (4 of 5 remaining) [2025-03-14 00:52:08,769 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (3 of 5 remaining) [2025-03-14 00:52:08,769 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 5 remaining) [2025-03-14 00:52:08,769 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 5 remaining) [2025-03-14 00:52:08,769 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 5 remaining) [2025-03-14 00:52:08,770 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2025-03-14 00:52:08,770 INFO L422 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1] [2025-03-14 00:52:08,821 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-03-14 00:52:08,822 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-14 00:52:08,827 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.03 12:52:08 BasicIcfg [2025-03-14 00:52:08,827 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-14 00:52:08,828 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-14 00:52:08,828 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-14 00:52:08,828 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-14 00:52:08,829 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 14.03 12:52:04" (3/4) ... [2025-03-14 00:52:08,830 INFO L140 WitnessPrinter]: Generating witness for reachability counterexample [2025-03-14 00:52:08,909 INFO L127 tionWitnessGenerator]: Generated YAML witness of length 9. [2025-03-14 00:52:08,950 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-03-14 00:52:08,951 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.yml [2025-03-14 00:52:08,951 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-14 00:52:08,952 INFO L158 Benchmark]: Toolchain (without parser) took 6022.81ms. Allocated memory was 167.8MB in the beginning and 268.4MB in the end (delta: 100.7MB). Free memory was 120.5MB in the beginning and 135.1MB in the end (delta: -14.5MB). Peak memory consumption was 88.4MB. Max. memory is 16.1GB. [2025-03-14 00:52:08,952 INFO L158 Benchmark]: CDTParser took 0.20ms. Allocated memory is still 201.3MB. Free memory is still 119.5MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-14 00:52:08,952 INFO L158 Benchmark]: CACSL2BoogieTranslator took 410.69ms. Allocated memory is still 167.8MB. Free memory was 120.1MB in the beginning and 97.0MB in the end (delta: 23.1MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-14 00:52:08,953 INFO L158 Benchmark]: Boogie Procedure Inliner took 52.61ms. Allocated memory is still 167.8MB. Free memory was 97.0MB in the beginning and 94.7MB in the end (delta: 2.4MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-14 00:52:08,954 INFO L158 Benchmark]: Boogie Preprocessor took 40.98ms. Allocated memory is still 167.8MB. Free memory was 94.7MB in the beginning and 91.8MB in the end (delta: 2.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-03-14 00:52:08,954 INFO L158 Benchmark]: IcfgBuilder took 628.13ms. Allocated memory is still 167.8MB. Free memory was 91.8MB in the beginning and 114.3MB in the end (delta: -22.5MB). Peak memory consumption was 65.0MB. Max. memory is 16.1GB. [2025-03-14 00:52:08,954 INFO L158 Benchmark]: TraceAbstraction took 4757.78ms. Allocated memory was 167.8MB in the beginning and 268.4MB in the end (delta: 100.7MB). Free memory was 114.3MB in the beginning and 148.9MB in the end (delta: -34.6MB). Peak memory consumption was 65.3MB. Max. memory is 16.1GB. [2025-03-14 00:52:08,955 INFO L158 Benchmark]: Witness Printer took 122.99ms. Allocated memory is still 268.4MB. Free memory was 148.9MB in the beginning and 135.1MB in the end (delta: 13.8MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-14 00:52:08,956 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.20ms. Allocated memory is still 201.3MB. Free memory is still 119.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 410.69ms. Allocated memory is still 167.8MB. Free memory was 120.1MB in the beginning and 97.0MB in the end (delta: 23.1MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 52.61ms. Allocated memory is still 167.8MB. Free memory was 97.0MB in the beginning and 94.7MB in the end (delta: 2.4MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 40.98ms. Allocated memory is still 167.8MB. Free memory was 94.7MB in the beginning and 91.8MB in the end (delta: 2.8MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * IcfgBuilder took 628.13ms. Allocated memory is still 167.8MB. Free memory was 91.8MB in the beginning and 114.3MB in the end (delta: -22.5MB). Peak memory consumption was 65.0MB. Max. memory is 16.1GB. * TraceAbstraction took 4757.78ms. Allocated memory was 167.8MB in the beginning and 268.4MB in the end (delta: 100.7MB). Free memory was 114.3MB in the beginning and 148.9MB in the end (delta: -34.6MB). Peak memory consumption was 65.3MB. Max. memory is 16.1GB. * Witness Printer took 122.99ms. Allocated memory is still 268.4MB. Free memory was 148.9MB in the beginning and 135.1MB in the end (delta: 13.8MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 18]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L708] 0 int __unbuffered_cnt = 0; [L710] 0 int __unbuffered_p1_EAX = 0; [L712] 0 int __unbuffered_p1_EBX = 0; [L713] 0 _Bool main$tmp_guard0; [L714] 0 _Bool main$tmp_guard1; [L716] 0 int x = 0; [L718] 0 int y = 0; [L719] 0 _Bool y$flush_delayed; [L720] 0 int y$mem_tmp; [L721] 0 _Bool y$r_buff0_thd0; [L722] 0 _Bool y$r_buff0_thd1; [L723] 0 _Bool y$r_buff0_thd2; [L724] 0 _Bool y$r_buff1_thd0; [L725] 0 _Bool y$r_buff1_thd1; [L726] 0 _Bool y$r_buff1_thd2; [L727] 0 _Bool y$read_delayed; [L728] 0 int *y$read_delayed_var; [L729] 0 int y$w_buff0; [L730] 0 _Bool y$w_buff0_used; [L731] 0 int y$w_buff1; [L732] 0 _Bool y$w_buff1_used; [L734] 0 int z = 0; [L735] 0 _Bool weak$$choice0; [L736] 0 _Bool weak$$choice2; [L802] 0 pthread_t t1603; [L803] FCALL, FORK 0 pthread_create(&t1603, ((void *)0), P0, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, main$tmp_guard0=0, main$tmp_guard1=0, t1603=-2, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=0, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=0, z=0] [L804] 0 pthread_t t1604; [L805] FCALL, FORK 0 pthread_create(&t1604, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, t1603=-2, t1604=-1, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=0, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=0, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=0, z=0] [L760] 2 y$w_buff1 = y$w_buff0 [L761] 2 y$w_buff0 = 2 [L762] 2 y$w_buff1_used = y$w_buff0_used [L763] 2 y$w_buff0_used = (_Bool)1 [L764] CALL 2 __VERIFIER_assert(!(y$w_buff1_used && y$w_buff0_used)) [L18] COND FALSE 2 !(!expression) [L764] RET 2 __VERIFIER_assert(!(y$w_buff1_used && y$w_buff0_used)) [L765] 2 y$r_buff1_thd0 = y$r_buff0_thd0 [L766] 2 y$r_buff1_thd1 = y$r_buff0_thd1 [L767] 2 y$r_buff1_thd2 = y$r_buff0_thd2 [L768] 2 y$r_buff0_thd2 = (_Bool)1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=0] [L771] 2 z = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=0, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=1] [L774] 2 __unbuffered_p1_EAX = z VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=1] [L777] 2 __unbuffered_p1_EBX = x VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=0, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=1] [L740] 1 x = 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=0, z=1] [L743] 1 y = 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=1, z=1] [L746] 1 y = y$w_buff0_used && y$r_buff0_thd1 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd1 ? y$w_buff1 : y) [L747] 1 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd1 ? (_Bool)0 : y$w_buff0_used [L748] 1 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd1 || y$w_buff1_used && y$r_buff1_thd1 ? (_Bool)0 : y$w_buff1_used [L749] 1 y$r_buff0_thd1 = y$w_buff0_used && y$r_buff0_thd1 ? (_Bool)0 : y$r_buff0_thd1 [L750] 1 y$r_buff1_thd1 = y$w_buff0_used && y$r_buff0_thd1 || y$w_buff1_used && y$r_buff1_thd1 ? (_Bool)0 : y$r_buff1_thd1 VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=1, z=1] [L753] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=1, y$w_buff1=0, y$w_buff1_used=0, y=1, z=1] [L780] 2 y = y$w_buff0_used && y$r_buff0_thd2 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd2 ? y$w_buff1 : y) [L781] 2 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$w_buff0_used [L782] 2 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd2 || y$w_buff1_used && y$r_buff1_thd2 ? (_Bool)0 : y$w_buff1_used [L783] 2 y$r_buff0_thd2 = y$w_buff0_used && y$r_buff0_thd2 ? (_Bool)0 : y$r_buff0_thd2 [L784] 2 y$r_buff1_thd2 = y$w_buff0_used && y$r_buff0_thd2 || y$w_buff1_used && y$r_buff1_thd2 ? (_Bool)0 : y$r_buff1_thd2 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2, z=1] [L787] 2 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2, z=1] [L807] 0 main$tmp_guard0 = __unbuffered_cnt == 2 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1603=-2, t1604=-1, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2, z=1] [L809] CALL 0 assume_abort_if_not(main$tmp_guard0) [L3] COND FALSE 0 !(!cond) [L809] RET 0 assume_abort_if_not(main$tmp_guard0) [L811] 0 y = y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : (y$w_buff1_used && y$r_buff1_thd0 ? y$w_buff1 : y) [L812] 0 y$w_buff0_used = y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$w_buff0_used [L813] 0 y$w_buff1_used = y$w_buff0_used && y$r_buff0_thd0 || y$w_buff1_used && y$r_buff1_thd0 ? (_Bool)0 : y$w_buff1_used [L814] 0 y$r_buff0_thd0 = y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$r_buff0_thd0 [L815] 0 y$r_buff1_thd0 = y$w_buff0_used && y$r_buff0_thd0 || y$w_buff1_used && y$r_buff1_thd0 ? (_Bool)0 : y$r_buff1_thd0 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1603=-2, t1604=-1, weak$$choice0=0, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=0, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2, z=1] [L818] 0 weak$$choice0 = __VERIFIER_nondet_bool() [L819] 0 weak$$choice2 = __VERIFIER_nondet_bool() [L820] 0 y$flush_delayed = weak$$choice2 [L821] 0 y$mem_tmp = y [L822] 0 y = !y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : y$w_buff1) [L823] 0 y$w_buff0 = weak$$choice2 ? y$w_buff0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff0 : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff0 : y$w_buff0)) [L824] 0 y$w_buff1 = weak$$choice2 ? y$w_buff1 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff1 : (y$w_buff0_used && y$r_buff0_thd0 ? y$w_buff1 : y$w_buff1)) [L825] 0 y$w_buff0_used = weak$$choice2 ? y$w_buff0_used : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff0_used : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$w_buff0_used)) [L826] 0 y$w_buff1_used = weak$$choice2 ? y$w_buff1_used : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$w_buff1_used : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L827] 0 y$r_buff0_thd0 = weak$$choice2 ? y$r_buff0_thd0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$r_buff0_thd0 : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : y$r_buff0_thd0)) [L828] 0 y$r_buff1_thd0 = weak$$choice2 ? y$r_buff1_thd0 : (!y$w_buff0_used || !y$r_buff0_thd0 && !y$w_buff1_used || !y$r_buff0_thd0 && !y$r_buff1_thd0 ? y$r_buff1_thd0 : (y$w_buff0_used && y$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L829] 0 main$tmp_guard1 = !(y == 2 && __unbuffered_p1_EAX == 1 && __unbuffered_p1_EBX == 0) [L830] 0 y = y$flush_delayed ? y$mem_tmp : y [L831] 0 y$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1603=-2, t1604=-1, weak$$choice0=1, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=2, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2, z=1] [L833] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L18] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=2, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2, z=1] [L18] 0 reach_error() VAL [\old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=2, __unbuffered_p1_EAX=1, __unbuffered_p1_EBX=0, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x=1, y$flush_delayed=0, y$mem_tmp=2, y$r_buff0_thd0=0, y$r_buff0_thd1=0, y$r_buff0_thd2=1, y$r_buff1_thd0=0, y$r_buff1_thd1=0, y$r_buff1_thd2=0, y$read_delayed=0, y$read_delayed_var={0:0}, y$w_buff0=2, y$w_buff0_used=0, y$w_buff1=0, y$w_buff1_used=0, y=2, z=1] - UnprovableResult [Line: 18]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: Not analyzed. - UnprovableResult [Line: 805]: 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: 803]: Unable to prove that petrification did provide enough thread instances (tool internal message) Unable to prove that petrification did provide enough thread instances (tool internal message) Reason: Not analyzed. - StatisticsResult: Ultimate Automizer benchmark data with 1 thread instances CFG has 5 procedures, 51 locations, 5 error locations. Started 1 CEGAR loops. EmptinessCheckTime: 0.0s, RemoveRedundantFlowTime: 0.0s, RemoveRedundantFlowUnfoldingTime: 0.0s, BackfoldingTime: 0.0s, BackfoldingUnfoldingTime: 0.0s, FlowIncreaseByBackfolding: 0, BasicCegarLoop: OverallTime: 4.6s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 1.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 228 SdHoareTripleChecker+Valid, 0.6s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 223 mSDsluCounter, 49 SdHoareTripleChecker+Invalid, 0.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 49 mSDsCounter, 29 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 559 IncrementalHoareTripleChecker+Invalid, 588 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 29 mSolverCounterUnsat, 0 mSDtfsCounter, 559 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 35 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=100occurred in iteration=3, InterpolantAutomatonStates: 29, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 2.7s InterpolantComputationTime, 107 NumberOfCodeBlocks, 107 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 78 ConstructedInterpolants, 0 QuantifiedInterpolants, 700 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 5 InterpolantComputations, 5 PerfectInterpolantSequences, 0/0 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available, ConComCheckerStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2025-03-14 00:52:08,974 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