Skip to Content
독학사독학사 2단계이산수학06. 관계와 함수: 정의·표현·기본 분류

이번 문서의 목표: 이 문서를 다 읽으면 곱집합에서 관계를 정의하고, 함수가 되기 위한 조건을 판별하며, 일대일·전사·전단사를 구분하고, 합성함수와 역함수가 존재하는 조건을 설명할 수 있다.

왜 관계와 함수를 함께 배우는가

06편에서 집합의 연산을 다졌다면, 이번 문서에서는 그 집합 두 개를 연결하는 방법을 다룬다. 관계(relation)와 함수(function)는 모두 “집합의 원소끼리 어떻게 짝지어지는가”를 다루는 개념이며, 사실 함수는 관계의 특별한 경우다. 이 둘의 정의를 정확히 구분해 두면 08편에서 배울 동치관계·순서관계, 그리고 이후 그래프 이론(그래프의 간선도 결국 정점 집합 위의 관계다)까지 자연스럽게 이어진다.

쉽게 말하면: 관계는 “두 집합의 원소를 이렇게도 저렇게도 자유롭게 짝지어 놓은 것”이고, 함수는 그중에서 “각 입력에 대해 출력이 정확히 하나로 정해지는” 특별히 엄격한 규칙을 가진 관계다.

순서쌍과 곱집합

관계를 정의하려면 먼저 순서쌍(ordered pair)과 곱집합(Cartesian product, 카테시안 곱)을 알아야 한다.

순서쌍 (a,b)(a, b)는 두 원소 aa, bb순서를 구별해 짝지은 것이다. 06편의 집합 {a,b}\{a, b\}와 달리 순서쌍은 (a,b)(b,a)(a, b) \ne (b, a)(단, aba \ne b일 때)이다. 두 순서쌍이 같으려면 첫 번째 성분과 두 번째 성분이 각각 같아야 한다: (a,b)=(c,d)    a=c 이고 b=d(a,b) = (c,d) \iff a=c \text{ 이고 } b=d.

두 집합 AA, BB곱집합 A×BA \times BAA의 원소를 첫 번째로, BB의 원소를 두 번째로 하는 모든 순서쌍을 모은 집합이다.

A×B={(a,b)aA 이고 bB}A \times B = \{ (a, b) \mid a \in A \text{ 이고 } b \in B \}
  • A×BA \times B: “에이 곱하기 비” 또는 “에이와 비의 곱집합”이라고 읽는다.
  • 순서쌍의 순서가 중요하므로 일반적으로 A×BB×AA \times B \ne B \times A이다(ABA \ne B일 때).

예제

A={1,2}A = \{1, 2\}, B={x,y,z}B = \{x, y, z\}라 하면,

A×B={(1,x),(1,y),(1,z),(2,x),(2,y),(2,z)}A \times B = \{(1,x), (1,y), (1,z), (2,x), (2,y), (2,z)\}

AA의 원소 2개 각각에 대해 BB의 원소 3개를 하나씩 짝지을 수 있으므로, 09편에서 배울 곱의 원리에 의해 A×B=A×B=2×3=6|A \times B| = |A| \times |B| = 2 \times 3 = 6개의 순서쌍이 나온다. 실제로 위에서 나열한 개수와 일치한다.

관계의 정의와 표현

두 집합 AA, BB에 대해, AA에서 BB로의 관계 RR은 곱집합 A×BA \times B부분집합으로 정의한다.

RA×BR \subseteq A \times B

순서쌍 (a,b)(a, b)RR에 속하면 “aabbRR 관계에 있다”고 하고 aRba \mathrel{R} b로 쓴다. A=BA = B인 경우, 즉 같은 집합 안에서의 관계를 특별히 AA 위의 관계라고 부른다(08편에서 다루는 동치관계·순서관계가 모두 이 형태다).

쉽게 말하면: 관계는 곱집합이라는 “가능한 모든 짝의 목록” 중에서, 실제로 성립하는 짝들만 골라 놓은 부분집합이다.

