| n < # ar0 + # ar1, n < #(ar0 + ar1) ⊦ (n < n0 + # ar0 ∨ (n0 + # ar0) + m1 ≤ n ⊃ (ar0 + ar1)[n];ar[n + m - n0 + # ar0]) = (ar0 + copy(ar, m, ar1, n0, m1))[n] |
⊦ #(ar0 + ar1) = # ar0 + # ar1
⊦ (ar + ar0) + ar1 = ar + ar0 + ar1
n < # ar0 + # ar1 ⊦ (n < n0 + # ar0 ∨ (n0 + # ar0) + m1 ≤ n ⊃ (ar0 + ar1)[n];ar[n + m - n0 + # ar0]) = (ar0 + copy(ar, m, ar1, n0, m1))[n]
Used simplifier rules: append-len: ⊦ #(ar0 + ar1) = # ar0 + # ar1;%append-a: ⊦ (ar + ar0) + ar1 = ar + ar0 + ar1;