| r ∈ st, unique_al(fis), r -- sk ∈ st, hasKeys(r, fis .keys, st), sk0 ∈ fis ⊦ sk = _length, sk = _type, r -- sk0 ∈ st, _type ∈ fis, _length ∈ fis |
⊦ hasKeys(r, sks, st) ↔ (∀ sk. sk ∈ sks → r -- sk ∈ st)
r ∈ st, unique_al(fis), r -- sk ∈ st, ∀ sk. sk ∈ fis .keys → r -- sk ∈ st, sk0 ∈ fis ⊦ sk = _length, sk = _type, r -- sk0 ∈ st, _type ∈ fis, _length ∈ fis
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st, fis .keys, r)]]