| st[r0 -- _length] = intval(i), st[r0 -- _type] = typeval(mkarraytype(int_type)), j0 < i, r0 ∈ st, r0 -- _type ∈ st, is_integervalue(val), is_arrayref(r0, i, st), r0 -- _length ∈ st, 0 ≤ i, 0 ≤ j0, 0 < i, ∀ j1. ¬ j1 < 0 ∧ ¬ i ≤ j1 → is_integervalue(st[r0 -- j1 ']) ⊦ r0 = jvmref, is_integervalue(st[r0 -- j ', val][r0 -- j0 ']) |
st[r0 -- _length] = intval(i), st[r0 -- _type] = typeval(mkarraytype(int_type)), j0 < i, r0 ∈ st, r0 -- _type ∈ st, is_integervalue(val), is_arrayref(r0, i, st), r0 -- _length ∈ st, 0 ≤ i, 0 ≤ j0, 0 < i, ∀ j1. ¬ j1 < 0 ∧ ¬ i ≤ j1 → is_integervalue(st[r0 -- j1 ']) ⊦ r0 -- j0 ' = r0 -- j ', r0 = jvmref, is_integervalue(st[r0 -- j ', val][r0 -- j0 '])
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ r -- sk = r0 -- sk0 ↔ r = r0 ∧ sk = sk0], [CSIMPSEQ : ⊦ i ' = i0 ' ↔ i = i0], [CSIMPFORWARD : ⊦ i < i0 ∧ i = i1 → i1 < i0], [CSIMPSEQ : ⊦ (st[rk, val][rk]) = val])], [EXTRAFMAS : (r0 -- j0 ' = r0 -- j ')]]