관계를 표현하는 방법은 세 가지가 대표적이다.

표현 방법설명
순서쌍 목록RR에 속하는 순서쌍을 원소나열법으로 직접 나열한다.
화살표 다이어그램두 집합의 원소를 각각 나열하고, 관계가 성립하는 원소끼리 화살표로 잇는다.
관계 행렬행을 AA의 원소, 열을 BB의 원소로 하는 표를 만들고, aRba \mathrel{R} b이면 해당 칸에 1, 아니면 0을 적는다.

예제 — 약수 관계

A={1,2,3,4}A = \{1, 2, 3, 4\} 위에서 “aabb의 약수다”라는 관계 RR을 생각하자. 순서쌍 목록으로 표현하면 다음과 같다.

R={(1,1),(1,2),(1,3),(1,4),(2,2),(2,4),(3,3),(4,4)}R = \{(1,1),(1,2),(1,3),(1,4),(2,2),(2,4),(3,3),(4,4)\}

관계 행렬로는 다음과 같이 표현한다(행 aa, 열 bb: aabb의 약수이면 1).

R1234
11111
20101
30010
40001

이 관계는 08편에서 다시 등장해, 반사·추이 등의 성질을 판별하는 대표 예제로 쓰인다.

함수의 정의와 표현

함수(function) f:ABf: A \to B는 관계 중에서도 다음 조건을 만족하는 특별한 관계다: AA모든 원소가 정확히 하나의 BB의 원소와 짝지어져야 한다.

aA, !bB such that (a,b)f\forall a \in A,\ \exists! b \in B \text{ such that } (a, b) \in f
  • !\exists!: “정확히 하나 존재한다”는 뜻의 정량자로, 04편에서 다룬 존재 정량자 \exists에 유일성을 더한 표기다.
  • 이 조건은 두 가지를 동시에 요구한다. 첫째, AA의 어떤 원소도 빠짐없이 짝이 있어야 한다(존재성). 둘째, 한 원소가 두 개 이상의 출력을 가지면 안 된다(유일성).

함수와 관련된 용어를 정리하면 다음과 같다.

용어기호정의
정의역dom(f)=A\operatorname{dom}(f) = A함수의 입력이 될 수 있는 원소 전체의 집합(domain)
공역codom(f)=B\operatorname{codom}(f) = B함수의 출력이 속할 수 있다고 미리 정해 둔 집합(codomain)
치역ran(f)={f(a)aA}\operatorname{ran}(f) = \{f(a) \mid a \in A\}실제로 함수값으로 나오는 원소만 모은 집합(range)

자주 틀리는 점: 공역과 치역을 같은 것으로 착각하는 경우가 많다. 공역은 “출력이 속할 수 있는 후보 전체”이고, 치역은 “실제로 쓰인 출력만” 모은 것이므로 치역은 항상 공역의 부분집합이며(ran(f)codom(f)\operatorname{ran}(f) \subseteq \operatorname{codom}(f)), 둘이 정확히 같을 필요는 없다.

예제 — 정의역·공역·치역 구분

A={1,2,3}A = \{1, 2, 3\}, B={a,b,c,d}B = \{a, b, c, d\}이고, f(1)=af(1) = a, f(2)=af(2) = a, f(3)=cf(3) = c라 하자.

  • 정의역: {1,2,3}\{1, 2, 3\} (미리 정해진 입력 집합 AA)
  • 공역: {a,b,c,d}\{a, b, c, d\} (미리 정해진 출력 후보 집합 BB)
  • 치역: {a,c}\{a, c\} (실제로 함수값으로 나온 것만, bbdd는 어떤 입력의 출력으로도 쓰이지 않았다)

이 예에서 공역은 4개 원소를 가지지만 치역은 2개 원소만 가진다는 점에서 둘이 다름을 확인할 수 있다.

일대일·전사·전단사 — 함수의 세 가지 분류

