[이산수학] 7강 - 함수

2026. 5. 15. 20:03·방송통신대학교/🕸️이산수학

✅ 1. 기본사항

(1) 함수란?

  • 함수: 어떤 입력값을 넣었을 때 규칙(f)에 따라 정확히 하나의 출력값을 대응시키는 관계를 의미함. ( 입력 하나 -> 출력 하나 )
  • X에서 Y로의 함수 조건인 X의 모든 원소가 반드시 대응되어야 하고, 각 원소는 오직 하나의 관계만 가지는 조건을 만족하는 상태에서의 X에서 Y로의 관계는 관계 집합 f 는 X x Y (X, Y 곱집합)의 부분집합으로 볼 수 있음. 

  • 집합 관점 쉬운 설명: 집합 A, B가 있을때, A에서 B로의 관계 중 A의 모든 원소가 반드시 대응되어야 하고, 각 원소가 오직 하나의 값만 가지면 이것은 함수인 것임.

  • (1) 함수 정의1: 집합 X의 모든 원소 x, 집합 Y의 임의의 원소 y에 대응되는 관계 집합을 f(x) = y 로 표현하기도 함.

  • 정의역: 함수에서 출발지로, 함수 f : X -> Y 가 있을 때, 집합 X를 정의역이라함.
  • 공역: 함수에서 도착지로, 함수 f : X -> Y 가 있을 때, 집합 Y를 공역이라함.
  • 상(y): 특정 x가 함수를 거쳐 나온 결과물을 의미하며, y는 x의 상이다 라고함. ( 즉, x,y 대응되는 원소 사이의 관계 )
  • 역상(x): 결과물 y가 나오게 만든 원인을 의미하며, 상의 반대로써 대응되는 원소의 반대적인 관계로 x는 y의 역상이라함.
  • 치역: 공역(Y) 중에서 실제로 X로부터 대응되는 원소들을 모두 모아놓은 부분집합을 치역이라함.

  • 특정 x가 함수를 거쳐 나온 결과물 각각을 y를 x의 상이라 하며, 이러한 상들이 모인 부분 집합을 치역이라하는 것임.
  • 함수 집합은 정의역 집합과 공역 집합이 만들어낸 관계 집합으로 볼 수 있으며, 핵심은 관계 집합에서 특수한 규칙인 함수라는 규칙을 부여하게 되면, 이것은 함수로 보는 것임.

[ 상수 함수 ]
# 입력값 x가 무엇이든 무조건 42만 반환하는 상수함수
def constant_function(x):
    return 42
  • 상수함수: 오직 하나의 공정된 결과(상수)만 나오는 함수를 의미하며, 쉽게 말해 정의역 X, 공역 Y 에서 Y의 특정 원소 c가 딱 정해져 있어서 X에 있는 모든 원소의 상이 전부 c로 통일되는 함수를 의미함. ( 위의 예시로 보면 이해하기 쉬움 )
[ 항등 함수 ]
# 입력받은 x를 그대로 돌려주는 항등함수
def identity_function(x):
    return x
  • 항등함수: 정의역과 공역이 같은 집합 X일 때, 집합 X의 모든 원소 x에 대하여 자기 자신을 상으로 갖는 함수를 의미하며, 쉽게 말해 정의역과 공역이 같은 집합 X이기 때문에, 관계를 만들 때 X 곱집합 X (데카르트 곱)을 통해서 X 집합 내부의 모든 원소간의 쌍을 이루게 되는데, 이때 항등함수는 함수의 조건인 자기 자신을 상으로 가져야 한다는 조건 즉, 같은 원소간의 쌍을 이루어야 한다는 조건으로 인해 X = {1,2,3} 일 때 결과는 f = {(1,1),(2,2),(3,3)} 이 되는 것임.
  • 위의 파이썬으로 항등함수의 예시를 보면 정의역(입력) x 원소가 공역(출력) x 원소로 동일한 것을 알 수 있음.

