| ⊦ (r0 -- sk ∈ putArray(vals, r, addarray(r, ty, n→i(# vals), st)) ↔ r0 -- sk ∈ addarray(r, ty, vals, st)) ∧ (putArray(vals, r, addarray(r, ty, n→i(# vals), st))[r0 -- sk]) = (addarray(r, ty, vals, st)[r0 -- sk]) |
⊦ putArray(vals, r, st) = putArray(vals, r, 0, st)
⊦ (r0 -- sk ∈ putArray(vals, r, 0, addarray(r, ty, n→i(# vals), st)) ↔ r0 -- sk ∈ addarray(r, ty, vals, st)) ∧ (putArray(vals, r, 0, addarray(r, ty, n→i(# vals), st))[r0 -- sk]) = (addarray(r, ty, vals, st)[r0 -- sk])
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (addarray(r, ty, n→i(# vals), st), r, vals)]]