| ¬ j ≤ 0, j ≤ 1, ∀ j0, r, i, st, r0, i0, st0. i→n(j0) < i→n(j) → (true → (getarray(r, i, j0, st) = getarray(r0, i0, j0, st0) ↔ (∀ j1. 0 ≤ j1 ∧ j1 < j0 → st[r -- (i + j1) '] = st0[r0 -- (i0 + j1) ']))) ⊦ getarray(r, i, j, st) = getarray(r0, i0, j, st0) ↔ (∀ j0. 0 ≤ j0 ∧ j0 < j → st[r -- (i + j0) '] = st0[r0 -- (i0 + j0) ']) |
⊦ getarray(r, i, 1, st) = st[r -- i '] '
∀ j0, r, i, st, r0, i0, st0. i→n(j0) < i→n(1) → (true → (getarray(r, i, j0, st) = getarray(r0, i0, j0, st0) ↔ (∀ j1. 0 ≤ j1 ∧ j1 < j0 → st[r -- (i + j1) '] = st0[r0 -- (i0 + j1) ']))) ⊦ st[r -- i '] = st0[r0 -- i0 '] ↔ (∀ j. j ≤ 0 ∧ 0 ≤ j → st[r -- (i + j) '] = st0[r0 -- (i0 + j) '])
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ i < 1 ↔ i ≤ 0], [CSIMPSEQ : ⊦ val ' = val0 ' ↔ val = val0], [CSIMPFORWARD : ⊦ i < j ∧ 0 ≤ i → 0 < j], [CSIMPSEQ : ⊦ 0 < i → (i ≤ 1 ↔ i = 1)], [CSIMPSEQ : ⊦ ¬ i ≤ j ↔ j < i])]]