(2) 함수의 상등

  • 함수의 상등: 함수 내부의 원리는 달라도 입력과 결과가 같을 때 해당 함수는 상등하다고 볼 수 있음.
  • 즉, 내부 원리는 달라도 둘은 같은 입력과 같은 출력이 나온다면 완전히 같은 함수로 볼 수 있다는 의미임.
  • 함수의 관계 집합 f , g 의 입력과 결과가 같을 때 해당 함수는 f = g 로 상등함

(3) 함수의 예제

  • 함수 예제1: (1) f의 정의역 = X, 공역 = Y, 치역은 Y의 (a,b,c) 부분집합, (2) x(1) 의 상은 대응되는 a임, (3) b의 역상은 상의 대응되는 반대인 2임, (4) f(3) = c

  • 함수 예제2: 정의역의 원소는 반드시 하나의 대응 관계만을 가져야 하기 때문에 (2) 번은 틀리고, 정의역의 원소들은 반드시 하나의 대응 관계는 가지고 있어야 하기 때문에 (3) 번도 틀리고, 모든 조건에 부합한 (1)번이 맞는 함수임.

  • 함수 예제3: (1)번의 관계 집합 R 은 정의역의 모든 원소가 대응되지 않기 때문에 함수 관계가 아니며, (2)번도 마찬가지로 아니며, (3)번 관계 집합 T는 정의역의 모든 원소가 대응되며, 동일한 공역의 원소와 관계를 가지고 있더라도 조건에 부합하기 때문에 맞는 것임. 즉, (3)번 관계 집합 T가 함수로 볼 수 있음.

  • 함수 예제4: 역관계 일 때, 뒤의 원소가 결국 정의역이기 때문에 모든 원소간의 대응 관계를 가지는 (3) 번이 답임.

  • 함수의 상등 예제1: 함수 관계 집합 f , g 의 정의역과 공역이 같으므로, 함수의 조건이 다르더라도 이것은 상등으로 볼 수 있음.

  • 함수의 상등 예제2: 함수 관계 집합 f 는 x^2 , g 는 1로 상수기 때문에 두 함수의 식 모양이 다르지만, 같은 함수가 되도록 묶어 줄 수 있는 유효한 정의역 집합 그 자체를 구하는 것이기 때문에 정의역 X는 {1}, {-1}, {-1,1} 중 하나가 될 수 있음.

✅ 2. 전사함수, 단사함수, 역함수

(1) 전사함수

  • 전사함수: 함수의 정의역 X 원소와 공역 Y 원소가 대응될 때, 대응 되는 공역 부분을 공역(Y) 의 부분 집합으로 치역이라 부르며, 정의역 X 원소가 치역 모든 원소가 대응될 때, 치역은 곧 공역이 되는데, 이렇게 모든 공역의 원소가 대응되는 함수를 전사함수라고 부름.

(2) 단사함수

  • 단사함수: 정의역(X) 의 원소와 공역(Y) 의 원소는 1:1 대응 관계만 가능하며, 쉽게 말해 정의역(X)의 원소들이 동일한 공역(Y)의 원소와 대응관계를 가질 수 없는 완전한 1:1 one-to-one 의 관계를 가지는 함수를 의미함.
  • 전사함수의 경우 정의역 원소 5개, 공역 원소 3개인 경우에도 결국 모든 정의역 원소는 1개의 대응 관계를 가지기만 하면 되기 때문에 5개의 정의역 원소는 공역 원소에 중복된 원소와도 대응 관계를 가질 수 있는것에 반해, 단사함수의 경우 정의역 원소가 공역 원소에 중복된 대응 관계를 가질 수 없는 함수를 의미함.

(3) 전단사함수

  • 전단사함수: 전사함수이면서, 단사함수인 함수를 전단사함수라고 하며, 두 함수의 조건을 통합했기 때문에 두 원소의 개수는 항상 같을 수 밖에 없는 특징이 있음.

