| # x = ii(n), ii(0) = 0, ii(n + 1) = ii(n) + # nextnli0(lf(n), n), lf(n + 1) = nextnli(lf(n), n), lf(0) = [], nextnli(x, n) = x + nextnli0(x, n), (x from ii(n)) to # nextnli0(lf(n), n) = nextnli0(lf(n), n), ∀ m. n ≤ m → nextnli0(lf(m), m) = [] ∧ ii(m) = ii(n), ∀ m, n. m ≤ n → ii(m) ≤ ii(n), ∀ n. lf(n + 1) = nextnli(lf(n), n), ∀ n0. lf(n0) = x to ii(n0) ⊦ nextnli(x, n) = x, ii(n) < ii(n + 1) |
# x = ii(n), ii(n + 1) = ii(n) + # nextnli0(lf(n), n), ii(0) = 0, lf(0) = [], lf(n + 1) = nextnli(lf(n), n), nextnli(x, n) = x + nextnli0(x, n), (x from ii(n)) to # nextnli0(lf(n), n) = nextnli0(lf(n), n), ii(n + 1) ≤ ii(n), ∀ n0. lf(n0) = x to ii(n0), ∀ n. lf(n + 1) = nextnli(lf(n), n), ∀ m, n. m ≤ n → ii(m) ≤ ii(n), ∀ m. n ≤ m → nextnli0(lf(m), m) = [] ∧ ii(m) = ii(n) ⊦ nextnli(x, n) = x
Used simplifier rules: ⊦ m < n ↔ ¬ n ≤ m; (ss)