| i < n→i(# vals), 0 ≤ i, ∀ ty, st, r, vals, i, j0. i→n(j0) < i→n(1) → ( i + j0 ≤ n→i(# vals) ∧ 0 ≤ i ∧ 0 ≤ j0 → getarray(r, i, j0, addarray(r, vals, 0, st[r -- _type, typeval(mkarraytype(ty))][r -- _length, intval(n→i(# vals))])) = sublist(i→n(i), i→n(j0), vals)) ⊦ vals = [], (addarray(r, vals, 0, st)[r -- i ']) ' = sublist(i→n(i), 1, vals) |
⊦ 0 ≤ i ∧ i < n→i(# vals) → (addarray(r, vals, 0, st)[r -- i ']) = vals[i→n(i)]
⊦ 0 ≤ i ∧ i < n→i(# vals) → (addarray(r, vals, 0, st)[r -- i ']) = vals[i→n(i)]
0 ≤ i ∧ i < n→i(# vals), i < n→i(# vals), 0 ≤ i, ∀ ty, st, r, vals, i, j0. i→n(j0) < i→n(1) → ( i + j0 ≤ n→i(# vals) ∧ 0 ≤ i ∧ 0 ≤ j0 → getarray(r, i, j0, addarray(r, vals, 0, st[r -- _type, typeval(mkarraytype(ty))][r -- _length, intval(n→i(# vals))])) = sublist(i→n(i), i→n(j0), vals)) ⊦ vals = [], vals[i→n(i)] ' = sublist(i→n(i), 1, vals)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ ¬ i ≤ j ↔ j < i], [CSIMPSEQ : ⊦ i ≤ j → (¬ ¬ j < i ↔ false)], [CSIMPSEQ : ⊦ ¬ i < j ↔ j ≤ i], [CSIMPSEQ : ⊦ i < j → (¬ ¬ j ≤ i ↔ false)])], [EXTRATERMS : (i, st, vals, r)]]