정수론 (Number Theory)

정수론은 정수의 성질을 연구하는 수학의 가장 오래된 분야 중 하나입니다. 가우스는 "수학은 과학의 여왕이고, 정수론은 수학의 여왕이다"라고 하였습니다.

정수론이란 무엇입니까? 정수론은 $\ldots, -3, -2, -1, 0, 1, 2, 3, \ldots$과 같은 정수(integer)의 성질을 탐구하는 수학입니다. "이 수는 어떤 수들의 곱으로 나뉩니까?", "나머지가 같은 수끼리 묶으면 어떤 규칙이 보입니까?" 같은 질문을 다룹니다.

수천 년 전부터 연구되었지만, 순수한 호기심의 학문으로만 여겨지던 정수론은 20세기 후반 인터넷 암호의 핵심 원리가 되면서 실생활과 직결되었습니다. 지금 이 순간에도 여러분이 인터넷 뱅킹이나 온라인 쇼핑을 할 때, 정수론의 원리가 개인정보를 보호하고 있습니다.

이런 곳에 쓰여요

  • 인터넷 보안: RSA 암호는 큰 소수의 곱을 인수분해하기 어려운 성질 이용
  • 바코드·ISBN: 검증 숫자(check digit)를 모듈러 연산으로 계산
  • 해시 함수: 비밀번호 저장, 블록체인에서 모듈러 연산이 핵심
  • 달력 계산: 특정 날짜의 요일을 구할 때 7로 나눈 나머지(mod 7) 사용

선수 지식: 수와 연산, 대수학 기초

난이도: ★★★☆☆ (고등학교 심화)

약수와 배수

쉽게 이해하기: 초콜릿 12개를 친구들에게 남김없이 똑같이 나누어 줄 수 있는 경우를 생각해 봅시다. 1명, 2명, 3명, 4명, 6명, 12명에게는 나누어 줄 수 있지만, 5명이나 7명에게는 남김없이 나눌 수 없습니다. 이때 $1, 2, 3, 4, 6, 12$가 바로 12의 약수입니다. 반대로 12는 이 수들의 배수입니다.

정수 $a$가 정수 $b$로 나누어떨어질 때, $b$는 $a$의 약수(Divisor)이고 $a$는 $b$의 배수(Multiple)라 합니다. 이를 $b \mid a$로 표기합니다.

$$b \mid a \iff \exists k \in \mathbb{Z}, \; a = bk$$

나눗셈 정리

정수 $a$와 양의 정수 $b$에 대하여, 다음을 만족하는 유일한 정수 $q$(몫)와 $r$(나머지)이 존재합니다.

$$a = bq + r, \quad 0 \leq r < b$$
나눗셈 정리의 유일성 증명: 두 쌍 $(q_1, r_1)$, $(q_2, r_2)$가 조건을 만족한다고 가정하면 $b(q_1 - q_2) = r_2 - r_1$입니다. $|r_2 - r_1| < b$이므로 $q_1 = q_2$이고 따라서 $r_1 = r_2$입니다.

약수의 성질

최대공약수와 최소공배수

일상의 비유: 가로 12cm, 세로 18cm인 직사각형 바닥을 정사각형 타일로 빈틈없이 덮으려면, 타일의 한 변 길이는 12와 18을 모두 나누어야 합니다. 가능한 가장 큰 타일 크기는? 12의 약수는 $\{1,2,3,4,6,12\}$, 18의 약수는 $\{1,2,3,6,9,18\}$이므로 공통 약수는 $\{1,2,3,6\}$이고, 가장 큰 것은 $6$입니다. 즉, $\gcd(12, 18) = 6$입니다.

반대로 톱니바퀴 A(12개 톱니)와 B(18개 톱니)가 맞물려 돌 때, 처음 위치로 동시에 돌아오려면 최소 몇 칸을 회전해야 합니까? $12$와 $18$의 공배수 중 가장 작은 것, 즉 $\operatorname{lcm}(12, 18) = 36$칸입니다.

GCD와 LCM의 성질

$a = p_1^{a_1} p_2^{a_2} \cdots p_k^{a_k}$, $b = p_1^{b_1} p_2^{b_2} \cdots p_k^{b_k}$로 소인수분해하면 (지수가 0인 소수도 포함):

$$\gcd(a, b) = p_1^{\min(a_1,b_1)} p_2^{\min(a_2,b_2)} \cdots p_k^{\min(a_k,b_k)}$$ $$\operatorname{lcm}(a, b) = p_1^{\max(a_1,b_1)} p_2^{\max(a_2,b_2)} \cdots p_k^{\max(a_k,b_k)}$$

이로부터 핵심 관계식이 도출됩니다:

$$\boxed{\gcd(a, b) \cdot \operatorname{lcm}(a, b) = |ab|}$$

추가 성질:

약수 함수

양의 정수 $n$에 대해 다음과 같은 약수 함수가 정의됩니다:

$n = p_1^{e_1} p_2^{e_2} \cdots p_r^{e_r}$일 때:

$$\tau(n) = (e_1 + 1)(e_2 + 1) \cdots (e_r + 1)$$ $$\sigma(n) = \frac{p_1^{e_1+1} - 1}{p_1 - 1} \cdot \frac{p_2^{e_2+1} - 1}{p_2 - 1} \cdots \frac{p_r^{e_r+1} - 1}{p_r - 1}$$
예시: $n = 12 = 2^2 \cdot 3^1$일 때, $\tau(12) = (2+1)(1+1) = 6$이고 $\sigma(12) = \frac{2^3 - 1}{2 - 1} \cdot \frac{3^2 - 1}{3 - 1} = 7 \cdot 4 = 28$입니다. 실제 약수: $\{1, 2, 3, 4, 6, 12\}$, 합 $= 28$.

완전수(Perfect Number)란 $\sigma(n) = 2n$을 만족하는 양의 정수입니다. 예를 들어 $6, 28, 496, 8128, \ldots$이 있습니다. 오일러는 짝수 완전수는 반드시 $2^{p-1}(2^p - 1)$ 꼴임을 보였습니다 ($2^p - 1$이 소수일 때).

소수와 소인수분해

소수란 무엇입니까? 소수는 수학의 "원자"와 같습니다. 화학에서 모든 물질이 원자로 이루어지듯, 모든 자연수는 소수의 곱으로 만들어집니다. 예를 들어 $60 = 2 \times 2 \times 3 \times 5$입니다. 소수 자체는 더 이상 쪼갤 수 없는, 수의 세계에서 가장 기본적인 벽돌입니다.

소수(Prime)는 1보다 크고, 1과 자기 자신만을 약수로 가지는 자연수입니다. 소수가 아닌 1보다 큰 자연수를 합성수(Composite)라 합니다.

처음 몇 개의 소수: $2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, \ldots$

산술의 기본정리

1보다 큰 모든 자연수는 소수의 곱으로 유일하게(순서 무시) 표현됩니다.

$$n = p_1^{e_1} p_2^{e_2} \cdots p_k^{e_k}$$
산술의 기본정리 증명 (존재성 스케치): $n > 1$에 대해 $n$이 소수이면 완료. 합성수이면 $n = ab$ ($1 < a, b < n$)로 쓸 수 있고, $a$와 $b$에 대해 강한 귀납법을 적용합니다. 유일성은 유클리드 보조정리($p \mid ab$이면 $p \mid a$ 또는 $p \mid b$)를 이용하여 증명합니다.

소수의 무한성 — 4가지 증명

소수가 무한히 많다는 사실은 수론의 가장 기본적인 정리입니다. 다양한 증명 기법을 통해 이 사실을 확인합니다.

증명 1: 유클리드의 증명 (기원전 300년경)

소수가 유한개, 즉 $p_1, p_2, \ldots, p_n$이 모든 소수의 목록이라고 가정합니다. 다음 수를 구성합니다:

$$N = p_1 p_2 \cdots p_n + 1$$

$N > 1$이므로 산술의 기본정리에 의해 $N$은 어떤 소수 $p$로 나누어집니다. 그런데 모든 $p_i$에 대해 $N$을 $p_i$로 나누면 나머지가 1이므로 $p_i \nmid N$입니다. 따라서 $p$는 목록에 없는 새로운 소수이며, 이는 모순입니다. $\blacksquare$

증명 2: 오일러의 해석적 증명

소수의 역수의 합이 발산함을 보입니다. 오일러 곱(Euler product)에서 출발합니다:

$$\sum_{n=1}^{\infty} \frac{1}{n^s} = \prod_{p \text{ 소수}} \frac{1}{1 - p^{-s}} \quad (s > 1)$$

$s \to 1^+$로 보내면 좌변의 조화급수는 발산합니다. 만약 소수가 유한개 $p_1, \ldots, p_k$라면 우변은 유한한 곱이므로 유한한 값을 가집니다. 이는 모순입니다.

나아가 오일러는 $\displaystyle\sum_{p \text{ 소수}} \frac{1}{p} = \infty$임을 보였는데, 이는 소수가 무한할 뿐 아니라 "충분히 조밀하게" 분포함을 의미합니다. $\blacksquare$

증명 3: 에르되시의 증명 (1938)

이 증명은 소수가 유한개라면 $N$ 이하의 자연수가 너무 적어진다는 조합론적 논증을 사용합니다.

소수가 $k$개, 즉 $p_1, p_2, \ldots, p_k$뿐이라고 가정합니다. $N$ 이하의 임의의 자연수 $n$을 $n = m^2 \cdot s$로 쓸 수 있는데, 여기서 $s$는 제곱인수 없는 수(square-free)입니다. 그러면:

