| 0 ≤ st[r -- _length] .intval, st[r -- _type] .type = mkarraytype(ty), i < n→i(i→n(st[r -- _length] .intval)), is_array(r, st), 0 ≤ i ⊦ getarray(r, st) = [], r -- i ' ∈ st ∧ (getarray(r, st)[i→n(i)]) = st[r -- i '] |
st[r -- _type] .type = mkarraytype(ty), is_array(r, st), 0 ≤ i, i < st[r -- _length] .intval, 0 ≤ st[r -- _length] .intval, 0 < st[r -- _length] .intval ⊦ getarray(r, st) = [], r -- i ' ∈ st ∧ (getarray(r, st)[i→n(i)]) = st[r -- i ']
[[CONCRETESIMPRULES : ([CSIMPFORWARD : ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j], [CSIMPFORWARD : ⊦ i < j ∧ 0 ≤ i → 0 < j], [CSIMPSEQ : ⊦ 0 ≤ i → n→i(i→n(i)) = i])]]