왜 합성수 n일 때 ℤ/nℤ는 체가 아니라 링인가?

1) 배경: 정수환

정수 전체 집합 환(Ring)이지만 체(Field)는 아닙니다. 덧셈에 대한 역원은 항상 존재하지만, 곱셈에 대한 역원은 1, −1을 제외하면 대부분 없습니다.

2) 나머지 연산으로 만든 구조 ℤ/nℤ

원소 집합은 {0, 1, 2, …, n−1}이고, 덧셈/곱셈을 각각 (a + b) mod n, (a × b) mod n으로 정의합니다. 이 구조는 언제나 이 됩니다(덧셈/곱셈의 닫힘·결합·교환·분배 성질이 성립).

3) 하지만 “체(Field)”가 되려면?

  • 0 ≠ 1
  • 모든 0이 아닌 원소 a가 곱셈에 대한 역원 a⁻¹을 가져야 함

즉, 0이 아닌 어떤 원소로도 항상 나눗셈이 가능해야 합니다.

4) 소수 vs 합성수 예시

(a) n = 5 (소수)

ℤ/5ℤ = {0,1,2,3,4} 에서 0을 뺀 모든 원소는 역원을 가집니다. 예: 2⁻¹ = 3, 3⁻¹ = 2, 4⁻¹ = 4 (mod 5). 따라서 체(Field)입니다. (ℤ/5ℤ ≅ 𝔽₅)

(b) n = 6 (합성수)

ℤ/6ℤ = {0,1,2,3,4,5} 에서는 0이 아닌 두 원소의 곱이 0이 되는 경우(영인수, zero divisor)가 존재합니다:

2 × 3 ≡ 0 (mod 6)

이런 영인수가 존재하면 모든 0≠a에 대한 역원이 존재할 수 없고, 결과적으로 ℤ/6ℤ체가 될 수 없습니다. (환에 머뭄)

5) 결론 비교표

구조 영인수 존재 역원(곱셈) 존재 나눗셈 결론
ℤ/pℤ (p 소수) 없음 모든 0≠a에 대해 존재 항상 가능 체(Field)
ℤ/nℤ (n 합성수) 있음 (예: 2·3≡0 mod 6) 일부만 존재 항상은 불가 환(Ring)

6) 한 줄 요약

소수 p일 때만 ℤ/pℤ에서 0이 아닌 모든 원소가 역원을 가져 나눗셈이 항상 가능하므로 체가 된다. 합성수 n에서는 영인수가 생겨 역원이 항상 존재하지 않으므로 체가 아니라 링이다.

7) (옵션) 작은 파이썬 예시로 확인

# 곱셈표 일부 확인 예시
def mult_rows(n):
    for i in range(1, n):
        row = [(i*j) % n for j in range(1, n)]
        print(i, ":", row)

print("Z/5Z (prime):")
mult_rows(5)

print("\nZ/6Z (composite):")
mult_rows(6)

Z/6Z 출력에서 2·3≡0과 같은 영인수가 드러납니다.

+ Recent posts