함수는 입력과 출력이 짝지어지는 양상에 따라 다음과 같이 분류한다.

일대일 함수(injective, 단사함수)

일대일 함수(one-to-one function)는 서로 다른 입력이 항상 서로 다른 출력을 갖는 함수다. 즉, 두 입력의 출력이 같으면 그 두 입력 자체가 같았어야 한다.

f(a1)=f(a2)a1=a2f(a_1) = f(a_2) \Rightarrow a_1 = a_2

이 정의는 05편에서 배운 대우 형태로 바꾸면 더 직관적이다: “a1a2a_1 \ne a_2이면 f(a1)f(a2)f(a_1) \ne f(a_2)”, 즉 다른 입력은 절대 같은 출력에 모이지 않는다는 뜻이다.

전사함수(surjective, 위로의 함수)

전사함수(onto function)는 공역의 모든 원소가 적어도 한 번은 어떤 입력의 출력으로 쓰이는 함수다. 즉, 치역이 공역과 정확히 같다.

bB, aA such that f(a)=b\forall b \in B,\ \exists a \in A \text{ such that } f(a) = b

위 예제의 ffbbdd가 어떤 입력의 출력도 되지 못했으므로 전사함수가 아니다.

전단사함수(bijective, 일대일 대응)

전단사함수(bijective function)는 일대일이면서 동시에 전사인 함수다. 정의역과 공역의 원소가 완벽하게 하나씩 짝지어지는 함수이며, 이 경우에만 다음 절의 역함수가 존재한다.

예제로 세 분류를 구분하기

A={1,2,3}A = \{1,2,3\}, B={1,2,3,4}B = \{1,2,3,4\}라 하고 세 함수를 비교하자.

함수대응일대일?전사?전단사?
g1g_111,22,331\to1, 2\to2, 3\to3예(입력마다 출력이 다름)아니오(4가 치역에 없음)아니오
g2g_211,21,321\to1, 2\to1, 3\to2아니오(1과 2가 같은 출력 1)아니오(3, 4가 치역에 없음)아니오
g3g_3 (단, B=AB=A일 때)12,23,311\to2, 2\to3, 3\to1예(1, 2, 3이 모두 치역)

g1g_1은 서로 다른 입력이 서로 다른 출력을 가지므로 일대일이지만, 공역 BB의 원소 4는 어떤 입력의 출력도 아니므로 전사가 아니다. g2g_21122가 모두 11로 대응되어 일대일이 아니다. g3g_3은 정의역과 공역이 같은 3원소 집합일 때, 세 입력이 세 출력에 완벽하게 하나씩 대응되어 전단사다.

자주 틀리는 점: 정의역과 공역의 원소 개수가 다르면(AB|A| \ne |B|) 애초에 전단사가 될 수 없다. 위 표에서 AABB의 원소 개수가 각각 3개, 4개로 다르므로 g1g_1, g2g_2는 원소 개수만 봐도 전단사가 아님을 미리 알 수 있다.

합성함수와 역함수

합성함수(composite function)는 두 함수 f:ABf: A \to Bg:BCg: B \to C가 있을 때, AA의 원소를 먼저 ffBB의 원소로 보낸 뒤, 그 결과를 다시 ggCC의 원소로 보내는 새로운 함수다.

(gf)(a)=g(f(a))(g \circ f)(a) = g(f(a))
  • gfg \circ f: “지에프” 또는 “지 콤포즈 에프”라고 읽으며, 오른쪽에 있는 ff를 먼저 적용한다는 순서에 유의해야 한다.
  • 합성이 정의되려면 ff의 공역과 gg의 정의역이 일치해야 한다(ff의 출력이 gg의 입력으로 그대로 들어갈 수 있어야 하기 때문이다).

예제

f(x)=x+1f(x) = x + 1 (f:ZZf: \mathbb{Z} \to \mathbb{Z}, Z\mathbb{Z}는 정수 전체의 집합), g(x)=x2g(x) = x^2 (g:ZZg: \mathbb{Z} \to \mathbb{Z})이라 하자. (gf)(3)(g \circ f)(3)을 계산하면 다음과 같다.

