| entries0[str0] = entries1[str1] ↔ mklink(ino1, str1) = alink, dirs[ino0] = mkdir(m0, md0, n0, n2, entries0), dirs[ino1] = mkdir(m1, md1, n1, n3, entries1), ino0 ∈ dirs, ino1 ∈ dirs, str0 ∈ entries0, str1 ∈ entries1, ∀ alink0. alink0.pino ∈ dirs ∧ alink0.name ∈ dirs[alink0.pino].entries ∧ entries0[str0] = dirs[alink0.pino].entries[alink0.name] ↔ alink0 = alink ⊦ mklink(ino1, str1) = alink ↔ str0 = str1 ∧ ino0 = ino1 |
Used simplifier rules: ⊦ mklink(m, str).pino = m; (s)% ⊦ mklink(m, str).name = str; (s)% ⊦ mkdir(m, md, m0, m1, entries).entries = entries; (s)% ⊦ mklink(m, str) = mklink(m0, str0) ↔ m = m0 ∧ str = str0; (ws) Used terms: mklink(ino0, str0)