| n2 + m ≤ # ar2, n0 + m ≤ # ar0, n1 + m ≤ # ar1, ∀ n. n < m → ar1[n1 + n] = ar2[n2 + n], ∀ n. n < m → ar0[n0 + n] = ar1[n1 + n] ⊦ n0 + m ≤ # ar0 ∧ (n < m → ar0[n0 + n] = ar2[n2 + n]) |
n < m, n2 + m ≤ # ar2, n0 + m ≤ # ar0, n1 + m ≤ # ar1, ∀ n. n < m → ar1[n1 + n] = ar2[n2 + n], ∀ n. n < m → ar0[n0 + n] = ar1[n1 + n] ⊦ ar0[n0 + n] = ar2[n2 + n]
Used simplifier rules: ⊦ m < n → n ≠ 0; (s)%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic