복소수 (Complex Numbers)

\(i^2 = -1\) 에서 Euler 공식까지 — 선형대수를 위한 회전의 언어

이 포스트는 Strang Ch.10 §10.1 을 뼈대로 복소수의 기본 연산, 복소평면, 켤레와 절댓값, 극형식 \(z = re^{i\theta}\), Euler 공식 \(e^{i\theta} = \cos\theta + i\sin\theta\), De Moivre 정리, 1의 \(n\) 제곱근을 한다 체로 정리한다. 각 개념의 “왜 이렇게 정의하는가”, “어떤 문제를 풀기 위해 태어났는가”를 기하학적 직관과 함께 다루며, 이후 Hermitian·Unitary·FFT에서 이 언어가 어떻게 쓰이는지 미리 연결 고리를 만든다.

Mathematics
Machine Learning
저자

Kwangmin Kim

공개

2026년 04월 13일

1 개요

실수 체계 \(\mathbb{R}\) 에서 \(x^2 = -1\) 은 해를 갖지 않는다. 실수를 제곱하면 항상 0 이상이기 때문이다. 그러나 이 “해가 없다”는 사실은 선형대수에서 심각한 결함을 만든다. 예로 가장 단순한 \(2\times 2\) 회전 행렬

\[ \mathbf{R}_\theta = \begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix} \]

의 특성방정식은 \(\lambda^2 - 2\cos\theta\,\lambda + 1 = 0\) 이다. 판별식 \(4\cos^2\theta - 4 = -4\sin^2\theta \leq 0\) 으로, \(\theta \neq 0, \pi\) 이면 실수 해가 없다. “회전은 모든 방향을 바꾼다”는 당연한 기하학적 사실이 실 고유값 부재로 나타난다.

이 빈자리를 채우려면 수 체계를 확장해야 한다. 확장의 씨앗은 단 하나의 규칙이다.

\[ i^2 = -1 \]

이 한 줄로부터 복소수 체계 \(\mathbb{C}\) 가 자라 나오고, 회전 행렬은 \(\lambda = e^{\pm i\theta}\) 라는 깔끔한 고유값을 얻는다. 더 나아가 푸리에 변환·양자역학·신호처리 가 모두 이 확장 위에 얹힌다.

이 포스트는 Strang (2009) Introduction to Linear Algebra Ch.10 §10.1 의 흐름을 따라 복소수의 기본 연산·극형식·Euler 공식을 정리한다. 각 단계에서 “왜 이렇게 정의하는가”를 기하학적으로 해석하여 이후 Hermitian·Unitary·FFT 포스트의 기반을 다진다.


2 정의와 기본 연산

정의: 복소수 (Complex Number)

\(a, b \in \mathbb{R}\) 에 대해

\[ z = a + bi, \qquad i^2 = -1 \]

의 형태로 쓰는 수를 복소수라 하고, \(a = \text{Re}(z)\)실부, \(b = \text{Im}(z)\)허부라 한다. 복소수 전체 집합은 \(\mathbb{C}\) 이다.

  • 실수는 \(b = 0\) 인 복소수 — 즉 \(\mathbb{R} \subset \mathbb{C}\)
  • 순허수(pure imaginary)는 \(a = 0\) 인 복소수

2.1 덧셈과 뺄셈

실부·허부를 각각 더한다.

\[ (a + bi) + (c + di) = (a + c) + (b + d)i \]

이는 2차원 벡터 \((a, b), (c, d)\) 의 덧셈과 구조가 동일하다. 복소수를 \(\mathbb{R}^2\) 의 점으로 볼 수 있는 첫 번째 근거다.

2.2 곱셈

\(i^2 = -1\) 규칙 외에는 일반 대수와 동일하게 분배법칙으로 전개한다.

\[ (a + bi)(c + di) = ac + adi + bci + bd\,i^2 = (ac - bd) + (ad + bc)i \]

핵심은 허부 제곱이 실부로 “넘어온다” 는 점이다. \(bd \cdot i^2 = -bd\) 가 실부에 음수로 들어간다. 이 단 한 가지 규칙이 복소수 곱셈의 모든 구조를 결정한다.

검증 예시: \((1 + i)^2 = 1 + 2i + i^2 = 1 + 2i - 1 = 2i\). 즉 \(1 + i\) 를 제곱하면 순허수가 된다.

2.3 나눗셈: 켤레를 곱해서 유리화

복소수 \(1/z\) 는 직접 계산하기 어렵지만, 분모·분자에 \(\bar{z}\) 를 곱하면 분모가 실수가 되어 실수 나눗셈으로 바뀐다.

\[ \frac{1}{a + bi} = \frac{1}{a + bi} \cdot \frac{a - bi}{a - bi} = \frac{a - bi}{a^2 + b^2} \]

예: \(1/(3 + 2i) = (3 - 2i)/13\). 분모의 \(i\) 를 제거하는 이 기법은 고등학교의 무리식 유리화 (\(\sqrt{\cdot}\) 를 제거하는 것) 와 수학적으로 동일한 아이디어다.

직관: 왜 “\(i^2 = -1\)” 하나로 모든 것이 결정되는가

수 체계 확장은 “가능한 한 적은 규칙 추가로 원하는 성질을 얻는” 것이 핵심이다. \(i^2 = -1\)

  1. 덧셈·곱셈의 결합법칙·교환법칙·분배법칙 을 모두 보존한다 (체(field) 구조 유지)
  2. 모든 다항식에 근의 존재를 보장한다 (대수학의 기본정리: \(n\) 차 다항식은 \(\mathbb{C}\) 에서 \(n\) 개 근을 가진다)
  3. \(\mathbb{R}\) 을 부분집합으로 포함한다 (\(b = 0\) 이면 실수 연산과 일치)

추가 규칙 없이 이 세 가지를 동시에 얻는 최소 확장이 복소수다. 더 큰 확장(사원수 quaternion, 팔원수 octonion) 도 있지만 거기서는 교환법칙 등이 깨진다. 복소수는 “가환체(commutative field) 를 유지하는 최대 확장”이라는 독특한 지위를 갖는다.


3 복소평면과 기하학적 해석

3.1 좌표계

복소수 \(z = a + bi\) 를 평면 위의 점 \((a, b)\) 와 동일시한다.

  • 실축 (가로): 실수 전체
  • 허축 (세로): 순허수 전체
  • 원점: \(0 + 0i\)

덧셈은 벡터 덧셈(평행이동), 절댓값 곱하기는 원점 기준 크기 조절, 켤레는 실축 기준 반사다. 곱셈은 조금 더 흥미롭다 — 극형식에서 자연스럽게 드러난다.

3.2 켤레 (Conjugate)

정의: 켤레

\(z = a + bi\)복소 켤레

\[ \bar{z} = a - bi \]

이다. 기호는 \(\bar{z}\) 또는 \(z^*\) (물리·공학에서 흔히 사용).

기하적 의미: 복소평면에서 실축에 대한 대칭. \((a, b)\)\((a, -b)\) 로 반사된다.

대수적 성질

  1. \(\overline{z_1 + z_2} = \bar{z}_1 + \bar{z}_2\) (합 보존)
  2. \(\overline{z_1 z_2} = \bar{z}_1 \bar{z}_2\) (곱 보존)
  3. \(\overline{\bar{z}} = z\) (자기 역원)
  4. \(z = \bar{z} \iff z \in \mathbb{R}\) (실수 특성화)

특히 (1), (2) 는 \(\bar{(\cdot)}\)체 자기동형사상(field automorphism) 임을 뜻한다. 즉 복소수 연산의 구조를 보존하는 “숨은 대칭”이다.

3.3 절댓값 (Modulus)

\(z\bar{z} = (a + bi)(a - bi) = a^2 + b^2\). 이는 항상 실수이고 음이 아니다. 따라서

정의: 절댓값

\[ |z| = \sqrt{z \bar{z}} = \sqrt{a^2 + b^2} \]

기하적으로는 복소평면에서 원점부터 \(z\) 까지의 거리다.

성질: \(|z_1 z_2| = |z_1| |z_2|\), \(|z_1 + z_2| \leq |z_1| + |z_2|\) (삼각 부등식).


4 극형식과 Euler 공식

4.1 극형식

복소평면의 점 \((a, b)\) 를 극좌표 \((r, \theta)\) 로 바꾸면 \(a = r\cos\theta, b = r\sin\theta\) 이므로

\[ z = r(\cos\theta + i\sin\theta) \]

여기서 \(r = |z|\)크기, \(\theta = \arg(z)\)편각(argument) 이다. 편각은 \(2\pi\) 의 배수만큼 자유롭게 더할 수 있다 — 복소평면에서 한 바퀴 돌면 제자리이므로.

4.2 Euler 공식

\(e^x\) 의 테일러 급수에 \(x = i\theta\) 를 대입해 보자.

\[ e^{i\theta} = 1 + (i\theta) + \frac{(i\theta)^2}{2!} + \frac{(i\theta)^3}{3!} + \frac{(i\theta)^4}{4!} + \cdots \]

\(i^2 = -1, i^3 = -i, i^4 = 1, \dots\) 의 주기를 적용하면

\[ e^{i\theta} = \underbrace{\left(1 - \frac{\theta^2}{2!} + \frac{\theta^4}{4!} - \cdots\right)}_{\cos\theta} + i \underbrace{\left(\theta - \frac{\theta^3}{3!} + \frac{\theta^5}{5!} - \cdots\right)}_{\sin\theta} \]

정리: Euler 공식

\[ \boxed{e^{i\theta} = \cos\theta + i\sin\theta} \]

따라서 복소수의 극형식은

\[ z = re^{i\theta} \]

로 간결히 쓸 수 있다.

특수값 (유명한 사례):

  • \(\theta = 0\): \(e^0 = 1\)
  • \(\theta = \pi/2\): \(e^{i\pi/2} = i\)
  • \(\theta = \pi\): \(e^{i\pi} = -1\)\(e^{i\pi} + 1 = 0\) (Euler 항등식, 수학사상 가장 아름다운 식 중 하나)
  • \(\theta = 2\pi\): \(e^{2\pi i} = 1\)
직관: Euler 공식은 왜 놀라운가

\(e^x\) 는 원래 “지수적 성장”을 표현한다. \(\cos, \sin\) 은 “주기적 진동”을 표현한다. 두 언어가 서로 아무 관련 없어 보이는데, 지수의 허수 입력이 정확히 진동을 만들어 낸다.

물리적 해석: \(e^{i\theta}\) 는 각속도 1로 원 운동하는 점의 위치다. \(e^{i\omega t}\) 는 각속도 \(\omega\) 원 운동이며, 이 회전을 실축에 투영하면 \(\cos\omega t\) (횡파), 허축에 투영하면 \(\sin\omega t\) (세로파)다. 즉 진동은 회전의 그림자다. 한 가지 회전 개념만 이해하면 코사인·사인 덧셈정리·이중각 공식 등이 모두 지수 법칙에서 자동으로 나온다.

이 통합이 신호처리·양자역학에서 \(e^{i\omega t}\) 를 기본 단위로 쓰는 이유다. 삼각함수보다 수식 조작이 훨씬 간단하다.

4.3 극형식 곱셈: 크기 곱, 각도 합

\(z_1 = r_1 e^{i\theta_1}, z_2 = r_2 e^{i\theta_2}\) 에 대해 지수 법칙 \(e^a \cdot e^b = e^{a+b}\) 가 복소에서도 성립하므로

\[ z_1 z_2 = r_1 r_2\, e^{i(\theta_1 + \theta_2)} \]

크기는 곱해지고 각도는 더해진다. 직교형식 \((ac - bd) + (ad + bc)i\) 로 곱하는 것보다 기하학적 의미가 훨씬 선명하다.

역수: \(1/z = (1/r) e^{-i\theta}\). 크기는 역수, 각도는 음부호.

켤레: \(\bar{z} = re^{-i\theta}\). 크기는 그대로, 각도만 반전.

4.4 De Moivre 정리

\(z = re^{i\theta}\)\(n\) 거듭제곱은

\[ z^n = r^n e^{in\theta} = r^n(\cos n\theta + i\sin n\theta) \]

이는 De Moivre 정리다. 이를 사용하면 이중각·삼중각 공식이 즉시 유도된다. 예:

\[ (\cos\theta + i\sin\theta)^2 = \cos 2\theta + i\sin 2\theta \]

