본문으로 건너뛰기

절3.2일대일 변환과 전사 변환

목표
  1. 일대일 변환과 전사 변환의 정의를 이해합니다.
  2. 방법: 행렬 변환이 일대일인지, 전사인지, 또는 둘 다인지 확인합니다.
  3. 그림: 일대일이거나 전사인(또는 그렇지 않은) 행렬 변환의 예입니다.
  4. 용어: 일대일, 전사.

이 절에서는 변환에 대해 던질 수 있는 가장 기본적인 두 가지 질문, 즉 변환이 일대일인지, 전사인지, 또는 둘 다인지에 대한 질문을 다룹니다. 행렬 변환의 경우, 이 질문들을 행렬의 언어로 옮깁니다.

소절3.2.1일대일 변환

정의(일대일 변환)

변환 T\colon\R^n\to\R^m은 \R^m의 모든 벡터 b에 대해 방정식 T(x)=b가 \R^n에서 해 x를 많아야 하나 가질 때 일대일이라고 합니다.

다음은 T가 일대일이라는 것을 나타내는 몇 가지 동치 표현입니다:

  • \R^m의 모든 벡터 b에 대해 방정식 T(x) = b는 \R^n에서 해 x를 갖지 않거나 하나만 가집니다.
  • T의 서로 다른 입력은 서로 다른 출력을 가집니다.
  • T(u) = T(v)이면 u=v입니다.

\begin{tikzpicture}[thin border nodes, scale=.75]
  \draw[grid lines] (-3,-3) grid (3,3);

  \node (A) at (0,-3.6) {$\R^n$};
  \node (B) at (12,-3.6) {$\R^m$};
  \draw[->] (A) -- (B) node[midway,above=1pt] {$T$};

  \point["$x$" left] (x) at (1,1.5);
  \point["$y$" left] (y) at (-1,0);
  \point["$z$" left] (z) at (0,-2);

  \begin{scope}[myxyz, xshift=12cm]
    \path[clip, resetxy] (-3,-3) rectangle (3,3);

    \def\v{(-1,2,1)}
    \def\w{(0,1,-1)}

    \node[coordinate] (X) at \v {};
    \node[coordinate] (Y) at \w {};

    \draw[very thin] (-2,0,0) -- (0,0,0);
    \draw[very thin] (0,-2,0) -- (0,0,0);
    \draw[very thin] (0,0,-2) -- (0,0,0);

    \begin{scope}[x=(X), y=(Y), transformxy,
        every label/.style={font=\small,fill=none,inner sep=.5pt}]
      \fill[seq4!10, nearly opaque] (-1,-1) rectangle (1,1);
      \draw[step=.5cm, seq4!30, very thin] (-1,-1) grid (1,1);
      \point["$T(x)$" above] (Tx) at (.5,-.5);
      \point["$T(y)$" above] (Ty) at (.5,.5);
      \point["$T(z)$" above] (Tz) at (-.5,.75);
      \node[coordinate,
          pin={[pin edge={very thin,-},
            pin distance=3mm,anchor=north,text=seq4]-70:range}]
        at (0.1,1) {};
    \end{scope}

    \draw[->, very thin] (0,0,0) -- (2,0,0);
    \draw[->, very thin] (0,0,0) -- (0,2,0);
    \draw[->, very thin] (0,0,0) -- (0,0,2);

    \draw[resetxy] (-3,-3) rectangle (3,3);

  \end{scope}

  \begin{scope}[arrows={|->}, shorten=.35mm, every to/.style={out=0, in=180}]
    \draw (x) to (Tx);
    \draw (y) to (Ty);
    \draw (z) to (Tz);
  \end{scope}

  \node[seq-blue] at (6,2.5) {one-to-one};

\end{tikzpicture}

다음은 T가 일대일이 아니라는 것을 나타내는 몇 가지 동치 표현입니다:

  • 방정식 T(x)=b가 \R^n에서 해 x를 둘 이상 가지도록 하는 벡터 b가 \R^m에 존재합니다.
  • 같은 출력을 가지는 T의 서로 다른 두 입력이 존재합니다.
  • u\neq v이지만 T(u)=T(v)인 벡터 u,v가 존재합니다.

