| (bag ++ m0).max < m, ∀ m. bag.max < m → bag = ∅ ∨ count(m, bag) = 0 ⊦ bag ++ m0 = ∅, count(m, bag ++ m0) = 0 |
(bag = ∅ ⊃ m0;(m0 < bag.max ⊃ bag.max;m0)) < m, ∀ m. bag.max < m → bag = ∅ ∨ count(m, bag) = 0 ⊦ count(m, bag ++ m0) = 0
Used simplifier rules: max-rec: ⊦ (bag ++ n).max = (bag = ∅ ⊃ n;(bag.max > n ⊃ bag.max;n));% ⊦ m > n ↔ n < m; (s)% ⊦ bag0 ++ n ≠ ∅; (s)