(4) 전사, 단사, 전단사 예제

  • (1) 번의 경우 정의역(X) 원소와 공역(Y) 원소가 1:1 대응 관계만을 가지고 있기 때문에 단사 함수로 볼 수 있음.
  • (2) 번의 경우 정의역(X) 원소와 공역(Y) 원소가 1:1 대응 관계는 아니지만, 치역의 크기와 공역의 크기가 동일한 특징을 가지고 있기 때문에 이것은 전사 함수로 볼 수 있음.
  • (3) 번의 경우 정의역(X), 공역(Y) 의 모든 원소가 동일하고, 1:1 대응 관계를 가지기 때문에 전단사함수임.

  • 예제2: 해당 함수내의 규칙은 f(Z): 함수에 모든 정수를 다 넣었을 때 실제로 나오는 결과물들의 집합이며, 치역이 되는데 이러한 치역과 또 다른 조건인 정수 x를 가지고 2x 형태로 만든 집합이라는 뜻으로, 실제로 정수(... , -1, 0, 1, 2, ... )들을 함수에 넣어서 계산해 보면 결과는(... , -2, 0, 2, 4, ...) 같은 짝수들만 나오게 됨.
  • 근데 여기서 처음에 설정한 공역은 모든 정수(Z) 이기 때문에 짝수 집합은 모든 정수 집합과 같지 않아 홀수들(1, 3, 5..)은 화살표를 받지 못하게 남게 되므로, 공역과 치역의 크기는 동일하지 않아 전사함수가 아니게 됨.
  • 정의역에서 서로 다른 원소(x1,x2)를 뽑아서 함수에 넣으면, 그 결과인 공역의 원소f(x1) ≠ f(x2)도 무조건 서로 다르기 때문에 1:1 대응 관계가 만들어져서 단사함수는 맞음.

(5) 역함수

  • 역함수: 함수가 쏜 화살표를 그대로 반대 방향으로 되돌려 보내느 거꾸로 함수로, 원래 함수가 x를 넣어서 y를 나오는 관계였다면, 역함수는 반대로 y를 넣으면 처음의 x가 쳐들어오는 관계를 의미할 수 있음.
  • 또한, 반드시 전단사함수(1:1 대응) 이여야만 역함수가 될 수 있음.
  • 그리고 (f^-1)^-1 = f 즉, 인버스의 인버스는 자기 자신이 됨.

  • 역함수 예제: (1)의 1번과 2번을 통해 전단사함수를 알 수 있고, (2) 의 정의역(X) 실수를 넣었을 때, 공역(Y) 에 x + 3 값으로 대응되기 때문에 역함수는 반대로 f^-1(x) = x - 3 이 될 수 있음.

(6) 합성함수

  • 합성함수: 두 개 이상의 함수를 체인처럼 이어 붙여서 하나의 함수처럼 만드는 것을 의미함.
  • 함수 집합 여러개가 대응되는 관계일 때, 연결점에 해당하면 합성 관계로 된 함수 집합이 생기게 되며, g ○ f : A -> C 구조가 됨.

(7) 정리

  • (1) 전사함수 f, g 함수 관계집합이 각각 합성함수일 때, g o f 또한 합성함수가 됨.
  • (2) 단사함수 f, g 함수 관계집합이 각각 합성함수일 때, g o f 또한 단사함수가 됨.

  • (1) 합성함수는 교환 법칙이 성립이 되지 않지만, 결합 법칙은 성립이 됨.


✅ 3. 함수의 종류

(1) 계승함수

  • 계승함수: 팩토리얼 함수로도 불리며, n 팩토리얼(n!) 은 1 x 2 x 3 x ... x n 까지 곱한 수를 의미한다.
  • 이러한 함수의 종류들은 정의역과 공역의 대응 관계를 가지게 만들어주는 함수 내부의 로직으로 볼 수 있음.

(2) 바닥함수

  • 바닥함수: 실수 x에 대해, x 보다 작거나 같으면서 가장 큰 정수를 구하는 함수를 의미한다. ( 내림 )
  • 예를들면, 양수 3.14 = 3, 5.0 = 5 가 되는 것이며, 음수일 때에는 특이하게 -2.4 의 경우 -2가 더 클 수 있지만, -2가 아닌 -3 이 되는데, 이것은 수평선에서 항상 왼쪽에 있는 정수를 고르는 원리임.
  • 쉽게 말해, 바닥으로 내림을 한다고 보면 됨.

