| dirs[ino] = mkdir(m0, md0, n1, n2, entries), ino ∈ dirs, alink.pino ∈ dirs ⊦ alink.name ∈ (alink.pino = ino ⊃ mkdir(m, md, n, n0, entries);dirs[alink.pino]).entries ∧ ino0 = (alink.pino = ino ⊃ mkdir(m, md, n, n0, entries);dirs[alink.pino]).entries[alink.name] ↔ alink.name ∈ dirs[alink.pino].entries ∧ ino0 = dirs[alink.pino].entries[alink.name] |
dirs[ino] = mkdir(m0, md0, n1, n2, entries), alink = mklink(m1, str), m1 ∈ dirs, ino ∈ dirs ⊦ str ∈ (m1 = ino ⊃ mkdir(m, md, n, n0, entries);dirs[m1]).entries ∧ ino0 = (m1 = ino ⊃ mkdir(m, md, n, n0, entries);dirs[m1]).entries[str] ↔ str ∈ dirs[m1].entries ∧ ino0 = dirs[m1].entries[str]
Used simplifier rules: ⊦ m = alink.pino ∧ str = alink.name ↔ alink = mklink(m, str); (elim) Used terms: alink, m1, str