| is_primtype(ty) ⊦ validrefs(str, refs, mkarraytype(ty), st) ↔ refs = [] ∨ refs = jvmref ' ∨ okarray(refs .first, ty, st) ∧ refs .rest = [] |
⊦ validrefs(str, [], ty, st)
refs = r + refs0 ∧ refs ≠ [], is_primtype(ty) ⊦ validrefs(str, refs, mkarraytype(ty), st) ↔ refs = [] ∨ refs = jvmref ' ∨ okarray(r, ty, st) ∧ refs0 = []
[[CONCRETESIMPRULES : ([CSIMPELIM : refs ≠ [] ⊦ r = refs .first ∧ refs0 = refs .rest ↔ refs = r + refs0])], [EXTRATERMS : (refs, r, refs0)]]