| ∀ 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 ∈ ∅ |
key ∈ ks, ∀ 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
Used simplifier rules: ⊦ ¬ key ∈ ∅; (s)