| ∀ a. ¬ a ∈ s ∨ ¬ a ∈ s0 ⊦ #(s ∪ s0) = # s + # s0 |
∀ s0. (∀ a. ¬ a ∈ s1 ∨ ¬ a ∈ s0) → #(s1 ∪ s0) = # s1 + # s0, ∀ a0. ¬ a0 ∈ s1 ++ a ∨ ¬ a0 ∈ s0 ⊦ #((s1 ++ a) ∪ s0) = #(s1 ++ a) + # s0
Used simplifier rules: une: ⊦ s ∪ ∅ = s;%una: ⊦ (s ∪ s0) ∪ s1 = s ∪ s0 ∪ s1;%unc: ⊦ s ∪ s0 = s0 ∪ s;%set generated by ∅, ++;;%Size-empty: ⊦ # ∅ = 0; from specification set-basic%z: ⊦ 0 + m = m; from specification nat-basic2%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic2%c: ⊦ m + n = n + m; from specification nat-basic2