| is_referencevalue(refval(r)), validfieldinits(str, fis0, st), ty = void_type ∨ is_reftype(ty), type∃(str, ty), validref(str, r, ty, st), ∀ str, st. validfieldinits(str, fis0, st) → validreflist(str, mkjavavalues(fis0 .vals .nonnullrefs), mkclasstype(`java.lang.Object' .class), st) ⊦ r = jvmref, validref(str, r, mkclasstype(`java.lang.Object' .class), st), is_classtype(ty), is_arraytype(ty) |
⊦ validref(str, r, void_type, st) ↔ r = jvmref
[[CONCRETESIMPRULES : ([CSIMPNAMEDSEQ : typefuns, , reftype, ⊦ ¬ is_classtype(ty) → ( is_reftype(ty) ↔ is_arraytype(ty))], [CSIMPNAMEDSEQ : javavalue, , test-19, ⊦ is_referencevalue(refval(r))])]]