| # ar0 = n0 + n, i0 < sum(ar0, n, n0), n ≤ # ar0, ∀ n. n ≤ # ar → sum(ar, n, # ar - n) ≤ i, ∀ n. (n ≤ # ar → sum(ar, n, # ar - n) ≤ i) → n ≤ # ar0 → sum(ar0, n, # ar0 - n) ≤ i0 ⊦ |
# ar0 = n0 + n, i0 < sum(ar0, n, n0), ∀ n. n ≤ # ar → sum(ar, n, # ar - n) ≤ i, ∀ n. (n ≤ # ar → sum(ar, n, # ar - n) ≤ i) → n ≤ # ar0 → sum(ar0, n, # ar0 - n) ≤ i0 ⊦
Used simplifier rules: c: ⊦ m + n = n + m; from specification nat-basic%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic% ⊦ m ≤ m + n; (s)