집합과 클래스

By | Januar 12, 2018

직관적 집합론에서는 집합을 '조건을 만족시키는 대상들의 모임'과 같이 직관적으로 정의하며, 이러한 집합론에서는 Russell의 역리와 같은 여러 가지 문제가 발생한다. 이러한 이유 때문에 공리적 집합론에서는 집합을 직관적으로 정의하지 않고 일련의 공리를 이용하여 집합을 규정한다. 공리적 집합론에서는 '모든 집합의 집합'과 같은 것은 존재하지 않는다. 하지만 '모든 집합의 모임'에 대해서는 논할 수 있다. 즉 '집합'과 '모임'은 다른 개념이 되는데, '모임' 중에서 '집합'이 아닌 것을 고유클래스(proper class)라고 부른다. 그리고 집합과 고유클래스를 통틀어 클래스(class)라고 부른다. 클래스와 고유클래스를 각각 모임, 고유모임이라고 부르기도 한다.

공리적 집합론에서 집합은 일계논리식으로 표현되는 성질을 만족시키는 집합들의 모임으로 규정될 수 있다. 여기서 일계논리식을 변수 \(x\)를 가지는 논리식 \(\phi\)라고 할 때 클래스는 \[\mathcal{C}(\phi ) = \left\{ x \,\vert\, \phi (x) \right\}\] 로 나타낼 수 있다. 물론 위 식에서 \(x\)는 존재성이 보장된 집합의 원소로 한정된다. 이러한 표기법을 이용하면 합집합과 교집합은 다음과 같이 낱타낼 수 있다. \[\begin{eqnarray} \mathcal{C}(\phi ) \cup \mathcal{C}(\psi ) = \mathcal{C} ( \phi \vee \psi ), \\[7pt] \mathcal{C}(\phi ) \cap \mathcal{C}(\psi ) = \mathcal{C} ( \phi \wedge \psi ). \end{eqnarray}\] 또한 \(\mathcal{C} (\phi )\)가 \(\mathcal{C}(\psi )\)의 부분집합이라는 것은 \((\phi \rightarrow \psi )\)가 논리적으로 유효한 것과 동치이다. 그러나 이와 같은 표기법으로는 한 클래스가 다른 클래스의 원소라는 것을 나타낼 수 없으므로, Russell의 역리와 같은 모순이 발생하지 않는다.

일계논리언어는 가산이므로 이와 같은 방법으로 정의할 수 있는 클래스의 개수는 가산이다. 하지만 이러한 방법으로 정의된 클래스는 '모든 군의 모임'과 같은 수학적으로 유용한 클래스를 포함한다. [물론 '모든 군의 모임'을 정의하는 논리식 \(\gamma (x)\)를 구성하는 것은 쉽지 않다. 즉 \(g \times g\)로부터 \(g\)로의 함수 \(f\) 중에서 군의 공리를 만족시키는 \(f\)만을 나타내도록 하는 순서쌍 \(x = (g,\,f) \)의 조건을 \(\gamma (x)\)로 나타내야 한다.]

클래스 \(\mathcal{C}_1\)과 \(\mathcal{C} _2\)가 각각 논리식 \(\phi_1\)과 \(\phi_2\)에 의하여 정의된다고 하자. 이때 \(\mathcal{C}_1\)과 \(\mathcal{C} _2\)의 합집합, 교집합, 카르테시안 곱을 정의하는 논리식은 다음과 같다.

  • \(\mathcal{C}_1 \cup \mathcal{C}_2\)는 \(\phi_1 \vee \phi_2\)에 의하여 정의된다.
  • \(\mathcal{C}_1 \cap \mathcal{C}_2\)는 \(\phi_1 \wedge \phi_2\)에 의하여 정의된다.
  • \(\mathcal{C}_1 \times \mathcal{C}_2\)는 다음 식에 의하여 정의된다. \[(\exists y)(\exists z)((\phi _1 (y) \wedge \phi_2 (z)) \wedge \pi (x,\,y,\,z))\] 여기서 \(\pi (x,\,y,\,z)\)는 \(x\)가 순서쌍 \((y,\,z)\)와 일치함을 나타내는 논리식이다.

하지만 위와 같은 방법으로는 멱집합을 정의하는 논리식을 기술할 수 없다. 왜냐하면 일계논리언어에서는 일계논리식 자체를 대상으로 하는 한정사를 사용할 수 없기 때문이다.

Schreibe einen Kommentar