B2 · 어떤 수로 계산하고, 무엇을 벡터로 다룰까?#

생산량과 확률은 보통 실수로 기록합니다. 그런데 생산활동을 반드시 정수 번만 실행해야 한다면 어떨까요? 진동의 위상을 복소수로 기록한다면 어떨까요? 같은 덧셈 기호를 사용해도 허용하는 수가 달라지면 해가 달라질 수 있습니다.

이번 단원에서는 계산에 허용한 수와 연산을 먼저 확인하는 습관을 만듭니다. 실수의 사칙연산은 알고 있다고 가정하되, 추상대수의 용어는 전제하지 않습니다. 앞부분의 구체적인 계산을 충분히 확인한 뒤 마지막 절에서 체와 벡터공간을 정식으로 정의하고 증명하겠습니다.

1. 두 배를 되돌릴 수 있는가?#

생산량을 두 배 늘리는 관계를 \(y=2x\)라고 합시다. \(y=1\)을 관측했을 때 원래 실행량은

\[ 2x=1,\qquad x=\frac12 \]

입니다. 활동을 연속적으로 나눌 수 있다면 문제가 없습니다. 그러나 실행량을 정수로 제한했다면 \(\frac12\)는 허용하지 않습니다. 방정식을 잘못 푼 것이 아니라 해를 찾는 집합이 달라진 것입니다.

정수는 더하고 빼고 곱한 결과가 다시 정수입니다. 하지만 0이 아닌 정수로 나눈 결과가 항상 정수인 것은 아닙니다. 선형방정식에서 계수로 나누는 일을 자유롭게 하려면 이 점을 해결해야 합니다. 유리수 \(\mathbb Q\), 실수 \(\mathbb R\), 복소수 \(\mathbb C\)에서는 0이 아닌 수에 대한 나눗셈이 가능합니다. 이러한 연산 체계를 라고 부릅니다. 0으로 나눌 수 있다는 뜻은 아닙니다.

양수만으로 계산하면 되지 않을까요? 물리적으로 가능한 생산량은 음수가 아니지만, 두 생산계획의 차이는 음의 성분을 가질 수 있습니다. 예를 들어

\[ (1,4,1)-(0,6,0)=(1,-2,1). \]

활동 2를 두 단위 줄이는 변화입니다. 가능한 상태의 집합과 변화를 계산할 전체 공간을 구별해야 합니다. 상태가 비음수라는 이유로 스칼라까지 비음수로 제한하면, 뺄셈을 사용하는 선형대수의 구조를 잃습니다.

2. 0과 1만 쓰는 계산을 실제로 해 보자#

이번에는 수량 대신 두 가지 설정을 기록합니다. 0은 기본 설정, 1은 변경된 설정이며, 같은 변경을 두 번 하면 기본 설정으로 돌아온다고 정합니다. 이때 덧셈은 정수 덧셈 뒤에 2로 나눈 나머지를 취합니다.

\(+\)

0

1

0

0

1

1

1

0

\(\times\)

0

1

0

0

0

1

0

1

이 연산을 쓰는 집합을 \(\mathbb F_2\)라고 씁니다. 유일한 0 아닌 원소 1은 \(1\cdot1=1\)이므로 곱셈 역원을 갖습니다. 덧셈에서는 \(1+1=0\)이므로 1 자신의 덧셈 역원이 1입니다.

정수 덧셈과 곱셈의 결합·교환·분배법칙은 나머지를 취해도 유지됩니다. 예를 들어 \(a\)\(a+2k\)로 바꾸면 합은 \(2k\), 곱은 \(2kb\)만큼 달라져 나머지가 변하지 않습니다. 따라서 계산 중간에 나머지를 취하든 끝에서 취하든 같은 결과를 얻습니다. 이 설명과 위 표를 합치면 \(\mathbb F_2\)가 체라는 사실을 확인할 수 있습니다.

여기서 \(1+1=0\)은 오류가 아닙니다. 반면 \(\frac12\)라는 표기는 이 체에서 사용할 수 없습니다. 분모의 \(2=1+1\)이 0이기 때문입니다. 앞으로 식을 전개할 때 ‘2로 나눈다’는 줄에는 계산하는 체에 대한 조건이 들어 있습니다.

3. 같은 행렬을 두 체에서 풀면 무엇이 달라질까?#

다음 행렬을 사용하겠습니다.

\[\begin{split} A_0= \begin{pmatrix} 1&1&0\\ 0&1&1\\ 1&0&1 \end{pmatrix}. \end{split}\]

먼저 실수에서 \(A_0x=0\)을 풀면

\[ x_1+x_2=0,\qquad x_2+x_3=0,\qquad x_1+x_3=0. \]

첫 식에서 \(x_1=-x_2\), 둘째 식에서 \(x_3=-x_2\)입니다. 셋째 식에 두 결과를 넣으면

\[ -x_2-x_2=0,\qquad -2x_2=0,\qquad x_2=0. \]

따라서 \(x_1=x_3=0\)입니다. 세 열의 선형결합이 0이 되는 경우가 계수를 모두 0으로 둔 경우뿐입니다. 이 뜻으로 세 열이 선형독립이라고 말합니다.

\(\mathbb F_2\)에서는 \(-x_2=x_2\)이므로 첫 두 식에서 \(x_1=x_2=x_3\)입니다. 마지막 식은

\[ x_1+x_3=x_2+x_2=0 \]

이 되어 새로운 제한을 주지 않습니다. \(x_2=0\)이면 \((0,0,0)\), \(x_2=1\)이면 \((1,1,1)\)을 얻습니다. 실제로

