| ∃ class. ty = mkclasstype(class), ∀ class0. contains(str0, mkclasstype(class), mkclasstype(class0)) → tdname+∃(str, class0), same-subclasses-contains(class, str, str0), contains(str0, mkclasstype(class), ty) ⊦ type∃(str, ty) |
same-subclasses-contains(class, str, str0), contains(str0, mkclasstype(class), mkclasstype(class0)), ∀ class0. contains(str0, mkclasstype(class), mkclasstype(class0)) → tdname+∃(str, class0) ⊦ tdname+∃(str, class0)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ type∃(str, mkclasstype(class)) ↔ tdname+∃(str, class)])]]