| # ar = n0 + n, ar = subarray(ar, 0, n) + subarray(ar, n, n0), m ≤ n0, m < n0 → subarray(ar, n, n0) = subarray(subarray(ar, n, n0), 0, m) + subarray(subarray(ar, n, n0), m, n0 - m) ⊦ subarray(ar, n, m) = ar1 ↔ (∃ ar0, ar2. ar = ar0 + ar1 + ar2 ∧ # ar0 = n ∧ # ar2 = # ar1 + # ar2 - m) |
# ar = n0 + n, ar = subarray(ar, 0, n) + subarray(ar, n, n0), n0 = n1 + m, m ≤ n0, m < n0 → subarray(ar, n, n0) = subarray(subarray(ar, n, n0), 0, m) + subarray(subarray(ar, n, n0), m, n1) ⊦ subarray(ar, n, m) = ar1 ↔ (∃ ar0, ar2. ar = ar0 + ar1 + ar2 ∧ # ar0 = n ∧ # ar2 = # ar1 + # ar2 - m)
Used simplifier rules: n ≤ m ⊦ n0 = m - n ↔ m = n0 + n; (elim) Used terms: n0, m, n1