| ns0 ∩ ns1 = ∅, ns2 ⊆ ns1 ⊦ #((ns0 \ ns3) ∩ ns2) = 0, (ns0 \ ns3) ∩ ns2 = ∅ |
⊦ ns = ns0 ↔ (∀ n. n ∈ ns ↔ n ∈ ns0)
Used simplifier rules: ⊦ ¬ n ∈ ∅; (s)% ⊦ n ∈ ns ∩ ns0 ↔ n ∈ ns ∧ n ∈ ns0; (ws)%int-a: ⊦ (ns ∩ ns0) ∩ ns1 = ns ∩ ns0 ∩ ns1; from specification set-union[nat-set]%int-c: ⊦ ns ∩ ns0 = ns0 ∩ ns; from specification set-union[nat-set]% ⊦ n ∈ ns \ ns0 ↔ n ∈ ns ∧ ¬ n ∈ ns0; (ws)%ne-01: ⊦ n ∈ ns → ns ≠ ∅; (forward) from specification set-basic[nat-set]%sub-in: ⊦ n ∈ ns ∧ ns ⊆ ns0 → n ∈ ns0; (forward) from specification set-basic[nat-set]% ⊦ ns ∩ ns0 = ∅ ∧ n ∈ ns → (n ∈ ns0 ↔ false); (as) Used terms: ∅, (ns0 \ ns3) ∩ ns2