따라서 $N$ 이하의 자연수의 개수에 대해 $N \leq \sqrt{N} \cdot 2^k$, 즉 $\sqrt{N} \leq 2^k$이므로 $N \leq 4^k$입니다. 그런데 $k$는 고정된 유한수이므로 $N$이 $4^k$보다 커지면 모순입니다. $\blacksquare$

증명 4: 퓌르스텐베르크의 위상적 증명 (1955)

정수 $\mathbb{Z}$ 위에 등차수열 위상을 정의합니다. 기본 열린 집합을 $U(a, b) = \{a + nb : n \in \mathbb{Z}\}$ ($b > 0$)로 놓습니다. 이 집합들은 동시에 닫힌 집합이기도 합니다 (보집합이 유한 개의 등차수열의 합집합).

각 소수 $p$에 대해 $p$의 배수 전체의 집합 $U(0, p) = p\mathbb{Z}$는 열린 동시에 닫힌 집합입니다. 이제:

$$\bigcup_{p \text{ 소수}} U(0, p) = \mathbb{Z} \setminus \{-1, 1\}$$

만약 소수가 유한개라면 좌변은 유한 개의 닫힌 집합의 합집합이므로 닫힌 집합입니다. 그러면 $\{-1, 1\}$이 열린 집합이어야 하는데, 유한 집합은 이 위상에서 열린 집합이 될 수 없습니다 (모든 비공 열린 집합은 무한). 이는 모순입니다. $\blacksquare$

소수 정리

$\pi(x)$를 $x$ 이하의 소수의 개수라 하면:

$$\boxed{\pi(x) \sim \frac{x}{\ln x}}$$

즉, $\displaystyle\lim_{x \to \infty} \frac{\pi(x)}{x / \ln x} = 1$입니다. 이 정리는 1896년 아다마르와 드 라 발레 푸생이 독립적으로 증명하였습니다.

보다 정밀한 근사로는 로그 적분 함수가 사용됩니다:

$$\pi(x) \sim \operatorname{Li}(x) = \int_2^x \frac{dt}{\ln t}$$
소수 계수 함수 $\pi(x)$와 근사값
$x$$\pi(x)$$x / \ln x$$\operatorname{Li}(x)$
$10^1$$4$$4.3$$6.2$
$10^2$$25$$21.7$$30.1$
$10^3$$168$$144.8$$177.6$
$10^6$$78{,}498$$72{,}382$$78{,}628$
$10^9$$50{,}847{,}534$$48{,}254{,}942$$50{,}849{,}235$

소수 판정법

시행 나눗셈법

$n$이 소수인지 판정하려면 $\sqrt{n}$ 이하의 모든 소수로 나누어 봅니다. 만약 어떤 소수로도 나누어지지 않으면 $n$은 소수입니다.

이유: $n = ab$에서 $a \leq b$이면 $a \leq \sqrt{n}$이기 때문입니다.

에라토스테네스의 체

$N$ 이하의 모든 소수를 구하는 고전적 알고리즘입니다:

  1. $2$부터 $N$까지의 수를 나열합니다.
  2. 아직 지워지지 않은 가장 작은 수 $p$를 소수로 선택합니다.
  3. $p^2, p^2 + p, p^2 + 2p, \ldots$ ($\leq N$)를 모두 지웁니다.
  4. $p^2 > N$이 될 때까지 2~3을 반복합니다.

시간 복잡도는 $O(N \log \log N)$이며, 매우 효율적입니다.

30 이하의 소수를 구하는 단계별 예시:
처음: $2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30$

1단계 ($p=2$): 2는 소수입니다. 2의 배수($4, 6, 8, 10, 12, \ldots, 30$)를 모두 지웁니다.
2단계 ($p=3$): 3은 소수입니다. 3의 배수($9, 15, 21, 27$)를 지웁니다 (6, 12, ... 등은 이미 지워짐).
3단계 ($p=5$): 5는 소수입니다. 5의 배수($25$)를 지웁니다 (나머지는 이미 지워짐).
종료: $7^2 = 49 > 30$이므로, 남은 수는 모두 소수입니다.

결과: $2, 3, 5, 7, 11, 13, 17, 19, 23, 29$ — 총 10개의 소수를 찾았습니다.

이 방법의 이름이 "체(sieve)"인 이유는, 체로 곡식을 거르듯 합성수를 걸러내고 소수만 남기기 때문입니다.

밀러-라빈 소수 판정법

큰 수의 소수 판정에 사용되는 확률적 알고리즘입니다. $n - 1 = 2^s \cdot d$ ($d$ 홀수)로 쓸 때, $n$이 소수이면 임의의 $a$ ($1 < a < n$)에 대해 다음 중 하나가 성립합니다:

$$a^d \equiv 1 \pmod{n}$$ $$a^{2^r d} \equiv -1 \pmod{n} \quad \text{(어떤 } 0 \leq r < s\text{에 대해)}$$

이 조건을 만족하지 않으면 $n$은 확실히 합성수이고, 만족하면 $n$은 "아마도 소수"입니다. $k$번 반복하면 오류 확률은 $4^{-k}$ 이하입니다.

결정론적 밀러-라빈: 충분히 작은 범위에서는 특정 밑(base)만 검사하면 됩니다. 예를 들어 $n < 3{,}215{,}031{,}751$이면 $a = 2, 3, 5, 7$만 검사하면 됩니다.

유클리드 호제법

2,300년 된 알고리즘: 유클리드 호제법은 기원전 300년경 유클리드의 원론에 기록된, 현존하는 가장 오래된 알고리즘 중 하나입니다. 놀라운 점은 수천 년이 지난 오늘날에도 컴퓨터에서 그대로 사용된다는 것입니다.

핵심 아이디어는 매우 직관적입니다. 가로 252cm, 세로 198cm인 직사각형을 가장 큰 정사각형 타일로 채우는 문제를 생각해 봅시다. 먼저 198cm짜리 정사각형 1개를 넣으면 $252 - 198 = 54$cm가 남습니다. 이제 문제는 "$198 \times 54$ 직사각형을 정사각형으로 채우기"로 줄어듭니다. 이 과정을 반복하면 결국 나머지가 0이 되는 순간의 정사각형 크기가 바로 최대공약수입니다.

유클리드 호제법(Euclidean Algorithm)은 두 정수의 최대공약수를 구하는 효율적인 알고리즘입니다. 핵심 원리는 $\gcd(a, b) = \gcd(b, a \bmod b)$입니다.

알고리즘

$\gcd(a, b)$를 구하려면 ($a > b > 0$):

$$a = bq_1 + r_1 \implies \gcd(a,b) = \gcd(b, r_1)$$ $$b = r_1 q_2 + r_2 \implies \gcd(b, r_1) = \gcd(r_1, r_2)$$

나머지가 0이 될 때까지 반복하면, 마지막 0이 아닌 나머지가 GCD입니다.

예시

$\gcd(252, 198)$을 구합니다.

$$252 = 198 \times 1 + 54$$ $$198 = 54 \times 3 + 36$$ $$54 = 36 \times 1 + 18$$ $$36 = 18 \times 2 + 0$$

따라서 $\gcd(252, 198) = 18$입니다.

확장 유클리드 호제법

