| ty0 .type .jtelemtype = mkclasstype(class), is_arraytype(ty0), contains(str0, ty, ty0), ∀ class1. contains(str0, ty, mkclasstype(class1)) → tdname+∃(str, class1) ⊦ tdname+∃(str, class) |
ty0 = mkarraytype(ty1), ty1 .jtelemtype = mkclasstype(class), is_arraytype(ty0), contains(str0, ty, ty0), ∀ class1. contains(str0, ty, mkclasstype(class1)) → tdname+∃(str, class1) ⊦ tdname+∃(str, class)
[[CONCRETESIMPRULES : ([CSIMPELIM : ⊦ is_arraytype(ty) → ( ty0 = ty .type ↔ ty = mkarraytype(ty0))])], [EXTRATERMS : (ty0, ty1)]]