| ⊦ r = r0, (addarray(r, ty, i, st)[r0 -- sk, val]) = addarray(r, ty, i, st[r0 -- sk, val]) |
⊦ addarray(r, ty, i, st) = addarray(r, initial_value(ty), i, st[r -- _type, typeval(mkarraytype(ty))][r -- _length, intval(i)])
⊦ r = r0, (addarray(r, ty, i, st)[r0 -- sk, val]) = addarray(r, initial_value(ty), i, st[r0 -- sk, val][r -- _type, typeval(mkarraytype(ty))][r -- _length, intval(i)])
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st[r0 -- sk, val], i, ty, r)]]