| ∀ rk, st, r, val. rk ∈ st → (hasKeys(r, sks0, st[rk, val]) ↔ hasKeys(r, sks0, st)), rk ∈ st ⊦ hasKeys(r, sk + sks0, st[rk, val]) ↔ hasKeys(r, sk + sks0, st) |
⊦ hasKeys(r, sks + sks0, st) ↔ hasKeys(r, sks, st) ∧ hasKeys(r, sks0, st)
⊦ hasKeys(r, sk ', st) ↔ r -- sk ∈ st
rk ∈ st, ∀ rk, st, r, val. rk ∈ st → (hasKeys(r, sks0, st[rk, val]) ↔ hasKeys(r, sks0, st)) ⊦ r -- sk ∈ st[rk, val] ∧ hasKeys(r, sks0, st[rk, val]) ↔ hasKeys(r, sk ' + sks0, st)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ (sks + sks0) + sks1 = sks + sks0 + sks1], [CSIMPSEQ : ⊦ sk + sks = sk ' + sks])]]