| ∀ r, st, r0, sk, val. (fits(r, sks0, st[r0 -- sk, val]) ↔ fits(r, sks0, st)) ∨ sk = _length ∨ sk = _type ∨ (∃ sks2, sks1. sks0 = sks2 + sk ' + sks1 ∧ st[r -- sks2] .refval = r0 ∧ (∀ sks3. sks3 + sk ' ⊑ sks2 → st[r -- sks3] .refval ≠ st[r -- sks2] .refval)) ⊦ fits(r, sk0 + sks0, st[r0 -- sk, val]) ↔ fits(r, sk0 + sks0, st), sk = _length, sk = _type, ∃ sks2, sks1. sk0 + sks0 = sks2 + sk ' + sks1 ∧ st[r -- sks2] .refval = r0 ∧ (∀ sks3. sks3 + sk ' ⊑ sks2 → st[r -- sks3] .refval ≠ st[r -- sks2] .refval) |
∀ r, st, r0, sk, val. (fits(r, sks0, st[r0 -- sk, val]) ↔ fits(r, sks0, st)) ∨ sk = _length ∨ sk = _type ∨ (∃ sks2, sks1. sks0 = sks2 + sk ' + sks1 ∧ st[r -- sks2] .refval = r0 ∧ (∀ sks3. sks3 + sk ' ⊑ sks2 → st[r -- sks3] .refval ≠ st[r -- sks2] .refval)) ⊦ sk = _length, sk = _type, fits(r, sk0 ' + sks0, st[r0 -- sk, val]) ↔ fits(r, sk0 ' + sks0, st), ∃ sks, sks1. sk0 ' + sks0 = sks + sk ' + sks1 ∧ st[r -- sks] .refval = r0 ∧ (∀ sks3. sks3 + sk ' ⊑ sks → st[r -- sks3] .refval ≠ st[r -- sks] .refval)
[[CONCRETESIMPRULES : ([CSIMPNAMEDSEQ : list, storekeys, c, ⊦ sk + sks = sk ' + sks])]]