| ⊦ (addarray(r, ty, i, st)[r -- _length]) = intval(i) |
⊦ addarray(r, ty, i, st) = addarray(r, initial_value(ty), i, st[r -- _type, typeval(mkarraytype(ty))][r -- _length, intval(i)])
⊦ (addarray(r, val, i, st)[r -- _length]) = st[r -- _length]
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ intval(i) = intval(i0) ↔ i = i0], [CSIMPSEQ : ⊦ (st[rk0, val][rk]) = ((rk = rk0 ⊃ val; st[rk]))])]]