| okarray(r1, st[r1 -- _type] .type .type, addarray(r0, ty, vals, st)), is_arraytype(st[r1 -- _type] .type), is_typevalue(st[r1 -- _type]), r1 -- _type ∈ st, r1 ∈ st ⊦ r1 = jvmref, r1 = r0, is_array(r1, st) |
st[r1 -- _type] .type = mkarraytype(ty0), okarray(r1, ty0, addarray(r0, ty, vals, st)), is_arraytype(st[r1 -- _type] .type), is_typevalue(st[r1 -- _type]), r1 -- _type ∈ st, r1 ∈ st ⊦ r1 = jvmref, r1 = r0, is_array(r1, st)
[[CONCRETESIMPRULES : ([CSIMPELIM : ⊦ is_arraytype(ty) → ( ty0 = ty .type ↔ ty = mkarraytype(ty0))])], [EXTRATERMS : (st[r1 -- _type] .type, ty0)]]