| i2 + i5 * (i1 - i2) + j1 = i4 * (i1 - i2) + i, st0[r2 -- _length] = intval(i0), st0[r2 -- _type] = typeval(mkarraytype(ty0)), j0 < (i5 - i4 + 1 - i5) * (i1 - i2), i + i1 ≤ 2 * i2 + i5 * (i1 - i2) + j1 + j0, 1 < i0, 0 < i1, i1 < i0, r2 -- i ' ∈ st0, i2 < i0, i < i0, r2 ∈ st0, ty0 ≤ ty, r2 -- _type ∈ st0, 0 ≤ i2, i2 + i5 * (i1 - i2) + j1 + j0 < i0, r2 -- _length ∈ st0, 0 ≤ i0, i2 ≤ i, 0 ≤ i, i ≤ i2 + i5 * (i1 - i2) + j1 + j0, i1 ≤ i2 + i5 * (i1 - i2) + j1 + j0, 0 < i0, 0 ≤ i4, j0 + i2 < i0, j1 + i2 < i1, i2 < i1, 0 ≤ j1, j1 + i2 < i0, 0 ≤ i5, 0 ≤ j0, j0 + i2 < i1, 0 < i2 + i5 * (i1 - i2) + j1 + j0, 0 ≤ i5 * (i1 - i2) + j1 + j0, 0 ≤ i2 + i5 * (i1 - i2) + j1 + j0, 0 ≤ i5 * (i1 - i2) + j1, 0 ≤ i5 * (i1 - i2) + j0, 0 < i5 * (i1 - i2) + j1 + j0, 0 < i5 * (i1 - i2) + j0, 0 < i5 * (i1 - i2) + j1, 1 < (i1 - i2) * (i5 - i4 + 1), 0 < (i1 - i2) * (i5 - i4 + 1), ∀ j2. ¬ j2 < 0 ∧ ¬ i5 * (i1 - i2) + j1 + j0 < j2 → st0[r2 -- (i1 + j2) '] = st0[r2 -- (i2 + j2) '], ∀ j. ¬ j < 0 ∧ ¬ i0 ≤ j → okval(st0[r2 -- j '], ty), ∀ j. ¬ j < 0 ∧ ¬ i0 ≤ j → r2 -- j ' ∈ st0 ⊦ r2 = jvmref, st0[r2 -- (i1 + j1) '] = st0[r2 -- ((i1 - i2) * (i5 - i4 + 1) + i1 + j1) '] |
i2 + i5 * (i1 - i2) + j1 = i4 * (i1 - i2) + i, st0[r2 -- _length] = intval(i0), st0[r2 -- _type] = typeval(mkarraytype(ty0)), (i4 + 1) * (i1 - i2) < 0, j0 + (i4 + 1) * (i1 - i2) < i1, (i4 + 1) * (i1 - i2) < i4 * (i1 - i2) + i, i4 + 1 < i5, j0 + (i4 + 1) * (i1 - i2) < (i1 - i2) * (i5 - i4 + 1), i + i1 ≤ 2 * i2 + i5 * (i1 - i2) + j1 + j0, 1 < i0, 0 < i1, i1 < i0, r2 -- i ' ∈ st0, i2 < i0, i < i0, r2 ∈ st0, ty0 ≤ ty, r2 -- _type ∈ st0, 0 ≤ i2, i2 + i5 * (i1 - i2) + j1 + j0 < i0, r2 -- _length ∈ st0, 0 ≤ i0, i2 ≤ i, 0 ≤ i, i ≤ i2 + i5 * (i1 - i2) + j1 + j0, i1 ≤ i2 + i5 * (i1 - i2) + j1 + j0, 0 < i0, 0 ≤ i4, j0 + i2 < i0, j1 + i2 < i1, i2 < i1, 0 ≤ j1, j1 + i2 < i0, 0 ≤ i5, 0 ≤ j0, j0 + i2 < i1, 0 < i2 + i5 * (i1 - i2) + j1 + j0, 0 ≤ i5 * (i1 - i2) + j1 + j0, 0 ≤ i2 + i5 * (i1 - i2) + j1 + j0, 0 ≤ i5 * (i1 - i2) + j1, 0 ≤ i5 * (i1 - i2) + j0, 0 < i5 * (i1 - i2) + j1 + j0, 0 < i5 * (i1 - i2) + j0, 0 < i5 * (i1 - i2) + j1, 1 < (i1 - i2) * (i5 - i4 + 1), 0 < (i1 - i2) * (i5 - i4 + 1), j0 + (i4 + 1) * (i1 - i2) < 0, (i4 + 1) * (i1 - i2) < i1, 2 * (i4 + 1) < i5, ∀ j2. ¬ j2 < 0 ∧ ¬ i5 * (i1 - i2) + j1 + j0 < j2 → st0[r2 -- (i1 + j2) '] = st0[r2 -- (i2 + j2) '], ∀ j. ¬ j < 0 ∧ ¬ i0 ≤ j → okval(st0[r2 -- j '], ty), ∀ j. ¬ j < 0 ∧ ¬ i0 ≤ j → r2 -- j ' ∈ st0 ⊦ r2 = jvmref, st0[r2 -- (i1 + j1) '] = st0[r2 -- ((i1 - i2) * (i5 - i4 + 1) + i1 + j1) ']
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ i * j + i = i * (j + 1)], [CSIMPSEQ : ⊦ i + i = 2 * i], [CSIMPSEQ : ⊦ i < j - i0 ↔ i + i0 < j], [CSIMPSEQ : ⊦ i + j < j ↔ i < 0], [CSIMPSEQ : ⊦ i + j < i0 ∧ j0 < j → i + j0 < i0], [CSIMPSEQ : ⊦ i0 < i → ( (i - i0) * j < (i - i0) * j0 ↔ j < j0)], [CSIMPSEQ : ⊦ i + j < i + i0 ↔ j < i0], [CSIMPSEQ : ⊦ i < 0 ∧ 0 ≤ j → i < j], [CSIMPFORWARD : ⊦ j < i ∧ i ≤ 0 → j < 0], [CSIMPFORWARD : ⊦ i < j ∧ j ≤ j0 → i < j0], [CSIMPFORWARD : ⊦ i < i0 ∧ i0 < i1 → i < i1], [CSIMPSEQ : ⊦ i < ~ j ↔ i + j < 0], [CSIMPSEQ : ⊦ i * j = j * i], [CSIMPSEQ : ⊦ i * j * j0 = (i * j) * j0], [CSIMPSEQ : ⊦ ~ i * j = ~ (i * j)], [CSIMPSEQ : ⊦ i + j + i0 = (i + j) + i0], [CSIMPSEQ : ⊦ i - j + i = ~ j], [CSIMPSEQ : ⊦ i - i1 - j = i - i1 + j], [CSIMPSEQ : ⊦ i + j = j + i])]]