본문 바로가기

00. Functional Programming/Type Story

Domain, Range, Codomain

Category Theory(범주론)을 들어가기 전에 몇가지 미리 정의를 해놓아야 하는 것들이 있어서 포스팅을 합니다. 바로, Domain, Range, Codmain입니다. 사실 우리가 이미 학교에서 배운 내용인데, 영어로 해놓으니까 전혀 모르겠더라고요... 이것저것 공부하다가 위키를 보고 아... 하고 알게 되었습니다.

간단하게 요약을 하면,

 

출처 : http://www.mathsisfun.com/sets/domain-range-codomain.html


Domain : 정의역

Codmain : 공역

Range 또는, Image of Domain : 치역, 정의역의 상

입니다. 앞으로는 한글을 쓰지 않고 영어 용어를 쓰도록 하겠습니다. 혹시 기억이 나시지 않는 분들(나와 같은)을 위하여 한번더 정리를 해봅시다.

Domain

Domain은 어떠한 Function에 집어 넣는 Input의 Set입니다.

Codomain

Codomain은 Domain을 Function에 적용 하였을 때, Output이 될 수 있는 가능성이 있는 Set입니다.

Range

Range는 Domain을 Function에 적용 하였을 때, 실제로 나오는 Set입니다.

여기서 알 수 있듯이, Range는 Codomain의 부분 집합이라는 것을 알 수 있습니다.


Function의 성질

Function은 다음과 같은 성질을 같고 있습니다.

Function은 1개의 Domain당, 1개의 Codomain의 원소에 매칭이 된다.

당연한 성질이지만, 한번만 더 짚고 넘어 갑시다.

예를 들어, Function f가 "어떠한 Domain의 제곱근" 이라고 한다면, 이것은 Function으로 성립이 되지 않습니다.

f(4) = -2 or 2

이기 때문 입니다. 만약 Codomain을 양수로 한정을 한다면, 이 Function은 성립될 수 있습니다.


또한, 만약 Function의 Codomain이 다를 경우, 같은 모양의 Function도 다른 Function으로 취급합니다.

예를 들어,

라는 Function과,

은 Codomain이 다르므로, 서로 다른 Function이라고 할 수 있습니다.


표기법

어떠한, Function에 대하여 Domain과 Codomain에 대하여 서술 할 때는 다음과 같이 서술 합니다.

이것은 Function f가 Natural Number(자연수)를 Domain으로 갖고, Natural Number를 Codomain으로 갖는다는 뜻 입니다.

그리고 Function f를 정의 할 때 다음과 같이 정의합니다.

 또는 


PS : Dom(f) 또는 Dom f는 Function f 의 Domain을 뜻합니다.

같은 방식으로,

Ran(f) 또는 Ran f 는 Function f의 Range를 뜻합니다.


참고 : http://www.mathsisfun.com/sets/domain-range-codomain.html