Complex Set Operations - Step by Step¶
CS 5001/5002 - Strings, Sequences & Sets
Code¶
#!/usr/bin/env python3
"""
Filename: complex_set_operations.py
Description: Complex Set Operations - Step by Step
CS 5001/5002 - Strings, Sequences & Sets
This script demonstrates step-by-step analysis of complex set operations
including unions, intersections, complements, and differences.
"""
def analyze_complex_operations():
"""Step-by-step analysis of complex set operations"""
# Define our sets
A = {1, 2, 3, 4}
B = {3, 4, 5, 6}
C = {2, 4, 6, 8}
U = set(range(1, 11)) # Universe: {1, 2, 3, ..., 10}
print("Given sets:")
print(f"A = {A}")
print(f"B = {B}")
print(f"C = {C}")
print(f"U = {U}")
print()
# Expression 1: (A union B) - C
print("Expression 1: (A union B) - C")
print("Step 1: Calculate A union B")
union_AB = A | B
print(f" A union B = {union_AB}")
print("Step 2: Calculate (A union B) - C")
result1 = union_AB - C
print(f" (A union B) - C = {result1}")
print()
# Expression 2: (A intersect C) union complement(B)
print("Expression 2: (A intersect C) union complement(B)")
print("Step 1: Calculate A intersect C")
intersection_AC = A & C
print(f" A intersect C = {intersection_AC}")
print("Step 2: Calculate complement(B)")
complement_B = U - B
print(f" complement(B) = {complement_B}")
print("Step 3: Calculate (A intersect C) union complement(B)")
result2 = intersection_AC | complement_B
print(f" (A intersect C) union complement(B) = {result2}")
print()
# Verify using direct Python evaluation
print("Verification using direct Python evaluation:")
direct1 = (A | B) - C
direct2 = (A & C) | (U - B)
print(f"(A | B) - C = {direct1}")
print(f"(A & C) | (U - B) = {direct2}")
print(f"Results match: {result1 == direct1 and result2 == direct2}")
def main():
analyze_complex_operations()
if __name__ == "__main__":
main()
How to Use¶
- Copy the code above
- Save it as a
.pyfile (e.g.,complex_set_operations.py) - Run it with:
python complex_set_operations.py
Part of CS 5001/5002 - Strings, Sequences & Sets materials