$\gcd(a, b) = d$일 때, $ax + by = d$를 만족하는 정수 $x$, $y$를 구할 수 있습니다. 이를 베주 항등식(Bezout's Identity)이라 합니다.

단계별 풀이 예시

$\gcd(252, 198) = 18$이므로 $252x + 198y = 18$을 만족하는 $x$, $y$를 구합니다.

유클리드 호제법의 각 단계를 역순으로 대입합니다:

$$18 = 54 - 36 \times 1$$ $$36 = 198 - 54 \times 3 \text{이므로}$$ $$18 = 54 - (198 - 54 \times 3) \times 1 = 54 \times 4 - 198 \times 1$$ $$54 = 252 - 198 \times 1 \text{이므로}$$ $$18 = (252 - 198 \times 1) \times 4 - 198 \times 1 = 252 \times 4 - 198 \times 5$$

따라서 $x = 4$, $y = -5$이고, 검산: $252 \times 4 + 198 \times (-5) = 1008 - 990 = 18$. $\checkmark$

표를 이용한 확장 유클리드 알고리즘: 행렬 표현으로 체계적으로 계산할 수도 있습니다. 각 단계에서 $\begin{pmatrix} r_{i+1} \\ r_{i+2} \end{pmatrix} = \begin{pmatrix} 0 & 1 \\ 1 & -q_{i+1} \end{pmatrix} \begin{pmatrix} r_i \\ r_{i+1} \end{pmatrix}$을 반복합니다.

유클리드 호제법의 시간 복잡도

라메(Lame)의 정리에 의하면, 유클리드 호제법이 $n$번 이상의 나눗셈을 수행하려면 $b \geq F_{n+1}$ (피보나치 수)이어야 합니다. 따라서 나눗셈 횟수는 $O(\log b)$입니다.

합동식과 모듈러 산술

시계 산술: 모듈러 연산을 가장 쉽게 이해하는 방법은 시계를 떠올리는 것입니다. 시계에서 10시에 5시간이 지나면 15시가 아니라 3시입니다. 왜냐하면 12를 넘으면 다시 1부터 시작하기 때문입니다. 이것이 바로 "mod 12" 연산입니다: $10 + 5 = 15 \equiv 3 \pmod{12}$.

요일도 마찬가지입니다. 오늘이 수요일(3번째 날)이고 10일 뒤의 요일을 구하려면? $3 + 10 = 13$, $13 \div 7 = 1 \cdots 6$이므로 6번째 날, 즉 토요일입니다. 이것이 "mod 7" 연산입니다.

모듈러 산술에서는 나머지가 같은 수를 "본질적으로 같다"고 봅니다. $15$와 $3$은 12로 나눈 나머지가 같으므로 시계에서는 같은 위치입니다.

$a$와 $b$를 $m$으로 나눈 나머지가 같으면 합동(Congruent)이라 하며 다음과 같이 표기합니다.

$$a \equiv b \pmod{m} \iff m \mid (a - b)$$

합동의 성질

주의 - 나눗셈: 모듈러 산술에서 나눗셈은 항상 가능한 것이 아닙니다. $ac \equiv bc \pmod{m}$에서 $a \equiv b \pmod{m}$가 되려면 $\gcd(c, m) = 1$이어야 합니다. 보다 일반적으로, $ac \equiv bc \pmod{m}$이면 $a \equiv b \pmod{m/\gcd(c,m)}$입니다.

모듈러 역원

$\gcd(a, m) = 1$일 때, $ax \equiv 1 \pmod{m}$을 만족하는 $x$를 $a$의 모듈러 역원이라 하며 $a^{-1} \pmod{m}$으로 표기합니다. 확장 유클리드 호제법으로 구할 수 있습니다.

선형 합동식

$ax \equiv b \pmod{m}$의 풀이:

  1. $d = \gcd(a, m)$을 구합니다.
  2. $d \nmid b$이면 해가 없습니다.
  3. $d \mid b$이면, 양변을 $d$로 나누어 $\frac{a}{d} x \equiv \frac{b}{d} \pmod{\frac{m}{d}}$를 풀면 됩니다. 이때 $\gcd(\frac{a}{d}, \frac{m}{d}) = 1$이므로 모듈러 역원이 존재합니다.
  4. 해는 $\bmod m$에서 정확히 $d$개 존재합니다.
예시: $6x \equiv 4 \pmod{10}$을 풉니다. $\gcd(6, 10) = 2$이고 $2 \mid 4$이므로 양변을 2로 나누면 $3x \equiv 2 \pmod{5}$입니다. $3^{-1} \equiv 2 \pmod{5}$ ($3 \times 2 = 6 \equiv 1$)이므로 $x \equiv 2 \times 2 = 4 \pmod{5}$입니다. $\bmod 10$에서의 해는 $x \equiv 4, 9 \pmod{10}$입니다.

중국인의 나머지 정리 (CRT)

옛날이야기: 중국의 고대 수학서 손자산경(3~5세기)에 이런 문제가 나옵니다. "어떤 수를 3으로 나누면 2가 남고, 5로 나누면 3이 남고, 7로 나누면 2가 남는다. 이 수는 무엇인가?" 이 문제의 답이 유일하게 존재한다는 것을 보장하는 정리가 바로 중국인의 나머지 정리(CRT)입니다.

핵심 아이디어: 나누는 수들이 서로소(공약수가 1)이기만 하면, 각각의 나머지 조건을 동시에 만족하는 수가 반드시 하나 존재하며, 나누는 수들의 곱을 주기로 반복됩니다.

$m_1, m_2, \ldots, m_k$가 쌍마다 서로소이면 연립합동식

$$x \equiv a_1 \pmod{m_1}, \quad x \equiv a_2 \pmod{m_2}, \quad \ldots, \quad x \equiv a_k \pmod{m_k}$$

은 모듈로 $M = m_1 m_2 \cdots m_k$에서 유일한 해를 가집니다.

CRT 해의 구성법

$M_i = M / m_i$로 놓으면 $\gcd(M_i, m_i) = 1$이므로 $M_i y_i \equiv 1 \pmod{m_i}$인 $y_i$가 존재합니다. 그러면:

$$x \equiv a_1 M_1 y_1 + a_2 M_2 y_2 + \cdots + a_k M_k y_k \pmod{M}$$

CRT 상세 예시

다음 연립합동식을 풉니다:

$$x \equiv 2 \pmod{3}, \quad x \equiv 3 \pmod{5}, \quad x \equiv 2 \pmod{7}$$

풀이:

검산: $23 = 3 \times 7 + 2$, $23 = 5 \times 4 + 3$, $23 = 7 \times 3 + 2$. $\checkmark$

합동식 풀이 — 세 가지 방법 비교

$7x \equiv 3 \pmod{31}$을 세 가지 방법으로 풀어 비교합니다.

방법 1: 확장 유클리드 호제법

$7x \equiv 3 \pmod{31}$은 $7x + 31y = 3$의 정수 해를 구하는 것과 같습니다. 먼저 $\gcd(7, 31) = 1$을 확인합니다:

$$31 = 4 \times 7 + 3, \quad 7 = 2 \times 3 + 1, \quad 3 = 3 \times 1 + 0$$

역대입하면 $1 = 7 - 2 \times 3 = 7 - 2(31 - 4 \times 7) = 9 \times 7 - 2 \times 31$이므로 $7 \times 9 \equiv 1 \pmod{31}$, 즉 $7^{-1} \equiv 9 \pmod{31}$입니다.

$$x \equiv 9 \times 3 = 27 \pmod{31}$$

검산: $7 \times 27 = 189 = 6 \times 31 + 3$. $\checkmark$

방법 2: 오일러 정리 이용

$31$은 소수이므로 페르마 소정리에 의해 $7^{30} \equiv 1 \pmod{31}$입니다. 따라서:

$$7^{-1} \equiv 7^{29} \pmod{31}$$

거듭제곱을 빠르게 계산합니다: $7^2 = 49 \equiv 18$, $7^4 \equiv 18^2 = 324 \equiv 14$, $7^8 \equiv 14^2 = 196 \equiv 10$, $7^{16} \equiv 10^2 = 100 \equiv 7$.

$$7^{29} = 7^{16} \cdot 7^8 \cdot 7^4 \cdot 7^1 \equiv 7 \times 10 \times 14 \times 7 = 6860 \equiv 6860 - 221 \times 31 = 6860 - 6851 = 9 \pmod{31}$$

따라서 $x \equiv 9 \times 3 = 27 \pmod{31}$. 같은 결과입니다.

방법 3: CRT를 이용한 모듈러 분해

법이 합성수인 경우 CRT가 강력합니다. 예를 들어 $7x \equiv 3 \pmod{30}$을 풀 때, $30 = 2 \times 3 \times 5$로 분해합니다:

$$7x \equiv 3 \pmod{2} \implies x \equiv 1 \pmod{2}$$ $$7x \equiv 3 \pmod{3} \implies x \equiv 0 \pmod{3}$$ $$7x \equiv 3 \pmod{5} \implies 2x \equiv 3 \pmod{5} \implies x \equiv 4 \pmod{5}$$

CRT로 결합하면 $x \equiv 9 \pmod{30}$을 얻습니다.

방법 비교: 확장 유클리드는 항상 사용 가능하며 가장 직접적입니다. 오일러 정리는 $\phi(n)$을 알 때 유용하지만 거듭제곱 계산이 필요합니다. CRT는 합성 법에서 문제를 소수 법의 작은 문제로 분할할 때 강력합니다.
$ax \equiv b \pmod{m}$ 확장 유클리드 $\gcd(a,m)$을 구하며 $a^{-1}$ 동시 계산 항상 사용 가능 $O(\log m)$ 단계 오일러 정리 $a^{-1} \equiv a^{\phi(m)-1}$ 빠른 거듭제곱 사용 $\gcd(a,m)=1$ 필요 $O(\log \phi(m) \cdot \log m)$ CRT 분해 $m=m_1 \cdots m_k$로 분해 소법에서 각각 풀기 합성 법에서 강력 소인수 분해 필요 $x \equiv a^{-1}b \pmod{m}$

페르마 소정리

직관적 의미: 페르마 소정리는 소수의 놀라운 성질을 보여줍니다. 어떤 수 $a$든 소수 $p$로 나누어지지 않기만 하면, $a$를 $p-1$번 거듭제곱하면 $p$로 나눈 나머지가 반드시 1이 됩니다.

예를 들어, $p = 7$이면 어떤 수든 6번 거듭제곱하면 7로 나눈 나머지가 1입니다: $2^6 = 64 = 9 \times 7 + 1$, $3^6 = 729 = 104 \times 7 + 1$, $5^6 = 15625 = 2232 \times 7 + 1$. 신기하지 않습니까?

이 정리 덕분에 아무리 큰 거듭제곱도 간단히 계산할 수 있습니다. $2^{100}$을 13으로 나눈 나머지를 구할 때, $2^{12} \equiv 1 \pmod{13}$이므로 $2^{100} = (2^{12})^8 \times 2^4 \equiv 1^8 \times 16 \equiv 3 \pmod{13}$입니다.

정리

소수 $p$와 $\gcd(a, p) = 1$인 정수 $a$에 대하여:

$$\boxed{a^{p-1} \equiv 1 \pmod{p}}$$

동치인 형태: 임의의 정수 $a$에 대하여 $a^p \equiv a \pmod{p}$

증명 — 4가지 방법

증명 1: 재배열 논증 (고전적 증명)

$\gcd(a, p) = 1$일 때, $\{a, 2a, 3a, \ldots, (p-1)a\}$를 $\bmod p$로 환원하면 $\{1, 2, 3, \ldots, p-1\}$의 재배열이 됩니다.

(이유: $ia \equiv ja \pmod{p}$이면 $p \mid (i-j)a$이고 $\gcd(a,p) = 1$이므로 $p \mid (i-j)$, 즉 $i = j$.)

따라서 양변의 곱을 비교하면:

$$a \cdot 2a \cdot 3a \cdots (p-1)a \equiv 1 \cdot 2 \cdot 3 \cdots (p-1) \pmod{p}$$ $$a^{p-1} (p-1)! \equiv (p-1)! \pmod{p}$$

$\gcd((p-1)!, p) = 1$이므로 양변을 $(p-1)!$로 나누면 $a^{p-1} \equiv 1 \pmod{p}$. $\blacksquare$

증명 2: 수학적 귀납법

$a^p \equiv a \pmod{p}$를 $a$에 대한 귀납법으로 증명합니다.

기저: $a = 0$이면 $0^p = 0 \equiv 0 \pmod{p}$. $\checkmark$

귀납 단계: $a^p \equiv a \pmod{p}$를 가정하고 $(a+1)^p$를 이항 전개합니다:

$$(a+1)^p = \sum_{k=0}^{p} \binom{p}{k} a^k = a^p + \binom{p}{1}a^{p-1} + \cdots + \binom{p}{p-1}a + 1$$

$0 < k < p$일 때, $\binom{p}{k} = \frac{p!}{k!(p-k)!}$에서 분자에 $p$가 있고 분모의 어떤 인수도 $p$를 나누지 못하므로 $p \mid \binom{p}{k}$입니다. 따라서:

$$(a+1)^p \equiv a^p + 1 \equiv a + 1 \pmod{p}$$

$a \geq 0$에 대해 성립하고, 음의 정수에 대해서도 $(-a)^p = -a^p$ (소수 $p$는 홀수이거나 $p=2$)로부터 확장됩니다. $\blacksquare$

증명 3: 군론적 증명

$(\mathbb{Z}/p\mathbb{Z})^{\times} = \{1, 2, \ldots, p-1\}$은 곱셈에 대한 군이며, 그 위수는 $p-1$입니다. 라그랑주 정리에 의하면 유한군의 원소의 위수는 군의 위수를 나눕니다. 따라서 $\gcd(a, p) = 1$인 $a$에 대해 $a$의 위수 $d$는 $d \mid (p-1)$을 만족하고, $a^{p-1} = (a^d)^{(p-1)/d} = 1^{(p-1)/d} = 1$입니다. $\blacksquare$

의의: 이 증명은 페르마 소정리가 더 일반적인 대수적 구조(군)의 성질에서 자연스럽게 도출됨을 보여줍니다. 오일러 정리도 $(\mathbb{Z}/n\mathbb{Z})^{\times}$의 위수가 $\phi(n)$이라는 사실로부터 같은 방식으로 증명됩니다.

증명 4: 목걸이 세기 (조합적 증명)

$p$개의 구슬을 원형으로 배열하되 $a$가지 색을 사용하는 경우의 수를 셉니다.

따라서 목걸이의 수 $= \frac{a^p - a}{p}$가 정수가 되어야 하므로 $p \mid (a^p - a)$, 즉 $a^p \equiv a \pmod{p}$. $\blacksquare$

목걸이 세기 ($p=5$, $a=2$): $2^5 - 2 = 30$가지 ÷ $5$ = 6개의 목걸이 ×5 회전 ×5 회전 ×5 회전 총 6개 $\frac{2^5-2}{5}=6$ → $5 \mid 30$

응용

카마이클 수: 합성수이면서 모든 $\gcd(a, n) = 1$인 $a$에 대해 $a^{n-1} \equiv 1 \pmod{n}$을 만족하는 수. 가장 작은 카마이클 수는 $561 = 3 \times 11 \times 17$입니다. 이 때문에 페르마 판정법만으로는 소수 판정이 완벽하지 않습니다.

오일러 정리와 오일러 함수

직관적 의미: 페르마 소정리는 $p$가 소수일 때만 사용할 수 있습니다. 오일러 정리는 이것을 임의의 자연수 $n$으로 확장한 것입니다. 핵심은 "지수를 $p-1$이 아니라 $\phi(n)$으로 바꾸면 된다"는 것입니다.

여기서 $\phi(n)$은 "1부터 $n$까지의 수 중 $n$과 서로소인 수의 개수"입니다. 예를 들어 $\phi(10) = 4$인데, 이는 $\{1, 3, 7, 9\}$의 4개가 10과 서로소이기 때문입니다 (2, 4, 5, 6, 8, 10은 10과 공약수를 가집니다).

오일러 피 함수

오일러 피 함수(Euler's Totient Function) $\phi(n)$은 $1$부터 $n$까지의 정수 중 $n$과 서로소인 것의 개수입니다.

계산 공식

$n = p_1^{e_1} p_2^{e_2} \cdots p_k^{e_k}$일 때:

$$\boxed{\phi(n) = n \prod_{p \mid n} \left(1 - \frac{1}{p}\right) = n \cdot \frac{p_1 - 1}{p_1} \cdot \frac{p_2 - 1}{p_2} \cdots \frac{p_k - 1}{p_k}}$$

오일러 함수의 성질

오일러 피 함수 값
$n$$1$$2$$3$$4$$5$$6$$7$$8$$9$$10$$11$$12$
$\phi(n)$$1$$1$$2$$2$$4$$2$$6$$4$$6$$4$$10$$4$
예시: $\phi(60)$을 계산합니다. $60 = 2^2 \times 3 \times 5$이므로 $\phi(60) = 60 \times (1 - \frac{1}{2})(1 - \frac{1}{3})(1 - \frac{1}{5}) = 60 \times \frac{1}{2} \times \frac{2}{3} \times \frac{4}{5} = 16$입니다.

오일러 정리

$\gcd(a, n) = 1$이면:

$$\boxed{a^{\phi(n)} \equiv 1 \pmod{n}}$$

페르마 소정리는 $n$이 소수일 때($\phi(p) = p-1$)의 특수한 경우입니다.

증명

페르마 소정리의 증명과 동일한 아이디어를 사용합니다. $n$과 서로소인 $\phi(n)$개의 수 $r_1, r_2, \ldots, r_{\phi(n)}$에 대해 $ar_1, ar_2, \ldots, ar_{\phi(n)}$도 $\bmod n$에서 같은 집합의 재배열입니다. 양변의 곱을 비교하면:

$$a^{\phi(n)} \cdot r_1 r_2 \cdots r_{\phi(n)} \equiv r_1 r_2 \cdots r_{\phi(n)} \pmod{n}$$

$\gcd(r_1 r_2 \cdots r_{\phi(n)}, n) = 1$이므로 $a^{\phi(n)} \equiv 1 \pmod{n}$. $\blacksquare$

이차잉여

홀수 소수 $p$와 $\gcd(a, p) = 1$인 정수 $a$에 대해, $x^2 \equiv a \pmod{p}$가 해를 가지면 $a$를 $p$에 대한 이차잉여(Quadratic Residue)라 하고, 그렇지 않으면 이차비잉여(Quadratic Non-Residue)라 합니다.

르장드르 기호

르장드르 기호(Legendre Symbol)는 다음과 같이 정의됩니다:

$$\left(\frac{a}{p}\right) = \begin{cases} 1 & \text{$a$가 $p$에 대한 이차잉여} \\ -1 & \text{$a$가 $p$에 대한 이차비잉여} \\ 0 & \text{$p \mid a$} \end{cases}$$

오일러 판정법

$$\boxed{\left(\frac{a}{p}\right) \equiv a^{(p-1)/2} \pmod{p}}$$

증명 스케치: 페르마 소정리에서 $a^{p-1} \equiv 1$이므로 $(a^{(p-1)/2} - 1)(a^{(p-1)/2} + 1) \equiv 0 \pmod{p}$. $a$가 이차잉여이면 $a = x^2$이므로 $a^{(p-1)/2} = x^{p-1} \equiv 1$. 이차비잉여이면 나머지 경우인 $-1$이 됩니다.

예시: $\left(\frac{3}{7}\right)$을 구합니다. 오일러 판정법에 의해 $3^{(7-1)/2} = 3^3 = 27 \equiv 6 \equiv -1 \pmod{7}$. 따라서 $3$은 $7$에 대한 이차비잉여입니다. 실제로 $1^2 \equiv 1$, $2^2 \equiv 4$, $3^2 \equiv 2 \pmod{7}$이므로 이차잉여는 $\{1, 2, 4\}$이고 $3$은 포함되지 않습니다.

이차 상호법칙

서로 다른 홀수 소수 $p$, $q$에 대하여:

$$\boxed{\left(\frac{p}{q}\right)\left(\frac{q}{p}\right) = (-1)^{\frac{p-1}{2} \cdot \frac{q-1}{2}}}$$

즉, $p \equiv q \equiv 3 \pmod{4}$인 경우에만 부호가 바뀌고, 나머지 경우에는 $\left(\frac{p}{q}\right) = \left(\frac{q}{p}\right)$입니다.

보충 법칙:

$$\left(\frac{-1}{p}\right) = (-1)^{(p-1)/2} = \begin{cases} 1 & p \equiv 1 \pmod{4} \\ -1 & p \equiv 3 \pmod{4} \end{cases}$$ $$\left(\frac{2}{p}\right) = (-1)^{(p^2-1)/8} = \begin{cases} 1 & p \equiv \pm 1 \pmod{8} \\ -1 & p \equiv \pm 3 \pmod{8} \end{cases}$$

이차 상호법칙의 증명

가우스는 이 정리를 6가지 이상의 방법으로 증명하였습니다. 여기서는 두 가지 핵심 증명을 소개합니다.

증명 1: 가우스의 보조정리(Gauss's Lemma)를 이용한 증명

가우스의 보조정리: 홀수 소수 $p$와 $\gcd(a, p) = 1$에 대해, $a, 2a, 3a, \ldots, \frac{p-1}{2}a$의 $\bmod p$ 환원값 중 $\frac{p}{2}$보다 큰 것의 개수를 $\nu$라 하면:

$$\left(\frac{a}{p}\right) = (-1)^{\nu}$$

증명 (보조정리): $S = \{a, 2a, \ldots, \frac{p-1}{2} \cdot a\}$의 원소를 $\bmod p$로 환원합니다. 이들 중 $\frac{p}{2}$보다 작은 것을 $r_1, \ldots, r_s$, 큰 것을 $t_1, \ldots, t_{\nu}$라 합니다. 그러면 $\{r_1, \ldots, r_s, p - t_1, \ldots, p - t_{\nu}\}$는 $\{1, 2, \ldots, \frac{p-1}{2}\}$의 재배열입니다. 양변의 곱을 비교하면:

$$\left(\frac{p-1}{2}\right)! = r_1 \cdots r_s \cdot (p - t_1) \cdots (p - t_{\nu}) \equiv r_1 \cdots r_s \cdot (-1)^{\nu} t_1 \cdots t_{\nu} \pmod{p}$$

한편 $r_1 \cdots r_s \cdot t_1 \cdots t_{\nu} \equiv a^{(p-1)/2} \cdot \left(\frac{p-1}{2}\right)! \pmod{p}$이므로:

$$a^{(p-1)/2} \equiv (-1)^{\nu} \pmod{p} \implies \left(\frac{a}{p}\right) = (-1)^{\nu} \quad \blacksquare$$

상호법칙 증명 (가우스의 보조정리 이용): $\nu$의 값을 격자점 세기로 계산합니다. 직사각형 $\{(x, y) : 1 \leq x \leq \frac{p-1}{2}, \, 1 \leq y \leq \frac{q-1}{2}\}$ 내에서 $qx - py > 0$인 점과 $qx - py < 0$인 점의 개수가 각각 $\left(\frac{q}{p}\right)$와 $\left(\frac{p}{q}\right)$의 부호를 결정하며, 격자점의 총 개수는 $\frac{p-1}{2} \cdot \frac{q-1}{2}$이므로 상호법칙이 도출됩니다.

증명 2: 아이젠슈타인의 증명 (1844)

아이젠슈타인의 증명은 삼각함수를 사용하는 우아한 방법입니다. 핵심은 다음 항등식입니다:

$$\left(\frac{a}{p}\right) = \prod_{t=1}^{(p-1)/2} \frac{\sin(2\pi a t / p)}{\sin(2\pi t / p)}$$

이를 $a = q$에 대해 적용하고, $p$와 $q$의 역할을 바꾸어 곱하면:

$$\left(\frac{q}{p}\right)\left(\frac{p}{q}\right) = \prod_{t=1}^{(p-1)/2} \prod_{s=1}^{(q-1)/2} \frac{\sin(2\pi q t / p)}{\sin(2\pi t / p)} \cdot \frac{\sin(2\pi p s / q)}{\sin(2\pi s / q)}$$

정밀한 계산을 수행하면 이 곱이 $(-1)^{\frac{p-1}{2} \cdot \frac{q-1}{2}}$와 같음을 보일 수 있습니다.

역사적 의의: 이차 상호법칙은 가우스가 "황금 정리(Theorema Aureum)"라 불렀으며, 가우스 자신만 6가지 이상의 증명을 제시하였습니다. 이 정리의 일반화 (고차 상호법칙)는 대수적 정수론과 유체론의 핵심 주제입니다.

야코비 기호

르장드르 기호를 합성수로 확장한 것이 야코비 기호(Jacobi Symbol)입니다. 홀수 양의 정수 $n = p_1^{e_1} \cdots p_k^{e_k}$에 대해:

$$\left(\frac{a}{n}\right) = \left(\frac{a}{p_1}\right)^{e_1} \cdots \left(\frac{a}{p_k}\right)^{e_k}$$

야코비 기호는 이차 상호법칙이 그대로 성립하므로 $n$의 소인수분해 없이도 유클리드 호제법과 유사한 방식으로 빠르게 계산할 수 있습니다.

연분수

연분수(Continued Fraction)는 다음과 같은 형태의 표현입니다:

$$a_0 + \cfrac{1}{a_1 + \cfrac{1}{a_2 + \cfrac{1}{a_3 + \cdots}}}$$

간략히 $[a_0; a_1, a_2, a_3, \ldots]$로 표기합니다. 여기서 $a_0$은 정수이고 $a_i \geq 1$ ($i \geq 1$)은 양의 정수입니다.

유리수의 연분수 전개

유리수의 연분수 전개는 유한합니다. 유클리드 호제법과 직접 대응됩니다.

예시: $\frac{43}{19}$를 연분수로 전개합니다.

$$43 = 2 \times 19 + 5 \implies \frac{43}{19} = 2 + \frac{5}{19} = 2 + \cfrac{1}{\frac{19}{5}}$$ $$19 = 3 \times 5 + 4 \implies \frac{19}{5} = 3 + \frac{4}{5} = 3 + \cfrac{1}{\frac{5}{4}}$$ $$5 = 1 \times 4 + 1 \implies \frac{5}{4} = 1 + \frac{1}{4}$$

따라서 $\frac{43}{19} = [2; 3, 1, 4]$입니다.

무리수의 연분수 전개

무리수의 연분수 전개는 무한합니다. 이차 무리수의 연분수는 결국 순환합니다.

수렴자

연분수 $[a_0; a_1, a_2, \ldots]$의 $n$번째 수렴자(Convergent) $\frac{p_n}{q_n} = [a_0; a_1, \ldots, a_n]$는 다음 점화식으로 구합니다:

$$p_n = a_n p_{n-1} + p_{n-2}, \quad q_n = a_n q_{n-1} + q_{n-2}$$

초기값: $p_{-1} = 1$, $p_{-2} = 0$, $q_{-1} = 0$, $q_{-2} = 1$.

최적 근사: 연분수의 수렴자는 분모가 같거나 작은 모든 유리수 중에서 가장 좋은 근사를 제공합니다. 즉, $\left|\alpha - \frac{p_n}{q_n}\right| < \frac{1}{q_n q_{n+1}}$이 성립합니다.

유클리드 호제법과의 관계

유리수 $\frac{a}{b}$의 연분수 전개는 $\gcd(a, b)$를 구하는 유클리드 호제법과 정확히 동일한 과정입니다. 유클리드 호제법의 각 단계에서 나오는 몫이 연분수의 부분 몫(partial quotient)이 됩니다.

$$a = q_0 \cdot b + r_0 \implies a_0 = q_0$$ $$b = q_1 \cdot r_0 + r_1 \implies a_1 = q_1$$ $$r_0 = q_2 \cdot r_1 + r_2 \implies a_2 = q_2$$

이 대응에 의해 확장 유클리드 호제법에서 구하는 베주 계수 $(x, y)$도 수렴자와 직접 관련됩니다: $\frac{a}{b} = [a_0; a_1, \ldots, a_n]$이면 $p_{n-1} q_n - p_n q_{n-1} = (-1)^n$이므로 $b \cdot p_{n-1} - a \cdot q_{n-1} = (-1)^n \cdot \gcd(a, b)$입니다.

펠 방정식

펠 방정식(Pell's Equation) $x^2 - Dy^2 = 1$ ($D$는 완전제곱수가 아닌 양의 정수)의 양의 정수 해는 $\sqrt{D}$의 연분수 전개로 구합니다.

정리: $\sqrt{D} = [a_0; \overline{a_1, a_2, \ldots, a_r}]$ (순환 마디의 길이가 $r$)일 때:

일반해는 다음과 같이 재귀적으로 생성됩니다:

$$x_n + y_n\sqrt{D} = (x_1 + y_1\sqrt{D})^n$$

예시: $x^2 - 7y^2 = 1$

$\sqrt{7} = [2; \overline{1, 1, 1, 4}]$이므로 순환 마디의 길이는 $r = 4$ (짝수)입니다. $[2; 1, 1, 1]$의 수렴자를 구합니다:

$n$$a_n$$p_n$$q_n$
$0$$2$$2$$1$
$1$$1$$3$$1$
$2$$1$$5$$2$
$3$$1$$8$$3$

기본해: $(x_1, y_1) = (8, 3)$. 검산: $8^2 - 7 \times 3^2 = 64 - 63 = 1$. $\checkmark$

다음 해: $(x_2, y_2) = (8^2 + 7 \times 3^2, \, 2 \times 8 \times 3) = (127, 48)$. 검산: $127^2 - 7 \times 48^2 = 16129 - 16128 = 1$. $\checkmark$

디오판토스 방정식

디오판토스 방정식(Diophantine Equation)은 정수 해만을 구하는 방정식입니다.

일차 디오판토스 방정식

$ax + by = c$ ($a, b, c$는 정수)의 정수 해:

$$x = x_0 + \frac{b}{d}t, \quad y = y_0 - \frac{a}{d}t \quad (t \in \mathbb{Z})$$
예시: $15x + 21y = 12$를 풉니다. $\gcd(15, 21) = 3$이고 $3 \mid 12$이므로 해가 존재합니다. 양변을 3으로 나누면 $5x + 7y = 4$. 확장 유클리드: $5 \times 3 + 7 \times (-2) = 1$이므로 $5 \times 12 + 7 \times (-8) = 4$. 특수해 $(x_0, y_0) = (12, -8)$. 일반해: $x = 12 + 7t$, $y = -8 - 5t$.

피타고라스 세 쌍

$x^2 + y^2 = z^2$의 양의 정수 해 $(x, y, z)$를 피타고라스 세 쌍(Pythagorean Triple)이라 합니다.

$\gcd(x, y, z) = 1$인 원시 피타고라스 세 쌍은 (순서 무시) 다음과 같이 매개변수화됩니다:

$$\boxed{x = m^2 - n^2, \quad y = 2mn, \quad z = m^2 + n^2}$$

단, $m > n > 0$, $\gcd(m, n) = 1$, $m - n$은 홀수.

원시 피타고라스 세 쌍 (처음 몇 개)
$m$$n$$x$$y$$z$
$2$$1$$3$$4$$5$
$3$$2$$5$$12$$13$
$4$$1$$15$$8$$17$
$4$$3$$7$$24$$25$
$5$$2$$21$$20$$29$

페르마 하강법

무한 하강법(Method of Infinite Descent)은 페르마가 고안한 증명 기법으로, "양의 정수 해가 존재하면 더 작은 해가 존재함"을 반복하여 모순을 이끌어냅니다.

예시: $x^4 + y^4 = z^2$은 양의 정수 해가 없습니다

이 결과로부터 $x^4 + y^4 = z^4$도 해가 없음이 따릅니다 (페르마의 마지막 정리 $n = 4$ 경우).

증명 (하강법): 양의 정수 해 $(x, y, z)$가 존재하되 $z$가 최소라고 가정합니다. $\gcd(x, y) = 1$로 놓을 수 있습니다.

  1. $(x^2, y^2, z)$가 피타고라스 세 쌍을 이루므로 매개변수 표현에 의해 $x^2 = m^2 - n^2$, $y^2 = 2mn$, $z = m^2 + n^2$ (또는 $x$, $y$ 교환).
  2. $y^2 = 2mn$이고 $\gcd(m, n) = 1$이므로 $m = s^2$, $n = 2t^2$ (또는 반대).
  3. $x^2 = m^2 - n^2 = s^4 - 4t^4$에서 $x^2 + 4t^4 = s^4$, 즉 $x^2 + (2t^2)^2 = (s^2)^2$.
  4. 다시 매개변수화하면 더 작은 해를 얻어 $z' = s^2 \leq m < m^2 + n^2 = z$, 이는 $z$의 최소성에 모순됩니다.

따라서 해가 존재하지 않습니다. $\blacksquare$

하강법의 현대적 관점: 페르마 하강법은 자연수의 정렬 원리(well-ordering principle)에 기반합니다. 양의 정수의 무한 감소 수열은 존재할 수 없으므로, "더 작은 해가 항상 존재한다"는 것은 "해 자체가 없다"는 결론으로 이어집니다. 이 기법은 모듈러 산술과 결합하여 디오판토스 방정식의 불가능성을 증명하는 강력한 도구입니다.

모듈러 산술을 이용한 불가능성 증명

디오판토스 방정식이 해를 갖지 않음을 보이는 다른 방법은 적절한 법으로 합동식을 검사하는 것입니다.

예시: $x^2 + y^2 = 4k + 3$ 꼴의 수는 두 제곱의 합이 될 수 없습니다

$\bmod 4$에서 제곱수는 $0$ 또는 $1$만 가능합니다. 따라서 $x^2 + y^2 \bmod 4$의 가능한 값은 $\{0, 1, 2\}$이고, $3$은 불가능합니다. 예를 들어 $x^2 + y^2 = 7$은 정수 해가 없습니다.

페르마의 두 제곱 정리

홀수 소수 $p$가 두 정수의 제곱의 합 $p = a^2 + b^2$으로 표현될 필요충분조건은 $p \equiv 1 \pmod{4}$입니다.

한 줄 증명 (자고에): 유한 집합 $S = \{(x, y, z) \in \mathbb{N}^3 : x^2 + 4yz = p\}$ 위의 자기역변환(involution)을 구성하여 증명합니다.

페르마의 마지막 정리

$n \geq 3$인 정수에 대하여 다음 방정식은 양의 정수 해를 갖지 않습니다:

$$x^n + y^n = z^n$$

페르마는 1637년경 자신의 산술 사본 여백에 "경이로운 증명을 발견했으나 여백이 좁아 적지 못한다"고 기록하였습니다. 이 정리는 약 358년 후인 1995년 앤드루 와일스가 타니야마-시무라 추측(현재 모듈러 정리)의 준안정적(semistable) 경우를 증명함으로써 해결하였습니다.

RSA 암호

소수가 인터넷을 지킵니다: 여러분이 인터넷에서 비밀번호를 입력할 때, 그 정보는 어떻게 보호됩니까? 핵심은 "곱하기는 쉽지만 역으로 분해하기는 어렵다"는 소수의 성질입니다.

두 소수 $p = 61$과 $q = 53$을 곱하면 $n = 3233$을 순식간에 구할 수 있습니다. 하지만 반대로 "3233을 두 소수의 곱으로 분해하라"라는 문제는 훨씬 어렵습니다. 이 정도 크기는 쉽지만, 수백 자리의 수라면 현존하는 모든 컴퓨터를 동원해도 수십억 년이 걸립니다.

RSA 암호는 이 원리를 이용합니다. 큰 소수 두 개의 곱 $n$은 공개하되(공개키), 원래의 두 소수 $p, q$는 비밀로 합니다. $p, q$를 모르면 암호를 풀 수 없지만, $p, q$를 아는 사람(비밀키 소유자)은 오일러 정리를 이용해 간단히 복호화할 수 있습니다.

오일러 정리는 RSA 공개키 암호 시스템의 수학적 기초입니다. 1977년 리베스트(Rivest), 샤미르(Shamir), 에이들먼(Adleman)이 제안하였습니다.

키 생성

  1. 서로 다른 두 큰 소수 $p$, $q$를 선택합니다.
  2. $n = pq$를 계산합니다.
  3. $\phi(n) = (p-1)(q-1)$을 계산합니다.
  4. $\gcd(e, \phi(n)) = 1$인 정수 $e$를 선택합니다 (보통 $e = 65537$).
  5. $ed \equiv 1 \pmod{\phi(n)}$인 $d$를 확장 유클리드 호제법으로 구합니다.
  6. 공개키: $(n, e)$ / 비밀키: $(n, d)$

암호화와 복호화

메시지 $M$ ($0 \leq M < n$)에 대하여:

$$\text{암호화: } C \equiv M^e \pmod{n}$$ $$\text{복호화: } M \equiv C^d \pmod{n}$$

정확성 증명

$C^d \equiv (M^e)^d = M^{ed} \pmod{n}$. $ed = 1 + k\phi(n)$이므로:

$$M^{ed} = M^{1 + k\phi(n)} = M \cdot (M^{\phi(n)})^k \equiv M \cdot 1^k = M \pmod{n}$$

(오일러 정리에 의해, $\gcd(M, n) = 1$일 때. $\gcd(M, n) \neq 1$인 경우도 CRT를 이용하면 성립합니다.)

구체적 예시

  1. 키 생성: $p = 61$, $q = 53$으로 놓으면 $n = 3233$, $\phi(n) = 60 \times 52 = 3120$
  2. $e = 17$ 선택 ($\gcd(17, 3120) = 1$)
  3. $17d \equiv 1 \pmod{3120}$에서 $d = 2753$ (확인: $17 \times 2753 = 46801 = 15 \times 3120 + 1$)
  4. 공개키: $(3233, 17)$, 비밀키: $(3233, 2753)$
  5. 암호화: 메시지 $M = 65$이면 $C = 65^{17} \bmod 3233 = 2790$
  6. 복호화: $2790^{2753} \bmod 3233 = 65$ $\checkmark$
RSA 스토리텔링 — 자물쇠 비유: 앨리스가 밥에게 비밀 편지를 보내려 합니다.
1. 밥은 열린 자물쇠(공개키 $(n, e)$)를 여러 개 만들어 세상에 배포합니다. 누구나 가져갈 수 있습니다.
2. 앨리스는 밥의 자물쇠로 상자를 잠급니다 (메시지 $M$을 $M^e \bmod n$으로 암호화).
3. 잠긴 상자를 누가 가져가도, 열쇠(비밀키 $d$)는 밥만 가지고 있으므로 밥만 열 수 있습니다 ($C^d \bmod n$으로 복호화).

핵심은 자물쇠(공개키)를 보고 열쇠(비밀키)를 역으로 만드는 것이 사실상 불가능하다는 것입니다. 이 불가능함의 근거가 바로 큰 수의 소인수분해의 어려움입니다.
안전성: RSA의 안전성은 큰 수의 소인수분해가 어렵다는 것에 기반합니다. $n$에서 $p$와 $q$를 알아내면 $\phi(n)$을 계산하여 $d$를 구할 수 있습니다. 현재 RSA-2048 (617자리 이상) 이상의 키 길이가 권장됩니다.
암호학의 더 큰 지도를 함께 보십시오.

이 절은 RSA 자체의 수학에 집중합니다. Diffie-Hellman, 유한체, 해시, 디지털 서명, 엔트로피, 격자 기반 양자내성 암호까지 묶은 전체 흐름은 암호학의 수학 페이지에서 이어집니다.

산술 함수

산술 함수(Arithmetic Function)는 양의 정수에서 복소수로의 함수입니다. 특히 $f(mn) = f(m)f(n)$ ($\gcd(m,n) = 1$)을 만족하면 곱셈적 함수(Multiplicative Function)라 합니다.

주요 산술 함수

함수정의곱셈적?
$\phi(n)$ (오일러 함수)$n$ 이하의 $n$과 서로소인 양의 정수의 개수
$\tau(n)$ (약수 개수)$\displaystyle\sum_{d \mid n} 1$
$\sigma(n)$ (약수 합)$\displaystyle\sum_{d \mid n} d$
$\mu(n)$ (뫼비우스 함수)아래 정의 참조
$\Lambda(n)$ (폰 망골트 함수)$n = p^k$이면 $\ln p$, 아니면 $0$아니오

뫼비우스 함수

뫼비우스 함수(Mobius Function) $\mu(n)$은 다음과 같이 정의됩니다:

$$\mu(n) = \begin{cases} 1 & n = 1 \\ (-1)^k & n = p_1 p_2 \cdots p_k \text{ (서로 다른 소수의 곱)} \\ 0 & n\text{이 어떤 소수의 제곱으로 나누어질 때} \end{cases}$$

핵심 성질:

$$\sum_{d \mid n} \mu(d) = \begin{cases} 1 & n = 1 \\ 0 & n > 1 \end{cases}$$

이를 $\mu * \mathbf{1} = \varepsilon$ (디리클레 합성곱)로 표현합니다.

뫼비우스 반전 공식

산술 함수 $f$와 $g$에 대하여:

$$g(n) = \sum_{d \mid n} f(d) \implies f(n) = \sum_{d \mid n} \mu(d) \, g\!\left(\frac{n}{d}\right)$$
예시: $\displaystyle\sum_{d \mid n} \phi(d) = n$에 뫼비우스 반전을 적용하면 $\phi(n) = \displaystyle\sum_{d \mid n} \mu(d) \cdot \frac{n}{d} = n \sum_{d \mid n} \frac{\mu(d)}{d}$. 이로부터 $\phi(n) = n \displaystyle\prod_{p \mid n} (1 - 1/p)$이 유도됩니다.

뫼비우스 반전의 다양한 응용

응용 1: 원분 다항식

$n$차 원분 다항식(Cyclotomic Polynomial) $\Phi_n(x)$는 뫼비우스 반전으로 표현됩니다:

$$x^n - 1 = \prod_{d \mid n} \Phi_d(x) \implies \Phi_n(x) = \prod_{d \mid n} (x^d - 1)^{\mu(n/d)}$$

예를 들어 $\Phi_6(x) = \frac{(x^6-1)(x-1)}{(x^3-1)(x^2-1)} = x^2 - x + 1$입니다.

응용 2: 제곱인수 없는 수의 밀도

$N$ 이하의 제곱인수 없는 수(square-free numbers)의 개수 $Q(N)$에 뫼비우스 함수를 사용합니다:

$$Q(N) = \sum_{n=1}^{N} |\mu(n)| = \sum_{d=1}^{\lfloor\sqrt{N}\rfloor} \mu(d) \left\lfloor \frac{N}{d^2} \right\rfloor$$

$N \to \infty$일 때 $Q(N) \sim \frac{6}{\pi^2} N = \frac{N}{\zeta(2)}$입니다. 즉, 자연수의 약 $60.8\%$가 제곱인수를 갖지 않습니다.

응용 3: $n$ 이하의 기약분수 세기

분모가 $n$ 이하인 $[0, 1]$ 구간의 기약분수의 개수(패리 수열의 길이)는 $|F_n| = 1 + \sum_{k=1}^{n} \phi(k)$이며, 이것은 뫼비우스 함수를 이용한 포함-배제 원리로도 유도됩니다.

응용 4: 가우스의 정수점 세기

$\gcd(a, b) = 1$인 격자점 $(a, b)$의 밀도를 구하는 문제에서도 뫼비우스 반전이 사용됩니다:

$$\sum_{a=1}^{N}\sum_{b=1}^{N} [\gcd(a,b)=1] = \sum_{d=1}^{N} \mu(d) \left\lfloor \frac{N}{d} \right\rfloor^2 \sim \frac{6N^2}{\pi^2}$$

디리클레 합성곱

두 산술 함수 $f$, $g$의 디리클레 합성곱(Dirichlet Convolution)은 다음과 같이 정의됩니다:

$$(f * g)(n) = \sum_{d \mid n} f(d) \, g\!\left(\frac{n}{d}\right)$$

주요 성질:

중요한 관계식들 (디리클레 합성곱 표현):

디리클레 급수와의 관계: 산술 함수 $f$에 대해 디리클레 급수 $F(s) = \displaystyle\sum_{n=1}^{\infty} \frac{f(n)}{n^s}$를 정의하면, 디리클레 합성곱은 급수의 곱에 대응합니다: $(f * g)(n)$의 디리클레 급수는 $F(s) \cdot G(s)$입니다. 특히 리만 제타 함수 $\zeta(s) = \displaystyle\sum_{n=1}^{\infty} \frac{1}{n^s}$에 대해 $\frac{1}{\zeta(s)} = \displaystyle\sum_{n=1}^{\infty} \frac{\mu(n)}{n^s}$입니다.

원시근과 위수

$\gcd(a, n) = 1$일 때, $a^k \equiv 1 \pmod{n}$을 만족하는 가장 작은 양의 정수 $k$를 $a$의 $n$에 대한 위수(Order)라 하며 $\text{ord}_n(a)$로 표기합니다.

위수의 성질

원시근

$\text{ord}_n(g) = \phi(n)$인 $g$를 $n$의 원시근(Primitive Root)이라 합니다. 원시근이 존재하면 $\{g, g^2, \ldots, g^{\phi(n)}\}$가 $n$과 서로소인 잉여류 전체를 이룹니다.

원시근이 존재하는 $n$: $1, 2, 4, p^k, 2p^k$ (홀수 소수 $p$, $k \geq 1$).

소수 $p$에 대한 최소 원시근
$p$$2$$3$$5$$7$$11$$13$$17$$19$$23$
최소 원시근$1$$2$$2$$3$$2$$2$$3$$2$$5$

원시근의 존재성 증명 (소수 $p$인 경우)

소수 $p$에 대해 $(\mathbb{Z}/p\mathbb{Z})^{\times}$가 순환군임을 증명합니다. 핵심은 유한체 위의 다항식의 근의 개수 제한을 사용하는 것입니다.

보조정리: 체 위의 $d$차 다항식은 최대 $d$개의 근을 가집니다.

증명: $p - 1$의 각 소인수 $q$에 대해 $\text{ord}_p(a) = q^{e}$ ($q^e \| (p-1)$)인 원소 $a$가 존재함을 보입니다.

  1. $x^{(p-1)/q} - 1 \equiv 0 \pmod{p}$은 최대 $\frac{p-1}{q}$개의 근을 가집니다.
  2. $x^{p-1} - 1 \equiv 0 \pmod{p}$은 정확히 $p - 1$개의 근($1, 2, \ldots, p-1$ 전부)을 가집니다.
  3. 따라서 $a^{p-1} \equiv 1$이지만 $a^{(p-1)/q} \not\equiv 1$인 원소 $a$가 존재합니다.
  4. 이러한 $a$의 위수 $d$는 $d \mid (p-1)$이고 $d \nmid \frac{p-1}{q}$이므로 $q^e \mid d$입니다.
  5. $b = a^{d/q^e}$로 놓으면 $\text{ord}_p(b) = q^e$입니다.

$p - 1 = q_1^{e_1} q_2^{e_2} \cdots q_r^{e_r}$의 각 소인수 거듭제곱에 대해 해당 위수의 원소 $b_i$를 구한 뒤, $g = b_1 b_2 \cdots b_r$로 놓으면 $\text{ord}_p(g) = p - 1$입니다 (위수가 쌍마다 서로소인 원소의 곱의 위수는 위수의 곱). $\blacksquare$

원시근을 구하는 알고리즘

소수 $p$의 원시근을 실제로 구하는 방법입니다:

  1. $p - 1$을 소인수분해합니다: $p - 1 = q_1^{e_1} q_2^{e_2} \cdots q_r^{e_r}$.
  2. $g = 2, 3, 4, \ldots$를 순서대로 시도하며, 각 $g$에 대해 $g^{(p-1)/q_i} \not\equiv 1 \pmod{p}$을 모든 소인수 $q_i$에 대해 확인합니다.
  3. 모든 조건을 만족하면 $g$가 원시근입니다.
예시: $p = 13$의 원시근 구하기
$p - 1 = 12 = 2^2 \times 3$이므로 소인수는 $\{2, 3\}$입니다.
$g = 2$를 시도합니다: $2^{12/2} = 2^6 = 64 \equiv 12 \equiv -1 \not\equiv 1 \pmod{13}$ $\checkmark$, $2^{12/3} = 2^4 = 16 \equiv 3 \not\equiv 1 \pmod{13}$ $\checkmark$.
모든 조건을 만족하므로 $g = 2$가 $13$의 원시근입니다.
실제로 $2$의 거듭제곱 $\bmod 13$: $2, 4, 8, 3, 6, 12, 11, 9, 5, 10, 7, 1$ — $\{1, 2, \ldots, 12\}$ 전체를 생성합니다.

원시근의 개수

$n$이 원시근을 가지면, 원시근의 개수는 정확히 $\phi(\phi(n))$개입니다. 하나의 원시근 $g$를 알면, $g^k$ ($\gcd(k, \phi(n)) = 1$)가 모든 원시근을 나열합니다.

이산 로그

원시근 $g$가 주어졌을 때, $g^x \equiv a \pmod{p}$를 만족하는 $x$를 $a$의 이산 로그(Discrete Logarithm)라 합니다. $x = \text{ind}_g(a)$로 표기합니다.

이산 로그의 성질은 일반 로그와 유사합니다:

이산 로그를 효율적으로 계산하는 것은 매우 어려운 문제이며, 디피-헬만 키 교환 등 암호학의 기초가 됩니다.

$p$-진 수 입문

새로운 거리 개념: 우리가 일상에서 사용하는 "거리"에서는 $1000$이 $1$보다 훨씬 큽니다. 그런데 소수 $p$를 기준으로 한 $p$-진 거리에서는 $p$로 많이 나누어질수록 "0에 가깝다"고 봅니다. 예를 들어 $2$-진 거리에서 $1024 = 2^{10}$은 $0$에 매우 가깝습니다!

$p$-진 부치

소수 $p$와 0이 아닌 정수 $n$에 대해, $p$-진 부치(p-adic valuation) $v_p(n)$은 $n$을 나누는 $p$의 최대 거듭제곱입니다:

$$n = p^{v_p(n)} \cdot m, \quad p \nmid m$$

$p$-진 절댓값은 $|n|_p = p^{-v_p(n)}$으로 정의합니다. $|0|_p = 0$.

$p$-진 절댓값의 성질

오스트로프스키 정리: $\mathbb{Q}$ 위의 자명하지 않은 절댓값은 통상적인 절댓값 $|\cdot|$ 또는 어떤 소수 $p$에 대한 $p$-진 절댓값 $|\cdot|_p$의 거듭제곱뿐입니다. 이것은 소수가 "수의 세계를 완비하는 모든 방향"을 나타냄을 의미합니다.

$p$-진 전개

$p$-진 정수는 형식적 급수 $\sum_{i=0}^{\infty} a_i p^i$ ($0 \leq a_i < p$)로 표현됩니다. 일반 십진법과 달리 "오른쪽으로 무한히" 전개됩니다.

예시: $-1$의 $5$-진 전개

$-1 \equiv 4 \pmod{5}$, $-1 \equiv 24 \pmod{25}$, $-1 \equiv 124 \pmod{125}$이므로:

$$-1 = 4 + 4 \cdot 5 + 4 \cdot 5^2 + 4 \cdot 5^3 + \cdots = \ldots 44444_5$$

이것은 등비급수 $\sum_{i=0}^{\infty} 4 \cdot 5^i = \frac{4}{1-5} = -1$과 일치합니다 ($p$-진 수렴).

헨젤의 보조정리

$p$-진 해석학의 핵심 도구인 헨젤의 보조정리(Hensel's Lemma)는 합동식의 해를 "들어 올리는" 방법을 제공합니다:

$f(x) \equiv 0 \pmod{p}$의 단순근 $a$ ($f'(a) \not\equiv 0 \pmod{p}$)가 있으면, 이를 유일하게 $f(x) \equiv 0 \pmod{p^k}$의 해로 확장할 수 있습니다.

예시: $x^2 \equiv 2 \pmod{7}$에서 $x \equiv 3 \pmod{7}$이 해입니다 ($3^2 = 9 \equiv 2$). 헨젤의 보조정리로 $x^2 \equiv 2 \pmod{49}$의 해를 구합니다: $x = 3 + 7t$로 놓으면 $(3 + 7t)^2 = 9 + 42t + 49t^2 \equiv 9 + 42t \equiv 2 \pmod{49}$, 즉 $42t \equiv -7 \pmod{49}$, $6t \equiv -1 \equiv 6 \pmod{7}$, $t \equiv 1 \pmod{7}$. 따라서 $x \equiv 10 \pmod{49}$. 검산: $10^2 = 100 = 2 \times 49 + 2$. $\checkmark$

암호학의 수학적 기초

현대 공개키 암호학은 정수론의 여러 "쉬운 방향은 있지만 역방향은 어려운" 문제에 기반합니다.

이 절의 범위

여기서는 정수론과 직접 연결되는 공개키 암호의 핵심 뼈대만 다룹니다. 해시, 유한체 기반 대칭키 암호, 엔트로피, 격자 기반 양자내성 구조까지 포함한 더 넓은 그림은 암호학의 수학 문서에서 정리합니다.

일방향 함수와 수론적 난제

암호학의 기반이 되는 수론적 난제
난제쉬운 방향어려운 방향응용
소인수분해$p, q \to n = pq$$n \to p, q$RSA
이산 로그$g, x \to g^x \bmod p$$g^x \bmod p \to x$디피-헬만, ElGamal
타원곡선 이산 로그$P, n \to nP$$P, Q \to n$ ($Q = nP$)ECDSA, ECDH

RSA의 수학적 구조 심화

RSA에서 $ed \equiv 1 \pmod{\lambda(n)}$을 사용하면 더 작은 $d$를 얻을 수 있습니다. 여기서 $\lambda(n) = \text{lcm}(p-1, q-1)$은 카마이클 함수입니다.

RSA가 올바르게 작동하는 이유 (CRT 증명)

$\gcd(M, n) \neq 1$인 경우에도 RSA가 정확함을 CRT로 증명합니다. $ed = 1 + k\lambda(n)$이고 $\lambda(n) = \text{lcm}(p-1, q-1)$이므로:

CRT에 의해 $M^{ed} \equiv M \pmod{n}$. $\blacksquare$

RSA에 대한 공격과 방어

RSA 암호 시스템의 수학적 흐름 키 생성 소수 $p, q$ 선택 $n = pq$ $\lambda(n) = \text{lcm}(p{-}1,q{-}1)$ $ed \equiv 1 \pmod{\lambda(n)}$ 공개: $(n,e)$ / 비밀: $d$ 암호화 $C \equiv M^e \pmod{n}$ 공개키 $(n, e)$ 사용 복호화 $M \equiv C^d \pmod{n}$ 비밀키 $d$ 사용 $M$ $C$ 정확성: $C^d = M^{ed} = M^{1+k\lambda(n)} \equiv M \pmod{n}$ 오일러 정리 + CRT에 의해 보장 안전성 기반 $n$의 소인수분해 어려움 양자 컴퓨터 위협 쇼어 알고리즘: $O((\log n)^3)$

디피-헬만 키 교환

1976년 디피(Diffie)와 헬만(Hellman)이 제안한 프로토콜로, 안전하지 않은 채널을 통해 비밀 키를 공유할 수 있습니다.

  1. 큰 소수 $p$와 원시근 $g$를 공개합니다.
  2. 앨리스: 비밀 정수 $a$를 선택하고 $A = g^a \bmod p$를 전송합니다.
  3. 밥: 비밀 정수 $b$를 선택하고 $B = g^b \bmod p$를 전송합니다.
  4. 공유 비밀키: 앨리스는 $K = B^a = g^{ab} \bmod p$, 밥은 $K = A^b = g^{ab} \bmod p$를 계산합니다.

도청자는 $g^a$와 $g^b$로부터 $g^{ab}$를 구해야 하는데, 이것이 디피-헬만 문제(DHP)이며 이산 로그 문제만큼 어렵다고 추정됩니다.

디피-헬만 키 교환 앨리스 비밀: $a$ $A = g^a \bmod p$ 비밀: $b$ $B = g^b \bmod p$ $A = g^a \bmod p$ 전송 $B = g^b \bmod p$ 전송 $K = B^a \equiv g^{ab}$ $K = A^b \equiv g^{ab}$ 공유 비밀키: $g^{ab} \bmod p$

주요 정리 요약

정수론 핵심 정리 요약표
정리내용조건
나눗셈 정리$a = bq + r$, $0 \leq r < b$$b > 0$
산술의 기본정리소인수분해의 존재와 유일성$n > 1$
베주 항등식$ax + by = \gcd(a, b)$인 $x, y$ 존재$a, b$ 정수
페르마 소정리$a^{p-1} \equiv 1 \pmod{p}$$p$ 소수, $p \nmid a$
오일러 정리$a^{\phi(n)} \equiv 1 \pmod{n}$$\gcd(a, n) = 1$
CRT연립합동식의 유일한 해 존재법이 쌍마다 서로소
이차 상호법칙$\left(\frac{p}{q}\right)\left(\frac{q}{p}\right) = (-1)^{\frac{p-1}{2}\cdot\frac{q-1}{2}}$$p, q$ 서로 다른 홀수 소수
뫼비우스 반전$g = f * \mathbf{1} \implies f = g * \mu$산술 함수
원시근 존재$(\mathbb{Z}/p\mathbb{Z})^{\times}$는 순환군$p$ 소수
헨젤의 보조정리$\bmod p$ 단순근을 $\bmod p^k$로 확장$f'(a) \not\equiv 0$

참고자료