스칼라곱

스칼라 곱셈 선형대수학에서 **스칼라곱**(scalar곱, scalar product) 또는 **점곱**(dot product)은 유클리드 공간의 두 벡터로부터 실수 스칼라를 얻는 연산이다. 스칼라곱이 유클리드 공간의 내적을 이루므로, 이를 단순히 '내적'이라고 부르기도 한다. 스칼라곱의 개념의 물리학 배경은 주어진 힘이 주어진 변위의 물체에 가한 일을 구하는 문제이다.
# 정의
차원이 n인 유클리드 공간 \mathbb R^n의 두 벡터 \mathbf a,\mathbf b\in\mathbb R^n의 **스칼라곱** \mathbf a\cdot\mathbf b\in\mathbb R은 두 가지로 정의할 수 있으며, 이 두 정의는 서로 동치이다. 스칼라곱의 기호에는 가운뎃점 '⋅'을 사용하며, 수의 곱셈 기호와는 다르게 생략할 수 없다.
## 대수적 정의
두 벡터의 좌표가 각각 \mathbf a=(a_1,a_2,\dots,a_n)와 \mathbf b=(b_1,b_2,\dots,b_n)라면, 이 둘의 스칼라곱은 같은 위치의 성분을 곱한 뒤 모두 합하여 얻는 값이다. :\mathbf a\cdot\mathbf b=a_1b_1+a_2b_2+\cdots+a_nb_n 예를 들어, 두 3차원 벡터 (1,3,-2),(4,2,1)\in\mathbb R^3의 스칼라곱은 다음과 같다. :(1,3,-2)\cdot(4,2,1)=1\times4+3\times2+(-2)\times1=8 이 경우 스칼라곱의 정의는 벡터의 좌표에 의존하여 정의하지만, \mathbb R^n에 기존의 좌표계가 아닌 새로운 좌표계를 주더라도, 이 좌표계가 정규 직교 좌표계라면, 스칼라곱을 나타내는 공식은 바뀌지 않는다. 즉, 임의의 정규 직교 좌표계 아래 스칼라곱은 위치가 같은 두 좌표의 곱을 합한 것과 같다. 유클리드 공간의 벡터는 종종 열벡터로 간주되며, 이 경우 두 벡터 \mathbf a,\mathbf b의 스칼라곱은 다음과 같이 나타낼 수 있다. :\mathbf a\cdot\mathbf b=\mathbf a^\operatorname T\mathbf b 여기서 우변의 \mathbf a^\operatorname T는 \mathbf a의 전치 행렬이며, 곱셈 기호가 생략된 곱셈은 행렬 곱셈이다. 이 경우 앞선 예시에서의 내적은 다음과 같이 나타낼 수 있다. :\begin{pmatrix}1&3&-2\end{pmatrix}\begin{pmatrix}4\\\2\\\1\end{pmatrix}=1\times4+3\times2+(-2)\times1=8
## 기하학적 정의
스칼라곱은 기하학적 성질인 '길이'와 '각도'를 통해 다음과 같이 정의할 수 있다. :\mathbf a\cdot\mathbf b=\begin{cases}\Vert\mathbf a\Vert\Vert\mathbf b\Vert\cos\measuredangle(\mathbf a,\mathbf b)&\mathbf a\ne\mathbf0\land\mathbf b\ne\mathbf0\\\0&\mathbf a=\mathbf0\lor\mathbf b=\mathbf0\end{cases} 여기서 * \Vert\mathbf a\Vert는 |\mathbf a|로 표기하기도 하며, 벡터 \mathbf a의 노름을 뜻한다. 이는 \mathbf a의 길이 또는 크기를 나타낸다. \Vert\mathbf b\Vert 역시 마찬가지이다. * \measuredangle(\mathbf a,\mathbf b)는 두 벡터 \mathbf a,\mathbf b 사이의 각도이다. 이는 두 벡터가 모두 0이 아닐 때에만 정의되며, 보통 [0,\pi]에서 값을 취한다. * \cos\measuredangle(\mathbf a,\mathbf b)는 코사인이며, 직각 삼각형의 이웃변과 빗변의 길이의 비로 정의하거나, 테일러 급수 전개식을 통해 정의할 수 있다. 예를 들어, 만약 두 벡터의 길이가 모두 2이며, 둘 사이의 각도의 코사인 값이 1/2이라면, 이 두 벡터의 스칼라곱은 2 × 2 × 1/2 = 2이다. 이 정의에서 스칼라곱은 두 벡터의 길이와 위치 관계에만 의존하므로, 스칼라곱이 좌표계와 무관함이 더욱 뚜렷하다. 반대로 두 벡터를 똑같은 등거리 변환에 의하여 변환시켰을 때, 두 벡터의 스칼라곱은 변하지 않는다는 점 역시 정의로부터 자명하다. 몇 가지 특수한 각도의 경우는 다음과 같다. * 만약 \measuredangle(\mathbf a,\mathbf b)=0이라면, (즉, 두 벡터의 방향이 같다면,) \cos\measuredangle(\mathbf a,\mathbf b)=1이므로, 내적은 단순히 두 벡터의 길이의 곱이다. *:\mathbf a\cdot\mathbf b=\Vert\mathbf a\Vert\Vert\mathbf b\Vert * 만약 \measuredangle(\mathbf a,\mathbf b)=90^\circ=\pi/2라면, (즉, 두 벡터가 서로 수직이라면,) \cos\measuredangle(\mathbf a,\mathbf b)=0이므로, 내적은 0이다. *:\mathbf a\cdot\mathbf b=0 * 만약 \measuredangle(\mathbf a,\mathbf b)=180^\circ=\pi라면, (즉 두 벡터의 방향이 서로 반대라면,) \cos\measuredangle(\mathbf a,\mathbf b)=-1이므로, \mathbf a와 \mathbf b의 내적은 다음과 같다. *:\mathbf a\cdot\mathbf b=-\Vert\mathbf a\Vert\Vert\mathbf b\Vert 또한, 이 정의로부터 두 벡터 사이의 각도를 구하는 다음과 같은 공식을 얻을 수 있다. :\cos\measuredangle(\mathbf a,\mathbf b)=\frac{\mathbf a\cdot\mathbf b}{\Vert\mathbf a\Vert\Vert\mathbf b\Vert}\qquad(\mathbf a\ne\mathbf0,\;\mathbf b\ne\mathbf 0)
# 성질
임의의 벡터 \mathbf a,\mathbf b,\mathbf c\in\mathbb R^n 및 스칼라 k\in\mathbb R에 대하여, 다음 성질들이 성립한다.isbn=978-0-321-38517-8 * 교환 법칙 *:\mathbf a\cdot\mathbf b=\mathbf b\cdot\mathbf a * 왼쪽 분배 법칙 *:(\mathbf a+\mathbf b)\cdot\mathbf c=\mathbf a\cdot\mathbf c+\mathbf b\cdot\mathbf c * 오른쪽 분배 법칙 *:\mathbf a\cdot(\mathbf b+\mathbf c)=\mathbf a\cdot\mathbf b+\mathbf a\cdot\mathbf c * 스칼라 곱셈의 보존 *:(k\mathbf a)\cdot\mathbf b=\mathbf a\cdot(k\mathbf b)=k\mathbf a\cdot\mathbf b * 위 네 가지 성질에 따라, 스칼라곱은 대칭 쌍선형 형식이다. * 자기 자신과의 스칼라곱은 음이 아닌 실수이다. *:\mathbf a\cdot\mathbf a=\Vert\mathbf a\Vert^2\ge0 * 영벡터와의 스칼라곱은 0이다. *:\mathbf0\cdot\mathbf a=\mathbf a\cdot\mathbf0=0 * 자기 자신과의 스칼라곱이 0인 벡터는 영벡터뿐이다. *:\mathbf a\cdot\mathbf a=0\iff\mathbf a=\mathbf0 * 위 세 가지 성질에 따라, 스칼라곱은 양의 정부호 형식이다. * \mathbf a\cdot\mathbf b=0일 필요충분조건은 \mathbf a\perp\mathbf b이다. * \mathbf a\cdot\mathbf b>0일 필요충분조건은 \measuredangle(\mathbf a,\mathbf b)90^\circ이다. 반면 스칼라곱이 만족시키지 않는 성질에는 다음이 있다. * 결합 법칙은 (1차원 유클리드 공간 \mathbb R^1=\mathbb R을 제외하면) 성립하지 않는다. 이는 두 벡터의 스칼라곱이 벡터가 아닌 스칼라이므로, (\mathbf a\cdot\mathbf b)\cdot\mathbf c나 \mathbf a\cdot(\mathbf b\cdot\mathbf c)가 무의미한 수식이기 때문이다. * 소거 법칙은 (1차원 유클리드 공간 \mathbb R^1=\mathbb R을 제외하면) 성립하지 않는다. 예를 들어, \mathbb R^2에서, \mathbf a=(1,0), \mathbf b=(1,1), \mathbf c=(1,-1)이라면, \mathbf a\cdot\mathbf b=\mathbf a\cdot\mathbf c=1, \mathbf a\ne\mathbf0이지만, \mathbf b\ne\mathbf c이다. 사실, \mathbf a\cdot\mathbf b=\mathbf a\cdot\mathbf c일 필요충분조건은 \mathbf a\perp(\mathbf b-\mathbf c)이다.
# 응용

