| ∀ j. ¬ j < 0 ∧ ¬ i ≤ j → compat(str, st[r -- j '], ty, st[_mode, val]), st[r -- _type] .type = mkarraytype(ty), st[r -- _length] = intval(i), 0 ≤ i, r -- _length ∈ st, is_arrayref(r, i, st), r ∈ st ⊦ ∀ j. 0 ≤ j ∧ j < i → compat(str, st[r -- j '], ty, st), r = jvmref |
st[r -- _type] .type = mkarraytype(ty), st[r -- _length] = intval(i), j < i, 0 ≤ i, r -- _length ∈ st, is_arrayref(r, i, st), r ∈ st, 0 ≤ j, 0 < i, ∀ j. ¬ j < 0 ∧ ¬ i ≤ j → compat(str, st[r -- j '], ty, st[_mode, val]) ⊦ r = jvmref, compat(str, st[r -- j '], ty, st)
[[CONCRETESIMPRULES : ([CSIMPFORWARD : ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j], [CSIMPFORWARD : ⊦ i < j ∧ 0 ≤ i → 0 < j])]]