\begin{tikzpicture}[thin border nodes, scale=.75]
  \draw[grid lines] (-3,-3) grid (3,3);

  \node (A) at (0,-3.6) {$\R^n$};
  \node (B) at (12,-3.6) {$\R^m$};
  \draw[->] (A) -- (B) node[midway,above=1pt] {$T$};

  \point["$x$" left] (x) at (1,1.5);
  \point["$y$" left] (y) at (-1,0);
  \point["$z$" left] (z) at (0,-2);

  \begin{scope}[myxyz, xshift=12cm,
      every label/.style={font=\small, fill=none, inner sep=.5pt}]
    \path[clip, resetxy] (-3,-3) rectangle (3,3);

    \def\v{(-1,1,2)}
    \node[coordinate] (V) at \v {};

    \draw[very thin] (-2,0,0) -- (0,0,0);
    \draw[very thin] (0,-2,0) -- (0,0,0);
    \draw[very thin] (0,0,-2) -- (0,0,0);

    \draw[seq4] ($-4*(V)$) -- ($4*(V)$);
    \point[label={[xshift=.25cm,fill=white]above:{$T(x)=T(y)$}}]
      (Tx) at ($.5*(V)$);
    \point["$T(z)$" right] (Tz) at ($-1*(V)$);
    \node[coordinate,
        pin={[pin edge={very thin,-},
          pin distance=8mm,anchor=north,text=seq4]-30:range}]
        at ($-.2*(V)$) {};

    \draw[->, very thin] (0,0,0) -- (2,0,0);
    \draw[->, very thin] (0,0,0) -- (0,2,0);
    \draw[->, very thin] (0,0,0) -- (0,0,2);

    \draw[resetxy] (-3,-3) rectangle (3,3);

  \end{scope}

  \begin{scope}[arrows={|->}, shorten=.35mm, every to/.style={out=0, in=180}]
    \draw (x) to (Tx);
    \draw[|-] (y) to (Tx);
    \draw (z) to (Tz);
  \end{scope}

  \node[seq-blue] at (6,2.5) {not one-to-one};

\end{tikzpicture}
증명

동치란 주어진 행렬에 대해 모든 명제가 동시에 참이거나 모두 거짓이라는 뜻임을 상기하십시오.

앞의 세 예제에서 일대일이 아닌 변환과 영공간의 벡터에 관한 내용은 다음과 같이 요약할 수 있습니다. T(x)=Ax가 일대일이 아닌 행렬 변환이라고 가정합시다. 정리에 의해 Ax=0의 자명하지 않은 해가 존재합니다. 이는 A의 영공간이 영공간 {0}이 아니라는 뜻입니다. 영공간의 모든 벡터는 T(x)=0의 해입니다. 영공간에 속하는 영이 아닌 벡터 v를 (예를 들어 행 축약을 하여 Ax=0의 해집합의 매개변수 꼴을 구함으로써) 계산하면, v와 0는 모두 같은 출력을 가집니다: T(v) = Av = 0 = T(0).

가로로 넓은 행렬은 일대일 변환을 가지지 않습니다

T\colon\R^n\to\R^m가 일대일 행렬 변환이라면, n과 m의 상대적인 크기에 대해 무엇을 말할 수 있습니까?

T에 대응하는 행렬은 n개의 열과 m개의 행을 가집니다. 각 행과 각 열에는 피벗이 하나씩만 있을 수 있으므로, A의 모든 열에 피벗이 있으려면 행의 개수가 적어도 열의 개수만큼 있어야 합니다: n\leq m\text{.}

이는 예를 들어 \R^3이 “너무 커서” \R^2로의 일대일 선형변환을 가질 수 없다는 뜻입니다.

일대일이 아닌 세로로 긴 행렬도 존재한다는 점에 유의하십시오: 예를 들어

\begin{equation*}
\mat{1 0 0; 0 1 0; 0 0 0; 0 0 0}
\end{equation*}

는 모든 열에 피벗이 있지는 않습니다.

소절3.2.2전사 변환

정의(전사 변환)

\R^m의 모든 벡터 b에 대해 방정식 T(x)=b가 \R^n에서 적어도 하나의 해 x를 가지면, 변환 T\colon\R^n\to\R^m를 전사라고 합니다.

다음은 T가 전사라는 것을 나타내는 동치인 표현들입니다:

  • T의 치역은 T의 공역과 같습니다.
  • 공역의 모든 벡터는 어떤 입력 벡터의 출력입니다.

\begin{tikzpicture}[thin border nodes, scale=.75]
  \draw (-3,-3) rectangle (3,3);

  \draw[->, very thin, myxyz] (-2,0,0) -- (2,0,0);
  \draw[->, very thin, myxyz] (0,-2,0) -- (0,2,0);
  \draw[->, very thin, myxyz] (0,0,-2) -- (0,0,2);

  \node (source) at (0,-3.6) {$\R^n$};
  \point["$x$" above left] (x) at (1,2);

  \begin{scope}[xshift=12cm, every label/.append style={fill=seq4!10}]
    \fill[seq4!10] (-3,-3) rectangle (3,3);
    \draw[grid lines] (-3,-3) grid (3,3);
    \point["$T(x)$" above right] (Tx) at (1,-1);
    \node[fill=seq4!10, text=seq4]
      at (0,2) {$\text{range}(T)$};

    \node (target) at (0,-3.6) {$\R^m =$ codomain};
  \end{scope}

  \draw[->] (source) -- (target) node[midway,above=1pt] {$T$};
  \draw[|->, shorten=.35mm] (x) to[out=0, in=180] (Tx);

  \node[seq-blue] at (6,2.5) {onto};

\end{tikzpicture}

다음은 T가 전사가 아니라는 것을 나타내는 동치인 표현들입니다:

  • T의 치역은 T의 공역보다 작습니다.
  • 방정식 T(x)=b가 해를 갖지 않는 벡터 b가 \R^m에 존재합니다.
  • 공역에 어떤 입력 벡터의 출력도 아닌 벡터가 있습니다.

