| n1 ≥ m0, m0 + m1 ≤ # ar1 ⊦ subarray(copy(ar0, n0, ar1, n1, n2), m0, m1) = copy(ar0, n0, subarray(ar1, m0, m1), n1 - m0, n2) |
m0 + m1 ≤ # ar1, m0 ≤ n1 ⊦ copy(copy(ar0, n0, ar1, n1, n2), m0, mkarray(m1), 0, m1) = copy(ar0, n0, copy(ar1, m0, mkarray(m1), 0, m1), n1 - m0, n2)
Used simplifier rules: Subarray: ⊦ subarray(ar, m, n) = copy(ar, m, mkarray(n), 0, n);%ge: ⊦ n ≥ m ↔ m ≤ n; from specification nat