| is_indexkey(sk), is_fskey(sk1), okfieldinits(sk1 .fs .class, fis0), sk ∈ fis0 .keys, ∀ sk0, class0. ¬ sk0 ∈ fis0 .keys ∨ ¬ okfieldinits(class0, fis0) ∨ is_fskey(sk0) ⊦ sk1 .fs .type = abstract_type, sk = sk1 |
sk1 = fs ', is_indexkey(sk), is_fskey(sk1), okfieldinits(fs .class, fis0), sk ∈ fis0 .keys, ∀ sk0, class0. ¬ sk0 ∈ fis0 .keys ∨ ¬ okfieldinits(class0, fis0) ∨ is_fskey(sk0) ⊦ fs .type = abstract_type, sk = sk1
[[CONCRETESIMPRULES : ([CSIMPELIM : ⊦ is_fskey(sk) → (fs = sk .fs ↔ sk = fs ')])], [EXTRATERMS : (sk1, fs)]]