| r -- sk ∈ st0, r ∈ st0, rk ∈ st ↔ rk ∈ st0[r -- sk, val], ∀ rk. rk ∈ st ↔ rk ∈ st0[r -- sk, val], ∀ r0, sk0. r0 ≠ r → st[r0 -- sk0] = st0[r0 -- sk0], r -- _type ∈ st → st[r -- _type] = st0[r -- _type], r -- _length ∈ st → st[r -- _length] = st0[r -- _length] ⊦ sk = _length, sk = _type, (rk ∈ st ↔ rk ∈ st0) ∧ (r0 ≠ r → st[r0 -- sk0] = st0[r0 -- sk0]) |
⊦ rk ∈ st[rk0, val] ↔ rk = rk0 ∨ rk ∈ st
r -- sk ∈ st0, r ∈ st0, rk ∈ st ↔ rk = r -- sk ∨ rk ∈ st0, ∀ rk. rk ∈ st ↔ rk ∈ st0[r -- sk, val], ∀ r0, sk0. r0 ≠ r → st[r0 -- sk0] = st0[r0 -- sk0], r -- _type ∈ st → st[r -- _type] = st0[r -- _type], r -- _length ∈ st → st[r -- _length] = st0[r -- _length] ⊦ sk = _length, sk = _type, (rk ∈ st ↔ rk ∈ st0) ∧ (r0 ≠ r → st[r0 -- sk0] = st0[r0 -- sk0])
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (val, r -- sk, st0, rk)]]