(3) 천장함수

  • 천장함수: 실수 x에 대해, x 보다 크거나 같으면서 가장 작은 정수를 구하는 함수를 의미한다.
  • 쉽게 말해, 올림이라고 생각할 수 있으며, 2.6 = 3, -2.6 = -2 가 되는 원리임.

  • 바닥함수와 천장함수 그래프 모양은 위와 같은 모양으로 나올 수 있음.

(4) 나머지 함수

  • 나머지 함수: 모듈로 함수, mod 함수로도 불리며, 정수 n과 양의 정수 m에 대해 n / m 의 경우에 해당하는 나머지를 구하는 함수를 의미한다.

(5) 계승함수, 바닥함수, 천장함수, 나머지함수 예제

  • (1) 4! = 4 * 3 * 2 * 1 = 24
  • (2) 4!/5! = 5/4 * 4/3 * 3/2 * 2/1 * 1/0 = 5
  • (3) n * n - 1 / 1

  • (1) 천장 함수이며, 2.1 = 3 이 됨. ( 올림 )
  • (2) 천장 함수이며, 3이 됨. ( 올림 )
  • (3) 천장 함수이며, -2 가 됨. ( 올림 )
  • (4) 바닥 함수이며, 3.5 = 3이 됨. ( 내림 )
  • (5) 바닥 함수이며, -0.5 = -1이 됨. ( 내림 )

  • (1) 5 mod 3 = 5 / 3 = 2
  • (2) 5 mod -3 = 5 / -3 = -1
  • (3) -5 mod -3 = -5 / -3 = -2

'방송통신대학교 > 🕸️이산수학' 카테고리의 다른 글

[이산수학] 9강 - 그래프(1)  (0) 2026.05.21
[이산수학] 8강 - 부울대수  (0) 2026.05.18
[이산수학] 6강 - 관계  (0) 2026.05.13
[이산수학] 5강 - 행렬  (0) 2026.05.06
[이산수학] 4강 - 집합론  (0) 2026.05.04
'방송통신대학교/🕸️이산수학' 카테고리의 다른 글
  • [이산수학] 9강 - 그래프(1)
  • [이산수학] 8강 - 부울대수
  • [이산수학] 6강 - 관계
  • [이산수학] 5강 - 행렬
junbin2
junbin2
java.lang.NullPointerException
  • junbin2
    bin's Development Diary
    junbin2
  • 전체
    오늘
    어제
    • 전체보기 (233)
      • 방송통신대학교 (87)
        • ⚙️컴퓨터의 이해 (11)
        • 💻컴퓨터과학 개론 (15)
        • 🔢자료구조 (14)
        • 🧬알고리즘 (10)
        • ⚙️운영체제 (14)
        • 🕸️이산수학 (11)
        • 🌍유비쿼터스 컴퓨팅 (11)
        • 🖥️컴퓨터과학과 (1)
      • 공부 (72)
        • 📚백엔드 공부 (6)
        • ☕Java (23)
        • 🌳Spring (13)
        • ⚙️C (12)
        • ⚡Python (15)
        • JavaScript (1)
        • 🛢️Database (0)
        • Algorithm Problem Solving (2)
      • 네트워크 (7)
        • 📜HTTP (7)
      • 스파르타코딩클럽 (64)
      • 정보 (2)
      • 정리가 필요한 글 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    컴퓨터과학 개론
    방통대
    Python
    spring
    컴퓨터의 이해
    방송통신대학교
    컴퓨터과학과
    방송대
    C언어
    함수
    파이썬
    그래프
    배열
    유비쿼터스
    이산수학
    자바
    Java
    운영체제
    알고리즘
    자료구조
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
junbin2
[이산수학] 7강 - 함수
상단으로

티스토리툴바