| n ∈ ri.inos ∪ (key.inode? ⊃ ∅ ++ key.ino;∅) ⊦ inodekey(n) ∈ ri[key, adr] |
n ∈ ri.inos ∪ (key.inode? ⊃ ∅ ++ key.ino;∅) ⊦ #(ri.inos ++ key.ino) = 0, inodekey(n) = key, inodekey(n) ∈ ri
Used simplifier rules: inos-node-store-def: ⊦ n ∈ ri.inos ↔ inodekey(n) ∈ ri;% ⊦ ∅ ≠ ns ++ n; (s)%size-zero: ⊦ # ns ≠ 0 → ns ≠ ∅; (forward) from specification set-basic[nat-set]% ⊦ (ns ++ n) ∪ ns0 = (ns ∪ ns0) ++ n; (s)%unc: ⊦ ns ∪ ns0 = ns0 ∪ ns; from specification set-union[nat-set]%una: ⊦ (ns ∪ ns0) ∪ ns1 = ns ∪ ns0 ∪ ns1; from specification set-union[nat-set]% ⊦ ns ∪ ∅ = ns; (s)%size-zero-01: ⊦ ns ≠ ∅ → # ns ≠ 0; (forward) from specification set-basic[nat-set]%ne-01: ⊦ n ∈ ns → ns ≠ ∅; (forward) from specification set-basic[nat-set]% ⊦ key ∈ ri[key0, adr] ↔ key = key0 ∨ key ∈ ri; (ws)