| ∀ r1, r0, i0, st. r1 ∈ putArray(vals0, r0, i0, st) ↔ r1 ∈ st ∨ r1 = r0 ∧ vals0 ≠ [] ⊦ r1 ∈ (putArray(vals0, r0, i0 + 1, st)[r0 -- i0 ', val]) ↔ r1 = r0 ∨ r1 ∈ st |
⊦ r ∈ st[r0 -- sk, val] ↔ r = r0 ∨ r ∈ st
∀ r1, r0, i0, st. r1 ∈ putArray(vals0, r0, i0, st) ↔ r1 ∈ st ∨ r1 = r0 ∧ vals0 ≠ [] ⊦ r1 = r0 ∨ r1 ∈ putArray(vals0, r0, i0 + 1, st) ↔ r1 = r0 ∨ r1 ∈ st
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (val, i0 ', r0, putArray(vals0, r0, i0 + 1, st), r1)]]