8 minute read


1. 대수란?

대수는 숫자를 대신하는 것을 의미한다. 즉, \(2x + 3y = 0\)라는 수식이 있으면, x, y가 대수에 해당한다. 이 대수를 이용하여 방정식을 풀고 해를 구하는 것을 우리는 ‘대수학’이라고 한다.



2. 선형 대수란?

선형대수(linear algebra)는 선형 방정식을 풀기 위한 방법론이다. 선형 방정식(linear equation)은 \(2x + 3y = 0\)과 같은 것을 뜻한다. 여기서 우리는 우측의 해인 ‘0’을 만족시키는 x와 y를 찾아내는 것이다.

  • 만약 방정식(equation)이 하나이고 미지수(unknown) 역시 하나라면 답을 찾긴 매우 쉽다.
  • 하지만, \(2x + 3y = 0\) 처럼 미지수가 2개인 경우에는 해를 만족시키는 미지수를 찾는 것은 하나의 식만 가지고는 찾아내기가 힘들다.

그러나, \(2x + 3y = 0\) 식 말고도 같은 차원의 방정식(1차 방정식)이 하나 더 존재한다면, 우리는 두 방정식의 관계를 이용해 해를 쉽게 찾아낼 수 있다. 이것이 우리가 선형대수를 공부하는 목적이다.

그리고 선형대수에서 ‘선형’이란, 입력에 \(a\)라는 영향을 주면 그에 따른 출력 값도 기존에 출력값에서 \(a\)라는 영향을 받은 만큼의 결과 값이 나오는 시스템이다.

  • 즉, 예측 가능한 시스템이다.
  • \(y = ax\)의 경우 x에 어떠한 수를 곱해도 y의 값은 a만큼 곱해준 수 만큼 결과 값이 나올 것이다.
  • 이것이 선형성(linearity)이며, 계수 값에 따라서 결과값을 예측 가능한 것이 선형성의 핵심이다.



3. 수에 대하여

3.1 수와 집합

우선 선형대수에 돌입하기 전에 ‘수’에 대해 알아보자. 모든 것은 수라는 시스템 위에서 콘텐츠가 만들어진다. 벡터, 행렬은 수를 사용해 만들어진 대상이므로, 벡터와 행렬을 정확히 이해하기 위해서는 결국 수가 만들어내는 시스템에 대해 이해해야 한다.

Venn_Diagram_of_Numbers_Expanded svg

소박한 집합론

우리가 의무교육에서 배운 집합은 서로 구분되는 원소(element)로 구성된 묶음을 의미한다. 이러한 집합론을 소박한 집합론(Naive set theory)라고 한다. 이는 용도에 따라 수집합을 정의하여 구분하는데 정수, 유리수, 실수, 복소수, 사원수 등이 있다.

수의 특징 분석 및 확장

단순히 물건을 세는 것과 같은 경우에서는 아무 불편함이 없지만, 우리는 수의 쳬게의 구성을 알려하고 집합의 특징이 무엇인지 명확하게 정의해야한다. 그 이유는 앞으로 수가 가지는 특징을 분석하고 이를 확장하여 가상 공간이라는 고차원의 체계를 만들어야 하기 때문이다.


3.2 수집합

수는 다양한 개념이 존재하며, 각각은 대문자를 사용해 집합으로 구분해 부른다.

  • 자연수: 물건을 세거나 순서를 지정하기 위해 사용하는 수의 집합
  • 정수: 자연수와 자연수의 음수 0을 포함하는 수의 집합
  • 유리수: 분모가 0이 아닌 두 정수의 비율 혹은 분수로 나타낼 수 있는 수의 집합
  • 무리수: 두 정수 비 혹은 분수로 나타낼 수 없는 수의 집합
  • 실수: 유리수와 무리수를 포함하는 수의 집합
  • 복소수: 실수와 제곱하면 -1이 되는 허수 단위 i를 조합해 \(a + bi\) (a, b는 실수) 형태로 표현하는 수의 집합
  • 사원수: 실수와 제곱하면 -1이 되는 세 허수 단위 i, j, k를 조합해 \(a+bi + cj + dk \) (a, b, c, d는 실수) 형태로 표현하는 수의 집합

실수 집합(The set of real number)

  • 실수는 다음과 같은 기호로 나타낸다. \(\mathbb{R}\)
  • 실수 집합 \(\mathbb{R}\) 은 수 사이에 빈틈이 없는 연속된 무한의 요소로 구성된 수의 집합이다.


3.3 수의 표현