(gf)(3)=g(f(3))=g(4)=16(g \circ f)(3) = g(f(3)) = g(4) = 16
  • f(3)=3+1=4f(3) = 3+1 = 4를 먼저 계산하고, 그 결과 44gg에 대입해 g(4)=16g(4) = 16을 얻는다.
  • 만약 순서를 바꿔 (fg)(3)(f \circ g)(3)을 계산하면 f(g(3))=f(9)=10f(g(3)) = f(9) = 10으로 전혀 다른 값이 나온다. 이는 함수의 합성이 일반적으로 교환법칙이 성립하지 않는다(gffgg \circ f \ne f \circ g)는 것을 보여준다.

역함수(inverse function) f1:BAf^{-1}: B \to A는 함수 ff가 만든 대응을 정확히 거꾸로 돌리는 함수이며, f(a)=bf(a) = b이면 f1(b)=af^{-1}(b) = a가 되도록 정의한다. 역함수가 함수로서 존재하려면(모든 bBb \in B에 대해 f1(b)f^{-1}(b)가 정확히 하나로 정해지려면) ff전단사여야만 한다.

  • ff가 일대일이 아니면, 어떤 bb는 두 개 이상의 aa로부터 왔을 수 있어 f1(b)f^{-1}(b)가 하나로 정해지지 않는다(함수의 유일성 조건 위반).
  • ff가 전사가 아니면, 공역의 어떤 bb는 대응되는 입력이 아예 없어 f1(b)f^{-1}(b)가 정의되지 않는다(함수의 존재성 조건 위반).

ff가 전단사이면 f1ff^{-1} \circ f는 정의역의 모든 원소를 자기 자신으로 돌려보내는 함수(항등함수, identity function)가 되고, ff1f \circ f^{-1} 역시 공역에서의 항등함수가 된다.

(f1f)(a)=a(모든 aA에 대해)(f^{-1} \circ f)(a) = a \quad \text{(모든 } a \in A \text{에 대해)}

쉽게 말하면: 역함수는 “왔던 길을 그대로 되짚어 돌아가는” 함수이며, 되짚어 갈 때 갈림길(일대일 위반)이나 막다른 길(전사 위반)이 있으면 역함수를 만들 수 없다.

핵심 정리

  • 곱집합 A×BA \times BAABB의 원소로 만들 수 있는 모든 순서쌍의 집합이며, 관계는 그 부분집합으로 정의된다.
  • 함수는 정의역의 모든 원소가 정확히 하나의 출력을 갖는 특별한 관계이며, 정의역·공역·치역을 구분해야 한다(치역은 항상 공역의 부분집합).
  • 일대일은 “다른 입력은 다른 출력”, 전사는 “공역 전체가 치역과 같음”, 전단사는 이 둘을 모두 만족하는 함수다.
  • 합성함수는 오른쪽 함수를 먼저 적용하며 일반적으로 교환법칙이 성립하지 않고, 역함수는 오직 전단사함수에 대해서만 정의된다.

마무리 복습

문제 14지선다
집합 A = {1, 2}, B = {x, y, z}일 때 곱집합 A×B의 원소 개수는?
문제 24지선다
함수 f: A→B에서 공역과 치역의 관계에 대한 설명으로 옳은 것은?
문제 34지선다
함수 f(a1)=f(a2)이면 항상 a1=a2가 성립하는 함수를 무엇이라 하는가?
문제 44지선다
정의역과 공역의 원소 개수가 각각 3개, 5개인 함수가 전단사함수일 수 있는가?
문제 54지선다
f(x)=x+1, g(x)=x제곱일 때 (g∘f)(2)의 값은?
문제 64지선다
함수 f의 역함수가 존재하기 위한 필요충분조건은?

참고 자료

Last updated on