| ⊦ ar = [], # ar = (# ar - 1) + 1 ∧ (n < # ar → ar[n] = copy(ar, 1, mkarray((# ar - 1) + 1), 1, # ar - 1)[0, ar[0]][n]) |
⊦ # ar ≠ 0, ar = [], # ar = (# ar - 1) + 1 ∧ (n < # ar → ar[n] = copy(ar, 1, mkarray((# ar - 1) + 1), 1, # ar - 1)[0, ar[0]][n])
# ar = m + 1 ∧ # ar ≠ 0 ⊦ ar = [], # ar = m + 1 ∧ (n < # ar → ar[n] = copy(ar, 1, mkarray(m + 1), 1, m)[0, ar[0]][n])
Used simplifier rules: n ≠ 0 ⊦ m = n - 1 ↔ n = m + 1; (elim) Used terms: # ar, m