수 직선(Number Line)

실수 집합 \(\mathbb{R}\) 의 요소를 점으로 나열하면 연속성 있는 직선으로 표현할 수 있다.

number line

  • 만약 직선 상에 모든 유리수의 원소를 순서대로 나열한다면 유리수는 \(\pi \)나 \(\sqrt{2} \)같은 무리수를 표현할 수 없기 떄문에 직선의 어느 지점에서는 빈틈이 발생한다.
  • 그래서 완벽한 연속성을 가지는 직선을 만들어 내는 수가 실수(\(\mathbb{R}\))다.


점과 화살표로 표현

수 직선 위에서 원소를 표기한다 했을 떄 작은 수는 왼쪽 큰 수는 오른쪽으로 수 직선이라는 체계에서 대소를 비교하는 방식으로 표현을 많이한다.

점으로 수를 표현

image

  • 실수의 모든 요소는 상호 간에 크기를 비교할 수 있다. 더 큰 수는 오른쪽에 표시하는 규칙을 사용해 실수의 모든 원소는 수직선 상에 자신의 고유한 위치를 갖게 된다.
  • 그림으로 보았을 때 큰 수는 오른쪽에 위치한다는 것을 알 수 있다.

화살표로 수를 표현

image

  • 수직선은 0을 기준으로 양수와 음수라는 두 개의 체계가 서로 대칭되어 있는 것으로도 해석할 수 있다.
  • 이런 관점에서 수를 원점에서부터 크기와 방향을 가진 화살표로도 표현할 수 있다.

벡터에 익숙해지려면 하나의 체계로 보는 것이 아니라, 0을 기준으로 왼쪽과 오른쪽으로 나누어진 대칭된 관점으로 보는 것이 편할 수 있다. 방향의 속성은 부호를 사용해 나타내며 크기의 속성은 원점으로부터의 거리를 의미한다.

  • 원점으로부터의 거리를 절댓값(Absolute value)라고 한다.

0을 원점으로 두면 두 가지의 관점으로 볼 수 있다.

  1. 크기: 원점으로부터의 거리
  2. 방향: 내가 속한 세계


3.4 수의 시각화

우리는 시각적인 효과를 나타내기 위해 수와 연산을 사용한다. 물체에 힘을 가해 이동하거나, 크기를 늘리는 작업은 덧셈과 곱셈 연산으로 해석할 수 있다. 이를 뒤에 나올 이항연산과 엮어 설명하자면 다음과 같다.

  • 왼쪽 항의 수: 물체를 구성하는 점
  • 오른쪽 항의 수: 점을 이동시키는 힘


점의 이동으로 표현하는 덧셈 연산 image

즉, 여기서 1은 물체를 구성하는 점이고 -5는 힘에 해당한다.


크기와 방향의 변화로 표현하는 곱셈 연산 image

곱셈 연산은 원점을 기준으로 점의 위치를 지정된 배율만큼 늘리고 대칭시키는 작업으로 해석할 수 있다.

  • 예를 들면 4와의 곱은 원점으로부터 거리를 같은 방향으로 4배 늘리는 작업이다.
  • -1과의 곱은 원점으로부터 거리를 1배로 늘린 후 반대쪽으로 대칭시키는 작업이다.



4. 이항 연산(Binary Operation)

집합(Set)은 단순히 원소(Element)의 묶음(collection)을 나타낸다. 하지만 수 집합이 일반적인 집합과 다른점은 연산이 존재한다는 것이다. 그리고 이항연산(Binary operation)은 두 개의 원소를 사용해 새로운 원소를 만들어낸다. 그래서 이항연산이라고도 불린다. 이항연산의 개념은 다음 이미지처럼 나타낼 수 있다.

image

이항 연산은 두 개의 원소를 기계에 투입하고 하나의 결과물을 만들어낸다. 그리고 연산을 통해 나온 결과물이 다시 원래 있던 원소의 집합에 속한다. 이항 연산을 수행해도 원래 있던 집합에 속하게 되며, 이를 닫혀있다고 한다.

4.1 사칙 연산의 재구성

뺄셈은 덧셈으로, 나눗셈은 곱셈으로 표현 가능하며 아래는 그 예시이다.

\[5 - 3 = 5 + (-3)\] \[ 5 \div 3 = 5 \times \frac{1}{3} \]


4.2 이항 연산의 성질

밑에서 다시 정리하겠지만 이항 연산의 성질에 대해 미리 살펴보면 다음과 같다.

  1. 닫힘
  2. 연산의 세 가지 성질
    • 교환법칙
    • 결합법칙
    • 분배법칙
  3. 항등원
  4. 역원