좌변을 전개하면 \(\cos^2\theta - \sin^2\theta + 2i\sin\theta\cos\theta\). 실부 비교 → \(\cos 2\theta = \cos^2\theta - \sin^2\theta\), 허부 비교 → \(\sin 2\theta = 2\sin\theta\cos\theta\). 삼각함수 공식 암기가 복소 대수 한 줄로 대체된다.


5 1의 \(n\) 제곱근

5.1 정의와 공식

\(z^n = 1\) 의 해는 \(n\) 개다. \(z = re^{i\theta}\) 로 놓으면 \(r^n = 1\) 에서 \(r = 1\), \(n\theta \equiv 0 \pmod{2\pi}\) 에서 \(\theta = 2\pi k/n\) (\(k = 0, 1, \dots, n-1\)).

정의: 1의 n제곱근 (n-th Roots of Unity)

\(\omega_n = e^{2\pi i/n}\) 에 대해

\[ 1,\; \omega_n,\; \omega_n^2,\; \dots,\; \omega_n^{n-1} \]

1의 \(n\) 제곱근이다. 이들은 단위원을 정확히 \(n\) 등분한 점들이다.

5.2 시각화

\(n = 4\): \(1, i, -1, -i\) — 축 방향 네 점. \(n = 6\): 정육각형 꼭짓점. \(n = 8\): 정팔각형 꼭짓점 (JPEG 압축의 DCT 기반).

: \(n = 3\) 의 근은 \(1, \omega, \omega^2\) 이고 \(\omega = e^{2\pi i/3} = -1/2 + i\sqrt{3}/2\). 이 세 근의 합이 \(0\) 이다 (기하학적으로 정삼각형 중심이 원점).

일반 성질:

  • \(\sum_{k=0}^{n-1} \omega_n^k = 0\) (기하: 정n각형 꼭짓점 벡터합 = 0)
  • \(\omega_n^{n-k} = \overline{\omega_n^k}\) (켤레쌍)
  • \(\omega_n^n = 1\) (닫힘)
직관: 왜 이 점들이 신호처리의 핵심인가

Discrete Fourier Transform (DFT) 은 길이 \(n\) 신호를 “주파수 성분”으로 분해하는 변환이다. 기저가 되는 것이 1의 \(n\) 제곱근들이다: 신호 \(\mathbf{c} = (c_0, \dots, c_{n-1})\)\(k\)-번째 주파수 성분은

\[ \hat{c}_k = \sum_{j=0}^{n-1} c_j\, \omega_n^{-jk} \]

이다. \(\omega_n\) 의 제곱근들이 “직교 주파수 격자”를 이루며, 이 격자의 대칭성이 FFT의 \(O(n\log n)\) 알고리즘을 가능하게 한다. \(\omega_n^n = 1\), \(\omega_n^{2k} = (\omega_n^2)^k = \omega_{n/2}^k\) 같은 대수 관계가 재귀 분할의 뼈대다.


6 복소 고유쌍 원리

실 행렬 \(A\) 의 고유값이 복소일 수 있고, 그 경우 반드시 켤레쌍으로 나타난다.

6.1 왜 그런가

\(A\mathbf{v} = \lambda\mathbf{v}\) 에서 \(A\) 가 실이면 양변에 켤레를 취하면 \(\overline{A}\bar{\mathbf{v}} = \bar{\lambda}\bar{\mathbf{v}}\). \(A\) 가 실이므로 \(\overline{A} = A\), 따라서

\[ A \bar{\mathbf{v}} = \bar{\lambda}\, \bar{\mathbf{v}} \]

\((\lambda, \mathbf{v})\) 가 고유쌍이면 \((\bar{\lambda}, \bar{\mathbf{v}})\) 도 고유쌍이다.

6.2 회전 행렬 예시

\(\mathbf{R}_{\pi/2} = \begin{pmatrix} 0 & -1 \\ 1 & 0 \end{pmatrix}\). 특성방정식 \(\lambda^2 + 1 = 0\) 의 근은 \(\lambda = \pm i\). 고유벡터:

  • \(\lambda = i\) 에 대해 \(\mathbf{v} = (1, -i)^\top\) (또는 \((i, 1)^\top\), 상수배)
  • \(\lambda = -i\) 에 대해 \(\bar{\mathbf{v}} = (1, i)^\top\)

