본문으로 건너뛰기

절3.3선형변환

목표
  1. 변환이 선형인지 확인하는 방법, 또는 변환이 선형이 아님을 증명하는 방법을 배웁니다.
  2. 선형변환과 행렬 변환 사이의 관계를 이해합니다.
  3. 계산 절차: 선형변환의 행렬을 계산합니다.
  4. 정리: 선형변환과 행렬 변환.
  5. 표기법: 표준 좌표 벡터 e_1,e_2,\ldots\text{.}
  6. 용어: 선형변환, 표준행렬, 단위행렬.

절 3.1에서는 행렬을 함수로 간주하여, 즉 그에 연관된 행렬 변환을 고려하여 행렬의 기하학을 공부하였습니다. 몇 가지 용어(정의역, 공역, 치역)를 정의하고, 변환에 관한 여러 자연스러운 질문을 던졌습니다. 행렬 변환의 경우 이러한 질문은 행렬에 관한 질문으로 바뀌며, 우리에게는 이에 답할 도구가 많이 있습니다.

이 절에서는 관점을 바꿉니다. 연구하고자 하는 변환이 하나 주어졌다고 가정합시다. 이 변환이 행렬 변환임을 증명할 수 있다면, 선형대수학을 사용하여 이를 연구할 수 있습니다. 이로부터 두 가지 중요한 질문이 생깁니다:

  1. 어떤 변환이 행렬 변환인지 어떻게 알 수 있습니까?
  2. 변환이 행렬 변환이라면, 그 행렬은 어떻게 구합니까?

예를 들어, 이 예제 in 절 3.1에서 행렬 변환

\begin{equation*}
T\colon\R^2\To\R^2 \qquad T(x) = \mat{0 -1; 1 0}x
\end{equation*}

가 평면을 반시계 방향으로 90^\circ만큼 회전시키는 변환임을 보았습니다. 그러나 T를 다음과 같이 회전으로 정의할 수도 있었습니다:

\begin{equation*}
T\colon\R^2\To\R^2 \qquad T(x) = \text{the counterclockwise rotation of $x$ by $90^\circ$}.
\end{equation*}

이 정의만으로는 T가 행렬 변환인지, 또는 어떤 행렬과 연관되어 있는지가 전혀 분명하지 않습니다.

소절3.3.1선형변환: 정의

이 절에서는 행렬로부터 나오는 변환들의 부류를 소개합니다.

정의

선형변환이란 \R^n의 모든 벡터 u,v와 모든 스칼라 c에 대해

\begin{align*}
T(u + v) &= T(u) + T(v)\\
T(cu) &= cT(u)
\end{align*}

를 만족하는 변환 T\colon\R^n\to\R^m입니다.

T\colon\R^n\to\R^m가 행렬 변환이라고 합시다. 즉, m\times n 행렬 A에 대해 T(x)=Ax입니다. 이 명제 in 절 2.3에 의해, \R^n의 모든 벡터 u,v와 모든 스칼라 c에 대해

\begin{align*}
T(u + v) = A(u + v) &= Au + Av = T(u) + T(v)\\
T(cu) = A(cu) &= cAu = cT(u)
\end{align*}

가 성립합니다. 행렬 변환은 두 가지 정의 성질을 만족하므로 선형변환입니다

다음 소절에서 그 역도 성립함을 보게 될 것입니다. 즉, 모든 선형변환은 행렬 변환이며, 다만 아직 그 행렬을 계산하지 않았을 뿐입니다.

공학에서는 두 번째 사실을 중첩 원리라고 부릅니다. 이는 분배 법칙을 떠올리게 할 것입니다. 예를 들어, 임의의 벡터 u,v와 임의의 스칼라 c,d에 대해 T(cu + dv) = cT(u) + dT(v)입니다. 첫 번째 사실을 다시 서술하면 다음과 같습니다.

선형변환은 반드시 영벡터를 영벡터로 보냅니다.

위 예제처럼 변환이 좌표에 대한 공식으로 정의된 경우, 그 변환이 선형변환일 필요충분조건은 각 좌표가 상수항이 없는 변수들의 일차식이라는 것임을 보일 수 있습니다.

변환 T가 선형인지 판단할 때는 일반적으로 먼저 T(0)=0인지 확인합니다. 그렇지 않다면 T는 당연히 선형이 아닙니다. 그러나 위 예제의 비선형 변환 T_1과 T_2는 영벡터를 영벡터로 보낸다는 점에 유의하십시오.

소절3.3.2표준 좌표 벡터

다음 소절에서는 선형변환과 행렬 변환 사이의 관계를 제시합니다. 그에 앞서 다음과 같은 중요한 표기법이 필요합니다.

표준 좌표 벡터

\R^n의 표준 좌표 벡터는 다음 n개의 벡터입니다.

\begin{equation*}
e_1=\vec{1 0 \vdots, 0 0},\quad
e_2=\vec{0 1 \vdots, 0 0},\quad\ldots,\quad
e_{n-1}=\vec{0 0 \vdots, 1 0},\quad
e_n=\vec{0 0 \vdots, 0 1}.
\end{equation*}

e_i의 i번째 성분은 1이고, 나머지 성분은 0입니다.