4.2.1 닫힘

위에서 이항연산의 결과가 항상 투입한 집합에 속한다면, 이항연산은 해당 집합에 대해 닫혀 있다(closure)고 말했다.


4.2.2 이항 연산의 세 가지 연산의 성질

이항 연산은 다음과 같은 성질을 지닌다.

  • 교환법칙(Commutative law)
  • 결합법칙(Associative law)
  • 분배법칙(Distribution law)

교환법칙

임의의 두 수 a와 b를 연산할 때 순서에 관계없이 항상 동일한 결과가 나오는 성질을 말한다. \[a + b = b + a \] \[a \cdot b = b \cdot a \]

결합법칙

연산이 두 번 이상 연속될 때, 앞의 연산을 먼저 계산한 결과와 뒤의 연산을 계산한 결과가 같은 성질을 의미한다.

\[(a + b) + c = a + (b + c) \] \[(a \cdot b) \cdot c = a \cdot (b \cdot c) \]

분배법칙

서로 다른 2가지 연산에 대해 다음의 규칙이 성립되는 것이다. (즉, 연산 2개를 사용한다.) \[a \cdot (b + c) = a \cdot b + a \cdot c \] \[(b + c) \cdot a = b \cdot a + c \cdot a \]

여기서 첫 번째 식은 좌분배법칙, 두 번째 식은 우분배법칙이라고 한다. 이 두 법칙을 모두 만족해야 분배법칙을 만족한다고 할 수 있다.


4.2.3 항등원과 역원

항등원(identity)


image

항등원이란 임의의 수와의 연산 결과를 항상 동일한 수로 만들어주는 특별한 수다. 항등원의 개념을 쉽게 이해하기 위해 실수 집합 \(\mathbb{R}\) 에서의 덧셈 연산을 예로 들어보자.

  • 실수 집합에서 덧셈의 항등원이란 위 그림과 같이 미지수 \(a\)에 항등원 \(b\)를 더했을 때 결괏값이 \(a\) 그대로 나오는 수를 의미하므로, 덧셈의 항등원은 \(0\)이 된다.
  • 그렇다면 실수 집합에서 곱셈의 항등원이 1이 되는 것도 유추할 수 있을 것이다.

\[a + 0 = a \] \[a \cdot 1 = a \]

즉, 덧셈의 항등원은 \(0\), 곱셈의 항등원은 \(1\)이다.

역원(inverse)


image

이번에는 역원에 대해 알아보자. 역원(inverse)이란 임의의 수와의 연산 결과를 항상 항등원으로 만들어주는 특별한 수다.

실수 집합에서 임의의 수의 덧셈과 곱셈의 역원을 알아보자. 이항연산에 사용하는 임의의 수를 \(a\)로 지정했을 때, 결과가 항등원이 되는 덧셈과 곱셈의 역원은 각각 다음과 같다. \[a + (-a) = 0 \] \[a \cdot \frac{1}{a} = 1 \]

항등원은 덧셈이나 곱셈에 대해 각각 \(0\)과 \(1\)로 고정되어 있지만 역원은 덧셈이나 곱셈에 주어진 수에 따라 그 값이 달라진다. 이러한 역원은 연산에 따라 일정한 패턴을 보인다. 즉 덧셈 역원은 주어진 수에서 항상 부호가 반대인 수가 되므로 반대수, 반수(Opposite number)라고 부른다. 또한 곱셈 역원은 분자가 \(1\)이고 분모는 주어진 수가 되므로 역수 (Reciprocal)라고도 일컫는다. 단 분모가 \(0\)이 되는 분수는 존재하지 않으므로 \(0\)의 곱셈 역원은 없다.


이항 연산의 성질을 정리해보자면 다음과 같다.

  • 닫혀 있음
  • 교환법칙
  • 결합법칙
  • 분배법칙
  • 항등원
    • 덧셈의 항등원: 0
    • 곱셈의 항등원: 1
  • 역원
    • 덧셈의 역원: 주어진 수에서 부호만 반대인 반수(opposite number)
    • 곱셈의 역원: 분자가 1이고 분모가 주어진 수의 형태인 역수(Reciprocal)
      • 단 분모가 0이 되는 분수는 존재하지 않으므로 0의 곱셈 역원은 없다.


이러한 이항 연산의 성질을 바탕으로 공리를 구축하고, 공리를 사용해 기존의 수집합을 새롭게 분류해보자.

