| true, ∀ st0, i, st, r, j0. i→n(j0) < i→n(j) → ( true → ( r -- _length ∈ st ∧ 0 ≤ i ∧ j0 ≤ st[r -- _length] .intval - i ∧ (∀ i1. i ≤ i1 ∧ i1 < i + j0 → r -- i1 ' ∈ st) → getarray(r, i, j0, st0 ∪ st) = getarray(r, i, j0, st))) ⊦ r -- _length ∈ st ∧ 0 ≤ i ∧ j ≤ st[r -- _length] .intval - i ∧ (∀ i1. i ≤ i1 ∧ i1 < i + j → r -- i1 ' ∈ st) → getarray(r, i, j, st0 ∪ st) = getarray(r, i, j, st) |
r -- _length ∈ st, j + i ≤ st[r -- _length] .intval, r ∈ st, 0 ≤ i, ∀ i0. ¬ i0 < i ∧ ¬ i + j ≤ i0 → r -- i0 ' ∈ st, ∀ st0, i, st, r, j0. i→n(j0) < i→n(j) → ( true → ( r -- _length ∈ st ∧ 0 ≤ i ∧ j0 ≤ st[r -- _length] .intval - i ∧ (∀ i1. i ≤ i1 ∧ i1 < i + j0 → r -- i1 ' ∈ st) → getarray(r, i, j0, st0 ∪ st) = getarray(r, i, j0, st))) ⊦ getarray(r, i, j, st0 ∪ st) = getarray(r, i, j, st)
[[CONCRETESIMPRULES : ([CSIMPFORWARD : ⊦ r -- sk ∈ st → r ∈ st], [CSIMPFORWARD : ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j], [CSIMPSEQ : ⊦ ¬ i < j ↔ j ≤ i], [CSIMPSEQ : ⊦ ¬ i ≤ j ↔ j < i], [CSIMPSEQ : ⊦ i + j = j + i], [CSIMPSEQ : ⊦ i + j + i0 = (i + j) + i0], [CSIMPSEQ : ⊦ i ≤ j - i0 ↔ i + i0 ≤ j])]]