\[\begin{split} A_0\begin{pmatrix}1\\1\\1\end{pmatrix} = \begin{pmatrix}1+1\\1+1\\1+1\end{pmatrix} = \begin{pmatrix}0\\0\\0\end{pmatrix} \quad\text{in }\mathbb F_2. \end{split}\]

첫 두 열 \((1,0,1)^\top,(1,1,0)^\top\)은 여전히 독립입니다. 두 열에 계수 \(a,b\)를 곱한 합이 0이면 둘째 성분에서 \(b=0\), 셋째 성분에서 \(a=0\)이기 때문입니다. 셋째 열은 첫 두 열의 합입니다. 따라서 열들이 만드는 공간의 차원, 즉 계수는 실수에서 3, \(\mathbb F_2\)에서 2입니다.

같은 행렬의 실수 영공간은 원점 하나이고 이진체 영공간은 000과 111 두 점임을 보여 주는 비교표

그림 7 숫자가 같은 행렬이라도 계산하는 체가 다르면 영공간과 계수가 달라집니다. 오른쪽 두 점은 연속적인 선분이 아닙니다. 허용된 스칼라가 0과 1뿐입니다.#

경제학에서 실수 자료를 이진체 계산으로 임의 교체할 수는 없습니다. 다만 두 수준 실험의 설정을 부호로 기록할 때에는 두 체의 관계가 실제로 나타납니다. \(a,b\in\mathbb F_2\)이고 세 번째 설정을 \(c=a+b\)로 제한하면 가능한 설정은

\[ (a,b,c)=(0,0,0),(0,1,1),(1,0,1),(1,1,0) \]

네 개입니다. 실수 부호를 \(X_A=(-1)^a\), \(X_B=(-1)^b\), \(X_C=(-1)^c\)로 정하면, 지수의 홀짝만 부호에 영향을 주므로

\[ X_AX_B=(-1)^{a+b}=(-1)^c=X_C. \]

반응값을 \(\beta_0+\beta_AX_A+\beta_BX_B+\beta_CX_C+\beta_{AB}X_AX_B\)로 적으면 마지막 두 항은 \((\beta_C+\beta_{AB})X_C\)가 됩니다. 이 네 설정만 관측해서는 \(\beta_C\)\(\beta_{AB}\)를 따로 구분할 수 없습니다. 설정의 제약은 \(\mathbb F_2\)로, 반응과 회귀계수는 \(\mathbb R\)로 계산했다는 점을 구별해 두세요.

4. 다항식도 더하고 배수로 만들 수 있다#

지금까지는 0과 1의 나머지 계산을 확인했습니다. 다른 나머지 체도 있습니다. 예를 들어 5로 나눈 나머지에서는 \(2\cdot3=6\)의 나머지가 1이므로 2와 3이 서로 역원입니다. \(1^{-1}=1\), \(4^{-1}=4\)도 각각 \(1\cdot1=1\), \(4\cdot4=16\equiv1\)로 확인됩니다. 반면 6으로 나눈 나머지에서는 0 아닌 2와 3의 곱이 0이 됩니다. 따라서 6개의 나머지에 같은 연산을 주면 체가 아닙니다. 모든 소수 \(p\)에 대해 나머지 집합 \(\mathbb F_p\)가 체가 된다는 일반 증명은 마지막 절에서 하겠습니다.

설명변수 \(t\)를 이미 무차원화했다고 합시다. 반응의 변화를

\[ p(t)=a+bt+ct^2 \]

로 모델링하겠습니다. 계수는 실수이며, 어떤 실제 자료에 적합한 결과가 아니라 계산을 위한 모형입니다.

두 반응 \(p(t)=1-2t+t^2\), \(q(t)=2+t\)를 합치면

\[\begin{split} \begin{aligned} (p+q)(t) &=(1-2t+t^2)+(2+t)\\ &=(1+2)+(-2+1)t+(1+0)t^2\\ &=3-t+t^2. \end{aligned} \end{split}\]

\(p\)를 세 배 하면 \(3p(t)=3-6t+3t^2\)입니다. 두 연산 모두 차수가 2 이하인 다항식 안에 머무릅니다. 이 집합을 \(P_2(\mathbb R)\)라고 합니다. 영다항식도 반드시 포함합니다.

모든 \(p\)\(a\cdot1+b\cdot t+c\cdot t^2\)로 표현됩니다. 이 표현은 유일합니다. 다항식의 같음을 각 차수의 계수가 같은 것으로 정의했으므로

