/root/.sdkman/candidates/java/21.0.5-tem/bin/java -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata ./data -s ../../../trunk/examples/settings/buchiAutomizer/concurrent-automaton-noLbe.epf -tc ../../../trunk/examples/toolchains/BuchiAutomizerBplInline.xml -i ../../../trunk/examples/concurrent/bpl/POPL2023/optimistic-concurrency1.bpl -------------------------------------------------------------------------------- This is Ultimate 0.3.0-wip.dk.ample-buchi-a4216cd-m [2025-04-26 16:21:34,913 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-04-26 16:21:34,975 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/settings/buchiAutomizer/concurrent-automaton-noLbe.epf [2025-04-26 16:21:34,982 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-04-26 16:21:34,982 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-04-26 16:21:35,004 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-04-26 16:21:35,004 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-04-26 16:21:35,005 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-04-26 16:21:35,006 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-04-26 16:21:35,006 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-04-26 16:21:35,007 INFO L153 SettingsManager]: * Use SBE=true [2025-04-26 16:21:35,007 INFO L151 SettingsManager]: Preferences of BuchiAutomizer differ from their defaults: [2025-04-26 16:21:35,007 INFO L153 SettingsManager]: * NCSB implementation=INTSET_LAZY3 [2025-04-26 16:21:35,007 INFO L153 SettingsManager]: * Use old map elimination=false [2025-04-26 16:21:35,007 INFO L153 SettingsManager]: * Use external solver (rank synthesis)=false [2025-04-26 16:21:35,007 INFO L153 SettingsManager]: * Use only trivial implications for array writes=true [2025-04-26 16:21:35,007 INFO L153 SettingsManager]: * Rank analysis=LINEAR_WITH_GUESSES [2025-04-26 16:21:35,007 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-04-26 16:21:35,007 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=ASSUME [2025-04-26 16:21:35,007 INFO L153 SettingsManager]: * sizeof long=4 [2025-04-26 16:21:35,007 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-04-26 16:21:35,007 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-04-26 16:21:35,007 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-04-26 16:21:35,007 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=ASSUME [2025-04-26 16:21:35,008 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=ASSUME [2025-04-26 16:21:35,008 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=ASSUME [2025-04-26 16:21:35,008 INFO L153 SettingsManager]: * Check unreachability of reach_error function=false [2025-04-26 16:21:35,008 INFO L153 SettingsManager]: * sizeof long double=12 [2025-04-26 16:21:35,008 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-04-26 16:21:35,008 INFO L153 SettingsManager]: * Assume nondeterminstic values are in range=false [2025-04-26 16:21:35,008 INFO L153 SettingsManager]: * Use constant arrays=true [2025-04-26 16:21:35,008 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-04-26 16:21:35,008 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-04-26 16:21:35,008 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-04-26 16:21:35,008 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-04-26 16:21:35,008 INFO L151 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2025-04-26 16:21:35,008 INFO L153 SettingsManager]: * TransformationType=MODULO_NEIGHBOR [2025-04-26 16:21:35,219 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-04-26 16:21:35,227 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-04-26 16:21:35,229 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-04-26 16:21:35,231 INFO L270 PluginConnector]: Initializing Boogie PL CUP Parser... [2025-04-26 16:21:35,231 INFO L274 PluginConnector]: Boogie PL CUP Parser initialized [2025-04-26 16:21:35,233 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/POPL2023/optimistic-concurrency1.bpl [2025-04-26 16:21:35,233 INFO L110 BoogieParser]: Parsing: '/storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/../../../trunk/examples/concurrent/bpl/POPL2023/optimistic-concurrency1.bpl' [2025-04-26 16:21:35,251 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-04-26 16:21:35,252 INFO L133 ToolchainWalker]: Walking toolchain with 4 elements. [2025-04-26 16:21:35,252 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-04-26 16:21:35,252 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-04-26 16:21:35,253 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-04-26 16:21:35,259 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/1) ... [2025-04-26 16:21:35,275 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/1) ... [2025-04-26 16:21:35,279 INFO L138 Inliner]: procedures = 3, calls = 3, calls flagged for inlining = 0, calls inlined = 0, statements flattened = 0 [2025-04-26 16:21:35,280 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-04-26 16:21:35,281 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-04-26 16:21:35,281 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-04-26 16:21:35,281 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-04-26 16:21:35,285 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/1) ... [2025-04-26 16:21:35,285 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/1) ... [2025-04-26 16:21:35,286 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/1) ... [2025-04-26 16:21:35,287 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/1) ... [2025-04-26 16:21:35,289 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/1) ... [2025-04-26 16:21:35,290 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/1) ... [2025-04-26 16:21:35,293 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/1) ... [2025-04-26 16:21:35,297 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/1) ... [2025-04-26 16:21:35,297 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/1) ... [2025-04-26 16:21:35,306 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-04-26 16:21:35,307 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-04-26 16:21:35,307 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-04-26 16:21:35,307 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-04-26 16:21:35,309 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/1) ... [2025-04-26 16:21:35,313 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:35,321 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:35,331 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:35,336 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Waiting until timeout for monitored process [2025-04-26 16:21:35,355 INFO L124 BoogieDeclarations]: Specification and implementation of procedure reader given in one single declaration [2025-04-26 16:21:35,355 INFO L130 BoogieDeclarations]: Found specification of procedure reader [2025-04-26 16:21:35,355 INFO L138 BoogieDeclarations]: Found implementation of procedure reader [2025-04-26 16:21:35,355 INFO L124 BoogieDeclarations]: Specification and implementation of procedure ULTIMATE.start given in one single declaration [2025-04-26 16:21:35,355 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-04-26 16:21:35,355 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-04-26 16:21:35,355 INFO L124 BoogieDeclarations]: Specification and implementation of procedure writer given in one single declaration [2025-04-26 16:21:35,355 INFO L130 BoogieDeclarations]: Found specification of procedure writer [2025-04-26 16:21:35,355 INFO L138 BoogieDeclarations]: Found implementation of procedure writer [2025-04-26 16:21:35,356 WARN L203 CfgBuilder]: User set CodeBlockSize to SequenceOfStatements but program contains fork statements. Overwriting the user preferences and setting CodeBlockSize to OneNontrivialStatement. [2025-04-26 16:21:35,393 INFO L234 CfgBuilder]: Building ICFG [2025-04-26 16:21:35,394 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-04-26 16:21:35,471 INFO L279 CfgBuilder]: Omitted future-live optimization because the input is a concurrent program. [2025-04-26 16:21:35,471 INFO L283 CfgBuilder]: Performing block encoding [2025-04-26 16:21:35,482 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-04-26 16:21:35,482 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-04-26 16:21:35,483 INFO L201 PluginConnector]: Adding new model optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 26.04 04:21:35 BoogieIcfgContainer [2025-04-26 16:21:35,483 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-04-26 16:21:35,485 INFO L112 PluginConnector]: ------------------------BuchiAutomizer---------------------------- [2025-04-26 16:21:35,485 INFO L270 PluginConnector]: Initializing BuchiAutomizer... [2025-04-26 16:21:35,489 INFO L274 PluginConnector]: BuchiAutomizer initialized [2025-04-26 16:21:35,490 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-04-26 16:21:35,490 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.boogie.parser AST 26.04 04:21:35" (1/2) ... [2025-04-26 16:21:35,491 INFO L204 PluginConnector]: Invalid model from BuchiAutomizer for observer de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer.BuchiAutomizerObserver@7d910d77 and model type optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer AST 26.04 04:21:35, skipping insertion in model container [2025-04-26 16:21:35,491 INFO L99 BuchiAutomizer]: Safety of program was proven or not checked, starting termination analysis [2025-04-26 16:21:35,491 INFO L184 PluginConnector]: Executing the observer BuchiAutomizerObserver from plugin BuchiAutomizer for "optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 26.04 04:21:35" (2/2) ... [2025-04-26 16:21:35,492 INFO L376 chiAutomizerObserver]: Analyzing ICFG optimistic-concurrency1.bpl [2025-04-26 16:21:35,552 INFO L143 ThreadInstanceAdder]: Constructed 5 joinOtherThreadTransitions. [2025-04-26 16:21:35,576 INFO L73 FinitePrefix]: Start finitePrefix. Operand has 45 places, 44 transitions, 115 flow [2025-04-26 16:21:35,591 INFO L116 PetriNetUnfolderBase]: 4/36 cut-off events. [2025-04-26 16:21:35,593 INFO L117 PetriNetUnfolderBase]: For 3/3 co-relation queries the response was YES. [2025-04-26 16:21:35,597 INFO L83 FinitePrefix]: Finished finitePrefix Result has 49 conditions, 36 events. 4/36 cut-off events. For 3/3 co-relation queries the response was YES. Maximal size of possible extension queue 5. Compared 48 event pairs, 0 based on Foata normal form. 0/30 useless extension candidates. Maximal degree in co-relation 31. Up to 2 conditions per place. [2025-04-26 16:21:35,597 INFO L82 GeneralOperation]: Start removeDead. Operand has 45 places, 44 transitions, 115 flow [2025-04-26 16:21:35,599 INFO L88 GeneralOperation]: Finished RemoveDead, result has has 42 places, 36 transitions, 90 flow [2025-04-26 16:21:35,600 INFO L84 lAbstractionProvider]: Constructed initial Petri net abstraction that has has 42 places, 36 transitions, 90 flow [2025-04-26 16:21:35,609 INFO L306 stractBuchiCegarLoop]: Interprodecural is true [2025-04-26 16:21:35,609 INFO L307 stractBuchiCegarLoop]: Hoare is None [2025-04-26 16:21:35,609 INFO L308 stractBuchiCegarLoop]: Compute interpolants for ForwardPredicates [2025-04-26 16:21:35,609 INFO L309 stractBuchiCegarLoop]: Backedges is STRAIGHT_LINE [2025-04-26 16:21:35,609 INFO L310 stractBuchiCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2025-04-26 16:21:35,609 INFO L311 stractBuchiCegarLoop]: Difference is false [2025-04-26 16:21:35,609 INFO L312 stractBuchiCegarLoop]: Minimize is MINIMIZE_SEVPA [2025-04-26 16:21:35,610 INFO L316 stractBuchiCegarLoop]: ======== Iteration 0 == of CEGAR loop == BuchiAutomatonCegarLoop ======== [2025-04-26 16:21:35,611 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 0 states, but on-demand construction may add more states [2025-04-26 16:21:35,643 INFO L131 ngComponentsAnalysis]: Automaton has 12 accepting balls. 60 [2025-04-26 16:21:35,644 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:21:35,644 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:21:35,648 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2025-04-26 16:21:35,648 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2025-04-26 16:21:35,648 INFO L340 stractBuchiCegarLoop]: ======== Iteration 1 ============ [2025-04-26 16:21:35,648 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand currently 94 states, but on-demand construction may add more states [2025-04-26 16:21:35,653 INFO L131 ngComponentsAnalysis]: Automaton has 12 accepting balls. 60 [2025-04-26 16:21:35,653 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:21:35,653 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:21:35,654 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1] [2025-04-26 16:21:35,654 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2025-04-26 16:21:35,659 INFO L752 eck$LassoCheckResult]: Stem: "[63] $Ultimate##0-->L56: Formula: (and (<= v_ULTIMATE.start_max1_3 v_N_3) (<= 0 v_ULTIMATE.start_min1_3)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3, N=v_N_3} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3, N=v_N_3} AuxVars[] AssignedVars[]" "[41] L56-->L59: Formula: (and (<= v_ULTIMATE.start_max2_3 v_N_4) (<= 0 v_ULTIMATE.start_min2_3)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_4, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_4, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} AuxVars[] AssignedVars[]" "[99] L59-->$Ultimate##0: Formula: (and (= v_writerThread1of1ForFork2_end_6 v_ULTIMATE.start_max1_5) (= v_writerThread1of1ForFork2_thidvar0_2 1) (= v_writerThread1of1ForFork2_start_4 v_ULTIMATE.start_min1_5)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_16, writerThread1of1ForFork2_end=v_writerThread1of1ForFork2_end_6, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5, writerThread1of1ForFork2_start=v_writerThread1of1ForFork2_start_4, writerThread1of1ForFork2_thidvar0=v_writerThread1of1ForFork2_thidvar0_2} AuxVars[] AssignedVars[writerThread1of1ForFork2_j, writerThread1of1ForFork2_end, writerThread1of1ForFork2_start, writerThread1of1ForFork2_thidvar0]" "[84] $Ultimate##0-->L41-1: Formula: (= v_writerThread1of1ForFork2_j_1 v_writerThread1of1ForFork2_start_1) InVars {writerThread1of1ForFork2_start=v_writerThread1of1ForFork2_start_1} OutVars{writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_1, writerThread1of1ForFork2_start=v_writerThread1of1ForFork2_start_1} AuxVars[] AssignedVars[writerThread1of1ForFork2_j]" [2025-04-26 16:21:35,659 INFO L754 eck$LassoCheckResult]: Loop: "[86] L41-1-->L42: Formula: (< v_writerThread1of1ForFork2_j_5 v_writerThread1of1ForFork2_end_3) InVars {writerThread1of1ForFork2_end=v_writerThread1of1ForFork2_end_3, writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_5} OutVars{writerThread1of1ForFork2_end=v_writerThread1of1ForFork2_end_3, writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_5} AuxVars[] AssignedVars[]" "[88] L42-->L43: Formula: (and (<= 0 v_writerThread1of1ForFork2_j_7) (<= v_writerThread1of1ForFork2_j_7 v_N_5)) InVars {writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_7, N=v_N_5} OutVars{writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_7, N=v_N_5} AuxVars[] AssignedVars[]" "[89] L43-->L44: Formula: (= (store v_A_3 v_writerThread1of1ForFork2_j_9 0) v_A_2) InVars {A=v_A_3, writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_9} OutVars{A=v_A_2, writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_9} AuxVars[] AssignedVars[A]" "[90] L44-->L41-1: Formula: (= v_writerThread1of1ForFork2_j_12 (+ v_writerThread1of1ForFork2_j_11 1)) InVars {writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_11} OutVars{writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_12} AuxVars[] AssignedVars[writerThread1of1ForFork2_j]" [2025-04-26 16:21:35,665 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:35,666 INFO L85 PathProgramCache]: Analyzing trace with hash 2842908, now seen corresponding path program 1 times [2025-04-26 16:21:35,671 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:21:35,671 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [477514163] [2025-04-26 16:21:35,672 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:21:35,672 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:21:35,715 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:35,724 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:35,724 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:35,725 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:35,725 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:21:35,727 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:35,729 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:35,729 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:35,729 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:35,742 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:21:35,744 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:35,744 INFO L85 PathProgramCache]: Analyzing trace with hash 3572964, now seen corresponding path program 1 times [2025-04-26 16:21:35,744 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:21:35,744 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1691879075] [2025-04-26 16:21:35,744 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:21:35,745 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:21:35,749 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:35,753 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:35,753 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:35,753 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:35,753 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:21:35,755 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:35,757 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:35,757 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:35,757 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:35,759 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:21:35,760 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:35,760 INFO L85 PathProgramCache]: Analyzing trace with hash 1262870655, now seen corresponding path program 1 times [2025-04-26 16:21:35,760 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:21:35,760 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1629987006] [2025-04-26 16:21:35,760 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:21:35,760 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:21:35,764 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 8 statements into 1 equivalence classes. [2025-04-26 16:21:35,769 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 8 of 8 statements. [2025-04-26 16:21:35,769 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:35,769 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:35,770 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:21:35,771 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 8 statements into 1 equivalence classes. [2025-04-26 16:21:35,775 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 8 of 8 statements. [2025-04-26 16:21:35,775 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:35,775 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:35,776 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:21:35,917 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:21:35,917 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:21:35,917 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:21:35,917 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:21:35,917 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 16:21:35,917 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:35,917 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:21:35,918 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:21:35,918 INFO L132 ssoRankerPreferences]: Filename of dumped script: optimistic-concurrency1.bpl_petrified1_Iteration1_Lasso [2025-04-26 16:21:35,918 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:21:35,918 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:21:35,929 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:35,936 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:35,941 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:36,046 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:21:36,050 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 16:21:36,051 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:36,051 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:36,054 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:36,056 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Waiting until timeout for monitored process [2025-04-26 16:21:36,057 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-04-26 16:21:36,069 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:21:36,070 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:21:36,070 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:21:36,070 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:21:36,078 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:21:36,078 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:21:36,083 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:21:36,088 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (2)] Forceful destruction successful, exit code 0 [2025-04-26 16:21:36,089 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:36,089 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:36,091 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:36,092 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Waiting until timeout for monitored process [2025-04-26 16:21:36,094 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-04-26 16:21:36,104 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:21:36,105 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:21:36,105 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:21:36,105 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:21:36,108 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:21:36,108 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:21:36,133 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:21:36,138 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (3)] Ended with exit code 0 [2025-04-26 16:21:36,139 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:36,139 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:36,141 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:36,142 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Waiting until timeout for monitored process [2025-04-26 16:21:36,143 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-04-26 16:21:36,152 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:21:36,153 INFO L351 nArgumentSynthesizer]: There is no stem transition; disabling supporting invariant generation. [2025-04-26 16:21:36,153 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:21:36,153 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:21:36,153 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:21:36,154 INFO L402 nArgumentSynthesizer]: We have 2 Motzkin's Theorem applications. [2025-04-26 16:21:36,154 INFO L403 nArgumentSynthesizer]: A total of 0 supporting invariants were added. [2025-04-26 16:21:36,155 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:21:36,160 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (4)] Ended with exit code 0 [2025-04-26 16:21:36,160 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:36,161 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:36,162 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:36,163 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Waiting until timeout for monitored process [2025-04-26 16:21:36,165 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-04-26 16:21:36,176 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:21:36,176 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:21:36,176 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:21:36,177 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:21:36,182 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:21:36,182 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:21:36,192 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 16:21:36,234 INFO L436 ModelExtractionUtils]: Simplification made 8 calls to the SMT solver. [2025-04-26 16:21:36,234 INFO L437 ModelExtractionUtils]: 8 out of 25 variables were initially zero. Simplification set additionally 14 variables to zero. [2025-04-26 16:21:36,236 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:36,236 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:36,239 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:36,240 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Waiting until timeout for monitored process [2025-04-26 16:21:36,241 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 16:21:36,259 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (6)] Ended with exit code 0 [2025-04-26 16:21:36,260 INFO L439 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2025-04-26 16:21:36,261 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 16:21:36,261 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(writerThread1of1ForFork2_j, writerThread1of1ForFork2_end) = -1*writerThread1of1ForFork2_j + 1*writerThread1of1ForFork2_end Supporting invariants [] [2025-04-26 16:21:36,266 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (5)] Ended with exit code 0 [2025-04-26 16:21:36,269 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 16:21:36,288 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:36,296 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:36,298 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:36,298 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:36,298 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:21:36,299 INFO L256 TraceCheckSpWp]: Trace formula consists of 14 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:21:36,300 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:21:36,313 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:36,315 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:36,315 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:36,315 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:21:36,316 INFO L256 TraceCheckSpWp]: Trace formula consists of 10 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 16:21:36,316 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:21:36,345 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 16:21:36,398 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2025-04-26 16:21:36,403 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand currently 94 states, but on-demand construction may add more states Second operand has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (in total 8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 16:21:36,518 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand currently 94 states, but on-demand construction may add more states. Second operand has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (in total 8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 221 states and 493 transitions. Complement of second has 6 states. [2025-04-26 16:21:36,521 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2025-04-26 16:21:36,524 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.6666666666666665) internal successors, (in total 8), 3 states have internal predecessors, (8), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 16:21:36,526 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 68 transitions. [2025-04-26 16:21:36,531 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 68 transitions. Stem has 4 letters. Loop has 4 letters. [2025-04-26 16:21:36,531 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:21:36,532 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 68 transitions. Stem has 8 letters. Loop has 4 letters. [2025-04-26 16:21:36,532 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:21:36,532 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 68 transitions. Stem has 4 letters. Loop has 8 letters. [2025-04-26 16:21:36,532 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:21:36,532 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 221 states and 493 transitions. [2025-04-26 16:21:36,539 INFO L131 ngComponentsAnalysis]: Automaton has 9 accepting balls. 36 [2025-04-26 16:21:36,543 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 221 states to 149 states and 333 transitions. [2025-04-26 16:21:36,543 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 81 [2025-04-26 16:21:36,544 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 105 [2025-04-26 16:21:36,544 INFO L74 IsDeterministic]: Start isDeterministic. Operand 149 states and 333 transitions. [2025-04-26 16:21:36,545 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:21:36,545 INFO L218 hiAutomatonCegarLoop]: Abstraction has 149 states and 333 transitions. [2025-04-26 16:21:36,553 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 149 states and 333 transitions. [2025-04-26 16:21:36,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 149 to 128. [2025-04-26 16:21:36,565 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 128 states, 128 states have (on average 2.234375) internal successors, (in total 286), 127 states have internal predecessors, (286), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 16:21:36,565 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128 states to 128 states and 286 transitions. [2025-04-26 16:21:36,566 INFO L240 hiAutomatonCegarLoop]: Abstraction has 128 states and 286 transitions. [2025-04-26 16:21:36,566 INFO L438 stractBuchiCegarLoop]: Abstraction has 128 states and 286 transitions. [2025-04-26 16:21:36,566 INFO L340 stractBuchiCegarLoop]: ======== Iteration 2 ============ [2025-04-26 16:21:36,566 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 128 states and 286 transitions. [2025-04-26 16:21:36,572 INFO L131 ngComponentsAnalysis]: Automaton has 9 accepting balls. 36 [2025-04-26 16:21:36,572 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:21:36,572 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:21:36,572 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1] [2025-04-26 16:21:36,572 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2025-04-26 16:21:36,573 INFO L752 eck$LassoCheckResult]: Stem: "[63] $Ultimate##0-->L56: Formula: (and (<= v_ULTIMATE.start_max1_3 v_N_3) (<= 0 v_ULTIMATE.start_min1_3)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3, N=v_N_3} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3, N=v_N_3} AuxVars[] AssignedVars[]" "[41] L56-->L59: Formula: (and (<= v_ULTIMATE.start_max2_3 v_N_4) (<= 0 v_ULTIMATE.start_min2_3)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_4, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_4, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} AuxVars[] AssignedVars[]" "[99] L59-->$Ultimate##0: Formula: (and (= v_writerThread1of1ForFork2_end_6 v_ULTIMATE.start_max1_5) (= v_writerThread1of1ForFork2_thidvar0_2 1) (= v_writerThread1of1ForFork2_start_4 v_ULTIMATE.start_min1_5)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_16, writerThread1of1ForFork2_end=v_writerThread1of1ForFork2_end_6, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5, writerThread1of1ForFork2_start=v_writerThread1of1ForFork2_start_4, writerThread1of1ForFork2_thidvar0=v_writerThread1of1ForFork2_thidvar0_2} AuxVars[] AssignedVars[writerThread1of1ForFork2_j, writerThread1of1ForFork2_end, writerThread1of1ForFork2_start, writerThread1of1ForFork2_thidvar0]" "[93] L59-1-->$Ultimate##0: Formula: (and (= v_readerThread1of1ForFork0_thidvar0_2 2) (= v_readerThread1of1ForFork0_thidvar1_2 2) (= v_readerThread1of1ForFork0_start_4 v_ULTIMATE.start_min2_5) (= v_readerThread1of1ForFork0_end_6 v_ULTIMATE.start_max2_5)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_5, ULTIMATE.start_min2=v_ULTIMATE.start_min2_5} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_5, readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_4, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_8, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_18, readerThread1of1ForFork0_thidvar1=v_readerThread1of1ForFork0_thidvar1_2, readerThread1of1ForFork0_thidvar0=v_readerThread1of1ForFork0_thidvar0_2, ULTIMATE.start_min2=v_ULTIMATE.start_min2_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_6} AuxVars[] AssignedVars[readerThread1of1ForFork0_start, readerThread1of1ForFork0_sum, readerThread1of1ForFork0_i, readerThread1of1ForFork0_thidvar1, readerThread1of1ForFork0_thidvar0, readerThread1of1ForFork0_end]" "[66] $Ultimate##0-->L27: Formula: (= v_readerThread1of1ForFork0_sum_1 0) InVars {} OutVars{readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_1} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum]" "[67] L27-->L28-1: Formula: (= v_readerThread1of1ForFork0_start_1 v_readerThread1of1ForFork0_i_1) InVars {readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_1, readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_1} AuxVars[] AssignedVars[readerThread1of1ForFork0_i]" [2025-04-26 16:21:36,573 INFO L754 eck$LassoCheckResult]: Loop: "[69] L28-1-->L29: Formula: (< v_readerThread1of1ForFork0_i_5 v_readerThread1of1ForFork0_end_3) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} AuxVars[] AssignedVars[]" "[72] L29-->L30: Formula: (and (<= v_readerThread1of1ForFork0_i_9 v_N_2) (<= 0 v_readerThread1of1ForFork0_i_9)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, N=v_N_2} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, N=v_N_2} AuxVars[] AssignedVars[]" "[73] L30-->L31: Formula: (= (+ v_readerThread1of1ForFork0_sum_3 (select v_A_1 v_readerThread1of1ForFork0_i_11)) v_readerThread1of1ForFork0_sum_4) InVars {A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_11, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_11, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum]" "[74] L31-->L28-1: Formula: (= v_readerThread1of1ForFork0_i_14 (+ v_readerThread1of1ForFork0_i_13 1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_13} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_14} AuxVars[] AssignedVars[readerThread1of1ForFork0_i]" [2025-04-26 16:21:36,573 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:36,574 INFO L85 PathProgramCache]: Analyzing trace with hash -1562921946, now seen corresponding path program 1 times [2025-04-26 16:21:36,574 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:21:36,574 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1793396025] [2025-04-26 16:21:36,574 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:21:36,574 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:21:36,577 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-04-26 16:21:36,582 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-04-26 16:21:36,583 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:36,583 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:36,583 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:21:36,585 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-04-26 16:21:36,587 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-04-26 16:21:36,587 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:36,587 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:36,589 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:21:36,589 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:36,589 INFO L85 PathProgramCache]: Analyzing trace with hash 3050629, now seen corresponding path program 1 times [2025-04-26 16:21:36,589 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:21:36,589 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [802921783] [2025-04-26 16:21:36,589 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:21:36,589 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:21:36,591 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:36,593 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:36,593 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:36,593 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:36,593 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:21:36,594 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:36,595 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:36,596 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:36,596 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:36,597 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:21:36,597 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:36,597 INFO L85 PathProgramCache]: Analyzing trace with hash 1242932778, now seen corresponding path program 1 times [2025-04-26 16:21:36,597 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:21:36,597 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1747276213] [2025-04-26 16:21:36,597 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:21:36,597 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:21:36,600 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 10 statements into 1 equivalence classes. [2025-04-26 16:21:36,603 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 10 of 10 statements. [2025-04-26 16:21:36,603 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:36,604 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:36,604 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:21:36,605 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 10 statements into 1 equivalence classes. [2025-04-26 16:21:36,608 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 10 of 10 statements. [2025-04-26 16:21:36,609 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:36,609 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:36,610 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:21:36,708 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:21:36,708 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:21:36,708 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:21:36,708 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:21:36,708 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 16:21:36,708 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:36,708 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:21:36,708 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:21:36,708 INFO L132 ssoRankerPreferences]: Filename of dumped script: optimistic-concurrency1.bpl_petrified1_Iteration2_Lasso [2025-04-26 16:21:36,708 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:21:36,708 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:21:36,709 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:36,712 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:36,716 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:36,718 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:36,720 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:36,740 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:36,833 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:21:36,834 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 16:21:36,834 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:36,834 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:36,837 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:36,837 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Waiting until timeout for monitored process [2025-04-26 16:21:36,839 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-04-26 16:21:36,849 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:21:36,849 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:21:36,850 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:21:36,850 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:21:36,853 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:21:36,853 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:21:36,857 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:21:36,862 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (7)] Ended with exit code 0 [2025-04-26 16:21:36,863 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:36,863 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:36,865 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:36,866 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Waiting until timeout for monitored process [2025-04-26 16:21:36,867 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-04-26 16:21:36,877 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:21:36,878 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:21:36,878 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:21:36,878 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:21:36,879 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:21:36,880 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:21:36,882 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:21:36,888 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (8)] Ended with exit code 0 [2025-04-26 16:21:36,888 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:36,888 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:36,890 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:36,891 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Waiting until timeout for monitored process [2025-04-26 16:21:36,892 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-04-26 16:21:36,902 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:21:36,903 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:21:36,903 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:21:36,903 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:21:36,904 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:21:36,904 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:21:36,907 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:21:36,912 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (9)] Ended with exit code 0 [2025-04-26 16:21:36,912 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:36,913 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:36,914 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:36,916 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Waiting until timeout for monitored process [2025-04-26 16:21:36,917 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-04-26 16:21:36,926 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:21:36,927 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:21:36,927 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:21:36,927 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:21:36,928 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:21:36,928 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:21:36,931 INFO L490 LassoAnalysis]: Proving termination failed for this template and these settings. [2025-04-26 16:21:36,936 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (10)] Forceful destruction successful, exit code 0 [2025-04-26 16:21:36,938 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:36,938 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:36,941 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:36,941 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Waiting until timeout for monitored process [2025-04-26 16:21:36,942 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-04-26 16:21:36,953 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:21:36,954 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:21:36,954 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:21:36,954 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:21:36,961 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:21:36,961 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:21:36,969 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 16:21:36,975 INFO L436 ModelExtractionUtils]: Simplification made 6 calls to the SMT solver. [2025-04-26 16:21:36,976 INFO L437 ModelExtractionUtils]: 22 out of 28 variables were initially zero. Simplification set additionally 2 variables to zero. [2025-04-26 16:21:36,976 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:36,976 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:36,978 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:36,979 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Waiting until timeout for monitored process [2025-04-26 16:21:36,980 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 16:21:36,995 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (12)] Forceful destruction successful, exit code 0 [2025-04-26 16:21:36,995 INFO L439 nArgumentSynthesizer]: Removed 2 redundant supporting invariants from a total of 2. [2025-04-26 16:21:36,995 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 16:21:36,995 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(N, readerThread1of1ForFork0_i) = 2*N - 2*readerThread1of1ForFork0_i + 1 Supporting invariants [] [2025-04-26 16:21:37,000 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (11)] Forceful destruction successful, exit code 0 [2025-04-26 16:21:37,001 INFO L156 tatePredicateManager]: 0 out of 0 supporting invariants were superfluous and have been removed [2025-04-26 16:21:37,013 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:37,017 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 6 statements into 1 equivalence classes. [2025-04-26 16:21:37,021 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 6 of 6 statements. [2025-04-26 16:21:37,021 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:37,021 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:21:37,021 INFO L256 TraceCheckSpWp]: Trace formula consists of 24 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:21:37,021 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:21:37,029 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:37,030 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:37,030 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:37,030 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:21:37,031 INFO L256 TraceCheckSpWp]: Trace formula consists of 9 conjuncts, 4 conjuncts are in the unsatisfiable core [2025-04-26 16:21:37,031 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:21:37,050 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 16:21:37,050 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2025-04-26 16:21:37,050 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 128 states and 286 transitions. cyclomatic complexity: 173 Second operand has 4 states, 4 states have (on average 2.5) internal successors, (in total 10), 4 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 16:21:37,089 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 128 states and 286 transitions. cyclomatic complexity: 173. Second operand has 4 states, 4 states have (on average 2.5) internal successors, (in total 10), 4 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 305 states and 739 transitions. Complement of second has 6 states. [2025-04-26 16:21:37,089 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2025-04-26 16:21:37,090 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.5) internal successors, (in total 10), 4 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 16:21:37,090 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 55 transitions. [2025-04-26 16:21:37,090 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 55 transitions. Stem has 6 letters. Loop has 4 letters. [2025-04-26 16:21:37,090 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:21:37,090 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 55 transitions. Stem has 10 letters. Loop has 4 letters. [2025-04-26 16:21:37,091 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:21:37,091 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 55 transitions. Stem has 6 letters. Loop has 8 letters. [2025-04-26 16:21:37,091 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:21:37,091 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 305 states and 739 transitions. [2025-04-26 16:21:37,096 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2025-04-26 16:21:37,097 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 305 states to 171 states and 389 transitions. [2025-04-26 16:21:37,097 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 53 [2025-04-26 16:21:37,098 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 61 [2025-04-26 16:21:37,098 INFO L74 IsDeterministic]: Start isDeterministic. Operand 171 states and 389 transitions. [2025-04-26 16:21:37,098 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:21:37,098 INFO L218 hiAutomatonCegarLoop]: Abstraction has 171 states and 389 transitions. [2025-04-26 16:21:37,098 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 171 states and 389 transitions. [2025-04-26 16:21:37,104 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 171 to 151. [2025-04-26 16:21:37,104 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 151 states, 151 states have (on average 2.2450331125827816) internal successors, (in total 339), 150 states have internal predecessors, (339), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 16:21:37,106 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 151 states to 151 states and 339 transitions. [2025-04-26 16:21:37,106 INFO L240 hiAutomatonCegarLoop]: Abstraction has 151 states and 339 transitions. [2025-04-26 16:21:37,106 INFO L438 stractBuchiCegarLoop]: Abstraction has 151 states and 339 transitions. [2025-04-26 16:21:37,106 INFO L340 stractBuchiCegarLoop]: ======== Iteration 3 ============ [2025-04-26 16:21:37,106 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 151 states and 339 transitions. [2025-04-26 16:21:37,107 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2025-04-26 16:21:37,107 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:21:37,107 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:21:37,107 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-04-26 16:21:37,107 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2025-04-26 16:21:37,108 INFO L752 eck$LassoCheckResult]: Stem: "[63] $Ultimate##0-->L56: Formula: (and (<= v_ULTIMATE.start_max1_3 v_N_3) (<= 0 v_ULTIMATE.start_min1_3)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3, N=v_N_3} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3, N=v_N_3} AuxVars[] AssignedVars[]" "[41] L56-->L59: Formula: (and (<= v_ULTIMATE.start_max2_3 v_N_4) (<= 0 v_ULTIMATE.start_min2_3)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_4, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_4, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} AuxVars[] AssignedVars[]" "[99] L59-->$Ultimate##0: Formula: (and (= v_writerThread1of1ForFork2_end_6 v_ULTIMATE.start_max1_5) (= v_writerThread1of1ForFork2_thidvar0_2 1) (= v_writerThread1of1ForFork2_start_4 v_ULTIMATE.start_min1_5)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_16, writerThread1of1ForFork2_end=v_writerThread1of1ForFork2_end_6, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5, writerThread1of1ForFork2_start=v_writerThread1of1ForFork2_start_4, writerThread1of1ForFork2_thidvar0=v_writerThread1of1ForFork2_thidvar0_2} AuxVars[] AssignedVars[writerThread1of1ForFork2_j, writerThread1of1ForFork2_end, writerThread1of1ForFork2_start, writerThread1of1ForFork2_thidvar0]" "[84] $Ultimate##0-->L41-1: Formula: (= v_writerThread1of1ForFork2_j_1 v_writerThread1of1ForFork2_start_1) InVars {writerThread1of1ForFork2_start=v_writerThread1of1ForFork2_start_1} OutVars{writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_1, writerThread1of1ForFork2_start=v_writerThread1of1ForFork2_start_1} AuxVars[] AssignedVars[writerThread1of1ForFork2_j]" "[85] L41-1-->writerFINAL: Formula: (<= v_writerThread1of1ForFork2_end_1 v_writerThread1of1ForFork2_j_3) InVars {writerThread1of1ForFork2_end=v_writerThread1of1ForFork2_end_1, writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_3} OutVars{writerThread1of1ForFork2_end=v_writerThread1of1ForFork2_end_1, writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_3} AuxVars[] AssignedVars[]" "[87] writerFINAL-->writerEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[]" "[93] L59-1-->$Ultimate##0: Formula: (and (= v_readerThread1of1ForFork0_thidvar0_2 2) (= v_readerThread1of1ForFork0_thidvar1_2 2) (= v_readerThread1of1ForFork0_start_4 v_ULTIMATE.start_min2_5) (= v_readerThread1of1ForFork0_end_6 v_ULTIMATE.start_max2_5)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_5, ULTIMATE.start_min2=v_ULTIMATE.start_min2_5} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_5, readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_4, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_8, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_18, readerThread1of1ForFork0_thidvar1=v_readerThread1of1ForFork0_thidvar1_2, readerThread1of1ForFork0_thidvar0=v_readerThread1of1ForFork0_thidvar0_2, ULTIMATE.start_min2=v_ULTIMATE.start_min2_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_6} AuxVars[] AssignedVars[readerThread1of1ForFork0_start, readerThread1of1ForFork0_sum, readerThread1of1ForFork0_i, readerThread1of1ForFork0_thidvar1, readerThread1of1ForFork0_thidvar0, readerThread1of1ForFork0_end]" "[66] $Ultimate##0-->L27: Formula: (= v_readerThread1of1ForFork0_sum_1 0) InVars {} OutVars{readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_1} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum]" "[67] L27-->L28-1: Formula: (= v_readerThread1of1ForFork0_start_1 v_readerThread1of1ForFork0_i_1) InVars {readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_1, readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_1} AuxVars[] AssignedVars[readerThread1of1ForFork0_i]" "[100] writerEXIT-->L61: Formula: (= v_writerThread1of1ForFork2_thidvar0_4 1) InVars {writerThread1of1ForFork2_thidvar0=v_writerThread1of1ForFork2_thidvar0_4} OutVars{writerThread1of1ForFork2_thidvar0=v_writerThread1of1ForFork2_thidvar0_4} AuxVars[] AssignedVars[]" "[68] L28-1-->readerFINAL: Formula: (<= v_readerThread1of1ForFork0_end_1 v_readerThread1of1ForFork0_i_3) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_3, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_3, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_1} AuxVars[] AssignedVars[]" "[70] readerFINAL-->readerEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[]" "[101] readerEXIT-->L62: Formula: (and (= v_readerThread1of1ForFork0_thidvar0_4 2) (= v_ULTIMATE.start_sum_2 v_readerThread1of1ForFork0_sum_10) (= v_readerThread1of1ForFork0_thidvar1_4 2)) InVars {readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_10, readerThread1of1ForFork0_thidvar1=v_readerThread1of1ForFork0_thidvar1_4, readerThread1of1ForFork0_thidvar0=v_readerThread1of1ForFork0_thidvar0_4} OutVars{ULTIMATE.start_sum=v_ULTIMATE.start_sum_2, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_10, readerThread1of1ForFork0_thidvar1=v_readerThread1of1ForFork0_thidvar1_4, readerThread1of1ForFork0_thidvar0=v_readerThread1of1ForFork0_thidvar0_4} AuxVars[] AssignedVars[ULTIMATE.start_sum]" "[61] L62-->L67: Formula: (and (<= v_ULTIMATE.start_min2_1 v_ULTIMATE.start_max1_1) (<= v_ULTIMATE.start_min1_1 v_ULTIMATE.start_max2_1)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_1, ULTIMATE.start_max2=v_ULTIMATE.start_max2_1, ULTIMATE.start_min1=v_ULTIMATE.start_min1_1, ULTIMATE.start_min2=v_ULTIMATE.start_min2_1} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_1, ULTIMATE.start_max2=v_ULTIMATE.start_max2_1, ULTIMATE.start_min1=v_ULTIMATE.start_min1_1, ULTIMATE.start_min2=v_ULTIMATE.start_min2_1} AuxVars[] AssignedVars[]" "[96] L67-->$Ultimate##0: Formula: (and (= v_readerThread1of1ForFork1_end_6 v_ULTIMATE.start_max2_7) (= v_readerThread1of1ForFork1_thidvar0_2 2) (= v_ULTIMATE.start_min2_7 v_readerThread1of1ForFork1_start_4) (= v_readerThread1of1ForFork1_thidvar1_2 2)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_7, ULTIMATE.start_min2=v_ULTIMATE.start_min2_7} OutVars{readerThread1of1ForFork1_thidvar0=v_readerThread1of1ForFork1_thidvar0_2, ULTIMATE.start_max2=v_ULTIMATE.start_max2_7, readerThread1of1ForFork1_thidvar1=v_readerThread1of1ForFork1_thidvar1_2, readerThread1of1ForFork1_sum=v_readerThread1of1ForFork1_sum_8, readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_18, ULTIMATE.start_min2=v_ULTIMATE.start_min2_7, readerThread1of1ForFork1_end=v_readerThread1of1ForFork1_end_6, readerThread1of1ForFork1_start=v_readerThread1of1ForFork1_start_4} AuxVars[] AssignedVars[readerThread1of1ForFork1_thidvar0, readerThread1of1ForFork1_thidvar1, readerThread1of1ForFork1_sum, readerThread1of1ForFork1_i, readerThread1of1ForFork1_end, readerThread1of1ForFork1_start]" "[75] $Ultimate##0-->L27: Formula: (= v_readerThread1of1ForFork1_sum_1 0) InVars {} OutVars{readerThread1of1ForFork1_sum=v_readerThread1of1ForFork1_sum_1} AuxVars[] AssignedVars[readerThread1of1ForFork1_sum]" "[76] L27-->L28-1: Formula: (= v_readerThread1of1ForFork1_i_1 v_readerThread1of1ForFork1_start_1) InVars {readerThread1of1ForFork1_start=v_readerThread1of1ForFork1_start_1} OutVars{readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_1, readerThread1of1ForFork1_start=v_readerThread1of1ForFork1_start_1} AuxVars[] AssignedVars[readerThread1of1ForFork1_i]" [2025-04-26 16:21:37,108 INFO L754 eck$LassoCheckResult]: Loop: "[78] L28-1-->L29: Formula: (< v_readerThread1of1ForFork1_i_5 v_readerThread1of1ForFork1_end_3) InVars {readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_5, readerThread1of1ForFork1_end=v_readerThread1of1ForFork1_end_3} OutVars{readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_5, readerThread1of1ForFork1_end=v_readerThread1of1ForFork1_end_3} AuxVars[] AssignedVars[]" "[81] L29-->L30: Formula: (and (<= v_readerThread1of1ForFork1_i_9 v_N_2) (<= 0 v_readerThread1of1ForFork1_i_9)) InVars {readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_9, N=v_N_2} OutVars{readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_9, N=v_N_2} AuxVars[] AssignedVars[]" "[82] L30-->L31: Formula: (= v_readerThread1of1ForFork1_sum_4 (+ (select v_A_1 v_readerThread1of1ForFork1_i_11) v_readerThread1of1ForFork1_sum_3)) InVars {A=v_A_1, readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_11, readerThread1of1ForFork1_sum=v_readerThread1of1ForFork1_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_11, readerThread1of1ForFork1_sum=v_readerThread1of1ForFork1_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork1_sum]" "[83] L31-->L28-1: Formula: (= (+ v_readerThread1of1ForFork1_i_13 1) v_readerThread1of1ForFork1_i_14) InVars {readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_13} OutVars{readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_14} AuxVars[] AssignedVars[readerThread1of1ForFork1_i]" [2025-04-26 16:21:37,108 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:37,108 INFO L85 PathProgramCache]: Analyzing trace with hash 1751564803, now seen corresponding path program 1 times [2025-04-26 16:21:37,108 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:21:37,108 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1451141962] [2025-04-26 16:21:37,108 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:21:37,108 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:21:37,111 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 17 statements into 1 equivalence classes. [2025-04-26 16:21:37,115 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 17 of 17 statements. [2025-04-26 16:21:37,115 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:37,115 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:37,115 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:21:37,116 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 17 statements into 1 equivalence classes. [2025-04-26 16:21:37,119 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 17 of 17 statements. [2025-04-26 16:21:37,119 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:37,119 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:37,121 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:21:37,121 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:37,121 INFO L85 PathProgramCache]: Analyzing trace with hash 3327685, now seen corresponding path program 1 times [2025-04-26 16:21:37,121 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:21:37,121 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [352313106] [2025-04-26 16:21:37,121 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:21:37,121 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:21:37,123 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:37,124 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:37,124 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:37,124 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:37,124 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:21:37,125 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:37,126 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:37,126 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:37,126 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:37,127 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:21:37,127 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:37,127 INFO L85 PathProgramCache]: Analyzing trace with hash 1938077639, now seen corresponding path program 1 times [2025-04-26 16:21:37,127 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:21:37,127 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [964489689] [2025-04-26 16:21:37,127 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:21:37,127 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:21:37,131 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 21 statements into 1 equivalence classes. [2025-04-26 16:21:37,140 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 21 of 21 statements. [2025-04-26 16:21:37,140 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:37,140 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:21:37,281 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 16:21:37,281 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-04-26 16:21:37,281 INFO L324 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [964489689] [2025-04-26 16:21:37,282 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [964489689] provided 1 perfect and 0 imperfect interpolant sequences [2025-04-26 16:21:37,282 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-04-26 16:21:37,284 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2025-04-26 16:21:37,284 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [517410044] [2025-04-26 16:21:37,284 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-04-26 16:21:37,317 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-04-26 16:21:37,319 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2025-04-26 16:21:37,319 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2025-04-26 16:21:37,320 INFO L87 Difference]: Start difference. First operand 151 states and 339 transitions. cyclomatic complexity: 202 Second operand has 7 states, 7 states have (on average 3.0) internal successors, (in total 21), 7 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 16:21:37,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-04-26 16:21:37,451 INFO L93 Difference]: Finished difference Result 253 states and 554 transitions. [2025-04-26 16:21:37,451 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 253 states and 554 transitions. [2025-04-26 16:21:37,453 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2025-04-26 16:21:37,455 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 253 states to 219 states and 480 transitions. [2025-04-26 16:21:37,455 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 62 [2025-04-26 16:21:37,455 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 62 [2025-04-26 16:21:37,455 INFO L74 IsDeterministic]: Start isDeterministic. Operand 219 states and 480 transitions. [2025-04-26 16:21:37,455 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is not deterministic. [2025-04-26 16:21:37,455 INFO L218 hiAutomatonCegarLoop]: Abstraction has 219 states and 480 transitions. [2025-04-26 16:21:37,456 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 219 states and 480 transitions. [2025-04-26 16:21:37,461 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 219 to 152. [2025-04-26 16:21:37,461 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 152 states, 152 states have (on average 2.1973684210526314) internal successors, (in total 334), 151 states have internal predecessors, (334), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 16:21:37,462 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 152 states to 152 states and 334 transitions. [2025-04-26 16:21:37,462 INFO L240 hiAutomatonCegarLoop]: Abstraction has 152 states and 334 transitions. [2025-04-26 16:21:37,465 INFO L140 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-04-26 16:21:37,466 INFO L438 stractBuchiCegarLoop]: Abstraction has 152 states and 334 transitions. [2025-04-26 16:21:37,466 INFO L340 stractBuchiCegarLoop]: ======== Iteration 4 ============ [2025-04-26 16:21:37,466 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 152 states and 334 transitions. [2025-04-26 16:21:37,467 INFO L131 ngComponentsAnalysis]: Automaton has 1 accepting balls. 4 [2025-04-26 16:21:37,467 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is false [2025-04-26 16:21:37,467 INFO L120 BuchiIsEmpty]: Starting construction of run [2025-04-26 16:21:37,467 INFO L148 hiAutomatonCegarLoop]: Counterexample stem histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-04-26 16:21:37,467 INFO L149 hiAutomatonCegarLoop]: Counterexample loop histogram [1, 1, 1, 1] [2025-04-26 16:21:37,468 INFO L752 eck$LassoCheckResult]: Stem: "[63] $Ultimate##0-->L56: Formula: (and (<= v_ULTIMATE.start_max1_3 v_N_3) (<= 0 v_ULTIMATE.start_min1_3)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3, N=v_N_3} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_3, ULTIMATE.start_min1=v_ULTIMATE.start_min1_3, N=v_N_3} AuxVars[] AssignedVars[]" "[41] L56-->L59: Formula: (and (<= v_ULTIMATE.start_max2_3 v_N_4) (<= 0 v_ULTIMATE.start_min2_3)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_4, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_3, N=v_N_4, ULTIMATE.start_min2=v_ULTIMATE.start_min2_3} AuxVars[] AssignedVars[]" "[99] L59-->$Ultimate##0: Formula: (and (= v_writerThread1of1ForFork2_end_6 v_ULTIMATE.start_max1_5) (= v_writerThread1of1ForFork2_thidvar0_2 1) (= v_writerThread1of1ForFork2_start_4 v_ULTIMATE.start_min1_5)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_5, writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_16, writerThread1of1ForFork2_end=v_writerThread1of1ForFork2_end_6, ULTIMATE.start_min1=v_ULTIMATE.start_min1_5, writerThread1of1ForFork2_start=v_writerThread1of1ForFork2_start_4, writerThread1of1ForFork2_thidvar0=v_writerThread1of1ForFork2_thidvar0_2} AuxVars[] AssignedVars[writerThread1of1ForFork2_j, writerThread1of1ForFork2_end, writerThread1of1ForFork2_start, writerThread1of1ForFork2_thidvar0]" "[84] $Ultimate##0-->L41-1: Formula: (= v_writerThread1of1ForFork2_j_1 v_writerThread1of1ForFork2_start_1) InVars {writerThread1of1ForFork2_start=v_writerThread1of1ForFork2_start_1} OutVars{writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_1, writerThread1of1ForFork2_start=v_writerThread1of1ForFork2_start_1} AuxVars[] AssignedVars[writerThread1of1ForFork2_j]" "[85] L41-1-->writerFINAL: Formula: (<= v_writerThread1of1ForFork2_end_1 v_writerThread1of1ForFork2_j_3) InVars {writerThread1of1ForFork2_end=v_writerThread1of1ForFork2_end_1, writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_3} OutVars{writerThread1of1ForFork2_end=v_writerThread1of1ForFork2_end_1, writerThread1of1ForFork2_j=v_writerThread1of1ForFork2_j_3} AuxVars[] AssignedVars[]" "[87] writerFINAL-->writerEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[]" "[93] L59-1-->$Ultimate##0: Formula: (and (= v_readerThread1of1ForFork0_thidvar0_2 2) (= v_readerThread1of1ForFork0_thidvar1_2 2) (= v_readerThread1of1ForFork0_start_4 v_ULTIMATE.start_min2_5) (= v_readerThread1of1ForFork0_end_6 v_ULTIMATE.start_max2_5)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_5, ULTIMATE.start_min2=v_ULTIMATE.start_min2_5} OutVars{ULTIMATE.start_max2=v_ULTIMATE.start_max2_5, readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_4, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_8, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_18, readerThread1of1ForFork0_thidvar1=v_readerThread1of1ForFork0_thidvar1_2, readerThread1of1ForFork0_thidvar0=v_readerThread1of1ForFork0_thidvar0_2, ULTIMATE.start_min2=v_ULTIMATE.start_min2_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_6} AuxVars[] AssignedVars[readerThread1of1ForFork0_start, readerThread1of1ForFork0_sum, readerThread1of1ForFork0_i, readerThread1of1ForFork0_thidvar1, readerThread1of1ForFork0_thidvar0, readerThread1of1ForFork0_end]" "[66] $Ultimate##0-->L27: Formula: (= v_readerThread1of1ForFork0_sum_1 0) InVars {} OutVars{readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_1} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum]" "[67] L27-->L28-1: Formula: (= v_readerThread1of1ForFork0_start_1 v_readerThread1of1ForFork0_i_1) InVars {readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_1, readerThread1of1ForFork0_start=v_readerThread1of1ForFork0_start_1} AuxVars[] AssignedVars[readerThread1of1ForFork0_i]" "[100] writerEXIT-->L61: Formula: (= v_writerThread1of1ForFork2_thidvar0_4 1) InVars {writerThread1of1ForFork2_thidvar0=v_writerThread1of1ForFork2_thidvar0_4} OutVars{writerThread1of1ForFork2_thidvar0=v_writerThread1of1ForFork2_thidvar0_4} AuxVars[] AssignedVars[]" "[69] L28-1-->L29: Formula: (< v_readerThread1of1ForFork0_i_5 v_readerThread1of1ForFork0_end_3) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_5, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_3} AuxVars[] AssignedVars[]" "[72] L29-->L30: Formula: (and (<= v_readerThread1of1ForFork0_i_9 v_N_2) (<= 0 v_readerThread1of1ForFork0_i_9)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, N=v_N_2} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_9, N=v_N_2} AuxVars[] AssignedVars[]" "[73] L30-->L31: Formula: (= (+ v_readerThread1of1ForFork0_sum_3 (select v_A_1 v_readerThread1of1ForFork0_i_11)) v_readerThread1of1ForFork0_sum_4) InVars {A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_11, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_11, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork0_sum]" "[74] L31-->L28-1: Formula: (= v_readerThread1of1ForFork0_i_14 (+ v_readerThread1of1ForFork0_i_13 1)) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_13} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_14} AuxVars[] AssignedVars[readerThread1of1ForFork0_i]" "[68] L28-1-->readerFINAL: Formula: (<= v_readerThread1of1ForFork0_end_1 v_readerThread1of1ForFork0_i_3) InVars {readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_3, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_1} OutVars{readerThread1of1ForFork0_i=v_readerThread1of1ForFork0_i_3, readerThread1of1ForFork0_end=v_readerThread1of1ForFork0_end_1} AuxVars[] AssignedVars[]" "[70] readerFINAL-->readerEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[]" "[101] readerEXIT-->L62: Formula: (and (= v_readerThread1of1ForFork0_thidvar0_4 2) (= v_ULTIMATE.start_sum_2 v_readerThread1of1ForFork0_sum_10) (= v_readerThread1of1ForFork0_thidvar1_4 2)) InVars {readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_10, readerThread1of1ForFork0_thidvar1=v_readerThread1of1ForFork0_thidvar1_4, readerThread1of1ForFork0_thidvar0=v_readerThread1of1ForFork0_thidvar0_4} OutVars{ULTIMATE.start_sum=v_ULTIMATE.start_sum_2, readerThread1of1ForFork0_sum=v_readerThread1of1ForFork0_sum_10, readerThread1of1ForFork0_thidvar1=v_readerThread1of1ForFork0_thidvar1_4, readerThread1of1ForFork0_thidvar0=v_readerThread1of1ForFork0_thidvar0_4} AuxVars[] AssignedVars[ULTIMATE.start_sum]" "[61] L62-->L67: Formula: (and (<= v_ULTIMATE.start_min2_1 v_ULTIMATE.start_max1_1) (<= v_ULTIMATE.start_min1_1 v_ULTIMATE.start_max2_1)) InVars {ULTIMATE.start_max1=v_ULTIMATE.start_max1_1, ULTIMATE.start_max2=v_ULTIMATE.start_max2_1, ULTIMATE.start_min1=v_ULTIMATE.start_min1_1, ULTIMATE.start_min2=v_ULTIMATE.start_min2_1} OutVars{ULTIMATE.start_max1=v_ULTIMATE.start_max1_1, ULTIMATE.start_max2=v_ULTIMATE.start_max2_1, ULTIMATE.start_min1=v_ULTIMATE.start_min1_1, ULTIMATE.start_min2=v_ULTIMATE.start_min2_1} AuxVars[] AssignedVars[]" "[96] L67-->$Ultimate##0: Formula: (and (= v_readerThread1of1ForFork1_end_6 v_ULTIMATE.start_max2_7) (= v_readerThread1of1ForFork1_thidvar0_2 2) (= v_ULTIMATE.start_min2_7 v_readerThread1of1ForFork1_start_4) (= v_readerThread1of1ForFork1_thidvar1_2 2)) InVars {ULTIMATE.start_max2=v_ULTIMATE.start_max2_7, ULTIMATE.start_min2=v_ULTIMATE.start_min2_7} OutVars{readerThread1of1ForFork1_thidvar0=v_readerThread1of1ForFork1_thidvar0_2, ULTIMATE.start_max2=v_ULTIMATE.start_max2_7, readerThread1of1ForFork1_thidvar1=v_readerThread1of1ForFork1_thidvar1_2, readerThread1of1ForFork1_sum=v_readerThread1of1ForFork1_sum_8, readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_18, ULTIMATE.start_min2=v_ULTIMATE.start_min2_7, readerThread1of1ForFork1_end=v_readerThread1of1ForFork1_end_6, readerThread1of1ForFork1_start=v_readerThread1of1ForFork1_start_4} AuxVars[] AssignedVars[readerThread1of1ForFork1_thidvar0, readerThread1of1ForFork1_thidvar1, readerThread1of1ForFork1_sum, readerThread1of1ForFork1_i, readerThread1of1ForFork1_end, readerThread1of1ForFork1_start]" "[75] $Ultimate##0-->L27: Formula: (= v_readerThread1of1ForFork1_sum_1 0) InVars {} OutVars{readerThread1of1ForFork1_sum=v_readerThread1of1ForFork1_sum_1} AuxVars[] AssignedVars[readerThread1of1ForFork1_sum]" "[76] L27-->L28-1: Formula: (= v_readerThread1of1ForFork1_i_1 v_readerThread1of1ForFork1_start_1) InVars {readerThread1of1ForFork1_start=v_readerThread1of1ForFork1_start_1} OutVars{readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_1, readerThread1of1ForFork1_start=v_readerThread1of1ForFork1_start_1} AuxVars[] AssignedVars[readerThread1of1ForFork1_i]" [2025-04-26 16:21:37,468 INFO L754 eck$LassoCheckResult]: Loop: "[78] L28-1-->L29: Formula: (< v_readerThread1of1ForFork1_i_5 v_readerThread1of1ForFork1_end_3) InVars {readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_5, readerThread1of1ForFork1_end=v_readerThread1of1ForFork1_end_3} OutVars{readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_5, readerThread1of1ForFork1_end=v_readerThread1of1ForFork1_end_3} AuxVars[] AssignedVars[]" "[81] L29-->L30: Formula: (and (<= v_readerThread1of1ForFork1_i_9 v_N_2) (<= 0 v_readerThread1of1ForFork1_i_9)) InVars {readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_9, N=v_N_2} OutVars{readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_9, N=v_N_2} AuxVars[] AssignedVars[]" "[82] L30-->L31: Formula: (= v_readerThread1of1ForFork1_sum_4 (+ (select v_A_1 v_readerThread1of1ForFork1_i_11) v_readerThread1of1ForFork1_sum_3)) InVars {A=v_A_1, readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_11, readerThread1of1ForFork1_sum=v_readerThread1of1ForFork1_sum_3} OutVars{A=v_A_1, readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_11, readerThread1of1ForFork1_sum=v_readerThread1of1ForFork1_sum_4} AuxVars[] AssignedVars[readerThread1of1ForFork1_sum]" "[83] L31-->L28-1: Formula: (= (+ v_readerThread1of1ForFork1_i_13 1) v_readerThread1of1ForFork1_i_14) InVars {readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_13} OutVars{readerThread1of1ForFork1_i=v_readerThread1of1ForFork1_i_14} AuxVars[] AssignedVars[readerThread1of1ForFork1_i]" [2025-04-26 16:21:37,469 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:37,469 INFO L85 PathProgramCache]: Analyzing trace with hash 798065279, now seen corresponding path program 1 times [2025-04-26 16:21:37,469 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:21:37,469 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1708508005] [2025-04-26 16:21:37,469 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:21:37,469 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:21:37,474 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 21 statements into 1 equivalence classes. [2025-04-26 16:21:37,482 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 21 of 21 statements. [2025-04-26 16:21:37,482 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:37,482 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:37,482 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:21:37,484 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 21 statements into 1 equivalence classes. [2025-04-26 16:21:37,490 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 21 of 21 statements. [2025-04-26 16:21:37,494 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:37,495 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:37,499 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:21:37,499 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:37,499 INFO L85 PathProgramCache]: Analyzing trace with hash 3327685, now seen corresponding path program 2 times [2025-04-26 16:21:37,499 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:21:37,500 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1989911244] [2025-04-26 16:21:37,500 INFO L95 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2025-04-26 16:21:37,500 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:21:37,504 INFO L108 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:37,509 INFO L111 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:37,509 INFO L114 AnnotateAndAsserter]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2025-04-26 16:21:37,509 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:37,509 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:21:37,510 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:37,511 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:37,511 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:37,511 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:37,512 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:21:37,512 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:37,512 INFO L85 PathProgramCache]: Analyzing trace with hash 774036035, now seen corresponding path program 1 times [2025-04-26 16:21:37,512 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-04-26 16:21:37,512 INFO L324 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1865075496] [2025-04-26 16:21:37,512 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-04-26 16:21:37,512 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-04-26 16:21:37,517 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 25 statements into 1 equivalence classes. [2025-04-26 16:21:37,524 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-04-26 16:21:37,524 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:37,524 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:37,524 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-04-26 16:21:37,528 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 25 statements into 1 equivalence classes. [2025-04-26 16:21:37,535 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 25 of 25 statements. [2025-04-26 16:21:37,535 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:37,535 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-04-26 16:21:37,537 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-04-26 16:21:37,800 INFO L206 LassoAnalysis]: Preferences: [2025-04-26 16:21:37,801 INFO L125 ssoRankerPreferences]: Compute integeral hull: false [2025-04-26 16:21:37,801 INFO L126 ssoRankerPreferences]: Enable LassoPartitioneer: true [2025-04-26 16:21:37,801 INFO L127 ssoRankerPreferences]: Term annotations enabled: false [2025-04-26 16:21:37,801 INFO L128 ssoRankerPreferences]: Use exernal solver: false [2025-04-26 16:21:37,801 INFO L129 ssoRankerPreferences]: SMT solver command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:37,801 INFO L130 ssoRankerPreferences]: Dump SMT script to file: false [2025-04-26 16:21:37,801 INFO L131 ssoRankerPreferences]: Path of dumped script: [2025-04-26 16:21:37,801 INFO L132 ssoRankerPreferences]: Filename of dumped script: optimistic-concurrency1.bpl_petrified1_Iteration4_Lasso [2025-04-26 16:21:37,801 INFO L133 ssoRankerPreferences]: MapElimAlgo: Frank [2025-04-26 16:21:37,801 INFO L243 LassoAnalysis]: Starting lasso preprocessing... [2025-04-26 16:21:37,802 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:37,880 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:37,882 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:37,885 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:37,888 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:37,890 INFO L118 MapEliminator]: Using MapEliminator with SimplificationTechnique=SIMPLIFY_DDA AddInequalities=false OnlyTrivialImplicationsArrayWrite=true OnlyTrivialImplicationsForModifiedArguments=true OnlyArgumentsInFormula=true [2025-04-26 16:21:38,043 INFO L261 LassoAnalysis]: Preprocessing complete. [2025-04-26 16:21:38,043 INFO L453 LassoAnalysis]: Using template 'affine'. [2025-04-26 16:21:38,043 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:38,043 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:38,046 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:38,047 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Waiting until timeout for monitored process [2025-04-26 16:21:38,048 INFO L120 nArgumentSynthesizer]: Termination Analysis Settings: Termination analysis: LINEAR_WITH_GUESSESNumber of strict supporting invariants: 0Number of non-strict supporting invariants: 1Consider only non-deceasing supporting invariants: trueSimplify termination arguments: trueSimplify supporting invariants: trueOverapproximate stem: false [2025-04-26 16:21:38,059 INFO L338 nArgumentSynthesizer]: Template has degree 0. [2025-04-26 16:21:38,060 INFO L203 nArgumentSynthesizer]: 1 stem disjuncts [2025-04-26 16:21:38,060 INFO L204 nArgumentSynthesizer]: 1 loop disjuncts [2025-04-26 16:21:38,060 INFO L205 nArgumentSynthesizer]: 2 template conjuncts. [2025-04-26 16:21:38,066 INFO L402 nArgumentSynthesizer]: We have 6 Motzkin's Theorem applications. [2025-04-26 16:21:38,066 INFO L403 nArgumentSynthesizer]: A total of 2 supporting invariants were added. [2025-04-26 16:21:38,076 INFO L420 nArgumentSynthesizer]: Found a termination argument, trying to simplify. [2025-04-26 16:21:38,090 INFO L436 ModelExtractionUtils]: Simplification made 8 calls to the SMT solver. [2025-04-26 16:21:38,090 INFO L437 ModelExtractionUtils]: 34 out of 46 variables were initially zero. Simplification set additionally 7 variables to zero. [2025-04-26 16:21:38,091 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 [2025-04-26 16:21:38,091 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 [2025-04-26 16:21:38,092 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (exit command is (exit), workingDir is null) [2025-04-26 16:21:38,094 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Waiting until timeout for monitored process [2025-04-26 16:21:38,095 INFO L436 nArgumentSynthesizer]: Simplifying supporting invariants... [2025-04-26 16:21:38,110 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (14)] Forceful destruction successful, exit code 0 [2025-04-26 16:21:38,110 INFO L439 nArgumentSynthesizer]: Removed 1 redundant supporting invariants from a total of 2. [2025-04-26 16:21:38,111 INFO L476 LassoAnalysis]: Proved termination. [2025-04-26 16:21:38,111 INFO L478 LassoAnalysis]: Termination argument consisting of: Ranking function f(readerThread1of1ForFork1_i, N) = -2*readerThread1of1ForFork1_i + 3*N Supporting invariants [1*N - 1 >= 0] [2025-04-26 16:21:38,116 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (13)] Ended with exit code 0 [2025-04-26 16:21:38,124 INFO L156 tatePredicateManager]: 1 out of 1 supporting invariants were superfluous and have been removed [2025-04-26 16:21:38,133 INFO L155 PredicateUnifier]: Initialized classic predicate unifier [2025-04-26 16:21:38,140 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 21 statements into 1 equivalence classes. [2025-04-26 16:21:38,149 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 21 of 21 statements. [2025-04-26 16:21:38,149 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:38,149 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:21:38,150 INFO L256 TraceCheckSpWp]: Trace formula consists of 59 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-04-26 16:21:38,151 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:21:38,171 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 4 statements into 1 equivalence classes. [2025-04-26 16:21:38,172 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 4 of 4 statements. [2025-04-26 16:21:38,172 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-04-26 16:21:38,172 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-04-26 16:21:38,172 WARN L254 TraceCheckSpWp]: Trace formula consists of 9 conjuncts, 5 conjuncts are in the unsatisfiable core [2025-04-26 16:21:38,173 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-04-26 16:21:38,195 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2025-04-26 16:21:38,195 INFO L141 lantAutomatonBouncer]: Defining deterministic Buchi interpolant automaton with honda bouncer for stem and without honda bouncer for loop.1 stem predicates 2 loop predicates [2025-04-26 16:21:38,196 INFO L70 iDifferenceNCSBLazy3]: Start buchiDifferenceNCSBLazy3. First operand 152 states and 334 transitions. cyclomatic complexity: 196 Second operand has 4 states, 4 states have (on average 6.25) internal successors, (in total 25), 4 states have internal predecessors, (25), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 16:21:38,219 INFO L74 iDifferenceNCSBLazy3]: Finished buchiDifferenceNCSBLazy3. First operand 152 states and 334 transitions. cyclomatic complexity: 196. Second operand has 4 states, 4 states have (on average 6.25) internal successors, (in total 25), 4 states have internal predecessors, (25), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) Result 156 states and 339 transitions. Complement of second has 6 states. [2025-04-26 16:21:38,220 INFO L140 InterpolantAutomaton]: Switched to read-only mode: Buchi interpolant automaton has 4 states 1 stem states 2 non-accepting loop states 1 accepting loop states [2025-04-26 16:21:38,220 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.25) internal successors, (in total 25), 4 states have internal predecessors, (25), 0 states have call successors, (0), 0 states have call predecessors, (in total 0), 0 states have return successors, (0), 0 states have call predecessors, ( in total0), 0 states have call successors, (0) [2025-04-26 16:21:38,220 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 29 transitions. [2025-04-26 16:21:38,220 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 29 transitions. Stem has 21 letters. Loop has 4 letters. [2025-04-26 16:21:38,221 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:21:38,221 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 29 transitions. Stem has 25 letters. Loop has 4 letters. [2025-04-26 16:21:38,221 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:21:38,221 INFO L85 BuchiAccepts]: Start buchiAccepts Operand 4 states and 29 transitions. Stem has 21 letters. Loop has 8 letters. [2025-04-26 16:21:38,221 INFO L117 BuchiAccepts]: Finished buchiAccepts. [2025-04-26 16:21:38,221 INFO L82 GeneralOperation]: Start removeNonLiveStates. Operand 156 states and 339 transitions. [2025-04-26 16:21:38,222 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2025-04-26 16:21:38,222 INFO L88 GeneralOperation]: Finished removeNonLiveStates. Reduced from 156 states to 0 states and 0 transitions. [2025-04-26 16:21:38,222 INFO L87 BuchiClosureNwa]: Accepting states before buchiClosure: 0 [2025-04-26 16:21:38,222 INFO L106 BuchiClosureNwa]: Accepting states after buchiClosure: 0 [2025-04-26 16:21:38,223 INFO L74 IsDeterministic]: Start isDeterministic. Operand 0 states and 0 transitions. [2025-04-26 16:21:38,223 INFO L81 IsDeterministic]: Finished isDeterministic. Operand is deterministic. [2025-04-26 16:21:38,223 INFO L218 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 16:21:38,223 INFO L240 hiAutomatonCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 16:21:38,223 INFO L438 stractBuchiCegarLoop]: Abstraction has 0 states and 0 transitions. [2025-04-26 16:21:38,223 INFO L340 stractBuchiCegarLoop]: ======== Iteration 5 ============ [2025-04-26 16:21:38,223 INFO L73 BuchiIsEmpty]: Start buchiIsEmpty. Operand 0 states and 0 transitions. [2025-04-26 16:21:38,223 INFO L131 ngComponentsAnalysis]: Automaton has 0 accepting balls. 0 [2025-04-26 16:21:38,223 INFO L88 BuchiIsEmpty]: Finished buchiIsEmpty Result is true [2025-04-26 16:21:38,230 INFO L201 PluginConnector]: Adding new model optimistic-concurrency1.bpl de.uni_freiburg.informatik.ultimate.plugins.generator.buchiautomizer CFG 26.04 04:21:38 BoogieIcfgContainer [2025-04-26 16:21:38,230 INFO L131 PluginConnector]: ------------------------ END BuchiAutomizer---------------------------- [2025-04-26 16:21:38,231 INFO L158 Benchmark]: Toolchain (without parser) took 2979.12ms. Allocated memory was 159.4MB in the beginning and 167.8MB in the end (delta: 8.4MB). Free memory was 86.6MB in the beginning and 54.4MB in the end (delta: 32.2MB). Peak memory consumption was 42.9MB. Max. memory is 8.0GB. [2025-04-26 16:21:38,231 INFO L158 Benchmark]: Boogie PL CUP Parser took 0.17ms. Allocated memory is still 159.4MB. Free memory is still 87.6MB. There was no memory consumed. Max. memory is 8.0GB. [2025-04-26 16:21:38,232 INFO L158 Benchmark]: Boogie Procedure Inliner took 27.99ms. Allocated memory is still 159.4MB. Free memory was 86.6MB in the beginning and 84.9MB in the end (delta: 1.7MB). There was no memory consumed. Max. memory is 8.0GB. [2025-04-26 16:21:38,232 INFO L158 Benchmark]: Boogie Preprocessor took 25.62ms. Allocated memory is still 159.4MB. Free memory was 84.9MB in the beginning and 83.8MB in the end (delta: 1.0MB). There was no memory consumed. Max. memory is 8.0GB. [2025-04-26 16:21:38,233 INFO L158 Benchmark]: RCFGBuilder took 175.79ms. Allocated memory is still 159.4MB. Free memory was 83.8MB in the beginning and 74.2MB in the end (delta: 9.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2025-04-26 16:21:38,233 INFO L158 Benchmark]: BuchiAutomizer took 2745.39ms. Allocated memory was 159.4MB in the beginning and 167.8MB in the end (delta: 8.4MB). Free memory was 74.2MB in the beginning and 54.4MB in the end (delta: 19.8MB). Peak memory consumption was 30.3MB. Max. memory is 8.0GB. [2025-04-26 16:21:38,234 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * Boogie PL CUP Parser took 0.17ms. Allocated memory is still 159.4MB. Free memory is still 87.6MB. There was no memory consumed. Max. memory is 8.0GB. * Boogie Procedure Inliner took 27.99ms. Allocated memory is still 159.4MB. Free memory was 86.6MB in the beginning and 84.9MB in the end (delta: 1.7MB). There was no memory consumed. Max. memory is 8.0GB. * Boogie Preprocessor took 25.62ms. Allocated memory is still 159.4MB. Free memory was 84.9MB in the beginning and 83.8MB in the end (delta: 1.0MB). There was no memory consumed. Max. memory is 8.0GB. * RCFGBuilder took 175.79ms. Allocated memory is still 159.4MB. Free memory was 83.8MB in the beginning and 74.2MB in the end (delta: 9.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * BuchiAutomizer took 2745.39ms. Allocated memory was 159.4MB in the beginning and 167.8MB in the end (delta: 8.4MB). Free memory was 74.2MB in the beginning and 54.4MB in the end (delta: 19.8MB). Peak memory consumption was 30.3MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: Timing statistics BüchiAutomizer plugin needed 2.6s and 5 iterations. TraceHistogramMax:1. Analysis of lassos took 1.9s. Construction of modules took 0.1s. Büchi inclusion checks took 0.4s. Highest rank in rank-based complementation 3. Minimization of det autom 1. Minimization of nondet autom 3. Automata minimization 0.0s AutomataMinimizationTime, 3 MinimizatonAttempts, 108 StatesRemovedByMinimization, 3 NontrivialMinimizations. Non-live state removal took 0.0s Buchi closure took 0.0s. Biggest automaton had -1 states and ocurred in iteration -1. Nontrivial modules had stage [3, 0, 0, 0, 0]. InterpolantCoveringCapabilityFinite: 0/0 InterpolantCoveringCapabilityBuchi: 0/0 HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 193 SdHoareTripleChecker+Valid, 0.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 190 mSDsluCounter, 345 SdHoareTripleChecker+Invalid, 0.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 215 mSDsCounter, 6 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 153 IncrementalHoareTripleChecker+Invalid, 159 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 6 mSolverCounterUnsat, 130 mSDtfsCounter, 153 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown LassoAnalysisResults: nont0 unkn0 SFLI0 SFLT0 conc1 concLT0 SILN0 SILU0 SILI0 SILT0 lasso3 LassoPreprocessingBenchmarks: Lassos: inital70 mio100 ax100 hnf100 lsp83 ukn93 mio100 lsp87 div100 bol100 ite100 ukn100 eq160 hnf91 smp100 dnf100 smp100 tf100 neg100 sie100 LassoTerminationAnalysisBenchmarks: ConstraintsSatisfiability: unsat Degree: 0 Time: 32ms VariablesStem: 1 VariablesLoop: 0 DisjunctsStem: 1 DisjunctsLoop: 1 SupportingInvariants: 2 MotzkinApplications: 6 LassoTerminationAnalysisBenchmarks: LassoNonterminationAnalysisSatFixpoint: 0 LassoNonterminationAnalysisSatUnbounded: 0 LassoNonterminationAnalysisUnsat: 0 LassoNonterminationAnalysisUnknown: 0 LassoNonterminationAnalysisTime: 0.0s InitialAbstractionConstructionTime: 0.0s InitialAbstraction: - StatisticsResult: Constructed decomposition of program Your program was decomposed into 4 terminating modules (1 trivial, 3 deterministic, 0 nondeterministic). One deterministic module has affine ranking function end + -1 * j and consists of 4 locations. One deterministic module has affine ranking function 2 * N + -2 * i + 1 and consists of 4 locations. One deterministic module has affine ranking function -2 * i + 3 * N and consists of 4 locations. 1 modules have a trivial ranking function, the largest among these consists of 7 locations. - TerminationAnalysisResult: Termination proven Buchi Automizer proved that your program is terminating RESULT: Ultimate proved your program to be correct! [2025-04-26 16:21:38,247 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UGemCutter-linux/z3 SMTLIB2_COMPLIANT=true -memory:1024 -smt2 -in -t:12000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...