검증: \(\mathbf{R}_{\pi/2}\begin{pmatrix}1\\-i\end{pmatrix} = \begin{pmatrix}i\\1\end{pmatrix} = i\begin{pmatrix}1\\-i\end{pmatrix}\) (좌변 두 번째 성분: \(1 = -i \cdot i = -i^2 = 1\) ✓).

6.3 일반화: 실 스펙트럼과 복소 스펙트럼의 공존

\(A\)\(n \times n\) 실 행렬이면 고유값 \(n\) 개 중

  • 일부는 실수 (불변 축 방향)
  • 나머지는 복소 켤레쌍으로 짝지어 존재 (불변 평면에서의 회전)

예: \(3 \times 3\) 실 행렬의 고유값은 (실 3개) 또는 (실 1개 + 복소 켤레쌍 1개) — 복소만 있는 경우는 불가능(홀수 차수 다항식은 실근 하나를 반드시 갖는다).

이것이 실 동역학계가 지수적 성장/감쇠 (실 \(\lambda\)) + 진동 (복소 켤레쌍) 의 조합으로 구성되는 이유다. 미분방정식 \(\dot{\mathbf{x}} = A\mathbf{x}\) 의 해 \(\mathbf{x}(t) = e^{At}\mathbf{x}_0\) 에서 복소 고유값 \(\lambda = \alpha + i\beta\)\(e^{\alpha t}(\cos\beta t + i\sin\beta t)\) 형태의 진동 해를 만든다.


7 응용: ML/DL·과학에서의 위치

분야 복소수의 역할
신호처리 DFT/FFT의 기저 \(\omega_n^k\) — 주파수 분해
양자역학 파동함수 \(\psi \in \mathbb{C}\), 확률 \(|\psi|^2\), 위상 간섭
제어공학 \(s = \sigma + i\omega\) 평면 — 극·영점 배치, 안정성
딥러닝 복소값 신경망, 스펙트럼 GNN, FFT 기반 convolution
전자공학 AC 회로의 임피던스 \(Z = R + iX\) — 저항·리액턴스
유체역학 2D 포텐셜 유동 \(w = \phi + i\psi\) — 흐름과 스트림 함수
정수론 리만 제타 함수의 비자명 영점

7.1 구체적 사례: 위상이 정보다

MRI, SAR (합성개구레이더), 무선 통신에서 측정 신호는 복소값이다. “크기 \(|z|\)” 뿐 아니라 “위상 \(\arg z\)” 에 정보가 담긴다. 위상만 유지하고 크기를 평균으로 대체해도 이미지 복원이 가능할 정도로 (Oppenheim 1981 의 고전 실험), 위상 정보의 비중이 크다. 실수 처리만 하면 이 절반의 정보를 버리는 셈이다.

7.2 구체적 사례: 스펙트럼 반경의 복소 증명

수치 선형대수의 “스펙트럼 반경 \(\rho(B) < 1\) 이면 \(B^k \to 0\)” 정리는 복소 Jordan 형식을 통해 증명된다. 실 Jordan 형식은 2×2 블록 안에 “회전 + 스케일링”을 넣어야 하므로 복잡하지만, 복소에서는 대각 (또는 Jordan 블록) 하나로 끝난다. 즉 복소 확장은 증명의 언어를 단순화한다.


8 코드 예시

8.1 Step 1: 복소수 기본 연산

코드
import numpy as np

z1 = 3 + 2j
z2 = 1 - 1j

print(f"z1 + z2 = {z1 + z2}")           # (4+1j)
print(f"z1 * z2 = {z1 * z2}")           # (5-1j) = 3 - 3j + 2j + 2
print(f"z1 / z2 = {z1 / z2}")           # 켤레 이용 유리화 자동
print(f"conj(z1) = {z1.conjugate()}")   # (3-2j)
print(f"|z1|    = {abs(z1):.4f}")       # sqrt(13)
print(f"arg(z1) = {np.angle(z1):.4f} rad = {np.degrees(np.angle(z1)):.2f}°")

8.2 Step 2: Euler 공식과 극형식

코드
import numpy as np

# Euler 공식 검증: e^(iπ) = -1
print(f"e^(iπ)     = {np.exp(1j*np.pi):.4f}")
print(f"e^(iπ) + 1 = {np.exp(1j*np.pi) + 1:.2e}  (부동소수점 오차)")