이제부터 이 책의 나머지 부분에서는 표준 좌표 벡터를 나타내는 데 기호 \color{red}e_1,e_2,\ldots를 사용합니다.

이 표기법에는 모호함이 있습니다. e_1이 n개의 성분을 갖는다는 것을 문맥으로부터 알아야 합니다. 즉, \R^2의 벡터를 다루는지 \R^3의 벡터를 다루는지에 따라 벡터

\begin{equation*}
\vec{1 0} \quad\text{ and }\quad \vec{1 0 0}
\end{equation*}

가 모두 e_1로 표기될 수 있습니다.

\R^2와 \R^3의 표준 좌표 벡터는 아래 그림과 같습니다.

\begin{tikzpicture}[thin border nodes]
  \draw[grid lines] (-2,-2) grid (2,2);
  \draw[->] (-2,0) -- (2,0);
  \draw[->] (0,-2) -- (0,2);
  \draw[vector, seq1] (0,0) to["$e_1$" below=1pt] (1,0);
  \draw[vector, seq2] (0,0) to["$e_2$"] (0,1);
  \node[font=\normalsize, above] at (0,2.1) {in $\R^2$};
  \point at (0,0);
\end{tikzpicture}
\qquad
\begin{tikzpicture}[myxyz, thin border nodes]
  \node[font=\normalsize, above] at (0,0,2.1) {in $\R^3$};
  \draw[grid lines, transformxy] (-2,-2) grid (2,2);
  \draw[->] (-2,0,0) -- (2,0,0);
  \draw[->] (0,-2,0) -- (0,2,0);
  \draw[->] (0,0,-2) -- (0,0,2);
  \draw[vector, seq1] (0,0,0) to["$e_1$" pos=.8] (1,0,0);
  \draw[vector, seq2] (0,0,0) to["$e_2$" below=1pt] (0,1,0);
  \draw[vector, seq3] (0,0,0) to["$e_3$"] (0,0,1);
  \point at (0,0,0);
\end{tikzpicture}

이들은 각 축의 양의 방향을 가리키는 길이 1인 벡터입니다.

예를 들어,

\begin{equation*}
\def\A{\mat{1 2 3; 4 5 6; 7 8 9}}
\A\vec{1 0 0} = \vec{1 4 7} \quad
\A\vec{0 1 0} = \vec{2 5 8} \quad
\A\vec{0 0 1} = \vec{3 6 9}.
\end{equation*}
정의

n\times n 단위행렬은 \R^n의 n개의 표준 좌표 벡터를 열로 갖는 행렬 I_n입니다.

\begin{equation*}
I_n = \mat{1 0 \cdots, 0 0; 0 1 \cdots, 0 0;
\vdots, \vdots, \ddots, \vdots, \vdots;
0 0 \cdots, 1 0; 0 0 \cdots, 0 1}.
\end{equation*}

아래의 이 예제에서 단위행렬이 항등변환의 행렬임을 보게 됩니다.

소절3.3.3선형변환의 행렬

이제 모든 선형변환이 행렬 변환임을 증명할 수 있으며, 그 행렬을 계산하는 방법을 보이겠습니다.

증명

위 정리의 행렬 A를 T의 표준행렬이라고 합니다. A의 열은 \R^n의 n개의 표준 좌표 벡터에서 T의 값을 계산하여 얻은 벡터입니다. 정리의 일부를 요약하면 다음과 같습니다.

행렬 변환은 선형변환과 같습니다.

대응표

선형변환은 행렬에서 나오는 행렬 변환과 같습니다. 선형변환과 행렬 사이의 이러한 대응 관계는 다음 사전으로 요약할 수 있습니다.

\parbox{.3\linewidth}{\centering%
  $T\colon\R^n\to\R^m$\\
  Linear transformation}%
\;$\xrightarrow{\phantom{MMM}}$\;
\hbox to .5\linewidth{$m\times n$ matrix
\small$A = \mat{| | ,, |; T(e_1) T(e_2) \cdots, T(e_n); | | ,, | }$\hss}\\[3mm]
\leavevmode
\hbox to .3\linewidth{\hfil
  $\begin{aligned}&T\colon\R^n\to\R^m\\&T(x) = Ax\end{aligned}$\hfil}%
\;$\xleftarrow{\phantom{MMM}}$\;
\hbox to .5\linewidth{$m\times n$ matrix $A$\hfil}

위 예제에서 평면을 반시계 방향으로 \theta만큼 회전하는 변환의 행렬은 다음과 같음을 보았습니다.

\begin{equation*}
A = \mat{\cos\theta, -\sin\theta; \sin\theta, \cos\theta}.
\end{equation*}

이 정의 in 절 3.1에서 항등변환은 모든 벡터 x에 대해 \Id_{\R^n}(x) = x로 정의되는 변환 \Id_{\R^n}\colon\R^n\to\R^n이었음을 상기하십시오.

이 예제에서 항등변환의 행렬이 단위행렬임을 계산했습니다: \R^n의 모든 x에 대해

\begin{equation*}
x = \Id_{\R^n}(x) = I_nx.
\end{equation*}

따라서 모든 벡터 x에 대해 I_nx=x입니다: 단위행렬과 벡터의 곱은 같은 벡터입니다.