| 0 ≤ i0 + j, 0 ≤ i0, 0 ≤ j, r0 ≠ r ∨ sk ≠ j ' ⊦ r0 -- sk ∈ addarray(r, ty, i0 + j + 1, st) ↔ r0 -- sk ∈ addarray(r, ty, ((j = 0 ⊃ []; mklist(initial_value(ty), i→n(j)))) + val ' + mklist(initial_value(ty), i→n(i0)), st) |
⊦ r ≠ r0 → (r -- sk ∈ addarray(r0, ty, i, st) ↔ r -- sk ∈ st)
⊦ r ≠ r0 → (r -- sk ∈ addarray(r0, ty, vals, st) ↔ r -- sk ∈ st)
0 ≤ j, 0 ≤ i0, 0 ≤ i0 + j ⊦ sk = j ', r -- sk ∈ addarray(r, ty, i0 + j + 1, st) ↔ r -- sk ∈ addarray(r, ty, ((j = 0 ⊃ []; mklist(initial_value(ty), i→n(j)))) + val ' + mklist(initial_value(ty), i→n(i0)), st)
[[CONCRETESIMPRULES : ()]]