집합(r24 Blame)
r24 | ||
---|---|---|
r1 (새 문서) | 1 | [[분류:집합론]] |
2 | [목차] | |
3 | == 개요 == | |
r2 | 4 | 어떠한 대상들의 집합으로, [[집합론]]을 포함한 거의 모든 [[수학]] 분야에서 다른 수학적 대상을 구성하는 기층적 요소이다. |
5 | ||
6 | == 정의 == | |
r4 | 7 | [[그런 거 없다]]. |
r2 | 8 | |
r18 | 9 | 정확히는 구성적 정의나 material set theory적 정의 등으로 나뉘는데,[* Shulman, M. (2019). Comparing material and structural set theories. Annals of Pure and Applied Logic, 170(4), 465–504. https://doi.org/10.1016/j.apal.2018.11.002] 이들 각각의 정의가 독자적인 집합론(set theory)을 구축하기 때문에 어느 정도 겹치는 점은 있어도 집합이 무엇인지에 대한 100% 일관된 정의는 없다. 조금만 생각해봐도 수학적 공리계의 기반을 이루는 대상이나 [[원소]] 그 자체인 집합을 정의하다 보면 [[제1원인론]] 같은 패러독스에 빠질 수 있기 때문. 특히 구성적인 접근법을 취하지 않으면 [[러셀의 역설]] 따위에 빠지기 쉽다. 여담으로 [[범주론]]에서는 집합 자체를 [math(\bf Set)] 범주의 요소 그 자체로 구성한다. |
r6 | 10 | |
r15 | 11 | 본 문서에서는 구체적으로 집합이 무엇인지에 대해 별 듣보잡 이론(alternative set theory)을 들고와서 논하기 보다는 학부생에게 친숙한 ZFC와 material set theory 기준으로 '공리적 특징'만을 관찰하기로 한다. 즉, '어떤 것이 집합이냐'가 아니라 '집합은 어떤 행동을 한다'에서 시작한다. |
r8 | 12 | |
13 | 집합 [math(A)]가 [math(x)]를 가질 때, 이를 [math(x \in A)]라 표현하며, [math(x)]를 [math(A)]의 원소(element)라고 한다. 이 포크(?)같이 생긴 [math(\in)] 기호를 membership predicate라고 하며, 이름에서 눈치챘겠지만 이 predicate는 부정할 수 있는데, 이를 [math(\neg(x \in A))]라 쓰고 '집합 [math(A)]가 [math(x)]를 원소로 가지지 않는다'고 읽는다. 이따위로 길게 쓰면 학생들의 자살율이 증가하기 때문에 수학자들은 이를 한번에 쓰기 위해 [math(\notin)]이라는 기호를 발명했다. 즉 앞의 predicate는 [math(x \notin A)]로 다시 쓸 수 있다. | |
r9 | 14 | |
r17 | 15 | ZFC등 대다수의[* 배중률(law of excluded middle)이 성립하기 때문이다. 구성적 접근법을 취하는 집합론 중 일부는 배중률이 성립하지 않는 경우도 있다.] well-defined된 집합론에서 원소 여부는 상술했듯이 predicate로 동작하며, 따라서 '[math(A)]의 원소'이거나 '[math(A)]의 원소가 아니'거나 둘 중 하나만 성립한다.[* 이러한 이진성은 유합집합의 멱집합 크기가 2의 거듭제곱으로 주어지는 등 정말 생각지도 않은 기상천외한 곳에서 나타나는 편.] |
r12 | 16 | |
17 | 이제 종합해보자. '어떤 집합' [math(A)]에 대해 우리는 '주어진(free) 원소의 포함 여부'를 결정하는 predicate [math(\in)]을 가진다. 이 predicate를 흔히 수리논리학에서 쓰는 것처럼 [math(P(x))]로 표현해 보자. 예를 들어 [math(x)]에 [math(1)]을 넣었을 때 [math(P(1))]이 참이 되고, [math(x)]에 [math(6)]을 넣었을 때 거짓이 될 수도 있다. 고등학교 1학년때 배웠듯이[* predicate는 FOL이나 형식증명이론에선 주로 술어라고 번역하긴 하는데, 고딩때는 '조건문' 따위 이름으로 배운다. 같은 개념이다.] 이 predicate를 문장이나 조건으로 서술해 보자. | |
18 | ||
19 | ||<tablealign=center><tablebordercolor=transparent><tablebgcolor=transparent>[math(P(x) : \text{$x$가 홀수})]|| | |
20 | ||
r16 | 21 | 이 조건을 참이 되도록 만드는 [math(x)]는 모두 [math(A)]의 원소일 것이고, 반대로 이 조건을 거짓이 되도록 만드는 [math(x)]는 [math(A)]의 원소가 아닐 것이다. 따라서 이 조건을 유일하게[* ZFC의 extensionality axiom으로 유일함이 결정된다. 증명은 ZFC 문서에서.] 만족시키는 [math(A)]가 바로 집합[* 역시 ZFC의 axiom schema of separation으로 집합임이 보장된다.] [math(A)]가 된다. |
r13 | 22 | |
r14 | 23 | ZFC를 어떠한 선제공리 없이 membership predicate 하나만으로 구축하기 위해 졸라 장황하게 쓰긴 했지만 결국 이 위의 번거로운 과정들을 수식 한줄 [[딸깍]]으로 축약한 것이 바로 우리가 고등학교때 배우는 '조건제시법'이다. |
r13 | 24 | |
25 | ||<tablealign=center><tablebordercolor=transparent><tablebgcolor=transparent>[math(A = \{x \mid \text{$x$가 홀수}\})]|| | |
r19 | 26 | |
27 | 여기까지가 소박한 집합론(naive set theory)이다. ~~좆같다~~ | |
r20 | 28 | |
29 | == 표기 == | |
30 | 집합 하나 쓰는데 앞서 한 것처럼 장황하게 썼다간 뒷목 잡고 객사할 위험이 있어 보통 내용이 짧거나 간단한 경우는 중괄호 안에 원소를 하나씩 나열한다. 이걸 원소나열법이라고 한다. | |
31 | ||
32 | ||<tablealign=center><tablebordercolor=transparent><tablebgcolor=transparent>[math(A = \{x, y, z\})]|| | |
r21 | 33 | |
34 | 물론 엄밀한 건 아니지만 대충 알아들을 수 있을 때 [math(\dots)] 같은 야매 표기를 사용해 내용을 줄일 수 있다. 가끔 엄밀하지 않다는 이유로 교과서에서 이 방법을 구체적으로 안 알려주는 경우도 있는데, 졸라 많이 쓴다. 익숙해져라. 저렇게 쓰면 보통 위에건 유한집합, 아래건 무한집합이라는 뜻이다. | |
35 | ||
36 | ||<tablealign=center><tablebordercolor=transparent><tablebgcolor=transparent>[math(\begin{aligned} | |
37 | A &= \{x_1, x_2, x_3, \dots, x_n\} \\ | |
38 | B &= \{x_1, x_2, x_3, \dots\} \\ | |
39 | \end{aligned})]|| | |
r22 | 40 | |
41 | 아까 설명한 조건제시법도 자주 쓴다. 보통 [math(\mid)]를 기준으로 왼쪽 오른쪽으로 나뉘는데, 왼쪽은 집합에 들어가는 부분, 오른쪽은 만족해야 하는 조건으로 외우면 된다. 예를 들어 | |
42 | ||
43 | ||<tablealign=center><tablebordercolor=transparent><tablebgcolor=transparent>[math(A = \{x \mid \text{$x$가 소수}\})]|| | |
44 | ||
45 | 라면 [math(A)]에는 [[소수]]만 들어가게 된다. 또 다른 예시로 | |
46 | ||
47 | ||<tablealign=center><tablebordercolor=transparent><tablebgcolor=transparent>[math(B = \{2^x \mid \text{$x$가 자연수}\})]|| | |
48 | ||
r24 | 49 | 라면? [math(B)]에는 [[2의 거듭제곱]]이 들어가게 된다. 그냥 자연수가 들어가는 게 아니다! 쉽게 이해하면 왼쪽 부분은 [math(f(x) = 2^x)]같은 함수나 수식이고, 오른쪽은 이 [math(x)]에 들어갈 값, 또는 [[정의역]]을 서술하는 조건을 써두는 공간이다. |
50 |