[이산수학] 집합의 연산

허민엽·2023년 12월 30일
0

이산수학

목록 보기
4/6

공부하는 중이라 부정확하고 부족한 지식일 수있습니다! 댓글로 지적 부탁드립니다!


집합의 연산

  • 주어진 집합들의 원소를 조합함으로써 새로운 집합을 만드는 것

합집합(Union)

  • 집합 A,B가 있을 때, A에 속하든지 또는 B에 속하는 모든 원소들의 집합
  • A∪B = {x | x\inA 또는(OR,\lor) x\inB}

예제1

A = {1,2}, B = {2,3}, C = {1,2,3,6}일 때, A∪B∪C를 구하여라

  • 집합 A,B,C에 속하는 모든 원소들을 중복 없이 적으면 된다.
    A∪B∪C = {1,2,3,6}

교집합(Intersection)

  • 집합 A,B가 있을 때, A에도 속하고 B에도 속하는 모든 원소들의 집합
  • A∩B = {x | x∈A 이고(AND,∧) x∈B}

곱집합(Product)

  • 두 집합 A,B가 있을 때, 두 집합 각각에서 원소를 하나씩 뽑아 얻은 순서쌍들 모두로 이루어진 집합
  • AxB = {(a,b) | a∈A ∧ b∈B}

곱집합의 크기(Cardinality)

  • |AxB| = |A| x |B|

예제2

A = {a,b}, B = {1,2,3}일 때, AXB를 구하여라

123a(a,1)(a,2)(a,3)b(b,1)(b,2)(b,3)\def\arraystretch{1.5} \begin{array}{c:c:c:} & 1 & 2 & 3 \\ \hdashline a & (a,1) & (a,2) & (a,3) \\ \hdashline b & (b,1) & (b,2) & (b,3) \end{array}
  • 집합 A를 행(Row), 집합 B를 열(Column)으로 배치
    AxB = {(a,1), (a,2), (a,3), (b,1), (b,2), (b,3)}

여집합(Complement)

  • 전체집합 U의 원소 중 A의 원소가 아닌 것들의 집합
  • AcA^c = {x | x∈U : x∈A}

차집합(Difference)

  • 두 집합 A,B가 있을 때, A에 속하고 B에는 속하지 않는 원소들의 집합
  • A-B = {x | x∈A ∧ x\notinB} = ABcA∩B^c

대칭 차집합(Symmetric Difference)

  • 두 집합의 차지합 A-B에 속하거나 또는 B-A에 속하는 원소들의 집합
  • A\oplusB = {x | x∈(A-B) \lor x∈(B-A)}

예제3

A = {a,b,c,e,f}, B = {b,d,r,s}일 때, A\oplusB을 구하여라

  • A-B와 B-A를 구한 후에, 이 결과 집합들의 합집합을 구하면 된다.
    A\oplusB = (A-B)\lor(B-A) = {a,c,e,f} \lor {d,r,s} = {a,c,d,e,f,r,s}

합집합의 크기

  • 포함배제의 원리(Inclusion-Exclusion)
    중복된 집합을 제거하여 합집합을 구함
    |A∪B| = |A| + |B| - |A∩B|

예제4

어떤 회사에서 25명의 시스템 프로그래머와 40명의 응용 프로그래머를 고용하려고 한다. 이 중에서 10명은 작업을 모두 수행할 수 있는 프로그래머를 원한다. 이 회사는 몇 명의 프로그래머를 고용해야하는지 구하여라

집합 A를 시스템 프로그래머의 집합이라고 하고, 집합 B를 응용 프로그래머의 집합이라고 하자.
|A| = 25, |B| = 40, |A∩B| = 10
따라서 고용할 인원 수를 구하면 다음과 같다.
|A∪B| = 25 + 40 - 10 = 55
즉, 이 회사는 55명의 프로그래머를 고용해야한다.

예제5

U = {0,1,2,3,4,5,6,7,8,9,10}, A = {1,2,3,4,5}, B = {4,5,6,7,8}일 때, 다음을 구하여라

  1. A∪B = {1,2,3,4,5,6,7,8}
  2. A∩B = {4,5}
  3. AcA^c = {0,6,7,8,9,10}
  4. BcB^c = {0,1,2,3,9,10}
  5. A-B = {1,2,3}
  6. B-A = {6,7,8}
  7. A\oplusB = {1,2,3,6,7,8}
  8. AxB = {(1,4),(2,4),(3,4),(4,4),(5,4),(1,5),(2,5),(3,5),(4,5),(5,5),(1,6),(2,6),(3,6),(4,6),(5,6),(1,7),(2,7),(3,7),(4,7),(5,7)(1,8),(2,8),(3,8),(4,8),(5,8)}
456781(1,4)(1,5)(1,6)(1,7)(1,8)2(2,4)(2,5)(2,6)(2,7)(2,8)3(3,4)(3,5)(3,6)(3,7)(3,8)4(4,4)(4,5)(4,6)(4,7)(4,8)5(5,4)(5,5)(5,6)(5,7)(5,8)\def\arraystretch{1.5} \begin{array}{c:c:c:c:c:} & 4 & 5 & 6 & 7 & 8 \\ \hdashline 1 & (1,4) & (1,5) & (1,6) & (1,7) & (1,8) \\ \hdashline 2 & (2,4) & (2,5) & (2,6) & (2,7) & (2,8) \\ \hdashline 3 & (3,4) & (3,5) & (3,6) & (3,7) & (3,8) \\ \hdashline 4 & (4,4) & (4,5) & (4,6) & (4,7) & (4,8) \\ \hdashline 5 & (5,4) & (5,5) & (5,6) & (5,7) & (5,8) \end{array}
  1. BxA = {(4,1),(5,1),(6,1),(7,1),(8,1),(4,2),(5,2),(6,2),(7,2),(8,2),(4,3),(5,3),(6,3),(7,3),(8,3),(4,4),(5,4),(6,4),(7,4),(8,4),(4,5),(5,5),(6,5),(7,5),(8,5)}
123454(4,1)(4,2)(4,3)(4,4)(4,5)5(5,1)(5,2)(5,3)(5,4)(5,5)6(6,1)(6,2)(6,3)(6,4)(6,5)7(7,1)(7,2)(7,3)(7,4)(7,5)8(8,1)(8,2)(8,3)(8,4)(8,5)\def\arraystretch{1.5} \begin{array}{c:c:c:c:c:} & 1 & 2 & 3 & 4 & 5 \\ \hdashline 4 & (4,1) & (4,2) & (4,3) & (4,4) & (4,5) \\ \hdashline 5 & (5,1) & (5,2) & (5,3) & (5,4) & (5,5) \\ \hdashline 6 & (6,1) & (6,2) & (6,3) & (6,4) & (6,5) \\ \hdashline 7 & (7,1) & (7,2) & (7,3) & (7,4) & (7,5) \\ \hdashline 8 & (8,1) & (8,2) & (8,3) & (8,4) & (8,5) \end{array}
profile
코딩 날먹하고싶ㄷㅏ!

0개의 댓글