\begin{tikzpicture}[thin border nodes, scale=.75]
  \draw (-3,-3) rectangle (3,3);

  \draw[->, very thin, myxyz] (-2,0,0) -- (2,0,0);
  \draw[->, very thin, myxyz] (0,-2,0) -- (0,2,0);
  \draw[->, very thin, myxyz] (0,0,-2) -- (0,0,2);

  \node (source) at (0,-3.6) {$\R^n$};
  \point["$x$" above left] (x) at (1,-2);

  \begin{scope}[xshift=12cm]
    \draw[grid lines] (-3,-3) grid (3,3);
    \draw[seq4] (-3,-1.5) -- (3,1.5);
   \point["$T(x)$" below right] (Tx) at (1,.5);
    \node[fill=white, text=seq4]
      at (-1,-1.8) {$\text{range}(T)$};

    \node (target) at (0,-3.6) {$\R^m =$ codomain};
  \end{scope}

  \draw[->] (source) -- (target) node[midway,above=1pt] {$T$};
  \draw[|->, shorten=.35mm] (x) to[out=0, in=150] (Tx);

  \node[seq-blue] at (6,2.5) {not onto};
\end{tikzpicture}
증명

앞의 두 예제는 치역에 속하지 않는 벡터에 관한 다음 관찰을 보여 줍니다. T(x)=Ax가 전사가 아닌 행렬 변환이라고 가정합시다. 이는 \text{range}(T) = \Col(A)가 차원이 m보다 작은 \R^m의 부분공간이라는 뜻입니다. 예를 들어 평면 위의 직선일 수도 있고, 3-공간 속의 직선이나 3-공간 속의 평면 등일 수도 있습니다. 어느 경우든 T의 치역은 공역에 비해 매우 작습니다. T의 치역에 속하지 않는 벡터를 찾으려면 \R^m에서 영이 아닌 벡터 b를 무작위로 고르십시오. T의 치역에 속하는 벡터를 고르려면 운이 극도로 나빠야 합니다. 물론 주어진 벡터 b가 T의 치역에 속하는지 확인하려면 행렬 방정식 Ax=b를 풀어서 해가 존재하는지 살펴보아야 합니다.

세로로 긴 행렬은 전사 변환을 갖지 않습니다

T\colon\R^n\to\R^m이 전사인 행렬 변환이라면, n과 m의 상대적인 크기에 대해 무엇을 말할 수 있습니까?

T에 대응하는 행렬은 n개의 열과 m개의 행을 가집니다. 각 행과 각 열에는 피벗이 하나씩만 있을 수 있으므로, A의 모든 행에 피벗이 있으려면 열이 최소한 행의 개수만큼 있어야 합니다: m\leq n\text{.}

이는 예를 들어 \R^2가 \R^3로의 전사 선형변환을 허용하기에는 “너무 작다”는 것을 의미합니다.

전사가 아닌 넓은 행렬도 존재한다는 점에 유의하십시오. 예를 들어

\begin{equation*}
\mat{1 -1 2; -2 2 -4}
\end{equation*}

는 모든 행에 피벗을 가지지 않습니다.

소절3.2.3비교

위의 일대일 변환과 전사 변환에 대한 설명은 서로 대칭을 이루도록 작성되었습니다. 그러나 “일대일”과 “전사”는 상보적인 개념이며, 어느 한쪽도 다른 쪽을 함의하지 않습니다. 아래에 두 개념을 비교하는 표를 제시하였습니다. 표에서 A는 m\times n 행렬이고, T\colon\R^n\to\R^m은 행렬 변환 T(x)=Ax이며, 표는 각 성질을 A의 피벗을 가진 행과 열, 그리고 T의 치역으로 비교합니다.

\parbox{2.5in}{\centering%
  \textbf{$T$ is one-to-one}\\[3mm]
  $T(x)=b$ has \emph{at most one solution} for every $b$.\\[3mm]
  The columns of $A$ are linearly independent.\\[3mm]
  $A$ has a pivot in every column.\\[3mm]
  The range of $T$ has dimension $n$.
}\qquad\parbox{2.5in}{\centering%
  \textbf{$T$ is onto}\\[3mm]
  $T(x)=b$ has \emph{at least one solution} for every $b$.\\[3mm]
  The columns of $A$ span $\R^m$.\\~\\[3mm]
  $A$ has a pivot in every row.\\[3mm]
  The range of $T$ has dimension $m$.
}
정사각행렬에서는 일대일과 전사가 같습니다

앞의 예제에서 정사각행렬은 모든 열에 피벗을 가질 때, 그리고 그때에만 모든 행에 피벗을 가진다는 것을 관찰하였습니다. 따라서 \R^n에서 자기 자신으로 가는 행렬 변환 T가 일대일일 필요충분조건은 전사인 것입니다. 즉, 이 경우 두 개념은 동치입니다.

역으로, 이 노트와 이 노트에 의해, 행렬 변환 T\colon\R^m\to\R^n이 일대일이면서 전사이면 m=n입니다.

일반적으로 변환 T가 일대일이면서 전사일 필요충분조건은 \R^m의 모든 b에 대해 T(x)=b가 정확히 하나의 해를 가지는 것임에 유의하십시오.