# 극형식 ↔ 직교형식 변환
r, theta = 2, np.pi/3
z = r * np.exp(1j * theta)
print(f"r={r}, θ={theta:.4f}rad → z = {z}")
print(f"실부 = r cos θ = {r*np.cos(theta):.4f}")
print(f"허부 = r sin θ = {r*np.sin(theta):.4f}")

# De Moivre: (1+i)^8
z = 1 + 1j
print(f"(1+i)^8 = {z**8}  (이론: 16, 각도 2π = 실축)")

8.3 Step 3: 1의 n 제곱근 시각화

코드
import numpy as np
import matplotlib.pyplot as plt

fig, axes = plt.subplots(1, 3, figsize=(12, 4), subplot_kw={'aspect': 'equal'})
for ax, n in zip(axes, [4, 6, 12]):
    # n 제곱근 계산
    roots = np.exp(2j * np.pi * np.arange(n) / n)

    # 단위원
    theta = np.linspace(0, 2*np.pi, 200)
    ax.plot(np.cos(theta), np.sin(theta), 'k--', alpha=0.3)

    # 근들
    ax.plot(roots.real, roots.imag, 'ro', markersize=10)
    for k, w in enumerate(roots):
        ax.annotate(f'$\\omega^{k}$', (w.real, w.imag),
                    xytext=(5, 5), textcoords='offset points')

    ax.axhline(0, color='gray', linewidth=0.5)
    ax.axvline(0, color='gray', linewidth=0.5)
    ax.set_xlim(-1.3, 1.3); ax.set_ylim(-1.3, 1.3)
    ax.set_title(f'{n}-th roots of 1')

plt.tight_layout()
plt.show()

# 합은 0임을 검증
for n in [4, 6, 12]:
    roots = np.exp(2j * np.pi * np.arange(n) / n)
    print(f"n={n:2d}: sum = {roots.sum():.2e}  (이론 0)")

8.4 Step 4: 복소 고유값 (회전 행렬)

코드
import numpy as np

theta = np.pi / 4  # 45도 회전
R = np.array([[np.cos(theta), -np.sin(theta)],
              [np.sin(theta),  np.cos(theta)]])

eigvals, eigvecs = np.linalg.eig(R)
print(f"고유값: {eigvals}")
print(f"이론값: e^(±iπ/4) = {np.exp(1j*theta):.4f}, {np.exp(-1j*theta):.4f}")

# 켤레쌍 확인
print(f"|λ1 - conj(λ2)| = {abs(eigvals[0] - eigvals[1].conjugate()):.2e}")

# 고유값의 절댓값은 1 (회전은 크기 보존)
print(f"|λ| = {np.abs(eigvals)}  (회전 = 크기 불변)")

이 코드의 핵심: 실 회전 행렬의 고유값이 단위원 위의 켤레쌍 \(e^{\pm i\theta}\) 로 등장한다. 이 구조가 없으면 회전 행렬의 스펙트럼을 기술할 수 없다.


9 요약: 핵심 아이디어 4

Strang §10.1 말미의 “Key Ideas” 를 재진술하면:

  1. \(a + bi\)\(c + di\)더할 때 \((a, b) + (c, d)\) 로 취급한다. 곱할 때는 \(i^2 = -1\) 을 적용한다.
  2. \(z = a + bi = re^{i\theta}\)켤레\(\bar{z} = a - bi = re^{-i\theta}\).
  3. \(z\bar{z} = r^2 = |z|^2 = a^2 + b^2\) (실수, 양의 값).
  4. 극형식 \(z = re^{i\theta}\) 에서 거듭제곱과 곱셈이 쉽다\(r\) 끼리 곱하고 \(\theta\) 끼리 더한다.

10 관련 주제

선행 지식

후속 주제

다른 카테고리 연결

참고 교재

  • Strang (2009) Introduction to Linear Algebra Ch.10 §10.1 — 본 포스트의 논리 뼈대
  • Ahlfors Complex Analysis Ch.1 — 복소수 기초의 표준 수학 교재
  • Needham Visual Complex Analysis — 기하학적 직관 중심의 현대 입문서

Subscribe

Enjoy this blog? Get notified of new posts by email: