| ⊦ ar = [], # ar = #(ar[0] + subarray(ar, 1, # ar - 1)) ∧ (n < # ar → ar[n] = (ar[0] + subarray(ar, 1, # ar - 1))[n]) |
⊦ a + ar = copy(ar, 0, mkarray(# ar + 1), 1, # ar)[0, a]
⊦ ar = [], # ar = # copy(subarray(ar, 1, # ar - 1), 0, mkarray(# subarray(ar, 1, # ar - 1) + 1), 1, # subarray(ar, 1, # ar - 1))[0, ar[0]] ∧ (n < # ar → ar[n] = copy(subarray(ar, 1, # ar - 1), 0, mkarray(# subarray(ar, 1, # ar - 1) + 1), 1, # subarray(ar, 1, # ar - 1))[0, ar[0]][n])
Used terms: subarray(ar, 1, # ar - 1), ar[0]