| ∀ r, st. ∃ fis1. ¬ dups(fis1 .keys) ∧ update(r, fis0, st) = update(r, fis1, st) ∧ fis1 ⊆ fis0 ⊦ ∃ fis1. ¬ dups(fis1 .keys) ∧ update(r, fv + fis0, st) = update(r, fis1, st) ∧ fis1 ⊆ fv + fis0 |
⊦ update(r, fv ' + fis, st) = (update(r, fis, st)[r -- fv .1, fv .2])
∀ r, st. ∃ fis1. ¬ dups(fis1 .keys) ∧ update(r, fis0, st) = update(r, fis1, st) ∧ fis1 ⊆ fis0 ⊦ ∃ fis. ¬ dups(fis .keys) ∧ (update(r, fis0, st)[r -- fv .1, fv .2]) = update(r, fis, st) ∧ fis ⊆ fv ' + fis0
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ (fis + fis0) + fis1 = fis + fis0 + fis1], [CSIMPSEQ : ⊦ fv + fis = fv ' + fis])]]