| ispath(p0, dirs[n].entries[name], m, dirs, files), n ∈ dirs, name ∈ dirs[n].entries, ∀ n, m, dirs, files. ispath(p0, n, m, dirs, files) → m ∈ files ∨ m ∈ dirs ⊦ m ∈ files, m ∈ dirs |
dirs[n] = mkdir(m0, md, m1, m2, entries), ispath(p0, entries[name], m, dirs, files), name ∈ entries, n ∈ dirs, ∀ n, m, dirs, files. ispath(p0, n, m, dirs, files) → m ∈ files ∨ m ∈ dirs ⊦ m ∈ dirs, m ∈ files
Used simplifier rules: ⊦ ( ((m = ad.size ∧ md = ad.meta) ∧ m0 = ad.nlink) ∧ m1 = ad.nsubdirs) ∧ entries = ad.entries ↔ ad = mkdir(m, md, m0, m1, entries); (elim) Used terms: dirs[n], md, m0, entries