## 스칼라 사영
벡터 \mathbf a의 벡터 \mathbf b 위의 **스칼라 사영**(scalar projection) \mathbf a_\mathbf b은 \mathbf a를 \mathbf b로 수직 사영하여 얻는 벡터의 길이이다. :\mathbf a_\mathbf b=\begin{cases}\Vert a\Vert\cos\measuredangle(\mathbf a,\mathbf b)&\mathbf a\ne\mathbf0\land\mathbf b\ne\mathbf 0\\\0&\mathbf a=\mathbf0\lor\mathbf b=\mathbf0\end{cases} 스칼라 사영은 다음과 같이 단위 벡터와의 스칼라곱으로 나타낼 수 있다. :\mathbf a_\mathbf b=\mathbf a\cdot\frac\mathbf b{\Vert\mathbf b\Vert} 반대로, 스칼라곱은 다음과 같이 스칼라 사영과 벡터의 길이의 곱으로 나타낼 수 있다. :\mathbf a\cdot\mathbf b=\Vert\mathbf b\Vert\mathbf a_\mathbf b=\Vert\mathbf a\Vert\mathbf b_\mathbf a
## 코사인 법칙
삼각형의 세 변에 대응하는 세 벡터 **a**, **b**, **c**와 이들 가운데 두 벡터의 각도 *θ*. 삼각형의 세 변 a,b,c와 c가 마주보는 각 \theta에 대한 코사인 법칙은 스칼라곱의 성질을 통해 유도할 수 있다. 벡터 \mathbf a,\mathbf b,\mathbf c가 그림과 같다고 하면, 코사인 법칙은 다음과 같이 증명된다. :\begin{align}c^2 &=\mathbf c\cdot\mathbf c\\\ &=(\mathbf a-\mathbf b)\cdot(\mathbf a-\mathbf b)\\\ &=\mathbf a\cdot\mathbf a-\mathbf b\cdot\mathbf a-\mathbf a\cdot\mathbf b+\mathbf b\cdot\mathbf b\\\ &=\mathbf a\cdot\mathbf a-2\mathbf a\cdot\mathbf b+\mathbf b\cdot\mathbf b\\\ &=a^2-2ab\cos\theta+b^2 \end{align}
## 삼중곱
3차원 유클리드 공간 \mathbb R^3 속 벡터에 대한 곱셈은 그 밖에도 여럿 존재한다. 예를 들어, 두 벡터 \mathbf a,\mathbf b\in\mathbb R^3의 벡터곱 \mathbf a\times\mathbf b\in\mathbb R^3은 스칼라곱과 달리 두 벡터로부터 또 다른 벡터를 얻는다. 그러나 이는 3차원이 아닌 유클리드 공간에서 의미를 잃는다. 스칼라 삼중곱은 \mathbb R^3에서 스칼라곱과 벡터곱을 사용하여 정의된다. 세 벡터 \mathbf a,\mathbf b,\mathbf c\in\mathbb R^3의 스칼라 삼중곱은 \mathbf a\cdot(\mathbf b\times\mathbf c)\in\mathbb R로 정의된다. 벡터 삼중곱은 \mathbb R^3에서 두 번의 벡터 곱으로 정의된다. 세 벡터 \mathbf a,\mathbf b,\mathbf c\in\mathbb R^3의 벡터 삼중곱은 스칼라곱을 계수로 하는 선형 결합 전개식으로 나타낼 수 있으며, 이는 다음과 같다. :\mathbf a\times(\mathbf b\times\mathbf c)=(\mathbf a\cdot\mathbf c)\mathbf b-(\mathbf a\cdot\mathbf b)\mathbf c
## 물리학
물리학의 여러 가지 개념은 스칼라곱을 통해 정의된다. 예를 들어, 일은 힘과 변위의 스칼라곱이며, 자기 선속은 자기 선속 밀도와 면적 벡터의 스칼라곱이다. 물론 변하는 힘이나 일정하지 않은 자기 선속의 경우 적분을 사용한다.
# 일반화

