| ∃ n. n < # getarray(r, 0, st[r -- _length] .intval, st) ∧ (intvalues(getarray(r, 0, st[r -- _length] .intval, st))[n]) = i ⊦ ∃ j. i = st[r -- j '] .intval ∧ ¬ j < 0 ∧ ¬ st[r -- _length] .intval ≤ j |
⊦ getarray(r, i, j, st) = [] ↔ j ≤ 0
⊦ 0 < j → # getarray(r, i, j, st) = i→n(j)
0 < st[r -- _length] .intval, n < i→n(st[r -- _length] .intval) ⊦ st[r -- _length] .intval = 0, ∃ j. (intvalues(getarray(r, 0, st[r -- _length] .intval, st))[n]) = st[r -- j '] .intval ∧ ¬ j < 0 ∧ ¬ st[r -- _length] .intval ≤ j
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ i→n(i) = 0 ↔ i = 0], [CSIMPFORWARD : ⊦ i < j ∧ 0 ≤ i → 0 < j], [CSIMPSEQ : ⊦ ¬ i ≤ j ↔ j < i], [CSIMPSEQ : ⊦ # vals = 0 ↔ vals = []], [CSIMPFORWARD : ⊦ m < n → n ≠ 0])]]