| ⊦ count(a, bag0 ∪ bag1) = count(a, bag0) + count(a, bag1) |
∀ a, bag1. count(a, bag ∪ bag1) = count(a, bag) + count(a, bag1) ⊦ count(a, (bag ++ a0) ∪ bag1) = count(a, bag ++ a0) + count(a, bag1)
Used simplifier rules: union-empty: ⊦ ∅ ∪ bag = bag;%bag generated by ∅, ++;;%count-empty: ⊦ count(a, ∅) = 0; from specification bag-basic%add-base: ⊦ n + 0 = n; from specification nat-basic2%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic2%c: ⊦ m + n = n + m; from specification nat-basic2