| 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) ≤ i→n(i) ⊦ getarray(r, st) = [], r -- i ' ∈ st ∧ (getarray(r, st)[i→n(i)]) = st[r -- i '] |
⊦ 0 ≤ st[r -- _length] .intval → # getarray(r, st) = i→n(st[r -- _length] .intval)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ i→n(i) ≤ i→n(j) ↔ abs(i) ≤ abs(j)], [CSIMPSEQ : ⊦ 0 < j → abs(j) = j], [CSIMPSEQ : ⊦ 0 ≤ i → abs(i) = i], [CSIMPSEQ : ⊦ i < j → (¬ ¬ j ≤ i ↔ false)])], [EXTRATERMS : (st, r)]]