| # links(ino, dirs) = 0, dirs[ino] = mkdir(n, md, 0, m, ∅), afs-cons(dirs, files), ino ∈ dirs ⊦ (ino0 ≠ ino ∧ ino0 ∈ dirs ∨ ino0 ∈ files) ∧ links(ino0, dirs) = ∅ ∧ ino0 ≠ ROOT_INO ↔ ino0 ≠ ino ∧ valid-ino(ino0, dirs, files) ∧ links(ino0, dirs) = ∅ ∧ ino0 ≠ ROOT_INO, ino = ROOT_INO |
# links(ino, dirs) = 0, dirs[ino] = mkdir(n, md, 0, m, ∅), afs-cons(dirs, files), ino ∈ dirs, ino0 ∈ dirs → dirs[ino0].nlink = 0, ino0 ∈ files → files[ino0].nlink = 0, ino0 ≠ ino ∧ ino0 ∈ dirs ∨ ino0 ∈ files ⊦ ino = ROOT_INO, ino0 = ROOT_INO, ino0 ≠ ino ∧ (ino0 ∈ dirs ∨ ino0 ∈ files)
Used simplifier rules: valid-ino: ⊦ valid-ino(ino, dirs, files) ↔ ino ∈ dirs ∨ ino ∈ files;%afs-cons-links-empty: ⊦ afs-cons(dirs, files) → ( links(ino, dirs) = ∅ ↔ (ino ∈ dirs → dirs[ino].nlink = 0) ∧ (ino ∈ files → files[ino].nlink = 0));