| okbytearray(r0, st), validrefnotnull(str, r, ty, st), ∀ r0, st, str, r, ty, i. okbytearray(r0, st) ∧ validrefnotnull(str, r, ty, st) → r = r0 ∨ r = jvmref ∨ validrefnotnull(str, r, ty, putByteArray(bytes0, r0, i, st)) ⊦ is_boolvalue(byteval(by)) ∧ st[r0 -- _type] .type .type = boolean_type ∨ is_integervalue(byteval(by)) ∧ st[r0 -- _type] .type .type = int_type ∨ is_shortvalue(byteval(by)) ∧ st[r0 -- _type] .type .type = short_type ∨ is_bytevalue(byteval(by)) ∧ st[r0 -- _type] .type .type = byte_type ∨ is_longvalue(byteval(by)) ∧ st[r0 -- _type] .type .type = long_type ∨ is_floatvalue(byteval(by)) ∧ st[r0 -- _type] .type .type = float_type ∨ is_doublevalue(byteval(by)) ∧ st[r0 -- _type] .type .type = double_type ∨ is_charvalue(byteval(by)) ∧ st[r0 -- _type] .type .type = char_type ∨ is_referencevalue(byteval(by)) ∧ (is_classtype(st[r0 -- _type] .type .type) ∨ is_arraytype(st[r0 -- _type] .type .type) ∨ st[r0 -- _type] .type .type = void_type), r = r0, r = jvmref, validref(str, r, ty, putByteArray(bytes0, r0, i + 1, st)[r0 -- i ', byteval(by)]) |
okbytearray(r0, st), validrefnotnull(str, r, ty, st), ∀ r0, st, str, r, ty, i. okbytearray(r0, st) ∧ validrefnotnull(str, r, ty, st) → r = r0 ∨ r = jvmref ∨ validrefnotnull(str, r, ty, putByteArray(bytes0, r0, i, st)) ⊦ r = r0, r = jvmref, st[r0 -- _type] .type .type = byte_type, validref(str, r, ty, putByteArray(bytes0, r0, i + 1, st)[r0 -- i ', byteval(by)])
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ ¬ is_referencevalue(byteval(by))], [CSIMPSEQ : ⊦ ¬ is_charvalue(byteval(by))], [CSIMPSEQ : ⊦ ¬ is_doublevalue(byteval(by))], [CSIMPSEQ : ⊦ ¬ is_floatvalue(byteval(by))], [CSIMPSEQ : ⊦ ¬ is_longvalue(byteval(by))], [CSIMPSEQ : ⊦ is_bytevalue(byteval(by))], [CSIMPSEQ : ⊦ ¬ is_shortvalue(byteval(by))], [CSIMPSEQ : ⊦ ¬ is_integervalue(byteval(by))], [CSIMPSEQ : ⊦ ¬ is_boolvalue(byteval(by))])]]