std::vector나 화살표를 말하는 게 아닙니다.
벡터란 무엇인가.
흔히 우리의 똑똑한 친구들한테 벡터가 뭐냐고 물어보면 C++의 std::vector나 물리에서 쓰는 3차원 벡터, 혹은 여기저기서 쓰는 $\mathbb{R}^n$의 원소를 떠올린다.
하지만 실제 벡터는 조금 더 넓은 범위로 정의된다.
앞서 얘기했듯, 우리는 일반적인 객체를 벡터로 정의하고 싶은 것이다. 단순히 3차원 화살표만 벡터로 표현하고 싶은 게 아니라, n차원 화살표, 함수, 다항식, 자연어 등등을 표현하고자 하는 것이다.
이를 위해서는 벡터 정의의 확장이 필요하다. 그래서 벡터를 열심히 추상화시켜서 10개의 특징을 뽑아낸 다음, 그 10가지 특징을 만족하는 것을 벡터로 정의한 것이다.
정확히는, 그 특징을 만족하는 집합이 있을 때 그 집합을 Vector Space라 부르고, vector space의 원소를 vector라 하는 것이다.
Vector space의 정의
Vector space의 10개의 특징, 즉 정의는 다음과 같다.
Let. $\mathbf{V}$는 덧셈(addition)과 스칼라 곱(scalar multiplication)이라는 두 가지 연산이 정의된 집합이다. $\mathbf{V}$의 원소 $\mathbf{u}, \mathbf{v}$에 대해 $\mathbf{u}$와 $\mathbf{v}$의 덧셈이 정의되며 $\mathbf{u} + \mathbf{v}$로 표기한다. 체$^1$ $\mathbb{F}$의 원소 $c$에 대해 $c$와 $\mathbf{u}$의 스칼라 곱이 정의되며 $c\mathbf{u}$라 표기한다.
또한, $\forall \mathbf{u}, \mathbf{v}, \mathbf{w} \in \mathbf{V}, c, d \in \mathbb{F}$에 대해 아래 10가지 공리가 성립하면 $\mathbf{V}$를 체 $F$위의 Vector Space, $\mathbf{V}$의 원소를 vector, $F$의 원소를 scalar라고 한다.
$$
\begin{array}{l}
\text{1. }\mathbf{u} + \mathbf{v} \in \mathbf{V} \text{ (덧셈에 대한 닫힘)} \\
\text{2. }\mathbf{u} + \mathbf{v} = \mathbf{v} + \mathbf{u} \text{ (덧셈 의 교환법칙)}\\
\text{3. }(\mathbf{u} + \mathbf{v}) + \mathbf{w} = \mathbf{u} + (\mathbf{v} + \mathbf{w})\text{ (덧셈의 결합 법칙)}\\
\text{4. }\exists \mathbf{0} \in \mathbf{V}\text{, such that } \forall \mathbf{v} \in \mathbf{V}, \mathbf{v} + \mathbf{0} = \mathbf{v}\text{ (덧셈 항등원의 존재성)}\\
\text{5. }\forall \mathbf{v} \in \mathbf{V}, \exists -\mathbf{v} \in \mathbf{V}\text{, such that } \mathbf{v} + (-\mathbf{v}) = \mathbf{0} \text{ (덧셈 역원의 존재성)}\\
\text{6. }c\mathbf{u} \in \mathbf{V} \text{ (스칼라곱 연산의 닫힘)}\\
\text{7. }c(\mathbf{u} + \mathbf{v}) = c\mathbf{u} + c\mathbf{v}\text{ (분배법칙)}\\
\text{8. }(c + d)\mathbf{u} = c\mathbf{u} + d\mathbf{u}\text{ (분배법칙)}\\
\text{9. }c(d\mathbf{u}) = (cd)\mathbf{u} \text{ (스칼라곱의 결합법칙)}\\
\text{10. }1\mathbf{u} = \mathbf{u} \text{ (스칼라곱의 항등원)}\\
\end{array}
$$
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
1. 두 가지 이항 연산(덧셈, 곱셈)과 각각의 항등원, 덧셈의 역원이 정의되며 교환법칙, 결합법칙, 분배법칙이 성립하는 집합이다. Appendix 1.에서 후술하며, $\mathbb{R}, \mathbb{C}$라고 생각해도 무방하다.
이 때 $\mathbf{0}, -\mathbf{v}$는 일반적으로 생각하는 영백터, $(-1) \times \mathbf{v}$를 의미하는게 아니라 단순히 덧셈의 항등원, 역원에 대한 표기법이다.
(사실 $(-1) \times \mathbf{v} = -\mathbf{v}$임이 잠시 뒤에 증명된다. 단지 이는 증명의 대상이지, 정의가 아님에 유의하자.)
사실 위 공리 10가지를 하나하나 기억하기에는 너무 현학적이니, 덧셈과 곱셈에 대해 닫혀 있으며, 교환, 분배, 결합 법칙 등이 성립하고 덧셈의 역원이 존재하는 좋은 집합이라고 이해해도 좋다.
Vector space 예시
위 정리를 잘 이해하기 위해 대표적인 네 가지 vector space를 알아보자.
$$
\begin{gathered}
\mathbb{F}^n = \{(a_1, a_2, a_3, ..., a_n) | a_1, a_2, a_3, ... a_n \in F\}\\
+ : \mathbb{F}^n \times \mathbb{F}^n \rightarrow \mathbb{F}\\
(a_1, a_2, ..., a_n) + (b_1, b_2, ..., b_n) \mapsto (a_1 + b_1, a_2 + b_2, ..., a_n + b_n)\\
\\
\cdot : \mathbb{F} \times \mathbb{F}^n \rightarrow \mathbb{F}\\
c \cdot (a_1, a_2, ..., a_n) \mapsto (ca_1, ca_2, ..., ca_n)\\
\\
(a_1, a_2,... a_n) = (b_1, b_2, ..., b_n) \iff \forall i \in \{1, 2, 3...\}, \, a_i = b_i
\end{gathered}
$$
편의 상 $\mathbf{u} = (u_1, u_2, u_3, .... u_n) \in \mathbb{F}^n$에 대해 $u_i$를 $[\mathbf{u}]_i$로도 표기한다. 또한 흔히 사용하는 n차원 벡터(열 벡터)로 $\mathbb{F}^n$의 벡터를 표기하기도 한다.
$$
\begin{bmatrix}
a_1\\
a_2\\
...\\
a_n
\end{bmatrix}
$$
아래 $\mathbb{F}^n$이 vector space임에 대한 증명이 있다. 그 증명을 보기 전에 직접 한 번 증명해보자!
Let $\mathbf{u}, \mathbf{v}, \mathbf{w} \in \mathbb{F}^n$ and $c, d \in \mathbb{F}$.
where $\mathbf{u} = (u_1, u_2, \dots, u_n)$, $\mathbf{v} = (v_1, v_2, \dots, v_n)$, and $\mathbf{w} = (w_1, w_2, \dots, w_n)$.
$$
\begin{aligned}
&\text{1. 덧셈에 대한 닫힘}\\
&\quad\mathbf{u} + \mathbf{v} = (u_1 + v_1, \dots, u_n + v_n).\text{ Since } u_i + v_i \in \mathbb{F}, \mathbf{u} + \mathbf{v} \in \mathbb{F}^n.\\
&\text{2. 덧셈의 교환법칙}\\
&\quad\mathbf{u} + \mathbf{v} = (u_1 + v_1, \dots)= (v_1 + u_1, \dots) = \mathbf{v} + \mathbf{u}. \\
&\text{3. 덧셈의 결합법칙}\\
&\quad (\mathbf{u} + \mathbf{v}) + \mathbf{w} = ((u_1 + v_1) + w_1, \dots) = (u_1 + (v_1 + w_1), \dots) = \mathbf{u} + (\mathbf{v} + \mathbf{w}). \\
&\text{4. 덧셈 항등원의 존재성}\\
&\quad \exists \mathbf{0} = (0, 0, \dots, 0) \in \mathbb{F}^n\text{ s.t. } \mathbf{u} + \mathbf{0} = (u_1 + 0, \dots, u_n + 0) = \mathbf{u}. \\
&\text{5. 덧셈 역원의 존재성}\\
&\quad \forall \mathbf{u}, \exists -\mathbf{u} = (-u_1, \dots, -u_n) \in \mathbb{F}^n \text{ s.t. } \mathbf{u} + (-\mathbf{u}) = (u_1 - u_1, \dots) = \mathbf{0}. \\
&\text{6. 스칼라곱 연산의 닫힘}\\
&\quad c\mathbf{u} = (cu_1, cu_2, \dots, cu_n).\text{ Since } cu_i \in \mathbb{F}, c\mathbf{u} \in \mathbb{F}^n. \\
&\text{7. 분배법칙}\\
&\quad c(\mathbf{u} + \mathbf{v}) = (c(u_1+v_1), \dots) = (cu_1+cv_1, \dots) = c\mathbf{u} + c\mathbf{v}. \\
&\text{8. 분배법칙}\\
&\quad (c + d)\mathbf{u} = ((c+d)u_1, \dots) = (cu_1+du_1, \dots) = c\mathbf{u} + d\mathbf{u}. \\
&\text{9. 스칼라곱의 결합법칙}\\
&\quad c(d\mathbf{u}) = (c(du_1), \dots) = ((cd)u_1, \dots) = (cd)\mathbf{u}. \\
&\text{10. 스칼라곱의 항등원}\\
&\quad 1\mathbf{u} = (1u_1, 1u_2, \dots, 1u_n) = (u_1, u_2, \dots, u_n) = \mathbf{u}.
\end{aligned}
$$
$$
\begin{gathered}
\mathbf{M}_{m\times n}(\mathbb{F}) = \left\{ \begin{bmatrix}
a_{11} & a_{12} & & a_{1n}\\
a_{21} & a_{22} & ... & a_{2n}\\
&...&&\\
a_{m1} & a_{m2} & ... & a_{mn}\\
\end{bmatrix} | \forall\begin{matrix} i \in \{1, 2, ... m\}\\ j \in \{1, 2, ..., n\} \end{matrix}a_{ij} \in \mathbb{F}\right\}\\
\\
+ : \mathbf{M}_{m\times n}(\mathbb{F}) \times \mathbf{M}_{m\times n}(\mathbb{F}) \rightarrow \mathbf{M}_{m\times n}(\mathbb{F})\\
\begin{bmatrix}
a_{11} &\dots & a_{1n}\\
\vdots & \ddots& \\
a_{m1} & & a_{mn}\\
\end{bmatrix}
+
\begin{bmatrix}
b_{11} &\dots & b_{1n}\\
\vdots & \ddots& \\
b_{m1} & & b_{mn}\\
\end{bmatrix}
\mapsto
\begin{bmatrix}
a_{11} + b_{11} &\dots & a_{1n} + b_{1n}\\
\vdots & \ddots& \\
a_{m1} + b_{m1} & & a_{mn} + b_{mn}\\
\end{bmatrix}\\
\\
\cdot : \mathbb{F} \times \mathbf{M}_{m\times n}(\mathbb{F}) \rightarrow \mathbf{M}_{m \times n}(\mathbb{F})\\
c \cdot \begin{bmatrix}
a_{11} &\dots & a_{1n}\\
\vdots & \ddots& \\
a_{m1} & & a_{mn}\\
\end{bmatrix} \mapsto
\begin{bmatrix}
ca_{11} &\dots & ca_{1n}\\
\vdots & \ddots& \\
ca_{m1} & & ca_{mn}\\
\end{bmatrix}\\
\\
\begin{bmatrix}
a_{11} &\dots & a_{1n}\\
\vdots & \ddots& \\
a_{m1} & & a_{mn}\\
\end{bmatrix} =
\begin{bmatrix}
b_{11} &\dots & b_{1n}\\
\vdots & \ddots& \\
b_{m1} & & b_{mn}\\
\end{bmatrix}
\iff \forall
\begin{matrix}
i \in \{1, 2, ..., m\}\\
j \in \{1, 2, ..., n\}
\end{matrix}
\, a_{ij} = b_{ij}
\end{gathered}
$$
우리가 흔히 어디선가 봤던 $m \times n$ 행렬에 대해 위와 같이 정의할 수 있다. 사실 행렬도 벡터임을 소개하고자 예시로 소개하였다. 흔히 편의 상 행렬 $\mathbf{A}$의 $i$행 $j$열의 원소를 $[\mathbf{A}]_{ij}$로도 쓴다. 여담으로 $\mathbf{A}_{ij}$을 쓰면 $i$행 $j$열의 원소가 아니라 나중에 배울 Minor Matrix를 표기하는 식이 된다. 이 시리즈에서는 위 두 표기를 분리하여 적을 예정이다.
증명이 너무 간단하기도 하고, 위 증명을 다시 했다가는 필자가 수많은 Latex 수식에 깔려 글이 너무 늦게 올라갈 것 같다. 따라서 위 증명은 연습문제로 남겨놓는다.
$S$는 공집합이 아닌 집합이고, $\mathbb{F}$는 임의의 체일 때$\mathcal{F}(S, \mathbb{F})$는 정의역이 $S$, $\mathbb{F}$가 공역인 함수들의 집합이며 아래와 같은 덧셈, 스칼라곱에 대해 벡터 공간이다.
$$
\begin{gather}
\mathcal{F}(S, \mathbb{F}) = \left\{ f | f : S \rightarrow \mathbb{F}\right\}\\
+ : \mathcal{F}(S, \mathbb{F}) \times \mathcal{F}(S, \mathbb{F}) \rightarrow \mathcal{F}(S, \mathbb{F})\\
\forall s \in S, (f + g)(s) \mapsto f(s) + g(s)\\
\\
\cdot : \mathbb{F} \times \mathcal{F}(S, \mathbb{F}) \rightarrow \mathcal{F}(S, \mathbb{F})\\
\forall s \in S, (cf)(s) \mapsto c(f(s))\\
\\
f = g \iff \forall s \in S,\, f(s) = g(s)
\end{gather}
$$
Let $f, g, h \in \mathbb{F}^n$ and $c, d \in \mathbb{F}$.
편의 상 증명 중에 등장하는 $\forall s \in S$를 생략하여 표기한다. 증명 중 등장하는 $s$는 모두 $\forall s \in S$ 인 $s$를 의미한다.
$$
\begin{aligned}
&\text{1. 덧셈에 대한 닫힘}\\
&\quad (f + g)(s) = (f(s) + g(s)). \text{Since } f(s) + g(s) \in \mathbb{F}, f + g \in \mathcal{F}(S, \mathbb{F}).\\
&\text{2. 덧셈의 교환법칙}\\
&\quad (f + g)(s) = (f(s) + g(s)) = (g(s) + f(s)) = (g + f)(s).\\
&\text{3. 덧셈의 결합법칙}\\
&\quad (f + (g + h))(s) = (f(s) + (g + h)(s)) = (f(s) + g(s) + h(s))\\
&\qquad\qquad =((f+g)(s) + h(s)) = ((f + g) + h)(s).\\
&\text{4. 덧셈 항등원의 존재성}\\
&\quad \exists 0 : S\rightarrow \mathbb{F}\,, s \mapsto 0\\
&\qquad\qquad \text{ s.t. } (f + 0)(s) = f(s) + o(s) = f(s).\\
&\text{5. 덧셈 역원의 존재성}\\
&\quad \forall f, \exists g \in \mathcal{F}(S, \mathbb{F}), \text{s.t. }g(s) = -f(s). \text{Since } -f(s) \in \mathbb{F}\\
&\qquad\qquad \text{ s.t. } g(s) = - f(s) \Rightarrow (f + g)(s) = f(s) + g(s) = 0.\\
&\qquad\qquad\therefore f + g = 0, g = -f .\\
&\text{6. 스칼라곱 연산의 닫힘}\\
&\quad \forall f, \exists g \text{ s.t. } g(s) = cf(s). \text{ Since } cf(s) \in \mathbb{F}= (cu_1, cu_2, \dots, cu_n).\Rightarrow g = cf.\\
&\text{7. 분배법칙}\\
&\quad (c(f + g))(s) = c(f(s) + g(s)) = cf(s) + cg(s) = (cf + cg)(s).\\
&\text{8. 분배법칙}\\
&\quad ((c+d)f)(s) = cf(s) + df(s) = (cf + df)(s). \\
&\text{9. 스칼라곱의 결합법칙}\\
&\quad (c(df))(s) = c((df)(s)) = cd f(s) = ((cd)f)(s). \\
&\text{10. 스칼라곱의 항등원}\\
&\quad (1f)(s) = 1f(s) = f(s).
\end{aligned}
$$
$$
\begin{gather}
P_n(\mathbb{F}) = \left\{a_nx^n + a_{n - 1}x^{n - 1}+ ... +a_1x + a_0\right\}\\
+ : P_n(\mathbb{F}) \times p_n(\mathbb{F}) \rightarrow p_n(\mathbb{F})\\
(a_nx^n + a_{n - 1}x^{n - 1}+... + a_0) + (b_nx^n + b_{n - 1}x^{n - 1}+... + b_0) \\\mapsto (a_n + b_n)x^n + (a_{n - 1} + b_{n - 1})x^{n - 1}+... + (a_0 + b_0)\\
\\
\cdot : \mathbb{F} \times P_n(\mathbb{F}) \rightarrow P_n(\mathbb{F})\\
c \cdot (a_nx^n + a_{n - 1}x^{n - 1}+... + a_0) \mapsto ca_nx^n + ca_{n - 1}x^{n - 1}+... + ca_0\\
\\
(a_nx^n + a_{n - 1}x^{n - 1}+... + a_0) = (b_nx^n + b_{n - 1}x^{n - 1}+... + b_0) \\\iff \forall i \in {1, 2, ..., n}, a_i = b_i
\end{gather}
$$
위에서 봤던 함수 집합과 같이 다항식 역시 벡터 공간을 구성한다. 하지만 사실 등호 조건에서 알 수 있듯이, 모든 x에서 값이 같을 것이 아니라 모든 계수가 같을 것을 요구한다. 그런 측면에서 사실 $P_n(\mathbb{F})$는 $\mathbb{F}^{n+1}$과 유사한 구조라고 할 수 있다(사실 두 공간은 isomorphic하다. isomorphic이 무엇인지는 잠시잠시잠시 뒤에 배우게 된다.)
그래서 증명 과정 역시 $\mathbb{F}^n$이 vector space임을 증명하는 것과 거의 동일한 과정을 거친다. 이에 대한 증명은 연습문제로 남겨놓는다.
벡터 공간의 성질
이제 벡터 공간에서의 연산을 자유자재로 쓰기 위해 몇 가지 자명해보이는 사실들에 대해 논증해보자. 이 과정이 쓸모 없어보일 수 있겠지만, 벡터 공간에서 연산을 실수 등의 체에서도 자유자재로 쓰기 위해 꼭 필요한 과정이니 찬찬히 읽어보도록 하자.
Vector space $\mathbf{V}$의 vector $x, y, z$에 대해 $x + z = y + z$라면 $x = y$이다.
덧셈에 대한 $z$의 역원 $v$가 $V$에 존재한다.
$$
\begin{aligned}
&x = x + 0 = x + (z + v) = (x + z) + v\\
&\qquad =(y + z) + v = y + (z + v) = y + 0 = y \qquad\qquad\blacksquare
\end{aligned}
$$
이에 대한 따름 정리로, 덧셈의 항등원과 역원의 유일성을 증명할 수 있다.
Corollary 2. 덧셈의 역원은 유일하다.
$\forall 0_1, 0_2 \in \mathbf{V}$ s.t.
$\forall v \in \mathbf{V},\,v + 0_i = v$,
$0_1 = 0_1 + 0_2 = 0_2 + 0_1 = 0_2$
$\therefore o_1 = o_2\qquad \blacksquare$
proof. 역원의 유일성
For some $v \in \mathbf{V}$, suppose different $u_1, u_2$ exists in $\mathbf{V}$, such that $v + u_1 = 0, v+ u_2 = 0$. Then $u_1 + v = u_2 + v$, so $u_1 = u_2$.(Theory 1.1)
By contradiction, $\exists 1 u \in \mathbf{V} \text{ s.t. } v + u = 0.$ $\qquad\blacksquare$
Vector space $\mathbf{V}$에 대해 다음 3가지 성질이 성립한다.
$$
\begin{aligned}
&\text{1. }\forall x \in \mathbf{V}, 0x = 0\\
&\text{2. }\forall x \in \mathbf{V}, (-a)x = -(ax) = a(-x)\\
&\text{3. }\forall a \in \mathbb{F}, a0 = 0
\end{aligned}
$$
이 때 첫번째 성질에서 좌변의 0은 스칼라, 우변의 0은 영백터(덧셈의 항등원)을 의미한다. 또한 두 번째 성질을 증명하면, $(-1)x = -x$인것도 증명됨을 알 수 있다.
$$
\begin{aligned}
&\text{1. }0x = 0x + 0 = 0 + 0x\\
&\quad\qquad = (0 + 0)x = 0x + 0x\\
&\quad\text{By Cancellation law for Vector Addition, }0 = 0x\qquad \blacksquare\\
\\
&\text{2. } ax + (-a)x = (a + (-a))x = 0x = 0\\
&\quad\text{Therefore }(-a)x = -(ax)\\
&\quad (-a)x = (a \cdot (-1))x = a ((-1)x) = a(-x) \qquad \blacksquare
\\
&\text{3. } a0 = a(0 + 0) = a0 + a0\\
&\quad 0 + a0 = a0 + a0\quad\text{By Cancellation Law, } a0 = 0 \qquad \blacksquare
\end{aligned}
$$
마무리
이로써 선형대수학의 주요 관심사 중 하나인 벡터 공간의 정의에 대해 알게 됐다. 원래는 subspace / linear combination 등도 같이 이 글에서 다루려 했으나, 벡터 공간임을 증명하는 게 너무 시간 이 많이 걸려 다음 글에서 다루려 한다. 다음 글에서는 Subspace 와 Linear Combination 등에 대해 알아보도록 하자!
연습문제
2. $P_n(\mathbb{F})$이 벡터 공간임을 증명하시오.
3. 아래 연산에서 정의된 $\mathbb{R}^+$가 벡터 공간임을 증명하시오.
$$
\begin{aligned}
\mathbb{R}^+ = \left\{x | x \in \mathbb{R}, x > 0\right\}\\
u, v \in \mathbb{R}^+ u + v := uv\\
c \in \mathbb{R}\text{, } u \in \mathbb{R}^+, c\cdot u := u^c
\end{aligned}
$$
Hint. 좌변의 연산자는 벡터 공간의 연산자이고, 우변의 연산자는 우리가 흔히 아는 실수에서의 연산자이다. 풀어보다가 정 헷갈린다면 벡터 공간의 연산자는 $+, \cdot$ 대신 $\oplus, \otimes$로 표기해보자! 여담으로 이 벡터 공간에서 덧셈의 항등원은 1이다.
4. 아래 두 가지 사실을 증명하시오.
$$
\begin{aligned}
&\quad\text{(1)} f, g,\in \mathcal{F}(\{0, 1\}, \mathbb{F})\\
&\qquad f(t) = 1 + 2t\text{, }g(t) = 1 + 4t - 2t^2 \Rightarrow f = g\\
&\quad\text{(2)} f, g \in \mathbf{P}_2(\mathbb{F})\\
&\qquad f(t) = 1 + 2t\text{, }g(t) = 1 + rt - 2t^2 \Rightarrow f \ne g
\end{aligned}
$$
5. $\mathbb{C}^n$에서 기존의 덧셈을 이용하고, 스칼라 곱셈도 원소별 곱셈을 이요할 때 $\mathbb{C}^n$은 $\mathbb{R}$상의 벡터 공간인가?
6. $V, W$는 체 $\mathbb{F}$에 대한 벡터 공간이다. $Z = V \times W := \{(v, w)| v \in V, w \in W\}$는 $\mathbf{F}$에 대한 벡터 공간인가?
(덧셈은 원소별 덧셈, 스칼라곱도 원소별 곱셈을 이용한다.)
여담으로 3번은 일반적인 실수에서의 연산인데, exp를 씌운 상태로 표기하는 것이라는 해석을 통해 벡터 공간임을 자명하게 알 수 있다. 하지만 이런 직관을 이용해 증명하기에는 우리의 수학 지식이 아직 부족하므로, 증명은 평범하게 해보자.
해답은 별도로 제공하지 않는다! 도저히 해결이 안되거나 답이 궁금한 문제가 있다면 댓글에 남겨보자.
Comments ()