| ∀ key. key ∈ ks → key.dentry?, ∀ key. key.dentry? → (key ∈ ks ↔ mklink(key.ino, key.name) ∈ ls), ∀ ls0, ks. # ls0 < # ls → (∀ key. key ∈ ks → key.dentry?) ∧ (∀ key. key.dentry? → (key ∈ ks ↔ mklink(key.ino, key.name) ∈ ls0)) → # ks = # ls0 ⊦ # ks = 0, # ks = # ls, ks = ∅ |
⊦ ks = ks0 ↔ (∀ key. key ∈ ks ↔ key ∈ ks0)
∀ key. key.dentry? → (key ∈ ks ↔ mklink(key.ino, key.name) ∈ ls), ∀ key. key ∈ ks → key.dentry?, ∀ ls0, ks. # ls0 < # ls → (∀ key. key ∈ ks → key.dentry?) ∧ (∀ key. key.dentry? → (key ∈ ks ↔ mklink(key.ino, key.name) ∈ ls0)) → # ks = # ls0 ⊦ # ks = # ls, # ks = 0, ∀ key. key ∈ ks ↔ key ∈ ∅
Used terms: ∅, ks