| ⊦ ¬ d0 ∈ st ∧ d0 ≠ d1 ∧ d0 ≠ d2 → ¬ d0 ∈ st[b, d1][c, d2] -- a |
a0 ∈ st[b, d1][c, d2] ⊦ a0 = a, st[b, d1][c, d2][a0] = d1, st[b, d1][c, d2][a0] = d2, ∃ a. a ∈ st ∧ st[a] = st[b, d1][c, d2][a0]
Used simplifier rules: Data-in: ⊦ d ∈ st ↔ (∃ a. a ∈ st ∧ st[a] = d);%Del-at-strong: a ≠ b ⊦ (st -- b)[a] = st[a]; from specification store%Del-in: ⊦ a ∈ st -- b ↔ a ≠ b ∧ a ∈ st; from specification store