| # zbrar0 = # zbrar1, n < m, m ≤ # zbrar0, ∀ n0. n0 ≤ n ∧ n0 ≤ m → zbrar0[n0].key = zbrar1[n0].key ⊦ key-range(zbrar0, n, m, ri) = key-range(zbrar1, n, m, ri) |
# zbrar0 = # zbrar1, n < m, n < # zbrar1, m ≤ # zbrar1, ∀ n0. n0 ≤ n ∧ n0 ≤ m → zbrar0[n0].key = zbrar1[n0].key ⊦ key-range(zbrar0, n, m, ri) = key-range(zbrar1, n, m, ri)
Used simplifier rules: lf-01: ⊦ m < n ∧ n = n0 → m < n0; (forward) from specification nat-basic% ⊦ m < n → n ≠ 0; (s)%fle: ⊦ m < n ∧ n ≤ n0 → m < n0; (forward) from specification nat%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic