나무모에 미러 (일반/밝은 화면)
최근 수정 시각 : 2024-06-05 17:48:00

외적

벡터곱에서 넘어옴
1. 개요2. 벡터곱의 관점에서
2.1. 정의2.2. 성질
3. 선형변환의 관점에서

1. 개요

/ cross product(= outer product)

외적(外積)은 두 벡터의 곱에 관한 수학적 용어이다.

이전 판본에서는 cross product와 outer product가 서로 다른 개념이며 한국에서만 둘을 같은 용어인 '외적'으로 부른다고 설명되어 있었으나 이는 사실이 아니다. 외적을 다루는 두가지 관점이 있는데 하나는 단순히 벡터끼리의 곱으로서 보는 관점이 있고, 또 다른 관점은 선형대수학의 핵심이라고 할 수 있는 '선형변환'으로서 보는 관점이 있는 것 뿐이다. 후자는 전자에 비해 보다 기하적인 해석이 들어간 관점이라고 볼 수 있으며, 두 관점은 형식적으로 완전히 동일하기에 결국 하나의 동일한 개념인 것이다.[1]

영문명인 cross product를 직역해 '가위곱'이라고도 하거나, 절반만 번역해서 '크로스곱'이라고 하는 경우도 많다. 아니면 연산 결과 다시 벡터가 나온다는 점을 이용해 '벡터곱'이라고도 부른다.

2. 벡터곱의 관점에서

벡터곱(cross product)은 3차원 유클리드 공간에서 정의된 쌍선형 함수의 일종이다. 현행 고교 교육과정 기준으로 교과서에 포함되어 있지는 않으나 보습학원에서 코시-슈바르츠 부등식 등과 더불어 교과외 과정으로서 배우는 경우가 많다. 스칼라곱과는 달리 결과값은 벡터가 된다. 두 벡터 [math(a)], [math(b)]의 벡터곱 [math(a \times b)]의 크기는 [math( |a| |b|\sin \theta)]이고([math(\theta)]는 [math(a)], [math(b)]가 이루는 각의 크기), 방향은 [math(a)], [math(b)]에 모두 수직이다.

유클리드 공간에서의 내적에 해당하는 '스칼라곱'을 단순히 '내적'이라고만 부르는 경우가 많고, 이것과 대조적이라는 의미로 벡터곱을 '외적'이라고 칭하는 경우가 많은데 혼동하기 쉬운 개념이기에 주의가 필요하다.

외적은 주로 돌림힘각운동량 같이 회전에 관계된 물리량을 측정할 때 사용한다. 예를 들면 토크의 크기는 고정점에 대한 작용점의 변위 벡터를 r, 작용점에 작용하는 힘 벡터를 F라고 놓을 때 [math( \tau = r \times F )]와 같이 정의된다.

여담으로 3차원 벡터곱은 사원수의 허수부의 곱으로 유도될 수 있으며, 마찬가지로 팔원수의 허수부의 곱을 통해서 7차원 공간에서의 벡터곱도 정의할 수 있다.[2] 그 이상까지 올라가면 16원수에서 유도되는 15차원으로 올라가게 되는데, 팔원수부터 대수적 성질을 대폭 잃어버린 상태[3]이기 때문에 15차원 이후의 벡터곱은 정의하지 않는다. 무엇보다도, 16원수 이상으로 올라가게 되면 선형 제곱수 항등식[4]이 성립하지 않는다는 것이 증명되어 있기 때문에, [math( \lVert a\cdot b \rVert= \lVert a \rVert \cdot \lVert b \rVert )]의 형태로 표현할 수 없다.[5]

이렇게 증명되는 것이 당연한 것이, 벡터곱은 애초에 조시어 깁스사원수의 곱셈으로 해결하던 문제들의 풀이 과정이 너무 귀찮고 벡터 부분/스칼라 부분만 필요한 경우가 너무 많다고 생각하여 사원수 곱셈의 벡터 부분만 떼어서 정리하여 만들어 진 것이 벡터곱이다.

2.1. 정의

3차원 유클리드 공간의 벡터 [math(\mathbf{x}=\left( x_1 , x_2 , x_3 \right))]와 [math(\mathbf{y}=\left( y_1 , y_2 , y_3 \right))]의 벡터곱 [math(\mathbf{x} \times \mathbf{y})]는 다음과 같이 정의된다.
[math( \mathbf{x} \times \mathbf{y} = \left( x_2 y_3 - x_3 y_2 , x_3 y_1 - x_1 y_3 , x_1 y_2 -x_2 y_1 \right) )]

행렬식을 이용하여 다음과 같이 표현할 수도 있다.
[math(\mathbf{x}\times\mathbf{y}=\det \begin{bmatrix} \mathbf{i} & \mathbf{j} & \mathbf{k} \\ x_1 & x_2 & x_3 \\ y_1 & y_2 & y_3 \end{bmatrix})]
[math( \; = i(x_2 y_3 - x_3 y_2) - j( x_1 y_3 - x_3 y_1 ) + k(x_1 y_2 -x_2 y_1) )]
[math( \; = i(x_2 y_3 - x_3 y_2) + j(x_3 y_1 - x_1 y_3) + k(x_1 y_2 -x_2 y_1) )]
여기서 [math(\mathbf{i}=(1,0,0), \mathbf{j}=(0,1,0), \mathbf{k}=(0,0,1))]는 유클리드 공간의 표준기저이다.

유도과정은 여럿 있으며, 사원수의 허수부를 이용한 유도과정은 다음과 같다.[6][7]

[math(\mathbf{x}=x_1i+x_2j+x_3k)]
[math(\mathbf{y}=y_1i+y_2j+y_3k)]
[math(\mathbf{xy}=x_1y_1i^2+x_2y_2j^2+x_3y_3k^2+x_1y_2ij+x_1y_3ik+x_2y_1ji+x_2y_3jk+x_3y_1ki+x_3y_2kj)]
[math(ij=k, jk=i, ki=j, ji=-k, kj=-i, ik=-j, i^2=j^2=k^2=-1)]이므로 정리하면
[math(\mathbf{xy}=-\left(x_1y_1+x_2y_2+x_3y_3\right)+\left(x_2 y_3-x_3 y_2\right)i+\left(x_3 y_1-x_1 y_3\right)j+\left(x_1 y_2 -x_2 y_1\right)k)]
실수부와 허수부를 분리하면, [math(-\left(x_1y_1+x_2y_2+x_3y_3\right))]와 [math(\left(x_2 y_3-x_3 y_2\right)i+\left(x_3 y_1-x_1 y_3\right)j+\left(x_1 y_2 -x_2 y_1\right)k)]
즉, [math(\mathbf{xy}=-\mathbf{x\cdot y}+\mathbf{x\times y})]가 된다.
필요한 것은 허수부이므로, [math(\mathbf{x\times y}=\left(x_2 y_3-x_3 y_2\right)i+\left(x_3 y_1-x_1 y_3\right)j+\left(x_1 y_2 -x_2 y_1\right)k)]이다.
※양쪽에 노름을 구하게 되면 같아야 하는데, 이를 통해 외적의 노름값을 구할 수 있다.
[math(\lVert\mathbf{xy}\rVert=\lVert-\mathbf{x\cdot y}+\mathbf{x\times y}\rVert)]
[math(-\mathbf{x\cdot y})]가 실수부, [math(\mathbf{x\times y})]가 허수부이므로, 합의 노름값의 제곱은 실수부의 제곱과 허수부의 제곱을 합한 값이 된다.
즉 [math(\lVert\mathbf{xy}\rVert^{2}=\lVert-\mathbf{x\cdot y}+\mathbf{x\times y}\rVert^{2}=\lVert-\mathbf{x\cdot y}\rVert^{2}+\lVert\mathbf{x\times y}\rVert^{2})]
[math(\lVert-\mathbf{x\cdot y}\rVert^{2}=\lVert\mathbf{x}\rVert^{2}\lVert\mathbf{y}\rVert^{2}\cos^{2}{\theta})]이므로,
[math(\lVert\mathbf{x\times y}\rVert^{2}=\lVert\mathbf{x}\rVert^{2}\lVert\mathbf{y}\rVert^{2}\left(1-\cos^{2}{\theta}\right)=\lVert\mathbf{x}\rVert^{2}\lVert\mathbf{y}\rVert^{2}\sin^{2}{\theta})]
즉, [math(\lVert\mathbf{x\times y}\rVert=\lVert\mathbf{xy}\rVert\lVert\sin{\theta}\rVert)]
마찬가지로 팔원수 곱셈표를 이용하여 정리하여 7차원 벡터곱을 정의할 수도 있다.
팔원수 곱셈표
[math(a\backslash b)][math(e_{1})][math(e_{2})][math(e_{3})][math(e_{4})][math(e_{5})][math(e_{6})][math(e_{7})]
[math(e_{1})][math(-1)][math(e_{4})][math(e_{7})][math(-e_{2})][math(e_{6})][math(-e_{5})][math(-e_{3})]
[math(e_{2})][math(-e_{4})][math(-1)][math(e_{5})][math(e_{1})][math(-e_{3})][math(e_{7})][math(-e_{6})]
[math(e_{3})][math(-e_{7})][math(-e_{5})][math(-1)][math(e_{6})][math(e_{2})][math(-e_{4})][math(e_{1})]
[math(e_{4})][math(e_{2})][math(-e_{1})][math(-e_{6})][math(-1)][math(e_{7})][math(e_{3})][math(-e_{5})]
[math(e_{5})][math(-e_{6})][math(e_{3})][math(-e_{2})][math(-e_{7})][math(-1)][math(e_{1})][math(e_{4})]
[math(e_{6})][math(e_{5})][math(-e_{7})][math(e_{4})][math(-e_{3})][math(-e_{1})][math(-1)][math(e_{2})]
[math(e_{7})][math(e_{3})][math(e_{6})][math(-e_{1})][math(e_{5})][math(-e_{4})][math(-e_{2})][math(-1)]

2.2. 성질

3. 선형변환의 관점에서

선형대수학
Linear Algebra
{{{#!wiki style="margin: 0 -10px -5px; min-height: calc(1.5em + 5px)"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin: -5px -1px -11px"
<colbgcolor=#006ab8> 기본 대상 일차함수 · 벡터 · 행렬 · 선형 변환
대수적 구조 가군(모듈) · 벡터 공간 · 내적 공간 · 노름 공간
선형 연산자 <colbgcolor=#006ab8> 기본 개념 연립방정식(1차 · 2차) · 행렬곱 · 단위행렬 · 역행렬크라메르 공식 · 가역행렬 · 전치행렬 · 행렬식(라플라스 전개) · 주대각합
선형 시스템 기본행연산기본행렬 · 가우스-조르당 소거법 · 행사다리꼴 · 행렬표현 · 라그랑주 보간법
주요 정리 선형대수학의 기본정리 · 차원 정리 · 가역행렬의 기본정리 · 스펙트럼 정리
기타 제곱근행렬 · 멱등행렬 · 멱영행렬 · 에르미트 행렬 · 야코비 행렬 · 방데르몽드 행렬 · 아다마르 행렬 변환 · 노름(수학)
벡터공간의 분해 상사 · 고유치 문제 · 케일리-해밀턴 정리 · 대각화(대각행렬) · 삼각화 · 조르당 분해
벡터의 연산 노름 · 거리함수 · 내적 · 외적(신발끈 공식) · 다중선형형식 · · 크로네커 델타
내적공간 그람-슈미트 과정 · 수반 연산자(에르미트 내적)
다중선형대수 텐서 · 텐서곱 · 레비치비타 기호 }}}}}}}}}

선형대수학에서의 외적(outer product)은 두 벡터 간의 텐서곱을 뜻한다. 앞의 벡터곱과는 달리 결괏값은 행렬이 된다.

두 실벡터 [math(\mathbf{u})], [math(\mathbf{v})]의 외적 [math(\mathbf{u} \otimes \mathbf{v})]는 [math(\mathbf{u})]와 [math(\mathbf{v})]의 전치의 곱, 즉 [math(\mathbf{u}\mathbf{v}^T)]로 정의된다.
두 실수공간 [math(\mathbb{R}^m)]과 [math(\mathbb{R}^n)]에서 각각 정의된 [math(m \times 1)] 열벡터 [math(\mathbf{u})]와 [math(n \times 1)] 열벡터 [math(\mathbf{v})]에 대하여
[math(\mathbf{u} \otimes \mathbf{v} = \mathbf{u} \mathbf{v}^T = \begin{bmatrix} u_1 \\ u_2 \\ \vdots \\ u_m\end{bmatrix}\begin{bmatrix}v_1 & v_2 & \cdots & v_n \end{bmatrix} = \begin{bmatrix}u_1 v_1 & u_1 v_2 & \cdots & u_1 v_n \\ u_2 v_1 & u_2 v_2 & \cdots & u_2 v_n \\ \vdots & \vdots & \ddots & \vdots \\ u_m v_1 & u_m v_2 & \cdots & u_m v_n \end{bmatrix})]

복소벡터의 외적은 조금 다르게 정의된다. 두 복소벡터 [math(\mathbf{u})], [math(\mathbf{v})]의 외적 [math(\mathbf{u} \otimes \mathbf{v})]는 [math(\mathbf{u})]와 [math(\mathbf{v})]의 켤레전치의 곱, 즉 [math(\mathbf{u}\mathbf{v}^\dagger)]로 정의된다.
두 복소수공간 [math(\mathbb{C}^m)]과 [math(\mathbb{C}^n)]에서 각각 정의된 [math(m \times 1)] 열벡터 [math(\mathbf{u})]와 [math(n \times 1)] 열벡터 [math(\mathbf{v})]에 대하여
[math(\mathbf{u} \otimes \mathbf{v} = \mathbf{u} \mathbf{v}^\dagger = \begin{bmatrix} u_1 \\ u_2 \\ \vdots \\ u_m\end{bmatrix}\overline{\begin{bmatrix}v_1 & v_2 & \cdots & v_n \end{bmatrix}} = \begin{bmatrix}u_1\overline{v_1} & u_1\overline{v_2} & \cdots & u_1\overline{v_n} \\ u_2\overline{v_1} & u_2\overline{v_2} & \cdots & u_2\overline{v_n} \\ \vdots & \vdots & \ddots & \vdots \\ u_m\overline{v_1} & u_m\overline{v_2} & \cdots & u_m\overline{v_n} \end{bmatrix})]

