| ¬ (st ⊆ st0 ∧ is_arrayref(r, i + j, st) ∧ 0 ≤ i), st ⊆ st0, 0 ≤ i, ∀ j0. ¬ j0 < 0 ∧ ¬ i + j ≤ j0 → r -- j0 ' ∈ st ⊦ intvalues(getarray(r, i, j, st)) = intvalues(getarray(r, i, j, st0)) |
⊦ is_arrayref(r, i, st) ↔ (∀ j. 0 ≤ j ∧ j < i → r -- j ' ∈ st)
st ⊆ st0, 0 ≤ i, j0 < i + j, 0 ≤ j0, 0 < i + j, ∀ j0. ¬ j0 < 0 ∧ ¬ i + j ≤ j0 → r -- j0 ' ∈ st ⊦ intvalues(getarray(r, i, j, st)) = intvalues(getarray(r, i, j, st0)), r -- j0 ' ∈ st
[[CONCRETESIMPRULES : ([CSIMPFORWARD : ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j], [CSIMPFORWARD : ⊦ i < j ∧ 0 ≤ i → 0 < j], [CSIMPSEQ : ⊦ i ≤ j → (¬ ¬ j < i ↔ false)], [CSIMPSEQ : ⊦ ¬ i ≤ j ↔ j < i])]]