\[ a+bt+ct^2=a'+b't+c't^2 \]

이면 \(a=a'\), \(b=b'\), \(c=c'\)입니다. 따라서 \((1,t,t^2)\)는 이 공간의 기저이고 차원은 3입니다. 다항식 자체는 함수처럼 평가할 수 있지만, 기저를 정하면 세 계수로 기록할 수 있습니다.

다항식 p와 q 및 점별 합 p+q의 그래프, t=1에서 0과 3을 더해 3이 되는 값 표시

그림 8 합은 같은 입력 \(t\)에서 값을 더하는 연산입니다. 예를 들어 \(t=1\)에서 \(p(1)=0\), \(q(1)=3\), \((p+q)(1)=3\)입니다. 계수로 더한 결과와 점별로 더한 결과가 일치합니다.#

여기서 ‘차수가 정확히 2인 다항식들’로 집합을 바꾸면 문제가 생깁니다. \(t^2\)\(-t^2\)는 들어 있지만 합인 0은 들어 있지 않습니다. ‘이하’라는 조건은 표현상의 사소한 차이가 아닙니다.

다항식들을 곱하는 것도 가능하지만, \(P_2\) 안에 머무는 것은 아닙니다. \(t^2\cdot t^2=t^4\)이기 때문입니다. 벡터공간의 공리는 두 벡터끼리 곱할 수 있다고 요구하지 않습니다. 다항식의 곱과 스칼라곱을 구별하세요.

차수 제한 없이 모든 다항식을 모은 \(F[t]\)에서는 곱셈에 닫혀 있습니다. 그러나 \(t\)의 곱셈 역원은 다항식이 아닙니다. 다항식의 분수까지 허용한 \(F(t)\)로 확장하면 \(t^{-1}=1/t\)를 사용할 수 있습니다. 예를 들어

\[ \frac{1+t}{1-t}+\frac{1}{1-t}=\frac{2+t}{1-t}, \qquad \left(\frac{1+t}{1-t}\right)^{-1}=\frac{1-t}{1+t}. \]

여기서 분모가 0이 아니라는 말은 영다항식이 아니라는 뜻입니다. \(1-t\)가 특정 입력 \(t=1\)에서 0이 된다는 것과 다릅니다. 유리함수를 수에 대입하려면 그 입력에서 분모가 0이 아닌지 추가로 확인해야 합니다. \(F(t)\)라는 대수적 체를 구성하는 일과, 한 실수 구간 전체에서 정의된 함수를 고르는 일은 같은 문제가 아닙니다.

5. 함수·수열·행렬에 같은 연산을 적용하기#

집합 \(S\)에서 체 \(F\)로 가는 모든 함수의 집합을 \(F^S\)라고 합시다. 함수의 합과 스칼라곱을

\[ (f+g)(s)=f(s)+g(s),\qquad (af)(s)=a f(s) \]

로 정합니다. 예를 들어 분배법칙을 확인하려면 임의의 \(s\)에서

\[ [a(f+g)](s) =a(f(s)+g(s)) =af(s)+ag(s) =[af+ag](s) \]

를 계산합니다. 모든 \(s\)에서 값이 같으므로 두 함수가 같습니다. 영함수는 모든 \(s\)에서 0인 함수이고, \(-f\)\(s\)마다 \(-f(s)\)인 함수입니다.

\(S=\{1,\ldots,n\}\)이면 숫자열 \(F^n\)입니다. \(S\)가 행·열 인덱스의 쌍이면 행렬, \(S=\{0,1,2,\ldots\}\)이면 한쪽 무한수열입니다. 모두 같은 점별 연산으로 계산합니다. 연속 실함수의 공간 \(C[0,1]\)도 예입니다. 여기에 쓰는 ‘연속함수의 합과 상수배는 연속’이라는 사실은 미적분학의 전제로 사용합니다. 다항식 공간의 대수적 논증에는 이 해석학 전제가 필요하지 않습니다.

복소수도 벡터가 될 수 있습니다. \(\mathbb C\)를 실수 스칼라로 다루면

\[ z=a+bi=a\cdot1+b\cdot i \]

이므로 기저는 \((1,i)\)이고 차원은 2입니다. 실수 \(a,b\)에 대해 \(a+bi=0\)이면 실수부와 허수부가 각각 0이기 때문입니다. 같은 집합을 복소수 스칼라로 다루면 \(z=z\cdot1\)이고 기저는 \((1)\), 차원은 1입니다. ‘공간의 차원’에는 언제나 어떤 체 위에서인지가 붙어 있습니다.

6. 확률분포는 벡터공간이 아니라 그 안의 제약 집합이다#

세 상태의 확률분포는

\[ p_0+p_1+p_2=1,\qquad p_j\ge0 \]

을 만족합니다. \(p=(1,0,0)\)은 분포지만 \(2p=(2,0,0)\)은 합이 2여서 분포가 아닙니다. \(-p\)는 음의 성분까지 가집니다. 확률분포들의 집합은 실수 벡터공간이 아닙니다.

반면 두 분포의 차이 \(z=p-q\)

\[ z_0+z_1+z_2 =(p_0+p_1+p_2)-(q_0+q_1+q_2) =1-1=0 \]

을 만족합니다. 합이 0인 모든 실수 벡터의 집합

\[ U=\{z\in\mathbb R^3:z_0+z_1+z_2=0\} \]

은 영벡터를 포함하며, 두 원소의 합과 임의의 실수배도 합이 0입니다. 따라서 전체 \(\mathbb R^3\) 안의 부분공간입니다.

\(z_2=-z_0-z_1\)을 대입하면

\[ z=(z_0,z_1,-z_0-z_1) =z_0(1,0,-1)+z_1(0,1,-1). \]

두 벡터의 결합이 0이면 첫 성분과 둘째 성분에서 두 계수가 각각 0입니다. 두 벡터가 기저이므로 \(U\)의 차원은 2입니다. 그러나 분포 \(p\)에 임의의 \(z\in U\)를 더해도 분포가 된다는 뜻은 아닙니다. 예를 들어 \(p=(1,0,0)\)\(z=(-2,2,0)\)을 더하면 \((-1,2,0)\)입니다. 정규화는 보존되지만 비음수 조건은 깨집니다.

7. 두 부분공간을 합친다는 말의 두 뜻#

\(\mathbb R^2\)에서 가로축 \(U=\{(a,0)\}\)와 세로축 \(W=\{(0,b)\}\)를 생각합시다. 합집합 \(U\cup W\)에는 \((1,0)\)\((0,1)\)이 있지만 그 합 \((1,1)\)은 없습니다. 덧셈에 닫혀 있지 않습니다.

반면 각 공간에서 하나씩 골라 더한 모든 결과

\[ U+W=\{u+w:u\in U,w\in W\} \]

에는 \((a,b)=(a,0)+(0,b)\)가 모두 들어 있습니다. 이 예에서는 \(U+W=\mathbb R^2\)입니다. 합집합은 어느 한 공간에 속한다는 뜻이고, 부분공간의 합은 두 공간의 원소를 더할 수 있다는 뜻입니다.

두 좌표축의 합집합에는 벡터 1,1이 없고 두 축의 합은 평면 전체가 됨을 비교

그림 9 왼쪽의 두 축은 합집합입니다. 오른쪽의 평면은 부분공간의 합입니다. \((1,0)+(0,1)=(1,1)\)을 허용하는지 확인하면 차이를 판정할 수 있습니다.#

부분공간을 검사할 때에는 그림 모양보다 연산을 직접 확인하는 편이 안전합니다. 영벡터가 들어 있는지, \(u,w\)가 들어 있으면 \(au+w\)도 들어 있는지 확인하세요. 이 두 조건이면 충분하다는 증명을 마지막 절에 적겠습니다.

8. 기저의 길이가 달라질 수 없는 이유를 계산으로 준비하기#

\(\mathbb R^2\)의 표준기저 \(e_1=(1,0),e_2=(0,1)\)에서 \(v_1=(1,1)\)을 새 기저에 넣고 싶다고 합시다. \(v_1=e_1+e_2\)\(e_1\)에 대해 풀면

\[ e_1=v_1-e_2. \]

따라서 \(e_1\)을 빼고 \(v_1\)을 넣어도 모든 벡터를 표현할 수 있습니다. 다음으로 \(v_2=(1,-1)\)을 넣습니다.

\[ v_2=e_1-e_2=(v_1-e_2)-e_2=v_1-2e_2. \]

실수에서는

\[ e_2=\frac12v_1-\frac12v_2 \]

이므로 \(e_2\)까지 교체할 수 있습니다. 두 새 벡터가 전체를 생성합니다. 독립성도 \(av_1+bv_2=(a+b,a-b)=0\)을 풀면 \(a=b=0\)으로 확인됩니다.

\(\mathbb F_2\)에서는 \(v_1=v_2\)이므로 두 번째 교체가 불가능합니다. 위 계산에서 2로 나누는 줄이 정확히 실패합니다. 기저 교체의 일반 증명에서도 반드시 0 아닌 계수를 골라 나누어야 합니다.

세 번째 독립 벡터까지 넣을 수 있을까요? 이미 두 벡터가 평면 전체를 생성하므로 세 번째 벡터는 앞의 두 벡터의 결합입니다. 독립일 수 없습니다. 이 원리를 유한 개의 벡터로 일반화하면 기저의 크기가 일정하다는 결론을 얻습니다.

9. 손계산을 정확산술로 확인하기#

아래 코드는 실수 문제에는 정수·유리수의 정확산술을, \(\mathbb F_2\) 문제에는 모든 후보의 유한 열거를 사용합니다. 임의의 체를 부동소수점 배열로 대신하지 않습니다.

from itertools import product
from sympy import Matrix, symbols, expand

A0 = Matrix([[1, 1, 0], [0, 1, 1], [1, 0, 1]])
assert A0.rank() == 3
binary_kernel = []
for x in product([0, 1], repeat=3):
    if all(int(v) % 2 == 0 for v in A0 * Matrix(x)):
        binary_kernel.append(x)
assert binary_kernel == [(0, 0, 0), (1, 1, 1)]
t = symbols("t")
p, q = 1 - 2*t + t*t, 2 + t
assert expand(p + q) == 3 - t + t*t
for a, b in product([0, 1], repeat=2):
    c = (a + b) % 2
    assert (-1)**a * (-1)**b == (-1)**c
print("실수 계수:", A0.rank(), "/ 이진체 영공간:", binary_kernel)
실수 계수: 3 / 이진체 영공간: [(0, 0, 0), (1, 1, 1)]

후보가 \(2^3=8\)개이므로 이 문제의 이진체 해를 빠짐없이 열거했습니다. 일반적인 큰 행렬에서는 소거 알고리즘을 사용하지만, 작은 예제에서는 모든 후보를 직접 확인하는 방법이 계산의 의미를 더 분명하게 보여 줍니다.

10. 직접 써 보는 문제와 전체 풀이#

문제 1 · 정수도 스칼라로 충분할까?#

정수 집합이 체가 아닌 이유를 역원의 조건으로 설명하세요. 또한 \(\mathbb Z^2\)를 통상적인 연산의 실수 벡터공간으로 볼 수 없는 이유를 쓰세요.

풀이. 정수 2는 0이 아니지만 곱해서 1이 되는 정수가 없습니다. \(2k=1\)이면 \(k=\frac12\)여야 하기 때문입니다. 또한 \((1,0)\in\mathbb Z^2\)에 실수 \(\frac12\)를 곱하면 \((\frac12,0)\notin\mathbb Z^2\)입니다. 스칼라곱이 집합 안에 머물지 않습니다. 두 실패는 각각 체의 역원 조건과 벡터공간의 연산 정의역 조건에 해당합니다.

문제 2 · 한 점에서 0인 다항식들#

\(U=\{p\in P_2(\mathbb R):p(1)=0\}\)의 기저를 구하세요.

풀이. \(p=a+bt+ct^2\)이면 \(p(1)=a+b+c=0\), 즉 \(a=-b-c\)입니다. 대입하여

\[ p(t)=(-b-c)+bt+ct^2=b(t-1)+c(t^2-1). \]

따라서 \((t-1,t^2-1)\)이 생성합니다. \(\alpha(t-1)+\beta(t^2-1)=0\)에서 \(t^2\)의 계수가 \(\beta=0\), \(t\)의 계수가 \(\alpha=0\)입니다. 그러므로 독립이고 기저입니다. 영다항식이 들어 있으며 평가값이 0인 다항식의 합과 배수도 평가값이 0이므로 부분공간이라는 조건도 만족합니다.

문제 3 · 표수 2에서 생기는 오해#

\(\mathbb F_2\)에서 \(f(t)=t^2+t\)\(t=0,1\)에 대입하세요. 두 값이 0이라는 이유로 영다항식이라고 할 수 있나요?

풀이. \(f(0)=0\), \(f(1)=1+1=0\)입니다. 그러나 \(t^2\)\(t\)의 계수가 모두 1이므로 영다항식이 아닙니다. 다항식의 계수열과 그 다항식이 유한한 입력 집합에서 만드는 함수는 서로 다른 대상입니다. \(P_2(\mathbb F_2)\)의 기저 논증은 계수의 비교이지 두 점의 값 비교가 아닙니다.

문제 4 · 같은 조건의 부정확한 일반화#

‘0을 포함하는 집합은 부분공간이다’의 반례를 들고, 필요한 조건을 보충하세요.

풀이. \(S=\{(0,0),(1,0)\}\)은 0을 포함하지만 \(2(1,0)=(2,0)\)을 포함하지 않습니다. \(S\)가 부분공간이려면 임의의 두 원소와 임의의 스칼라에 대해 연산에 닫혀 있어야 합니다. 원소 몇 개의 연산을 확인한 것으로 임의성 조건을 대신할 수 없습니다.

11. 지금까지의 내용을 수학의 언어로 정리해 봅시다#

지금까지 계산하고 설명한 내용을 수학에서는 다음과 같이 정의하고 정리합니다. 또한 왜 참인지 증명합니다. 수학의 언어로 옮기는 과정이라 표현이 조금 딱딱해지지만, 앞에서 다룬 내용과 하나씩 연결하며 살펴봅시다.

11.1 체와 표수#

정의 1 (군·환·체)

군은 닫힌 연산이 결합법칙을 만족하고 항등원 및 각 원소의 역원을 갖는 집합입니다. 연산이 교환법칙도 만족하면 가환군입니다. 이 책에서 환은 덧셈에 대해 가환군이며, 결합적인 곱셈과 곱셈 항등원 1을 가지고 양쪽 분배법칙을 만족하는 집합입니다. 체는 \(0\ne1\)인 가환환으로서 모든 \(a\ne0\)에 곱셈 역원 \(a^{-1}\)이 존재하는 것입니다.

실수와 유리수의 체 성질은 수 체계에 대한 출발 전제로 삼습니다. 복소수의 나눗셈은 \(a+bi\ne0\)일 때

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

로 확인됩니다. 분모는 \(a,b\)가 동시에 0이 아니므로 양수이고, 곱하면 \((a^2+b^2)/(a^2+b^2)=1\)입니다. 나머지 법칙은 \(i^2=-1\)을 사용한 전개로 실수의 법칙에 귀착됩니다.

정의 2 (표수)

체에서 1을 \(n\)번 더해 0이 되는 최소 양의 정수 \(n\)이 있으면 표수는 \(n\), 없으면 표수는 0입니다.

표수가 양수라면 소수입니다. 이를 보이기 전에 체에 영인자가 없음을 확인합니다. \(ab=0\), \(a\ne0\)이면

\[ b=1b=(a^{-1}a)b=a^{-1}(ab)=a^{-1}0=0. \]

마지막 등식은 \(c0=c(0+0)=c0+c0\)에서 \(c0\)를 양쪽에서 빼서 얻습니다. 이제 표수 \(n=rs\)\(1<r,s<n\)인 합성수라면, 최소성 때문에 \(r\cdot1\)\(s\cdot1\)은 0이 아닙니다. 그러나 그 곱은 \((rs)\cdot1=n\cdot1=0\)이므로 모순입니다.

명제 3 (표수 2에서 확인할 구별)

표수 2에서는 \(-1=1\)이므로 대칭 조건 \(A^\top=A\)와 반대칭 조건 \(A^\top=-A\)가 같아집니다. 그러나 교대 쌍선형형식의 조건 \(b(v,v)=0\)은 별도 조건입니다.

예를 들어 \(1\times1\) 행렬 \([1]\)\(\mathbb F_2\)에서 대칭이며 반대칭이지만, \(b(1,1)=1\)이므로 교대가 아닙니다. 따라서 ‘대칭과 교대가 같다’고 쓰면 안 됩니다. 이 장에서는 쌍선형형식 일반론을 사용하지 않고, 이 한 성분의 계산으로 조건의 차이만 확인합니다.

앞의 두 나머지 예와 다항식 분수를 일반적인 체의 예로 정리하는 증명을 먼저 완성하겠습니다. 이 부분은 수 체계를 넓히는 설명이며, 이후 실수 응용에서는 다시 \(F=\mathbb R\)로 돌아옵니다.

보조정리: 서로소인 두 정수의 정수 결합. 양의 정수 \(a,p\)의 양의 정수 결합 \(ra+sp\) 중 가장 작은 양수를 \(d\)라고 합시다. 이런 결합은 \(a\) 자체가 있으므로 비어 있지 않고, 양의 정수의 최소원리로 \(d\)가 존재합니다. 정수 나눗셈으로 \(a=qd+r\), \(0\le r<d\)라고 쓰면 \(r=a-qd\)\(a,p\)의 정수 결합입니다. \(r>0\)이면 \(d\)의 최소성에 모순이므로 \(r=0\)입니다. 따라서 \(d\)\(a\)를 나눕니다. \(p\)에 대해서도 같은 계산으로 \(d\)\(p\)를 나눕니다. 특히 \(a,p\)의 공약수가 1뿐이면 \(d=1\)이고 \(ra+sp=1\)인 정수 \(r,s\)가 존재합니다.

정리: 소수 나머지 체. \(p\)가 소수일 때 정수의 나머지 집합 \(\mathbb F_p\)는 체입니다.

증명. 덧셈·곱셈은 정수에서 계산한 뒤 \(p\)로 나눈 나머지를 취합니다. 대표 \(a\)\(a+kp\)로 바꾸어도 합과 곱의 차이가 \(p\)의 배수이므로 연산이 잘 정의됩니다. 결합·교환·분배법칙은 정수의 등식에 나머지를 취하여 얻습니다. 덧셈 항등원은 0, 곱셈 항등원은 1이며 \(p>1\)이므로 서로 다릅니다. \(a\)의 덧셈 역원은 \(-a\)의 나머지입니다. 이제 \(1\le a<p\)이면 \(p\)의 소수성 때문에 \(a,p\)의 공약수는 1뿐입니다. 보조정리에서 \(ra+sp=1\)을 얻고 나머지를 취하면 \(ra\equiv1\)입니다. 따라서 \(r\)의 나머지가 \(a\)의 곱셈 역원입니다. 모든 0 아닌 원소에 역원이 존재하므로 체입니다. \(\square\)

정리: 유리함수체.\(F\)의 다항식 \(f,g\)에서 \(g\ne0\)인 분수 \(f/g\)를 생각하고 \(f/g=f'/g'\)\(fg'=f'g\)로 정의합니다. 이 동치류들은 통상적인 분수 연산으로 체 \(F(t)\)를 이룹니다.

증명. 먼저 0 아닌 다항식 \(f,g\)의 최고차항을 \(a_mt^m,b_nt^n\)이라 하면 곱의 최고차항 계수는 \(a_mb_n\ne0\)입니다. 체에 영인자가 없기 때문입니다. 따라서 다항식의 곱도 0이 아니며, \(gh=gk\), \(g\ne0\)이면 \(g(h-k)=0\)에서 \(h=k\)로 소거할 수 있습니다.

분수의 같음은 반사·대칭적입니다. 추이성을 확인하려고 \(fg'=f'g\), \(f'g''=f''g'\)라 합시다. 첫 식에 \(g''\), 둘째 식에 \(g\)를 곱하여 연결하면 \(fg'g''=f''g'g\)이고, 0 아닌 \(g'\)를 소거하여 \(fg''=f''g\)를 얻습니다. 따라서 동치관계입니다.

연산은

\[ \frac f g+\frac h k=\frac{fk+hg}{gk}, \qquad \frac f g\frac h k=\frac{fh}{gk} \]

로 정합니다. 분모 \(gk\)는 앞에서 보인 사실에 의해 0이 아닙니다. 대표를 바꾸어 \(fg'=f'g\), \(hk'=h'k\)라 하면

\[ (fk+hg)g'k'=fkg'k'+hgg'k' =f'gkk'+h'kgg' =(f'k'+h'g')gk. \]

따라서 합의 값은 같습니다. 곱은 \(fhg'k'=(fg')(hk')=(f'g)(h'k)=f'h'gk\)이므로 역시 같습니다.

교환법칙은 분자·분모의 곱의 교환법칙에서 얻습니다. 세 분수의 합을 어느 순서로 묶어도 공통분모 \(gkn\) 위의 분자는 \(fkn+hgn+mgk\)이고, 세 분수의 곱은 \(fhm/(gkn)\)이므로 결합법칙도 성립합니다. 분배법칙은

\[ \frac f g\left(\frac h k+\frac m n\right) =\frac{f(hn+mk)}{gkn} =\frac{fhn+fmk}{gkn} =\frac{fh}{gk}+\frac{fm}{gn} \]

로 확인합니다. 마지막 등식의 오른쪽은 통분 뒤 공통인자 \(g\)를 소거한 같은 동치류입니다. 다항식에서 사용한 결합·분배법칙은 계수별 유한합에 대한 체의 법칙입니다. 예를 들어 곱의 \(t^r\) 계수는 \(\sum_{i+j=r}a_ib_j\)이고 세 곱은 어느 순서든 \(\sum_{i+j+k=r}a_ib_jc_k\)로 같아집니다.

영원소는 \(0/1\), 항등원은 \(1/1\)이며 서로 다릅니다. 덧셈 역원은 \((-f)/g\)입니다. \(f/g\ne0\)이면 \(f\ne0\)이고 \(g/f\)가 허용되며 곱이 \(fg/gf=1\)입니다. 따라서 모든 체 조건을 확인했습니다. \(\square\)

11.2 벡터공간과 기본 항등식#

정의 3 (벡터공간)

\(F\) 위의 벡터공간 \(V\)는 덧셈 \(V\times V\to V\)와 스칼라곱 \(F\times V\to V\)를 가지며, 모든 \(u,v,w\in V\)\(a,b\in F\)에 대해 다음을 만족합니다.

  1. \(u+v=v+u\).

  2. \((u+v)+w=u+(v+w)\).

  3. \(v+0_V=v\)\(0_V\)가 존재합니다.

  4. \(v+(-v)=0_V\)인 역원이 각 \(v\)에 존재합니다.

  5. \(1v=v\).

  6. \((ab)v=a(bv)\).

  7. \(a(u+v)=au+av\).

  8. \((a+b)v=av+bv\).

정리 4 (공리에서 얻는 기본 계산)

영벡터와 덧셈 역원은 유일합니다. 또한 \(0_Fv=0_V\), \(a0_V=0_V\), \((-1)v=-v\)이며, \(av=0_V\)이면 \(a=0_F\) 또는 \(v=0_V\)입니다.

증명. 두 영벡터를 \(o,o'\)라 하면 \(o=o+o'=o'\)입니다. 첫 등식은 \(o'\)의 항등원 성질, 둘째는 \(o\)의 항등원 성질과 교환법칙을 사용했습니다. \(w,w'\)가 모두 \(v\)의 역원이면

\[ w=w+0_V=w+(v+w')=(w+v)+w'=0_V+w'=w'. \]

이제 \(0_Fv=(0_F+0_F)v=0_Fv+0_Fv\)입니다. 양쪽에 \(-(0_Fv)\)를 더하고 결합법칙을 쓰면 \(0_V=0_Fv\)입니다. 마찬가지로

\[ a0_V=a(0_V+0_V)=a0_V+a0_V \]

에서 \(a0_V\)를 소거하여 \(a0_V=0_V\)를 얻습니다. 다음으로

\[ v+(-1)v=1v+(-1)v=(1+(-1))v=0_Fv=0_V. \]

역원의 유일성으로 \((-1)v=-v\)입니다. 마지막으로 \(av=0_V\)에서 \(a\ne0_F\)라면

\[ v=1v=(a^{-1}a)v=a^{-1}(av)=a^{-1}0_V=0_V. \]

각 단계에는 체의 역원 성질과 앞서 증명한 영벡터의 스칼라곱 성질을 사용했습니다. \(\square\)

11.3 부분공간 판정과 합집합#

정리 5 (부분공간 판정)

\(U\subseteq V\)가 같은 연산으로 벡터공간일 필요충분조건은 \(0_V\in U\)이고 모든 \(u,w\in U\), \(a\in F\)에 대해 \(au+w\in U\)인 것입니다.

증명. 부분공간이면 스칼라곱과 합이 닫혀 있으므로 조건이 필요합니다. 역으로 조건을 가정합니다. \(a=1\)이면 \(u+w\in U\), \(w=0_V\)이면 \(au\in U\)입니다. 특히 \(a=-1\)로 역원 \(-u\in U\)를 얻습니다. 영벡터는 가정으로 포함됩니다. 나머지 결합·교환·분배·항등원 법칙은 \(V\)에서 성립하는 등식이며 \(U\)의 연산이 그 제한이므로 그대로 성립합니다. 따라서 충분합니다. \(\square\)

정리 6 (두 부분공간의 합집합)

\(U\cup W\)가 부분공간일 필요충분조건은 \(U\subseteq W\) 또는 \(W\subseteq U\)입니다.

증명. 한쪽 포함이면 합집합은 더 큰 부분공간 그 자체입니다. 역으로 합집합이 부분공간인데 어느 쪽 포함도 아니라고 합시다. \(u\in U\setminus W\), \(w\in W\setminus U\)를 고를 수 있습니다. 덧셈에 닫혀 있으므로 \(u+w\in U\cup W\)입니다. \(u+w\in U\)이면 \((u+w)-u=w\in U\)로 모순입니다. \(u+w\in W\)이면 \((u+w)-w=u\in W\)로 모순입니다. 가능한 두 경우가 모두 모순이므로 한쪽 포함이 성립합니다. \(\square\)

11.4 생성·독립·기저#

벡터들의 생성공간은 그 벡터들의 유한 선형결합 전체입니다. 빈 결합은 영벡터로 정합니다. 벡터들의 목록이 선형독립이라는 것은 그 목록의 유한 결합이 0일 때 모든 계수가 0이라는 뜻입니다. 공간 전체를 생성하면서 독립인 목록을 기저라고 합니다.

정리 7 (기저와 유일 표현)

벡터들의 목록이 기저일 필요충분조건은 모든 벡터가 그 목록의 유한 선형결합으로 유일하게 표현되는 것입니다.

증명. 기저이면 생성 성질로 표현이 존재합니다. 두 표현을 빼면 \(\sum_i(a_i-b_i)v_i=0\)이고, 독립성으로 \(a_i=b_i\)입니다. 역으로 모든 표현이 유일하면 생성은 이미 주어졌습니다. \(\sum_i c_iv_i=0\)을 영벡터의 모든 계수가 0인 표현과 비교하면 \(c_i=0\)입니다. 따라서 독립입니다. \(\square\)

11.5 교환보조정리를 한 단계씩 증명하기#

정리 8 (유한 교환보조정리)

\(w_1,\ldots,w_m\)\(V\)를 생성하고 \(v_1,\ldots,v_k\)가 독립이면 \(k\le m\)입니다. 생성 목록의 일부를 차례로 \(v_1,\ldots,v_k\)로 교체하여 길이 \(m\)의 생성 목록을 얻을 수 있습니다.

증명. 아무것도 교체하지 않은 단계에서는 원래 목록이 생성합니다. \(j-1\)개를 교체한 뒤 순서를 정리하여

\[ v_1,\ldots,v_{j-1},w_j,\ldots,w_m \]

이 생성한다고 합시다. 여기의 \(w\)는 남아 있는 원래 벡터들의 새 번호입니다. 생성 성질로

\[ v_j=\sum_{i<j}a_iv_i+\sum_{\ell=j}^m b_\ell w_\ell \]

라고 쓸 수 있습니다. 모든 \(b_\ell\)이 0이면 \(v_j-\sum_{i<j}a_iv_i=0\)이 되어, \(v_j\)의 계수가 1인 비자명한 종속 관계가 생깁니다. 독립성에 모순이므로 어떤 \(b_r\ne0\)입니다. 그 항을 분리하면

\[\begin{split} w_r=b_r^{-1}v_j-\sum_{i<j}b_r^{-1}a_iv_i -\sum_{\substack{\ell=j\\\ell\ne r}}^m b_r^{-1}b_\ell w_\ell. \end{split}\]

따라서 \(w_r\)\(v_j\)로 바꾸어도 제거된 \(w_r\)까지 새 목록으로 표현할 수 있고, 원래 생성하던 모든 벡터를 계속 생성합니다. 이것이 한 번의 교체입니다.

이 과정을 \(m\)번 마치면 목록 전체가 \(v_1,\ldots,v_m\)입니다. 만일 \(k>m\)이면 이 목록이 생성하므로 \(v_{m+1}\)이 앞의 \(m\)개의 결합이 되어 독립성에 모순입니다. 따라서 \(k\le m\)이고 필요한 \(k\)번의 교체가 가능합니다. \(\square\)

정리 9 (기저의 존재·확장과 차원의 유일성)

유한 생성공간은 기저를 갖습니다. 그 안의 독립 목록은 기저로 확장할 수 있고, 모든 기저의 길이는 같습니다.

증명. 유한 생성 목록이 종속이면 \(\sum_i c_iw_i=0\)인 비자명한 관계에서 \(c_r\ne0\)인 항을 풀어 \(w_r\)를 나머지의 결합으로 표현합니다. 그 원소를 제거해도 생성합니다. 길이가 한 번마다 줄어들므로 유한 번 뒤 독립인 생성 목록을 얻습니다. 영공간 \(\{0\}\)에서는 빈 목록이 기저입니다.

이미 독립 목록 \(L\)이 있으면 유한 생성 목록의 원소들을 차례로 검사합니다. 현재 생성공간에 들어 있지 않은 원소만 덧붙입니다. 새 목록이 종속이라면 새 원소의 계수가 0일 때에는 이전 독립성에 모순이고, 0이 아닐 때에는 새 원소가 이전 목록의 결합이 되어 선택 조건에 모순입니다. 따라서 독립성이 유지됩니다. 검사가 끝나면 원래 생성 목록의 모든 원소가 현재 생성공간에 들어 있으므로 기저가 됩니다.

마지막으로 두 기저의 길이가 \(n,m\)이면, 첫 기저를 독립 목록, 둘째를 생성 목록으로 보아 교환보조정리에서 \(n\le m\)을 얻습니다. 역할을 바꾸면 \(m\le n\)입니다. 따라서 \(m=n\)입니다. 이 공통 길이를 \(\dim_F V\)라고 정의합니다. \(\square\)

유한 생성공간의 부분공간에도 기저가 있습니다. 독립 원소를 하나씩 고르되 현재 생성공간이 부분공간 전체가 되면 멈춥니다. 전체 공간이 \(n\)개의 원소로 생성되면 교환보조정리 때문에 \(n+1\)번째 독립 원소를 고를 수 없으므로 반드시 유한 번에 멈춥니다. 다음 단원에서 핵의 기저를 고를 때 바로 이 사실을 사용합니다.

앞에서 한 말

수학적 표현

허용한 수로 0 아닌 계수를 나눌 수 있다

스칼라의 집합은 체 \(F\)

합과 배수를 계속 계산할 수 있다

\(F\)-벡터공간

추가 조건을 만족하는 변화들이 연산에 닫혀 있다

부분공간

필요한 벡터를 모두 만들고 계수가 유일하다

기저

어느 기저를 골라도 필요한 계수의 수가 같다

차원의 유일성

이 단원에서는 \(\mathbb F_p\)\(F(t)\)의 체 성질까지 확인했지만, 모든 무한차원 공간에 기저가 존재한다는 일반 명제는 증명하지 않았습니다. 유한생성 공간의 기저 구성과 구별해야 합니다. 다항식 전체처럼 \((1,t,t^2,\ldots)\)라는 기저를 직접 제시할 수 있는 무한차원 예도 있습니다. 각 다항식은 유한 개의 계수만 사용하고 그 계수는 유일하므로 이 목록은 실제 기저입니다. 일반적인 무한차원 기저의 존재에는 별도의 선택 원리가 관여하며, 이번 단원의 유한차원 증명에는 사용하지 않았습니다.

체와 벡터공간을 정하면 어떤 합과 배수를 허용하는지가 분명해집니다. 다음 장에서는 이 구조를 보존하는 관측을 통해 가능한 출력과 보이지 않는 변화를 함께 계산합니다. B3로 이어 읽기.