정의에 따라 실벡터의 외적은 복소벡터의 외적의 특수한 경우임을 알 수 있다. 또한 자세히 보면, 두 벡터의 외적 행렬이 정사각행렬이라면 그 대각합(trace)내적임을 알 수 있다.


[1] 수학은 형식주의를 기반으로 하는 학문이다.[2] 실수를 이용해 정의한 0차원 벡터곱과 복소수를 이용해 정의한 1차원 벡터곱은 결과가 항상 영벡터이기에 쓸 이유가 없다.[3] 팔원수에서 곱셈의 결합법칙이 성립하지 않게 된다. 다만, 팔원수도 실수체의 교대 대수이기 때문에, [math(x(xy)=x^2y, (xy)y=xy^2)]은 성립한다.[4] n개 제곱수 항등식은 [math(\displaystyle{\sum_{k=1}^{n} a_{k}^{2} \sum_{k=1}^{n} b_{k}^{2}})]을 n개의 제곱의 합으로 분리하여 표기할 수 있다는 것을 의미한다. 수학적으로 이 항등식은 n=1, 2, 4, 8일때만 존재한다는게 밝혀져 있다. 오일러가 4개의 수에 대한 네제곱수 항등식을, 데겐이 8개의 수에 대한 여덟제곱수 항등식을 발견했고, 이는 후에 사원수와 팔원수에 대한 노름과 연관 있다는 사실이 밝혀졌다.
1 제곱수 항등식은 [math(a^2b^2=\left(ab\right)^2)]
2 제곱수 항등식은 [math(\left(a_{1}^2+a_{2}^2\right)\left(b_{1}^2+b_{2}^2\right)=\left(a_1b_1-a_2b_2\right)^{2}+\left(a_1b_2+a_2b_1\right)^{2})]
1 제곱수 항등식은 실수의 절대값 곱([math(\lVert a\cdot b \rVert = \lVert a \rVert \cdot \lVert b \rVert )])을 고려하면 항상 성립하며, 2 제곱수 항등식은 복소수의 노름 곱([math(\lVert \left(a_1+a_2i\right)\cdot\left(b_1+b_2i\right) \rVert =\lVert a_1+a_2i \rVert \cdot \lVert b_1+b_2i \rVert )])을 고려하면 성립함을 알 수 있다. 마찬가지로 네제곱수 항등식은 사원수의 노름곱, 여덟제곱수 항등식은 팔원수의 노름곱에서 유도할 수 있다. 단, 16차에 한해서 비선형 제곱수 항등식이 밝혀지기는 했다.
[5] 사원수 이상의 수 체계에서는 각 허수성분을 대응되는 차원의 공간좌표 단위벡터성분으로 표현할 수 있는데(사원소의 허수단위가 [math(i,j,k)]의 3개이므로 3차원 좌표의 [math(x,y,z)]좌표 단위벡터 단위가 [math(i,j,k)]가 된다. 마찬가지로 팔원수의 허수단위는 [math(e_1,e_2,e_3,e_4,e_5,e_6,e_7)]의 7개 성분으로 구성되어 있으므로 마찬가지 사고방식으로 7차원 좌표에 대응되게 된다.) 벡터를 대응되는 허수좌표로 바꾸어 곱을 계산하면 실수부는 스칼라곱의 부호를 반전시키고, 허수부는 벡터곱의 형태로 주어지게 된다. 그런데, [math( \lVert a\cdot b \rVert = \lVert a \rVert\cdot \lVert b \rVert)] 형태의 노름이 보존되지 않기 때문에, 일관된 형태의 공식을 유도할 수 없게 된다.[6] 실수부를 넣어도 되기는 하는데, 식이 상당히 복잡해진다. 실수부를 0으로 뒀을 때가 가장 깔끔하게 정리된다.[7] 참고로 실수부를 넣으면 다음과 같다.
[math((x,y,z)=xi+yj+zk)]와 같이 벡터와 사원수를 같은 것으로 칠 때, [math((p+\vec{\mathbf u})(q+\vec{\mathbf v}) = (pq-\vec{\mathbf u}\cdot\vec{\mathbf v}) + \vec{\mathbf u}\times\vec{\mathbf v}+p\vec{\mathbf v}+q\vec{\mathbf u})]