| ∀ r, st, sk, val. (hasKeys(r, sks0, st[r -- sk, val]) ↔ hasKeys(r, sks0, st)) ∨ sk ∈ sks0 ⊦ r -- sk0 ∈ st ∧ hasKeys(r, sks0, st[r -- sk, val]) ↔ hasKeys(r, sk0 ' + sks0, st), sk = sk0, sk ∈ sks0 |
⊦ hasKeys(r, sk ' + sks, st) ↔ r -- sk ∈ st ∧ hasKeys(r, sks, st)
∀ r, st, sk, val. (hasKeys(r, sks0, st[r -- sk, val]) ↔ hasKeys(r, sks0, st)) ∨ sk ∈ sks0 ⊦ r -- sk0 ∈ st ∧ hasKeys(r, sks0, st[r -- sk, val]) ↔ r -- sk0 ∈ st ∧ hasKeys(r, sks0, st), sk = sk0, sk ∈ sks0
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st, sks0, sk0, r)]]