| range=(copy(ar, n, ar0, n0 + m0, m1), n0, ar1, n1, m0 + m1), n + m1 ≤ # ar, n0 + m0 + m1 ≤ # ar0 ⊦ range=(ar0, n0, ar1, n1, m0) ∧ range=(ar, n, ar1, n1 + m0, m1) |
⊦ range=(ar0, n0, ar1, n1, m0 + m1) ↔ range=(ar0, n0, ar1, n1, m0) ∧ range=(ar0, n0 + m0, ar1, n1 + m0, m1)
range=(copy(ar, n, ar0, n0 + m0, m1), n0, ar1, n1, m0), range=(copy(ar, n, ar0, n0 + m0, m1), n0 + m0, ar1, n1 + m0, m1), n0 + m0 + m1 ≤ # ar0, n + m1 ≤ # ar ⊦ range=(ar0, n0, ar1, n1, m0) ∧ range=(ar, n, ar1, n1 + m0, m1)
Used terms: m1, m0, n1, ar1, n0, copy(ar, n, ar0, n0 + m0, m1)