| fo.inodes?, ro.inodes?, file-node-cons(fs, ri), log-cons(log, fs), orphans-cons(fs, ri, ro), replay-cons-strong(fs, ri, ro, fi, fo, log), ri-inj(fi), ri-inj(ri), ubifs-cons(fs, ri, ro, fi, fo, log), inodekey(ino0) ∈ ri, inodekey(ino0) ∈ ro, inodekey(m) ∈ ri, ∀ ino. inodekey(ino) ∈ ro → links(ino, fs, ri) = ∅, ∀ ino. inodekey(ino) ∈ ro → dentrykeys(inodekey(ino), ri) = ∅ ⊦ links(ino0, fs, ri) = ∅, m = ROOT_INO |
fo.inodes?, ro.inodes?, file-node-cons(fs, ri), log-cons(log, fs), orphans-cons(fs, ri, ro), replay-cons-strong(fs, ri, ro, fi, fo, log), ri-inj(fi), ri-inj(ri), ubifs-cons(fs, ri, ro, fi, fo, log), inodekey(ino0) ∈ ri, inodekey(ino0) ∈ ro, inodekey(m) ∈ ri, ∀ ino. inodekey(ino) ∈ ro → links(ino, fs, ri) = ∅, ∀ ino. inodekey(ino) ∈ ro → dentrykeys(inodekey(ino), ri) = ∅ ⊦ # links(ino0, fs, ri) = 0, # ro = 0, links(ino0, fs, ri) = ∅, m = ROOT_INO, ro = ∅
Used simplifier rules: size-zero: ⊦ # ks ≠ 0 → ks ≠ ∅; (forward) from specification set-basic[node-index]%size-zero-01: ⊦ ks ≠ ∅ → # ks ≠ 0; (forward) from specification set-basic[node-index]%ne-01: ⊦ key ∈ ks → ks ≠ ∅; (forward) from specification set-basic[node-index]