| st ⊆ st0, validrefs(str, refs, mkclasstype(`java.lang.Object' .class), st), validref(str, refs .first, ty, st) ⊦ refs = [], path∃(str, refs .first, refs .last, st0) |
refs = r + refs0, st ⊆ st0, validrefs(str, refs, mkclasstype(`java.lang.Object' .class), st), validref(str, r, ty, st) ⊦ refs = [], path∃(str, r, refs .last, st0)
[[CONCRETESIMPRULES : ([CSIMPELIM : refs ≠ [] ⊦ r = refs .first ∧ refs0 = refs .rest ↔ refs = r + refs0])], [EXTRATERMS : (refs, r, refs0)]]