공리란, 논리학이나 수학 등의 이론체계에서 가장 기초적인 근거가 되는 명제이다. 증명할 필요가 없이 자명한 진리이자 다른 명제들을 증명하는 데 전제가 되는 원리로서 가장 기본적인 가정을 가리킨다.



5. 수의 구조

어떤 연산에 대해 다음과 같은 성질을 만족하는 수 집합에 대해 생각해보자.

  1. 연산에 대해 닫혀 있다
  2. 연산에 대해 결합법칙이 성립한다.
  3. 연산에 대한 항등원이 존재한다.
  4. 연산에 대한 역원이 존재한다
  5. 연산에 대한 교환법칙이 성립한다.
  6. 두 번째 연산에 대해 닫혀 있다.
  7. 두 번째 연산에 대해 결합법칙이 성립한다.
  8. 첫 번째 연산과 두 번째 연산에 대해 분배법칙이 성립한다.
  9. 두 번째 연산에 대해 교환법칙 성립한다.
  10. 두 번째 연산에 대해 항등원이 존재한다.
  11. 두 번째 연산에 대해 역원이 존재한다. (0은 제외)

(1~5번) 정수 집합 \(\mathbb{z}\) 의 구조를 이와 같은 공리 체계에서 분석하면, 정수의 덧셈은 위 공리를 모두 만족한다. 정수끼리 더한 결과는 항상 정수에 속하고, 결합법칙이 성립하면서 항등원 0과 임의의 수 a에 대한 역원 -a가 언제나 존재하기 때문이다. 그런데 정수의 뺄셈(-)은 위 공리를 모두 만족하지 못한다. 뺼셈은 교환법칙이 성립하지 않기 때문이다.

이번에는 연산을 하나 더 추가해, 두 개의 연산에 대한 공리를 생각해보자.

정수에서는 6번~10번의 공리는 성립하지만 11번의 공리를 만족하지 못하기 때문에 정수 집합의 덧셈과 곱셈은 모든 공리를 만족하진 못한다.

덧셈과 곱셈 연산에 대해 11가지 공리를 모두 만족하는 수 집합은 유리수 실수이다. 이 두 수집합은 곱셈의 역원이 존재하기 때문에 덧셈과 곱셈 두 연산에 대해 앞에 열거한 11가지 공리를 모두 만족한다.

공리적 집합론에서 두 연산에 대해 1번부터 11번까지의 공리를 모두 만족하는 수 집합은 체(Field)의 구조를 지닌다고 표현한다. 유리수, 실수와 같이 체의 구조를 가지는 수 집합은 특별한 예외 상황 없이 덧셈과 곱셈을 안전하고 자유롭게 사용할 수 있다고 볼 수 있다. 앞으로 우리는 특정한 수 집합을 지정해 사용하는 것이 아닌, 체의 구조를 기반으로 체계를 확장해 공간의 구조를 생성하고 그 안에 콘텐츠를 담는 가상 세계를 구축할 것이다.

사칙 연산을 구성하는 나머지 연산인 뺄셈과 나눗셈은 체의 구조를 만족하는지 살펴보자. 뺄셈과 나눗셈은 교환법칙을 만족하지 않기 때문에 체의 구조를 지니지 못한다. \[a-b \not = {b - a} \] \[a \div b \not = {b \div a} \]

그렇다면 앞으로 뺄셈과 나눗셈을 자유롭게 못 쓰는 것인가라는 의문이 들 수 있다. 이에 대한 해결책은 뺄셈 대신 덧셈의 역원을 사용하고 나눗셈 대신 곱셈의 역원을 사용하는 것이다. 앞서 살펴본 바에 따르면, 실수 집합에서 덧셈의 역원은 반대수, 곱셈의 역원은 역수였다. 뺄셈과 나눗셈 대신 덧셈과 곱셈의 역원을 사용하면 교홥법칙이 성립하면서 같은 결과를 만들어낸다.

\[a + (-b) = (-b) + a \] \[a \cdot \frac{1}{b} = \frac{1}{b} \cdot a \]

그렇기 때문에 수 집합의 구조를 분석할 때는 덧셈과 곱셈의 두 가지 연산에 대해서만 살펴보는 것으로 충분하다. 정리하면, 체는 사칙연산이 자유로이 시행될 수 있고 산술의 잘 알려진 규칙들을 만족하는 수의 구조다.



출처

게임 엔진을 지탱하는 수학 - 인프런
선형대수 배경지식 - 러너게인
서적 - 이득우의 게임수학