앞 장에서는 Field에 대해 소개하였고, 이번장에서는 Vector를 소개한다.
공학에서 한 용어가 여러 의미를 갖는 경우가 흔치 않은데, 이상하게 벡터는 비슷하지만 다른 의미를 갖는 정의를 여럿 갖고 있다.
- 물리 : 크기와 방향을 갖는 물리량으로 정의
- 수학 : Vector Space의 element로 정의...(vector란 무엇이다라고 정의하기 매우 어렵다.. 앞에서 설명해야 할게 너무 많다)
- 컴퓨터 공학 : 대체로 length가 n인 list로 정의한다.(의 원소라고 생각하면 편할듯 하다)
이 책 또한 수학 저서가 아닌 컴퓨터 공학 도서에 가깝기에 세번째 정의를 따르고 있다.
(개인적으로 앞 장에서 Field가 나왔기에 Vector에 대한 소개보다는 Vector space를 알려주는게 더 올바르지 않나 생각된다)
Def
Field 와 positive integer 에 대하여, 개의 의 원소들을 갖는 list를 의 벡터라고 한다.
(책에서는 상의 -벡터라고 한다.)
e.g.) Field 에 대해서, [1, 3, 5, 2]는 상의 4-벡터라고 볼 수 있다.
list 형식으로 표현되어 있는 vector를 다른 관점에서 살펴보자.
list는 index가 존재하고, 각 index에 값이 대응되는 자료형이다.
즉, 집합 에 대하여, 값이 대응된다고 볼 수 있다.
이는 곧 vector를 함수로도 볼 수 있다는 것이다.
e.g.
따라서, 이러한 형태의 모든 벡터들을 에서 로의 함수들로 생각할 수 있고 아래와 같이 표기할 수 있다.
{ functions from to }
하지만 정의역이 꼭 N과 같이 숫자 index일 필요는 없다.
dictionary 또한 list처럼 각각의 고유한 key에 대해 하나의 value가 대응되는 구조로, 크게 본다면 list 또한 dictionary의 일종이라고 볼 수 있을 것이다.
(물론 python에서 구현은 다르게 되어있지만 구조가 그렇다는 것)
따라서, 벡터를 표현할 때 list가 아닌 dictionary 또한 유용하게 사용할 수 있다.
방금까지, 벡터란 무엇인지 정의하고, 벡터를 어떻게 표현할 수 있는지 확장 하였다.
다음은 벡터의 대수적 법칙들에 대해 설명한다.
이는 사실 신기한 것이 아닌 Vector Space의 정의이기에 vector가 해당 성질을 가지는게 당연하다.
결합법칙, 분배법칙 등의 법칙은 아래를 참고하자.
https://en.wikipedia.org/wiki/Vector_space
벡터와 스칼라의 곱 말고도, 벡터들 끼리의 곱 중 내적에 대한 소개가 있다.
두 벡터에 대해 내적 연산을 수행하면 스칼라 값이 나온다.
(내적의 의미에 대해서는 설명하지 않겠다.)
이를 활용하면 라는 식에서 x vector를 찾는 식을 생각해 볼 수 있다.
이는 결국 연립방정식 문제로 볼 수 있고, elementary row operation을 이용하여 값(벡터)을 구할 수 있다.
'Else > 도서 리뷰' 카테고리의 다른 글
[Coding The Matrix] Chapter 4. 벡터 공간(Vector Space) (6) | 2023.04.12 |
---|---|
[Coding The Matrix] Chapter 5. 행렬 (0) | 2023.04.12 |