| key0 = inodekey(ino0), key0 < key1, key1.ino ≤ ino, ino < key0.ino ∨ key0.dentry? ∧ ino = key0.ino ∧ str < key0.name ∨ key0.data? ∧ ino = key0.ino ⊦ key1.dentry? ∧ ino = key1.ino ∧ str < key1.name, key1.data? ∧ ino = key1.ino |
key1.ino < ino0, ino < ino0, inodekey(ino0) < key1, key1.ino ≤ ino ⊦ key1.dentry? ∧ ino = key1.ino ∧ str < key1.name, key1.data? ∧ ino = key1.ino
Used simplifier rules: ⊦ m < n → n ≠ 0; (s)%fle-01: ⊦ m ≤ n ∧ n < n0 → m < n0; (forward) from specification nat%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic% ⊦ ¬ inodekey(m).data?; (s)% ⊦ ¬ inodekey(m).dentry?; (s)% ⊦ inodekey(m).ino = m; (s)