| ((del-list(to_delete, m + 1) * P))(H), ((del-list(to_delete0, m) * P))(H0) ⊦ ∀ H0, to_delete0. ((del-list(to_delete0, m - 1) * P))(H0) ∧ (m = 0 → to_delete0 = [] ∧ P(H0)) → 1 ≤ m → ((del-list(to_delete0, m + 1 - 2) * P))(H0) |
((del-list(to_delete, m + 1) * P))(H), ((del-list(to_delete0, m) * P))(H0), ((del-list(to_delete1, m - 1) * P))(H1), 1 ≤ m ⊦ m = 0, ((del-list(to_delete1, m + 1 - 2) * P))(H1)
Used simplifier rules: not-zero: 0 < n ⊦ (* n) ≤ m → m ≠ 0; (forward) from specification nat