| ∀ ks1. # ks1 < #(ks0 ++ key) → true → (∃ ino. ∀ ino0. inodekey(ino0) ∈ ks1 → ino0 < ino) ⊦ key ∈ ks0, ∃ ino. ∀ ino0. inodekey(ino0) = key ∨ inodekey(ino0) ∈ ks0 → ino0 < ino |
∃ ino. ∀ ino0. inodekey(ino0) ∈ ks0 → ino0 < ino, ∀ ks1. # ks1 < #(ks0 ++ key) → true → (∃ ino. ∀ ino0. inodekey(ino0) ∈ ks1 → ino0 < ino) ⊦ key ∈ ks0, ∃ ino. ∀ ino0. inodekey(ino0) = key ∨ inodekey(ino0) ∈ ks0 → ino0 < ino
Used simplifier rules: ⊦ ¬ key ∈ ks → #(ks ++ key) = # ks + 1; (s)% ⊦ m < n + 1 ↔ ¬ n < m; (s)% ⊦ ¬ n < n; (s)%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic%c: ⊦ m + n = n + m; from specification nat-basic Used terms: ks0