## 복소수 벡터의 경우
차원이 n인 복소수 곱공간 \mathbb C^n 속의 벡터 \mathbf u,\mathbf v\in\mathbb C^n에 대하여 스칼라곱과 비슷한 함수를 정의할 수 있으며, 이는 다음과 같다. :\mathbf u\cdot\mathbf v=\mathbf u^*\mathbf v=\overline{u_1}v_1+\cdots+\overline{u_n}v_n 여기서 \mathbf u^*는 \mathbf u의 (열벡터로서의) 켤레전치이며, \overline{u_k}는 u_k의 켤레 복소수이다. 이러한 함수는 양의 정부호성을 만족시킨다. 즉, 영벡터가 아닌 복소수 벡터와 자기 자신의 스칼라곱은 항상 실수이며 0보다 크다. 그러나 실수 벡터의 스칼라곱과 달리 쌍선형성을 만족시키지 않으며, 대신 다음과 같은 반쌍선형성을 만족시킨다. 임의의 \mathbf u,\mathbf v,\mathbf w\in\mathbb C^n 및 c\in\mathbb C에 대하여, :(c\mathbf u+\mathbf v)\cdot\mathbf w=\bar c\mathbf u\cdot\mathbf w+\mathbf v\cdot\mathbf w :\mathbf u\cdot(c\mathbf v+\mathbf w)=c\mathbf u\cdot\mathbf v+\mathbf u\cdot\mathbf w 또한 대칭성(교환 법칙) 대신 다음과 같은 켤레 대칭성을 만족시킨다. :\mathbf u\cdot\mathbf v=\overline{\mathbf v\cdot\mathbf u} 이 경우, 영벡터가 아닌 두 복소수 벡터의 사잇각을 나타내는 공식은 다음과 같다. :\cos\measuredangle(\mathbf u,\mathbf v)=\frac{\operatorname{Re}(\mathbf u\cdot\mathbf v)}{\Vert\mathbf u\Vert\Vert\mathbf v\Vert} 여기서 \operatorname{Re}(\mathbf u\cdot\mathbf v)는 복소수 \mathbf u\cdot\mathbf v의 실수부이다. 만약 이 함수의 정의에서 켤레 복소수를 생략한다면, 이는 쌍선형성과 대칭성을 유지하지만 양의 정부호성을 잃는다. 이는 대략 i^2=-1<0이기 때문이다. 사실, 양의 정부호성과 대칭성과 쌍선형성을 동시에 만족시키는 함수 B\colon\mathbb C^n\times\mathbb C^n\to\mathbb C는 존재하지 않는다. 이는 이러한 함수의 존재가 다음과 같은 모순을 가져오기 때문이다. :0
## 내적
유클리드 공간이나 복소수 곱공간의 스칼라곱을 일반화하여 내적의 개념을 얻을 수 있다. 실수 벡터 공간 V에서, 두 벡터 u,v\in V로부터 실수 스칼라 \langle u,v\rangle\in\mathbb R를 얻는 연산이 양의 정부호성과 대칭성과 쌍선형성을 만족시킬 경우, 이를 V 위의 내적이라고 한다. 복소수 벡터 공간 V의 두 벡터 u,v\in V로부터 복소수 스칼라 \langle u,v\rangle\in\mathbb C를 얻는 연산이 양의 정부호성과 켤레 대칭성과 반쌍선형성을 만족시킬 경우, 이를 V 위의 내적이라고 한다. 예를 들어, \mathbb R^2에 다음과 같은 함수를 정의하면, 이는 내적을 이룬다.LinearAlgebraHoffmanAndKunze271 :(a_1,a_2)\cdot(b_1,b_2)=a_1b_1-a_2b_1-a_1b_2+4a_2b_2
## 함수의 경우
두 실숫값 함수 f,g\colon[a,b]\to\mathbb R의 내적 \langle f,g\rangle\in\mathbb R은 급수 대신 적분을 사용하여 다음과 같이 정의할 수 있으며, 이 역시 양의 정부호성과 대칭성과 쌍선형성을 만족시킨다. :\langle f,g\rangle=\int_a^bf(x)g(x)dx 보다 일반적으로, 두 복소숫값 함수 f,g\colon[a,b]\to\mathbb C의 내적 \langle f,g\rangle\in\mathbb C은 다음과 같으며, 이는 양의 정부호성과 켤레 대칭성과 반쌍선형성을 만족시킨다. :\langle f,g\rangle=\int_a^b\overline{f(x)}g(x)dx
## 행렬의 경우
사이즈가 같은 두 실수 행렬 A,B의 **프로베니우스 내적**(Frobenius inner product) A:B은 위치가 같은 두 성분의 곱들을 합한 결과이며, 대각합과 행렬 곱셈을 통해 나타낼 수도 있다. 즉, 다음과 같다. :A:B=\operatorname{tr}(A^\operatorname TB)=\sum_{i,j}A_{ij}B_{ij} 보다 일반적으로, 두 복소수 행렬 A,B의 프로베니우스 내적은 다음과 같다. :A:B=\operatorname{tr}(A^*B)=\sum_{i,j}\overline{A_{ijB_{ij} 여기서 A^*는 A의 켤레전치이다.