| files1[ino] = mkfile(m, md, m0, content), dirs0[ino] = mkdir(# entries, md0, # links(ino, dirs0), # subdirs(ino, dirs0), entries), afs-cons(dirs0, files1), ino ∈ dirs0, name ∈ entries, ROOT_INO ∈ dirs0, # links(ino, dirs0) ≤ 1, entries[name] ∈ dirs0 ∨ entries[name] ∈ files1 ⊦ entries = ∅, ino ∈ orphans(dirs0, files1), entries[name] ∈ dirs0 ∧ ¬ entries[name] ∈ orphans(dirs0, files1), entries[name] ∈ files1 ∧ ¬ entries[name] ∈ orphans(dirs0, files1), ino ≠ ROOT_INO ∧ links(ino, dirs0) = ∅ |
⊦ ino ∈ orphans(dirs, files) ↔ valid-ino(ino, dirs, files) ∧ links(ino, dirs) = ∅ ∧ ino ≠ ROOT_INO
Used simplifier rules: ⊦ valid-ino(ino, dirs, files) ↔ ino ∈ dirs ∨ ino ∈ files; (s)%⊦ p_ino ∈ dirs ∧ dirs[p_ino] = mkdir(m, md, n, n0, entries) ∧ str ∈ entries → links(entries[str], dirs) ≠ ∅; (s) Used terms: files1, dirs0, entries[name]