Skip to content

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

  1. Copy the code above
  2. Save it as a .py file (e.g., complex_set_operations.py)
  3. Run it with: python complex_set_operations.py

Part of CS 5001/5002 - Strings, Sequences & Sets materials