| inodenode(key0, md, boolvar, ino, ino0, ino1) = fs[adr], key ∈ (ino ≠ 0 ∨ key0.ino = ROOT_INO ⊃ ri0[key0, adr];(boolvar ⊃ ri0 -- key0;ri0 ⊖ key0)), key ∈ ri0 → key ∈ ri1, ∀ key. key ∈ ri0 → key ∈ ri1 ⊦ key ∈ (ino ≠ 0 ∨ key0.ino = ROOT_INO ⊃ ri1[key0, adr];(boolvar ⊃ ri1 -- key0;ri1 ⊖ key0)) |
ino = 0, inodenode(key0, md, boolvar, ino, ino0, ino1) = fs[adr], key ∈ (ino ≠ 0 ∨ key0.ino = ROOT_INO ⊃ ri0[key0, adr];(boolvar ⊃ ri0 -- key0;ri0 ⊖ key0)), key ∈ ri0 → key ∈ ri1, ∀ key. key ∈ ri0 → key ∈ ri1 ⊦ key0.ino = ROOT_INO, key ∈ (boolvar ⊃ ri1 -- key0;ri1 ⊖ key0)
Used simplifier rules: ⊦ key ∈ ri[key0, adr] ↔ key = key0 ∨ key ∈ ri; (ws)% ⊦ key ≠ key0 → (key ∈ ri[key0, adr] ↔ key ∈ ri); (s)