public PowerSet <T> Union(PowerSet <T> set2) { // объединение текущего множества и set2 var union = new PowerSet <T>(); foreach (var value in _values) { union.Put(value); } foreach (var value2 in set2.GetValues()) { union.Put(value2); } return(union); }
public PowerSet <T> Difference(PowerSet <T> set2) { // разница текущего множества и set2 var difference = new PowerSet <T>(); foreach (var value in this.GetValues()) { difference.Put(value); } foreach (var value2 in set2.GetValues()) { difference.Remove(value2); } return(difference); }
public PowerSet <T> Intersection(PowerSet <T> set2) { // пересечение текущего множества и set2 var intersection = new PowerSet <T>(); foreach (var value in _values) { if (set2.Get(value)) { intersection.Put(value); } } return(intersection); }