| datakey(m, m0) ∈ ri, key ∈ ks, datakey(m, m0) ∈ ri ⊖ key ⊦ # ks = 0, (ri ⊖ key)[datakey(m, m0)] = ri[datakey(m, m0)], ks = ∅, inodekey(m) ∈ ks, datakey(m, m0) ∈ ks |
key ∈ ks, datakey(m, m0) ∈ ri ⊦ # ks = 0, (ri ⊖ key)[datakey(m, m0)] = ri[datakey(m, m0)], ks = ∅, datakey(m, m0) ∈ ks, inodekey(m) ∈ ks
Used simplifier rules: in-del-ro: ⊦ key ∈ ri ⊖ key0 ↔ key ∈ ri ∧ key ≠ key0 ∧ (key.data? → inodekey(key.ino) ≠ key0);% ⊦ datakey(m, m0).ino = m; (s)% ⊦ datakey(m, m0).data?; (s)