| a ∈ s ∪ s0, ∀ s0. #(s0 ∪ s) = # s0 + # s - #(s0 ∩ s) ⊦ #(s ∪ s0) = # s0 + # s + 1 - #(s0 ∩ (s ++ a)), a ∈ s |
a ∈ s0, a0 ∈ s0, ∀ s0. #(s0 ∪ s) = # s0 + # s - #(s0 ∩ s) ⊦ #(s ∪ s0) = # s0 + # s + 1 - #(s0 ∩ (s ++ a)), a ∈ s
Used simplifier rules: Union: ⊦ a ∈ s1 ∪ s2 ↔ a ∈ s1 ∨ a ∈ s2;%una: ⊦ (s ∪ s0) ∪ s1 = s ∪ s0 ∪ s1;%unc: ⊦ s ∪ s0 = s0 ∪ s;% ⊦ ¬ a ∈ ∅; (s)% ⊦ s1 = s2 ↔ (∀ a. a ∈ s1 ↔ a ∈ s2); (s)%ne-01: ⊦ a ∈ s → s ≠ ∅; (forward) from specification set-basic