./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/pthread-wmm/safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 551b0097 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/pthread-wmm/safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/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 a843579fcb7bb5d5833d499f834986a668bfbdfa4c59a86e5d344f532fcebd9f --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 16:29:21,207 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 16:29:21,264 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-01-09 16:29:21,268 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 16:29:21,271 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 16:29:21,287 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 16:29:21,287 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 16:29:21,288 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 16:29:21,288 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 16:29:21,288 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 16:29:21,288 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 16:29:21,288 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 16:29:21,288 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 16:29:21,288 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 16:29:21,288 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 16:29:21,289 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 16:29:21,289 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 16:29:21,289 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 16:29:21,289 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-09 16:29:21,289 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 16:29:21,290 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 16:29:21,290 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 16:29:21,290 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 16:29:21,290 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 16:29:21,290 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 16:29:21,290 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 16:29:21,290 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 16:29:21,290 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 16:29:21,290 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 16:29:21,290 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 16:29:21,291 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 16:29:21,291 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 16:29:21,291 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 16:29:21,291 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 16:29:21,291 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 16:29:21,291 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 16:29:21,291 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 16:29:21,291 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 16:29:21,291 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 16:29:21,291 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 16:29:21,291 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 16:29:21,292 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 16:29:21,292 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-09 16:29:21,292 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-01-09 16:29:21,292 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 16:29:21,292 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 16:29:21,292 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 16:29:21,292 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 16:29:21,292 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-jdk21/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 -> a843579fcb7bb5d5833d499f834986a668bfbdfa4c59a86e5d344f532fcebd9f [2025-01-09 16:29:21,538 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 16:29:21,547 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 16:29:21,550 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 16:29:21,552 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 16:29:21,552 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 16:29:21,553 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/pthread-wmm/safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i [2025-01-09 16:29:22,738 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/267a8d2cf/6fe162207d7246e48360c4ab2406fb50/FLAG2c7c6448c [2025-01-09 16:29:23,045 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 16:29:23,046 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i [2025-01-09 16:29:23,061 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/267a8d2cf/6fe162207d7246e48360c4ab2406fb50/FLAG2c7c6448c [2025-01-09 16:29:23,074 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/267a8d2cf/6fe162207d7246e48360c4ab2406fb50 [2025-01-09 16:29:23,077 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 16:29:23,078 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 16:29:23,079 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 16:29:23,079 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 16:29:23,082 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 16:29:23,082 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,083 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@45d21bd1 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23, skipping insertion in model container [2025-01-09 16:29:23,083 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,112 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 16:29:23,243 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i[976,989] [2025-01-09 16:29:23,355 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 16:29:23,363 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 16:29:23,371 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/pthread-wmm/safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i[976,989] [2025-01-09 16:29:23,400 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 16:29:23,425 INFO L204 MainTranslator]: Completed translation [2025-01-09 16:29:23,428 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23 WrapperNode [2025-01-09 16:29:23,428 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 16:29:23,429 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 16:29:23,429 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 16:29:23,429 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 16:29:23,435 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,451 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,471 INFO L138 Inliner]: procedures = 175, calls = 42, calls flagged for inlining = 5, calls inlined = 5, statements flattened = 133 [2025-01-09 16:29:23,471 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 16:29:23,473 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 16:29:23,473 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 16:29:23,473 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 16:29:23,481 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,482 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,485 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,498 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-01-09 16:29:23,498 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,499 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,506 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,507 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,508 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,513 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,514 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,516 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 16:29:23,517 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 16:29:23,517 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 16:29:23,517 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 16:29:23,521 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (1/1) ... [2025-01-09 16:29:23,529 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 16:29:23,540 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 16:29:23,550 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-01-09 16:29:23,552 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-01-09 16:29:23,569 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_begin [2025-01-09 16:29:23,569 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 16:29:23,569 INFO L130 BoogieDeclarations]: Found specification of procedure P0 [2025-01-09 16:29:23,569 INFO L138 BoogieDeclarations]: Found implementation of procedure P0 [2025-01-09 16:29:23,569 INFO L130 BoogieDeclarations]: Found specification of procedure P1 [2025-01-09 16:29:23,570 INFO L138 BoogieDeclarations]: Found implementation of procedure P1 [2025-01-09 16:29:23,570 INFO L130 BoogieDeclarations]: Found specification of procedure P2 [2025-01-09 16:29:23,570 INFO L138 BoogieDeclarations]: Found implementation of procedure P2 [2025-01-09 16:29:23,570 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-09 16:29:23,570 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_atomic_end [2025-01-09 16:29:23,570 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 16:29:23,570 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 16:29:23,571 WARN L203 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-01-09 16:29:23,676 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 16:29:23,678 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 16:29:23,937 INFO L279 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-01-09 16:29:23,937 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 16:29:24,094 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 16:29:24,094 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-01-09 16:29:24,095 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 04:29:24 BoogieIcfgContainer [2025-01-09 16:29:24,095 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 16:29:24,097 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 16:29:24,097 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 16:29:24,100 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 16:29:24,100 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 04:29:23" (1/3) ... [2025-01-09 16:29:24,101 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@650c6273 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 04:29:24, skipping insertion in model container [2025-01-09 16:29:24,101 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 04:29:23" (2/3) ... [2025-01-09 16:29:24,101 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@650c6273 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 04:29:24, skipping insertion in model container [2025-01-09 16:29:24,102 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 04:29:24" (3/3) ... [2025-01-09 16:29:24,102 INFO L128 eAbstractionObserver]: Analyzing ICFG safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i [2025-01-09 16:29:24,112 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 16:29:24,113 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG safe001_power.opt_pso.oepc_pso.opt_rmo.opt.i that has 4 procedures, 39 locations, 1 initial locations, 0 loop locations, and 2 error locations. [2025-01-09 16:29:24,113 INFO L491 ceAbstractionStarter]: Constructing petrified ICFG for 1 thread instances. [2025-01-09 16:29:24,173 INFO L143 ThreadInstanceAdder]: Constructed 0 joinOtherThreadTransitions. [2025-01-09 16:29:24,199 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 48 places, 39 transitions, 90 flow [2025-01-09 16:29:24,225 INFO L124 PetriNetUnfolderBase]: 1/36 cut-off events. [2025-01-09 16:29:24,227 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-01-09 16:29:24,229 INFO L83 FinitePrefix]: Finished finitePrefix Result has 46 conditions, 36 events. 1/36 cut-off events. For 0/0 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 69 event pairs, 0 based on Foata normal form. 0/33 useless extension candidates. Maximal degree in co-relation 38. Up to 2 conditions per place. [2025-01-09 16:29:24,230 INFO L82 GeneralOperation]: Start removeDead. Operand has 48 places, 39 transitions, 90 flow [2025-01-09 16:29:24,232 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 45 places, 36 transitions, 81 flow [2025-01-09 16:29:24,240 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 16:29:24,251 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;@17b86b2d, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 16:29:24,252 INFO L334 AbstractCegarLoop]: Starting to check reachability of 6 error locations. [2025-01-09 16:29:24,256 INFO L185 PetriNetUnfolderBase]: Found word, exiting Unfolder. [2025-01-09 16:29:24,258 INFO L124 PetriNetUnfolderBase]: 0/10 cut-off events. [2025-01-09 16:29:24,258 INFO L125 PetriNetUnfolderBase]: For 0/0 co-relation queries the response was YES. [2025-01-09 16:29:24,258 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:29:24,258 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1] [2025-01-09 16:29:24,258 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-01-09 16:29:24,262 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:29:24,262 INFO L85 PathProgramCache]: Analyzing trace with hash 1906582196, now seen corresponding path program 1 times [2025-01-09 16:29:24,267 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:29:24,269 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1000119838] [2025-01-09 16:29:24,270 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:29:24,270 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:29:24,334 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-01-09 16:29:24,368 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-01-09 16:29:24,368 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:29:24,369 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:29:24,639 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:29:24,639 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:29:24,640 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1000119838] [2025-01-09 16:29:24,640 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1000119838] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:29:24,640 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:29:24,640 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [1] imperfect sequences [] total 1 [2025-01-09 16:29:24,641 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [477167041] [2025-01-09 16:29:24,642 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:29:24,650 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-01-09 16:29:24,652 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:29:24,679 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-01-09 16:29:24,680 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-01-09 16:29:24,681 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 18 out of 39 [2025-01-09 16:29:24,682 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 45 places, 36 transitions, 81 flow. Second operand has 3 states, 3 states have (on average 19.666666666666668) internal successors, (59), 3 states have internal predecessors, (59), 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-01-09 16:29:24,682 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:29:24,683 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 18 of 39 [2025-01-09 16:29:24,683 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:29:24,969 INFO L124 PetriNetUnfolderBase]: 528/983 cut-off events. [2025-01-09 16:29:24,970 INFO L125 PetriNetUnfolderBase]: For 9/9 co-relation queries the response was YES. [2025-01-09 16:29:24,973 INFO L83 FinitePrefix]: Finished finitePrefix Result has 1831 conditions, 983 events. 528/983 cut-off events. For 9/9 co-relation queries the response was YES. Maximal size of possible extension queue 77. Compared 5745 event pairs, 168 based on Foata normal form. 36/998 useless extension candidates. Maximal degree in co-relation 1820. Up to 652 conditions per place. [2025-01-09 16:29:24,977 INFO L140 encePairwiseOnDemand]: 35/39 looper letters, 27 selfloop transitions, 2 changer transitions 2/46 dead transitions. [2025-01-09 16:29:24,978 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 46 places, 46 transitions, 166 flow [2025-01-09 16:29:24,979 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-01-09 16:29:24,980 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2025-01-09 16:29:24,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 88 transitions. [2025-01-09 16:29:24,988 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.7521367521367521 [2025-01-09 16:29:24,989 INFO L175 Difference]: Start difference. First operand has 45 places, 36 transitions, 81 flow. Second operand 3 states and 88 transitions. [2025-01-09 16:29:24,991 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 46 places, 46 transitions, 166 flow [2025-01-09 16:29:24,993 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 43 places, 46 transitions, 162 flow, removed 0 selfloop flow, removed 3 redundant places. [2025-01-09 16:29:24,995 INFO L231 Difference]: Finished difference. Result has 43 places, 33 transitions, 76 flow [2025-01-09 16:29:24,996 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=74, PETRI_DIFFERENCE_MINUEND_PLACES=41, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=34, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=2, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=32, PETRI_DIFFERENCE_SUBTRAHEND_STATES=3, PETRI_FLOW=76, PETRI_PLACES=43, PETRI_TRANSITIONS=33} [2025-01-09 16:29:25,000 INFO L279 CegarLoopForPetriNet]: 45 programPoint places, -2 predicate places. [2025-01-09 16:29:25,000 INFO L471 AbstractCegarLoop]: Abstraction has has 43 places, 33 transitions, 76 flow [2025-01-09 16:29:25,000 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 19.666666666666668) internal successors, (59), 3 states have internal predecessors, (59), 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-01-09 16:29:25,001 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:29:25,001 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:29:25,001 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-01-09 16:29:25,001 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-01-09 16:29:25,002 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:29:25,002 INFO L85 PathProgramCache]: Analyzing trace with hash -103316819, now seen corresponding path program 1 times [2025-01-09 16:29:25,002 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:29:25,002 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [538867859] [2025-01-09 16:29:25,002 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:29:25,002 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:29:25,014 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 14 statements into 1 equivalence classes. [2025-01-09 16:29:25,081 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 14 of 14 statements. [2025-01-09 16:29:25,082 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:29:25,082 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:29:25,302 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:29:25,302 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:29:25,303 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [538867859] [2025-01-09 16:29:25,303 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [538867859] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:29:25,303 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:29:25,303 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-01-09 16:29:25,303 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [804254504] [2025-01-09 16:29:25,303 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:29:25,304 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2025-01-09 16:29:25,305 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:29:25,305 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2025-01-09 16:29:25,305 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2025-01-09 16:29:25,314 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 14 out of 39 [2025-01-09 16:29:25,315 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 43 places, 33 transitions, 76 flow. Second operand has 4 states, 4 states have (on average 17.0) internal successors, (68), 4 states have internal predecessors, (68), 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-01-09 16:29:25,315 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:29:25,315 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 14 of 39 [2025-01-09 16:29:25,315 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:29:25,686 INFO L124 PetriNetUnfolderBase]: 1213/2071 cut-off events. [2025-01-09 16:29:25,687 INFO L125 PetriNetUnfolderBase]: For 116/116 co-relation queries the response was YES. [2025-01-09 16:29:25,691 INFO L83 FinitePrefix]: Finished finitePrefix Result has 4083 conditions, 2071 events. 1213/2071 cut-off events. For 116/116 co-relation queries the response was YES. Maximal size of possible extension queue 150. Compared 12674 event pairs, 147 based on Foata normal form. 80/2046 useless extension candidates. Maximal degree in co-relation 4073. Up to 1081 conditions per place. [2025-01-09 16:29:25,699 INFO L140 encePairwiseOnDemand]: 33/39 looper letters, 39 selfloop transitions, 5 changer transitions 1/56 dead transitions. [2025-01-09 16:29:25,700 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 45 places, 56 transitions, 220 flow [2025-01-09 16:29:25,700 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2025-01-09 16:29:25,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2025-01-09 16:29:25,701 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 103 transitions. [2025-01-09 16:29:25,701 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6602564102564102 [2025-01-09 16:29:25,701 INFO L175 Difference]: Start difference. First operand has 43 places, 33 transitions, 76 flow. Second operand 4 states and 103 transitions. [2025-01-09 16:29:25,701 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 45 places, 56 transitions, 220 flow [2025-01-09 16:29:25,702 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 43 places, 56 transitions, 212 flow, removed 0 selfloop flow, removed 2 redundant places. [2025-01-09 16:29:25,703 INFO L231 Difference]: Finished difference. Result has 45 places, 36 transitions, 106 flow [2025-01-09 16:29:25,703 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, 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=28, PETRI_DIFFERENCE_SUBTRAHEND_STATES=4, PETRI_FLOW=106, PETRI_PLACES=45, PETRI_TRANSITIONS=36} [2025-01-09 16:29:25,704 INFO L279 CegarLoopForPetriNet]: 45 programPoint places, 0 predicate places. [2025-01-09 16:29:25,704 INFO L471 AbstractCegarLoop]: Abstraction has has 45 places, 36 transitions, 106 flow [2025-01-09 16:29:25,704 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 17.0) internal successors, (68), 4 states have internal predecessors, (68), 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-01-09 16:29:25,704 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:29:25,704 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:29:25,705 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-01-09 16:29:25,705 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-01-09 16:29:25,705 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:29:25,705 INFO L85 PathProgramCache]: Analyzing trace with hash 563689561, now seen corresponding path program 1 times [2025-01-09 16:29:25,706 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:29:25,706 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [824518978] [2025-01-09 16:29:25,706 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:29:25,708 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:29:25,722 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 19 statements into 1 equivalence classes. [2025-01-09 16:29:25,801 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 19 of 19 statements. [2025-01-09 16:29:25,801 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:29:25,801 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:29:26,024 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:29:26,025 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:29:26,025 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [824518978] [2025-01-09 16:29:26,025 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [824518978] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:29:26,025 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:29:26,026 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2025-01-09 16:29:26,026 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [679129873] [2025-01-09 16:29:26,026 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:29:26,026 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2025-01-09 16:29:26,026 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:29:26,027 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2025-01-09 16:29:26,027 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2025-01-09 16:29:26,036 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 14 out of 39 [2025-01-09 16:29:26,036 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 45 places, 36 transitions, 106 flow. Second operand has 5 states, 5 states have (on average 16.8) internal successors, (84), 5 states have internal predecessors, (84), 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-01-09 16:29:26,037 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:29:26,037 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 14 of 39 [2025-01-09 16:29:26,037 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:29:26,333 INFO L124 PetriNetUnfolderBase]: 809/1399 cut-off events. [2025-01-09 16:29:26,334 INFO L125 PetriNetUnfolderBase]: For 364/364 co-relation queries the response was YES. [2025-01-09 16:29:26,336 INFO L83 FinitePrefix]: Finished finitePrefix Result has 3205 conditions, 1399 events. 809/1399 cut-off events. For 364/364 co-relation queries the response was YES. Maximal size of possible extension queue 80. Compared 7568 event pairs, 73 based on Foata normal form. 68/1401 useless extension candidates. Maximal degree in co-relation 3193. Up to 521 conditions per place. [2025-01-09 16:29:26,340 INFO L140 encePairwiseOnDemand]: 33/39 looper letters, 49 selfloop transitions, 8 changer transitions 1/69 dead transitions. [2025-01-09 16:29:26,340 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 49 places, 69 transitions, 309 flow [2025-01-09 16:29:26,341 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2025-01-09 16:29:26,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2025-01-09 16:29:26,343 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 130 transitions. [2025-01-09 16:29:26,343 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6666666666666666 [2025-01-09 16:29:26,343 INFO L175 Difference]: Start difference. First operand has 45 places, 36 transitions, 106 flow. Second operand 5 states and 130 transitions. [2025-01-09 16:29:26,344 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 49 places, 69 transitions, 309 flow [2025-01-09 16:29:26,345 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 47 places, 69 transitions, 299 flow, removed 1 selfloop flow, removed 2 redundant places. [2025-01-09 16:29:26,347 INFO L231 Difference]: Finished difference. Result has 49 places, 39 transitions, 146 flow [2025-01-09 16:29:26,347 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=98, PETRI_DIFFERENCE_MINUEND_PLACES=43, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=36, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=5, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=28, PETRI_DIFFERENCE_SUBTRAHEND_STATES=5, PETRI_FLOW=146, PETRI_PLACES=49, PETRI_TRANSITIONS=39} [2025-01-09 16:29:26,348 INFO L279 CegarLoopForPetriNet]: 45 programPoint places, 4 predicate places. [2025-01-09 16:29:26,348 INFO L471 AbstractCegarLoop]: Abstraction has has 49 places, 39 transitions, 146 flow [2025-01-09 16:29:26,348 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 16.8) internal successors, (84), 5 states have internal predecessors, (84), 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-01-09 16:29:26,348 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:29:26,348 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-01-09 16:29:26,349 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-01-09 16:29:26,349 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-01-09 16:29:26,349 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:29:26,350 INFO L85 PathProgramCache]: Analyzing trace with hash 1439963883, now seen corresponding path program 1 times [2025-01-09 16:29:26,350 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:29:26,350 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1270622589] [2025-01-09 16:29:26,350 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:29:26,350 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:29:26,361 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 24 statements into 1 equivalence classes. [2025-01-09 16:29:26,416 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 24 of 24 statements. [2025-01-09 16:29:26,420 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:29:26,421 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:29:26,604 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:29:26,604 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:29:26,604 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1270622589] [2025-01-09 16:29:26,604 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1270622589] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:29:26,604 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:29:26,604 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-01-09 16:29:26,604 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [220451660] [2025-01-09 16:29:26,604 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:29:26,605 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-01-09 16:29:26,605 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:29:26,605 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-01-09 16:29:26,606 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2025-01-09 16:29:26,610 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 14 out of 39 [2025-01-09 16:29:26,610 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 49 places, 39 transitions, 146 flow. Second operand has 6 states, 6 states have (on average 16.833333333333332) internal successors, (101), 6 states have internal predecessors, (101), 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-01-09 16:29:26,610 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:29:26,610 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 14 of 39 [2025-01-09 16:29:26,610 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:29:26,774 INFO L124 PetriNetUnfolderBase]: 477/811 cut-off events. [2025-01-09 16:29:26,774 INFO L125 PetriNetUnfolderBase]: For 677/677 co-relation queries the response was YES. [2025-01-09 16:29:26,780 INFO L83 FinitePrefix]: Finished finitePrefix Result has 2123 conditions, 811 events. 477/811 cut-off events. For 677/677 co-relation queries the response was YES. Maximal size of possible extension queue 48. Compared 3693 event pairs, 59 based on Foata normal form. 36/812 useless extension candidates. Maximal degree in co-relation 2109. Up to 268 conditions per place. [2025-01-09 16:29:26,782 INFO L140 encePairwiseOnDemand]: 33/39 looper letters, 43 selfloop transitions, 11 changer transitions 1/66 dead transitions. [2025-01-09 16:29:26,783 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 54 places, 66 transitions, 320 flow [2025-01-09 16:29:26,783 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2025-01-09 16:29:26,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2025-01-09 16:29:26,784 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 141 transitions. [2025-01-09 16:29:26,788 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.6025641025641025 [2025-01-09 16:29:26,788 INFO L175 Difference]: Start difference. First operand has 49 places, 39 transitions, 146 flow. Second operand 6 states and 141 transitions. [2025-01-09 16:29:26,788 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 54 places, 66 transitions, 320 flow [2025-01-09 16:29:26,790 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 50 places, 66 transitions, 295 flow, removed 4 selfloop flow, removed 4 redundant places. [2025-01-09 16:29:26,791 INFO L231 Difference]: Finished difference. Result has 52 places, 39 transitions, 160 flow [2025-01-09 16:29:26,794 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=124, PETRI_DIFFERENCE_MINUEND_PLACES=45, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=39, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=11, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=28, PETRI_DIFFERENCE_SUBTRAHEND_STATES=6, PETRI_FLOW=160, PETRI_PLACES=52, PETRI_TRANSITIONS=39} [2025-01-09 16:29:26,795 INFO L279 CegarLoopForPetriNet]: 45 programPoint places, 7 predicate places. [2025-01-09 16:29:26,795 INFO L471 AbstractCegarLoop]: Abstraction has has 52 places, 39 transitions, 160 flow [2025-01-09 16:29:26,795 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 16.833333333333332) internal successors, (101), 6 states have internal predecessors, (101), 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-01-09 16:29:26,795 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:29:26,795 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:29:26,795 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2025-01-09 16:29:26,795 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-01-09 16:29:26,796 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:29:26,796 INFO L85 PathProgramCache]: Analyzing trace with hash 293523438, now seen corresponding path program 1 times [2025-01-09 16:29:26,796 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:29:26,796 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [824472010] [2025-01-09 16:29:26,796 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 16:29:26,796 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:29:26,811 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 29 statements into 1 equivalence classes. [2025-01-09 16:29:26,903 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 29 of 29 statements. [2025-01-09 16:29:26,904 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:29:26,904 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 16:29:28,591 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-01-09 16:29:28,591 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 16:29:28,591 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [824472010] [2025-01-09 16:29:28,591 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [824472010] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 16:29:28,591 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 16:29:28,592 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2025-01-09 16:29:28,592 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [492932358] [2025-01-09 16:29:28,592 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 16:29:28,592 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2025-01-09 16:29:28,592 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 16:29:28,592 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2025-01-09 16:29:28,593 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2025-01-09 16:29:28,621 INFO L469 CegarLoopForPetriNet]: Number of universal loopers: 13 out of 39 [2025-01-09 16:29:28,621 INFO L103 encePairwiseOnDemand]: Start differencePairwiseOnDemand. First operand has 52 places, 39 transitions, 160 flow. Second operand has 10 states, 10 states have (on average 15.0) internal successors, (150), 10 states have internal predecessors, (150), 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-01-09 16:29:28,621 INFO L112 encePairwiseOnDemand]: Universal subtrahend loopers provided by user. [2025-01-09 16:29:28,621 INFO L113 encePairwiseOnDemand]: Number of universal subtrahend loopers: 13 of 39 [2025-01-09 16:29:28,621 INFO L73 FinitePrefix]: Start finitePrefix. Operand will be constructed on-demand [2025-01-09 16:29:29,121 INFO L124 PetriNetUnfolderBase]: 1296/2316 cut-off events. [2025-01-09 16:29:29,121 INFO L125 PetriNetUnfolderBase]: For 1134/1142 co-relation queries the response was YES. [2025-01-09 16:29:29,125 INFO L83 FinitePrefix]: Finished finitePrefix Result has 5562 conditions, 2316 events. 1296/2316 cut-off events. For 1134/1142 co-relation queries the response was YES. Maximal size of possible extension queue 139. Compared 13724 event pairs, 316 based on Foata normal form. 16/2268 useless extension candidates. Maximal degree in co-relation 5547. Up to 712 conditions per place. [2025-01-09 16:29:29,129 INFO L140 encePairwiseOnDemand]: 29/39 looper letters, 41 selfloop transitions, 8 changer transitions 44/109 dead transitions. [2025-01-09 16:29:29,129 INFO L145 encePairwiseOnDemand]: Finished differencePairwiseOnDemand. Result has 62 places, 109 transitions, 510 flow [2025-01-09 16:29:29,130 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2025-01-09 16:29:29,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2025-01-09 16:29:29,130 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 238 transitions. [2025-01-09 16:29:29,131 INFO L514 CegarLoopForPetriNet]: DFA transition density 0.5547785547785548 [2025-01-09 16:29:29,131 INFO L175 Difference]: Start difference. First operand has 52 places, 39 transitions, 160 flow. Second operand 11 states and 238 transitions. [2025-01-09 16:29:29,131 INFO L82 GeneralOperation]: Start removeRedundantFlow. Operand has 62 places, 109 transitions, 510 flow [2025-01-09 16:29:29,141 INFO L88 GeneralOperation]: Finished removeRedundantFlow, result has has 54 places, 109 transitions, 438 flow, removed 18 selfloop flow, removed 8 redundant places. [2025-01-09 16:29:29,142 INFO L231 Difference]: Finished difference. Result has 62 places, 45 transitions, 165 flow [2025-01-09 16:29:29,142 INFO L262 CegarLoopForPetriNet]: {PETRI_ALPHABET=39, PETRI_DIFFERENCE_MINUEND_FLOW=104, PETRI_DIFFERENCE_MINUEND_PLACES=44, PETRI_DIFFERENCE_MINUEND_TRANSITIONS=39, PETRI_DIFFERENCE_SUBTRAHEND_LETTERS_WITH_MORE_CHANGERS_THAN_LOOPERS=3, PETRI_DIFFERENCE_SUBTRAHEND_LOOPER_ONLY_LETTERS=34, PETRI_DIFFERENCE_SUBTRAHEND_STATES=11, PETRI_FLOW=165, PETRI_PLACES=62, PETRI_TRANSITIONS=45} [2025-01-09 16:29:29,142 INFO L279 CegarLoopForPetriNet]: 45 programPoint places, 17 predicate places. [2025-01-09 16:29:29,142 INFO L471 AbstractCegarLoop]: Abstraction has has 62 places, 45 transitions, 165 flow [2025-01-09 16:29:29,143 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 15.0) internal successors, (150), 10 states have internal predecessors, (150), 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-01-09 16:29:29,143 INFO L198 CegarLoopForPetriNet]: Found error trace [2025-01-09 16:29:29,143 INFO L206 CegarLoopForPetriNet]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 16:29:29,143 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2025-01-09 16:29:29,143 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-01-09 16:29:29,143 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 16:29:29,144 INFO L85 PathProgramCache]: Analyzing trace with hash 1066095204, now seen corresponding path program 2 times [2025-01-09 16:29:29,144 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 16:29:29,144 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1962375143] [2025-01-09 16:29:29,144 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-01-09 16:29:29,144 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 16:29:29,151 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 29 statements into 1 equivalence classes. [2025-01-09 16:29:29,188 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 29 of 29 statements. [2025-01-09 16:29:29,189 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-01-09 16:29:29,189 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 16:29:29,189 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-09 16:29:29,193 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 29 statements into 1 equivalence classes. [2025-01-09 16:29:29,237 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 29 of 29 statements. [2025-01-09 16:29:29,240 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 16:29:29,241 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 16:29:29,275 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-09 16:29:29,275 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-01-09 16:29:29,275 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (5 of 6 remaining) [2025-01-09 16:29:29,276 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (4 of 6 remaining) [2025-01-09 16:29:29,276 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr0INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (3 of 6 remaining) [2025-01-09 16:29:29,276 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr1INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (2 of 6 remaining) [2025-01-09 16:29:29,277 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location ULTIMATE.startErr2INUSE_VIOLATIONSUFFICIENT_THREAD_INSTANCES (1 of 6 remaining) [2025-01-09 16:29:29,277 INFO L782 garLoopResultBuilder]: Registering result UNKNOWN for location P1Err0ASSERT_VIOLATIONERROR_FUNCTION (0 of 6 remaining) [2025-01-09 16:29:29,277 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2025-01-09 16:29:29,277 INFO L422 BasicCegarLoop]: Path program histogram: [2, 1, 1, 1, 1] [2025-01-09 16:29:29,325 INFO L241 ceAbstractionStarter]: Analysis of concurrent program completed with 1 thread instances [2025-01-09 16:29:29,328 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-01-09 16:29:29,331 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.01 04:29:29 BasicIcfg [2025-01-09 16:29:29,331 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-01-09 16:29:29,332 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-01-09 16:29:29,332 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-01-09 16:29:29,332 INFO L274 PluginConnector]: Witness Printer initialized [2025-01-09 16:29:29,333 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 04:29:24" (3/4) ... [2025-01-09 16:29:29,333 INFO L140 WitnessPrinter]: Generating witness for reachability counterexample [2025-01-09 16:29:29,413 INFO L127 tionWitnessGenerator]: Generated YAML witness of length 9. [2025-01-09 16:29:29,452 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-01-09 16:29:29,453 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/witness.yml [2025-01-09 16:29:29,453 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-01-09 16:29:29,453 INFO L158 Benchmark]: Toolchain (without parser) took 6375.61ms. Allocated memory was 167.8MB in the beginning and 419.4MB in the end (delta: 251.7MB). Free memory was 122.1MB in the beginning and 138.7MB in the end (delta: -16.6MB). Peak memory consumption was 231.1MB. Max. memory is 16.1GB. [2025-01-09 16:29:29,453 INFO L158 Benchmark]: CDTParser took 0.23ms. Allocated memory is still 201.3MB. Free memory is still 116.5MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 16:29:29,454 INFO L158 Benchmark]: CACSL2BoogieTranslator took 350.03ms. Allocated memory is still 167.8MB. Free memory was 122.1MB in the beginning and 98.5MB in the end (delta: 23.6MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-01-09 16:29:29,454 INFO L158 Benchmark]: Boogie Procedure Inliner took 42.26ms. Allocated memory is still 167.8MB. Free memory was 98.5MB in the beginning and 96.6MB in the end (delta: 1.9MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 16:29:29,454 INFO L158 Benchmark]: Boogie Preprocessor took 43.39ms. Allocated memory is still 167.8MB. Free memory was 96.6MB in the beginning and 93.0MB in the end (delta: 3.6MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 16:29:29,454 INFO L158 Benchmark]: RCFGBuilder took 578.22ms. Allocated memory is still 167.8MB. Free memory was 93.0MB in the beginning and 42.7MB in the end (delta: 50.3MB). Peak memory consumption was 50.3MB. Max. memory is 16.1GB. [2025-01-09 16:29:29,454 INFO L158 Benchmark]: TraceAbstraction took 5234.85ms. Allocated memory was 167.8MB in the beginning and 419.4MB in the end (delta: 251.7MB). Free memory was 41.7MB in the beginning and 151.3MB in the end (delta: -109.6MB). Peak memory consumption was 138.9MB. Max. memory is 16.1GB. [2025-01-09 16:29:29,455 INFO L158 Benchmark]: Witness Printer took 120.98ms. Allocated memory is still 419.4MB. Free memory was 151.3MB in the beginning and 138.7MB in the end (delta: 12.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 16:29:29,456 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.23ms. Allocated memory is still 201.3MB. Free memory is still 116.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 350.03ms. Allocated memory is still 167.8MB. Free memory was 122.1MB in the beginning and 98.5MB in the end (delta: 23.6MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 42.26ms. Allocated memory is still 167.8MB. Free memory was 98.5MB in the beginning and 96.6MB in the end (delta: 1.9MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 43.39ms. Allocated memory is still 167.8MB. Free memory was 96.6MB in the beginning and 93.0MB in the end (delta: 3.6MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 578.22ms. Allocated memory is still 167.8MB. Free memory was 93.0MB in the beginning and 42.7MB in the end (delta: 50.3MB). Peak memory consumption was 50.3MB. Max. memory is 16.1GB. * TraceAbstraction took 5234.85ms. Allocated memory was 167.8MB in the beginning and 419.4MB in the end (delta: 251.7MB). Free memory was 41.7MB in the beginning and 151.3MB in the end (delta: -109.6MB). Peak memory consumption was 138.9MB. Max. memory is 16.1GB. * Witness Printer took 120.98ms. Allocated memory is still 419.4MB. Free memory was 151.3MB in the beginning and 138.7MB in the end (delta: 12.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 18]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L709] 0 int __unbuffered_cnt = 0; [L711] 0 int __unbuffered_p0_EAX = 0; [L713] 0 int __unbuffered_p2_EAX = 0; [L714] 0 _Bool main$tmp_guard0; [L715] 0 _Bool main$tmp_guard1; [L717] 0 int x = 0; [L718] 0 _Bool x$flush_delayed; [L719] 0 int x$mem_tmp; [L720] 0 _Bool x$r_buff0_thd0; [L721] 0 _Bool x$r_buff0_thd1; [L722] 0 _Bool x$r_buff0_thd2; [L723] 0 _Bool x$r_buff0_thd3; [L724] 0 _Bool x$r_buff1_thd0; [L725] 0 _Bool x$r_buff1_thd1; [L726] 0 _Bool x$r_buff1_thd2; [L727] 0 _Bool x$r_buff1_thd3; [L728] 0 _Bool x$read_delayed; [L729] 0 int *x$read_delayed_var; [L730] 0 int x$w_buff0; [L731] 0 _Bool x$w_buff0_used; [L732] 0 int x$w_buff1; [L733] 0 _Bool x$w_buff1_used; [L735] 0 int y = 0; [L736] 0 _Bool weak$$choice0; [L737] 0 _Bool weak$$choice2; [L818] 0 pthread_t t1804; [L819] FCALL, FORK 0 pthread_create(&t1804, ((void *)0), P0, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX=0, main$tmp_guard0=0, main$tmp_guard1=0, t1804=-2, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L820] 0 pthread_t t1805; [L821] FCALL, FORK 0 pthread_create(&t1805, ((void *)0), P1, ((void *)0)) VAL [\old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX=0, main$tmp_guard0=0, main$tmp_guard1=0, t1804=-2, t1805=-1, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L822] 0 pthread_t t1806; [L823] FCALL, FORK 0 pthread_create(&t1806, ((void *)0), P2, ((void *)0)) VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX=0, main$tmp_guard0=0, main$tmp_guard1=0, t1804=-2, t1805=-1, t1806=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=0, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=0, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L761] 2 x$w_buff1 = x$w_buff0 [L762] 2 x$w_buff0 = 2 [L763] 2 x$w_buff1_used = x$w_buff0_used [L764] 2 x$w_buff0_used = (_Bool)1 [L765] CALL 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L18] COND FALSE 2 !(!expression) [L765] RET 2 __VERIFIER_assert(!(x$w_buff1_used && x$w_buff0_used)) [L766] 2 x$r_buff1_thd0 = x$r_buff0_thd0 [L767] 2 x$r_buff1_thd1 = x$r_buff0_thd1 [L768] 2 x$r_buff1_thd2 = x$r_buff0_thd2 [L769] 2 x$r_buff1_thd3 = x$r_buff0_thd3 [L770] 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_p2_EAX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=0] [L773] 2 y = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX=0, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1] [L790] 3 __unbuffered_p2_EAX = y VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX=1, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=1] [L793] 3 y = 2 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=0, __unbuffered_p2_EAX=1, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=2] [L741] 1 __unbuffered_p0_EAX = y VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=0, y=2] [L744] 1 x = 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=1, x$w_buff1=0, x$w_buff1_used=0, x=1, y=2] [L776] 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) [L777] 2 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$w_buff0_used [L778] 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 [L779] 2 x$r_buff0_thd2 = x$w_buff0_used && x$r_buff0_thd2 ? (_Bool)0 : x$r_buff0_thd2 [L780] 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=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L747] 1 x = x$w_buff0_used && x$r_buff0_thd1 ? x$w_buff0 : (x$w_buff1_used && x$r_buff1_thd1 ? x$w_buff1 : x) [L748] 1 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$w_buff0_used [L749] 1 x$w_buff1_used = x$w_buff0_used && x$r_buff0_thd1 || x$w_buff1_used && x$r_buff1_thd1 ? (_Bool)0 : x$w_buff1_used [L750] 1 x$r_buff0_thd1 = x$w_buff0_used && x$r_buff0_thd1 ? (_Bool)0 : x$r_buff0_thd1 [L751] 1 x$r_buff1_thd1 = x$w_buff0_used && x$r_buff0_thd1 || x$w_buff1_used && x$r_buff1_thd1 ? (_Bool)0 : x$r_buff1_thd1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=0, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L754] 1 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=1, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L783] 2 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=2, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L796] 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) [L797] 3 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$w_buff0_used [L798] 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 [L799] 3 x$r_buff0_thd3 = x$w_buff0_used && x$r_buff0_thd3 ? (_Bool)0 : x$r_buff0_thd3 [L800] 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=2, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L803] 3 __unbuffered_cnt = __unbuffered_cnt + 1 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=0, main$tmp_guard1=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L825] 0 main$tmp_guard0 = __unbuffered_cnt == 3 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1804=-2, t1805=-1, t1806=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L827] CALL 0 assume_abort_if_not(main$tmp_guard0) [L3] COND FALSE 0 !(!cond) [L827] RET 0 assume_abort_if_not(main$tmp_guard0) [L829] 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) [L830] 0 x$w_buff0_used = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used [L831] 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 [L832] 0 x$r_buff0_thd0 = x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0 [L833] 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=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1804=-2, t1805=-1, t1806=0, weak$$choice0=0, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=0, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L836] 0 weak$$choice0 = __VERIFIER_nondet_bool() [L837] 0 weak$$choice2 = __VERIFIER_nondet_bool() [L838] 0 x$flush_delayed = weak$$choice2 [L839] 0 x$mem_tmp = x [L840] 0 x = !x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff1) [L841] 0 x$w_buff0 = weak$$choice2 ? x$w_buff0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff0 : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff0 : x$w_buff0)) [L842] 0 x$w_buff1 = weak$$choice2 ? x$w_buff1 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff1 : (x$w_buff0_used && x$r_buff0_thd0 ? x$w_buff1 : x$w_buff1)) [L843] 0 x$w_buff0_used = weak$$choice2 ? x$w_buff0_used : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff0_used : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$w_buff0_used)) [L844] 0 x$w_buff1_used = weak$$choice2 ? x$w_buff1_used : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$w_buff1_used : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L845] 0 x$r_buff0_thd0 = weak$$choice2 ? x$r_buff0_thd0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$r_buff0_thd0 : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : x$r_buff0_thd0)) [L846] 0 x$r_buff1_thd0 = weak$$choice2 ? x$r_buff1_thd0 : (!x$w_buff0_used || !x$r_buff0_thd0 && !x$w_buff1_used || !x$r_buff0_thd0 && !x$r_buff1_thd0 ? x$r_buff1_thd0 : (x$w_buff0_used && x$r_buff0_thd0 ? (_Bool)0 : (_Bool)0)) [L847] 0 main$tmp_guard1 = !(x == 2 && y == 2 && __unbuffered_p0_EAX == 2 && __unbuffered_p2_EAX == 1) [L848] 0 x = x$flush_delayed ? x$mem_tmp : x [L849] 0 x$flush_delayed = (_Bool)0 VAL [\old(arg)={0:0}, \old(arg)={0:0}, __unbuffered_cnt=3, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, main$tmp_guard0=1, main$tmp_guard1=0, t1804=-2, t1805=-1, t1806=0, weak$$choice0=1, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L851] CALL 0 __VERIFIER_assert(main$tmp_guard1) [L18] COND TRUE 0 !expression VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] [L18] 0 reach_error() VAL [\old(arg)={0:0}, \old(arg)={0:0}, \old(expression)=0, __unbuffered_cnt=3, __unbuffered_p0_EAX=2, __unbuffered_p2_EAX=1, arg={0:0}, arg={0:0}, expression=0, main$tmp_guard0=1, main$tmp_guard1=0, weak$$choice0=1, weak$$choice2=0, x$flush_delayed=0, x$mem_tmp=2, x$r_buff0_thd0=0, x$r_buff0_thd1=0, x$r_buff0_thd2=1, x$r_buff0_thd3=0, x$r_buff1_thd0=0, x$r_buff1_thd1=0, x$r_buff1_thd2=0, x$r_buff1_thd3=0, x$read_delayed=0, x$read_delayed_var={0:0}, x$w_buff0=2, x$w_buff0_used=0, x$w_buff1=0, x$w_buff1_used=0, x=2, y=2] - 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: 821]: 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: 823]: 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: 819]: 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, 64 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: 5.1s, OverallIterations: 6, TraceHistogramMax: 1, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 1.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 285 SdHoareTripleChecker+Valid, 0.6s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 276 mSDsluCounter, 163 SdHoareTripleChecker+Invalid, 0.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 151 mSDsCounter, 33 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 557 IncrementalHoareTripleChecker+Invalid, 590 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 33 mSolverCounterUnsat, 12 mSDtfsCounter, 557 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 34 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=165occurred in iteration=5, 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.4s SatisfiabilityAnalysisTime, 2.6s InterpolantComputationTime, 121 NumberOfCodeBlocks, 121 NumberOfCodeBlocksAsserted, 6 NumberOfCheckSat, 87 ConstructedInterpolants, 0 QuantifiedInterpolants, 680 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-01-09 16:29:29,483 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/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