B5 · 계산이 맞아 보여도 결론이 틀릴 수 있을까?#

두 분포의 평균이 같으면 두 분포는 같을까요? 두 번 적용해서 0이 되는 행렬이면 그 행렬 자체도 0일까요? 컴퓨터에서 잔차가 작으면 정확한 해를 찾은 것일까요?

이번 단원은 이런 문장을 실제 계산으로 검사합니다. 목표는 오류 이름을 외우는 일이 아니라 어느 줄에서 어떤 조건이 빠졌는지 찾고, 그 조건을 보충한 올바른 주장과 증명을 쓰는 것입니다. B2~B4에서 이미 다룬 부분공간·차원·선형사상만으로 시작합니다. 마지막 절에서는 검토 과정에서 얻은 명제들을 수학적으로 정리합니다.

1. ‘모든 경우’라는 말은 한 가지 실패로도 틀린다#

다음 주장을 읽어 봅시다.

합이 1이고 평균 에너지가 같은 두 확률분포는 같습니다.

에너지 상태가 \(0,\varepsilon,2\varepsilon\)이고 \(\varepsilon>0\)인 모형을 사용합니다. 두 분포를

\[ p=(0,1,0),\qquad q=(1/2,0,1/2) \]

로 고릅니다. 두 벡터의 성분은 비음수이며 합이 1입니다. 평균은

\[ E_p[E]=0\cdot0+\varepsilon\cdot1+2\varepsilon\cdot0=\varepsilon, \]
\[ E_q[E]=0\cdot\frac12+\varepsilon\cdot0+2\varepsilon\cdot\frac12 =\varepsilon. \]

그러나 첫 성분이 \(0\ne1/2\)이므로 \(p\ne q\)입니다. 주장에 적힌 모든 조건을 만족하면서 결론이 실패했습니다. 이것이 반례입니다.

우연히 찾은 두 분포가 아닙니다. 관측행렬

\[\begin{split} C=\begin{pmatrix}1&1&1\\0&1&2\end{pmatrix} \end{split}\]

\(h=(1,-2,1)\)을 곱하면 첫 성분은 \(1-2+1=0\), 둘째 성분은 \(-2+2=0\)입니다. 따라서 \(h\)는 핵에 속합니다. \(q-p=\frac12h\)이므로 관측이 같을 수밖에 없습니다. 반례를 만들 때에는 조건을 만족하는 예를 무작위로 찾는 대신, 조건을 보존하는 변화를 구할 수 있습니다.

이 한 쌍으로 모든 관측 문제가 비식별이라고 결론내려서도 안 됩니다. 부정된 것은 ‘정규화와 평균만 있으면 항상 분포가 유일하다’는 특정 주장입니다.

2. 반례 다음에는 어떤 조건을 추가할지 계산한다#

위 분포들을 구분하려면 두 번째 모멘트, 즉 에너지 제곱의 평균을 추가로 관측해 봅시다. 단위를 단순하게 하기 위해 \(m_1=E[E]/\varepsilon\), \(m_2=E[E^2]/\varepsilon^2\)라고 씁니다.

\[ p_0+p_1+p_2=1,\qquad p_1+2p_2=m_1,\qquad p_1+4p_2=m_2. \]

셋째 식에서 둘째 식을 빼면 \(2p_2=m_2-m_1\)이므로

\[ p_2=\frac{m_2-m_1}{2}. \]

둘째 식에 넣으면

\[ p_1=m_1-2p_2=m_1-(m_2-m_1)=2m_1-m_2. \]

정규화 식에서는

\[\begin{split} \begin{aligned} p_0&=1-p_1-p_2\\ &=1-(2m_1-m_2)-\frac{m_2-m_1}{2}\\ &=1-\frac32m_1+\frac12m_2. \end{aligned} \end{split}\]

따라서 주어진 두 모멘트에서 가능한 분포가 존재한다면 유일합니다. 존재 조건은 세 성분이 비음수라는 것입니다.

\[ m_2\ge m_1,\qquad m_2\le2m_1,\qquad m_2\ge3m_1-2. \]

세 부등식과 합이 1이라는 구성은 분포의 존재에 충분합니다. 이 부등식들에서 \(m_1\le m_2\le2m_1\)이므로 \(m_1\ge0\)이고, \(3m_1-2\le2m_1\)이므로 \(m_1\le2\)도 따라옵니다.

앞의 \(p\)\((m_1,m_2)=(1,1)\), \(q\)\((1,2)\)입니다. 평균은 같지만 두 번째 모멘트가 다릅니다. 분산도 각각

\[ \operatorname{Var}(E)=\varepsilon^2(m_2-m_1^2) \]

이므로 0과 \(\varepsilon^2\)로 다릅니다.

세 에너지 상태 분포가 만드는 첫째 및 둘째 무차원 모멘트의 삼각형 영역과 평균 1인 수직 선분

그림 16 세 순수 상태는 \((m_1,m_2)=(0,0),(1,1),(2,4)\)입니다. 평균 \(m_1=1\)만 고정하면 세로 선분이 남지만 둘째 모멘트까지 정하면 한 점을 선택합니다. 선분 밖의 임의 값을 지정하면 분포가 존재하지 않을 수 있습니다.#

반례 검토의 다음 단계는 ‘틀렸다’에서 멈추는 것이 아닙니다. 무엇을 더 관측해야 유일해지는지, 관측값이 어떤 범위여야 존재하는지까지 질문을 나눕니다.

3. 두 공간의 기저를 붙이면 왜 항상 기저가 아닌가?#

\(\mathbb R^3\)에서

\[ U=\operatorname{span}(e_1,e_2),\qquad W=\operatorname{span}(e_2,e_3) \]

라고 합시다. 두 공간의 차원은 각각 2입니다. 다음 풀이가 그럴듯하게 보일 수 있습니다.

두 기저를 합치면 \(U+W\)를 생성하므로 \(\dim(U+W)=2+2=4\)입니다.

어느 줄이 틀렸을까요? 생성한다는 문장까지는 맞습니다. 문제는 그 생성 목록을 기저라고 간주한 다음 줄입니다. 목록 \((e_1,e_2,e_2,e_3)\)에는 \(e_2\)가 두 번 있으므로

\[ 0e_1+1e_2-1e_2+0e_3=0 \]

이라는 비자명한 종속 관계가 있습니다.

실제로 \(U+W=\mathbb R^3\)입니다. 임의의 \((a,b,c)\)\((a,b,0)+(0,0,c)\)로 나누면 첫 항은 \(U\), 둘째 항은 \(W\)에 있습니다. 따라서 차원은 3이지 4가 아닙니다.

공통 부분은

\[ U\cap W=\{(0,b,0):b\in\mathbb R\}=\operatorname{span}(e_2) \]

로 차원이 1입니다. 중복된 자유도 하나를 빼면

\[ \dim(U+W)=2+2-1=3 \]

이 됩니다. 마지막 절에서 이 공식을 임의의 유한차원 부분공간에 대해 증명하겠습니다.

그렇다면 공통 원소 하나를 삭제하면 늘 충분할까요? 기저 목록에 똑같은 벡터가 보이지 않아도 종속은 있을 수 있습니다. \(U=\operatorname{span}(e_1,e_2)\), \(W=\operatorname{span}(e_1+e_2)\)에서는 세 벡터가 모두 다르지만 \((e_1+e_2)-e_1-e_2=0\)입니다. 중복은 표기의 중복이 아니라 생성하는 공간의 중복입니다.

4. 실수의 곱셈 법칙을 행렬에 그대로 옮기면 생기는 일#

실수에서는 \(ab=0\)이면 \(a=0\) 또는 \(b=0\)입니다. 체의 역원으로 증명한 사실입니다. 같은 주장을 행렬에 적용해 보겠습니다.

\[\begin{split} N=\begin{pmatrix}0&1\\0&0\end{pmatrix}. \end{split}\]

각 성분을 곱하면

\[\begin{split} N^2= \begin{pmatrix} 0\cdot0+1\cdot0&0\cdot1+1\cdot0\\ 0\cdot0+0\cdot0&0\cdot1+0\cdot0 \end{pmatrix} =\begin{pmatrix}0&0\\0&0\end{pmatrix}. \end{split}\]

그러나 \(N\ne0\)입니다. 따라서 \(AB=0\Rightarrow A=0\) 또는 \(B=0\)\(A=B=N\)에서 실패합니다.

입력의 변화를 직접 보면

\[ N(x,y)=(y,0),\qquad N(y,0)=(0,0). \]

첫 적용이 입력을 모두 없애는 것은 아니지만, 첫 적용의 출력은 두 번째 적용에서 항상 0으로 갑니다. 함수 합성이 0이라는 사실과 각 함수 자체가 0이라는 사실은 다릅니다.

e2가 N에 의해 e1으로 가고 e1이 다시 N에 의해 0으로 가는 두 단계 그림

그림 17 \(N e_2=e_1\ne0\)이지만 \(N^2e_2=0\)입니다. 두 번 적용한 결과만으로 한 번의 작용이 0이라고 결론낼 수 없습니다.#

올바른 조건을 붙여 봅시다. \(A\)가 가역이면 \(AB=0\)의 양쪽 왼쪽에 \(A^{-1}\)을 곱하여

\[ B=(A^{-1}A)B=A^{-1}(AB)=A^{-1}0=0 \]

을 얻습니다. 원래 주장에 빠진 것은 행렬의 가역성입니다. 0이 아닌 행렬이라는 조건은 가역성을 뜻하지 않습니다.

5. 대각합이 0이라는 정보는 얼마나 약한가?#

다음 행렬은 대각합이 0입니다.

\[\begin{split} H=\begin{pmatrix}1&0\\0&-1\end{pmatrix},\qquad \operatorname{tr}H=1-1=0. \end{split}\]

그러나

\[\begin{split} H^2=\begin{pmatrix}1&0\\0&1\end{pmatrix}=I. \end{split}\]

따라서 ‘대각합이 0이면 제곱이 0’이라는 주장은 거짓입니다. 더 강하게, 어떤 양의 정수 거듭제곱도 0이 아닙니다. 짝수 거듭제곱은 \(I\), 홀수 거듭제곱은 \(H\)입니다.

\(N\)과 영행렬은 둘 다 대각합이 0이고 제곱도 0입니다. 그렇다면 상사일까요? B4에서 상사는 계수를 보존한다고 증명했습니다. \(N\)의 상은 \(\operatorname{span}(e_1)\)이어서 계수 1이고, 영행렬의 상은 \(\{0\}\)이어서 계수 0입니다. 따라서 상사가 아닙니다.

대각합이 같은 것은 상사를 위한 필요조건일 수 있지만 충분조건은 아닙니다. 필요조건은 조건을 만족하지 않을 때 탈락시키는 데 쓸 수 있습니다. 조건을 만족했다고 곧바로 결론을 확정하는 데 쓸 수는 없습니다.

이 사례들은 2차원이 필요합니다. 실수 \(1\times1\) 행렬에서는 대각합이 유일한 성분이므로 대각합 0이면 행렬이 0이고, 두 스칼라의 곱이 0이면 하나가 0입니다. 따라서 위 두 거짓 주장에는 1차원 반례가 없고, 제시한 2차원 반례가 최소 차원입니다.

6. 고유벡터가 존재한다는 주장에 체를 적기#

실수 평면에서

\[\begin{split} R=\begin{pmatrix}0&-1\\1&0\end{pmatrix} \end{split}\]

를 생각합시다. 이 행렬은 \((x,y)\)\((-y,x)\)로 보냅니다. 각도 \(\pi/2\)의 회전입니다. 실수 고윳값 \(\lambda\)와 0 아닌 실수 벡터 \((x,y)\)가 있다고 가정하면

\[ -y=\lambda x,\qquad x=\lambda y. \]

둘째 식을 첫째에 넣으면 \(-y=\lambda^2y\), 즉 \((\lambda^2+1)y=0\)입니다. 실수에서는 \(\lambda^2+1>0\)이므로 \(y=0\), 따라서 \(x=\lambda y=0\)입니다. 0 아닌 벡터라는 조건에 모순입니다. 실수 고유벡터가 없습니다.

복소수로 계산하면 \(w=(1,-i)\)에 대해

\[ Rw=(i,1)=i(1,-i)=iw \]

입니다. 같은 정수 성분의 행렬이지만 복소수 공간에서는 고유벡터가 있습니다.

‘모든 다항식이 근을 가지므로 모든 행렬에 고윳값이 있다’라는 증명을 읽었다면 체와 차원 조건부터 확인해야 합니다. 여기서는 일반적인 고윳값 존재 정리를 증명하지 않습니다. 실수에서의 주장에 반례가 있고, 이 특정 행렬이 복소수에서는 어떤 고유벡터를 갖는지를 직접 검증했습니다. 일반 이론은 A5의 주제입니다.

7. 잔차가 작다는 말과 해가 정확하다는 말은 다르다#

측정 두 개로 미지수 두 개를 구하는 다음 계를 생각합시다.

\[\begin{split} A_\delta= \begin{pmatrix}1&0\\0&\delta\end{pmatrix}, \qquad \delta>0. \end{split}\]

정확한 입력이 \(x=(1,1)\)이면 정확한 관측은 \(b=(1,\delta)\)입니다. 후보 \(\widehat x=(1,0)\)의 잔차는

\[ r=b-A_\delta\widehat x =(1,\delta)-(1,0)=(0,\delta). \]

잔차의 유클리드 길이는 \(\delta\)입니다. 하지만 입력 오차는

\[ x-\widehat x=(0,1) \]

이고 길이는 1입니다. \(\delta=10^{-12}\)이면 잔차가 매우 작아도 두 번째 미지수의 오차는 줄어들지 않습니다.

이는 컴퓨터의 반올림 탓이 아니라 정확한 식 자체의 성질입니다. \(A_\delta\)가 두 번째 입력의 차이를 \(\delta\)배로 줄여 관측하기 때문에, 출력이 가까워도 입력은 멀 수 있습니다.

정확한 식으로는 \(A_\delta(x-\widehat x)=r\)이므로

\[\begin{split} x-\widehat x=A_\delta^{-1}r =\begin{pmatrix}1&0\\0&1/\delta\end{pmatrix}r. \end{split}\]

잔차에서 입력 오차를 추론하려면 이 확대 효과를 함께 알아야 합니다. 이 단원은 일반 조건수 이론을 전제하지 않고 대각행렬의 두 성분으로 현상을 확인한 것입니다.

델타가 1에서 10의 마이너스 12승으로 줄어들 때 잔차 크기는 델타로 줄지만 입력 오차는 1로 일정한 로그 그래프

그림 18 각 점은 서로 다른 \(A_\delta\) 문제입니다. 가로·세로 모두 로그 눈금입니다. 정확산술에서도 작은 잔차만으로 입력 오차가 작다고 결론낼 수 없습니다.#

반올림 때문에 정확한 계수 판정도 달라질 수 있습니다. 정확한 십진 유리수 \(\eta=10^{-20}\)에 대해

\[\begin{split} B_\eta=\begin{pmatrix}1&1\\1&1+\eta\end{pmatrix} \end{split}\]

의 두 열은 독립입니다. \(a(1,1)+b(1,1+\eta)=0\)이면 첫 성분은 \(a+b=0\), 둘째 식에서 첫째 식을 빼면 \(\eta b=0\)입니다. \(\eta\ne0\)이므로 \(b=0,a=0\)입니다.

하지만 일반적인 배정밀도 계산에서 \(1.0+10^{-20}\)\(1.0\)으로 반올림됩니다. 저장된 배열의 두 열은 같아집니다. 원래 정확한 문제의 계수와 저장된 문제의 계수를 구분해야 합니다.

8. 반례를 탐색하는 코드를 어떻게 짤까?#

‘대각합이 0이면 제곱이 0’이라는 주장을 검토하려면 대각합이 0인 행렬을 실제로 생성해야 합니다. 연속적인 난수를 아무 제약 없이 생성한 뒤 대각합이 우연히 정확히 0이기를 기다리는 것은 적절한 탐색이 아닙니다.

다음처럼 작은 정수 \(a,b,c\)

\[\begin{split} A=\begin{pmatrix}a&b\\c&-a\end{pmatrix} \end{split}\]

를 만들면 모든 후보의 대각합이 정확히 0입니다. 곱을 전개하면

\[\begin{split} A^2= \begin{pmatrix} a^2+bc&ab-ab\\ ca-ac&cb+a^2 \end{pmatrix} =(a^2+bc)I. \end{split}\]

따라서 \(a^2+bc\ne0\)인 후보를 하나 찾으면 반례가 됩니다. 제약을 먼저 만족하도록 구성하고, 결론만 검사하는 방식입니다.

from itertools import product
from sympy import Matrix, Rational, eye, zeros

found = None
for a, b, c in product(range(-1, 2), repeat=3):
    A = Matrix([[a,b],[c,-a]])
    assert A.trace() == 0
    if A*A != zeros(2):
        found = A
        break
assert found is not None
assert found.trace() == 0 and found**2 != zeros(2)
N = Matrix([[0,1],[0,0]])
assert N != zeros(2) and N*N == zeros(2)
delta = Rational(1, 10**12)
Ad = Matrix.diag(1, delta)
truth, candidate = Matrix([1,1]), Matrix([1,0])
assert Ad*truth-Ad*candidate == Matrix([0,delta])
eta = Rational(1, 10**20)
assert Matrix([[1,1],[1,1+eta]]).rank() == 2
assert 1.0 + 1e-20 == 1.0
print("정확한 반례:", found.tolist(), "제곱:", (found**2).tolist())
정확한 반례: [[-1, -1], [-1, 1]] 제곱: [[2, 0], [0, 2]]

탐색에서 반례를 찾지 못했더라도 일반 명제가 참이라고 결론낼 수 없습니다. 검사한 범위가 정수 \(-1,0,1\)\(2\times2\) 행렬 일부이기 때문입니다. 반면 찾은 반례 하나는 정확한 가정과 실패를 검산하면 일반 주장을 부정하기에 충분합니다.

9. 증명 초안을 고치는 과정을 그대로 적어 보기#

다음 초안을 보겠습니다.

\(T:V\to W\)가 선형이고 단사이면 전사입니다. 단사이므로 핵이 0입니다. 차원정리에 의해 상의 차원은 \(V\)의 차원과 같습니다. 따라서 상은 \(W\)입니다.

첫째 문장은 조건이 부족합니다. 마지막 문장으로 넘어가려면 \(V\)\(W\)의 차원이 같고 유한하다는 조건이 필요합니다. 수정된 정리와 증명은 다음과 같습니다.

\(\dim V=\dim W=n<\infty\)이고 \(T\)가 단사라고 합시다. 단사성으로 \(\ker T=\{0\}\)입니다. 차원정리에 의해 \(\dim\operatorname{im}T=n\)입니다. \(\operatorname{im}T\subseteq W\)이며 같은 유한차원이므로, 상의 기저를 \(W\)의 기저로 확장할 때 추가 원소가 없습니다. 따라서 \(\operatorname{im}T=W\)이고 전사입니다.

이제 각 문장의 역할을 확인할 수 있습니다. 단사성은 핵을 0으로 만들고, 유한차원은 차원정리를 사용하게 하며, 같은 차원은 마지막 포함을 등식으로 바꿉니다.

조건을 하나씩 제거해 봅시다. 같은 차원을 제거하면 \(t\mapsto(t,0)\)가 반례입니다. 유한차원을 제거하면 B3의 오른쪽 이동 \(R(a)=(0,a_0,a_1,\ldots)\)가 반례입니다. 선형성을 제거하면 \(f:\mathbb R\to\mathbb R\), \(f(x)=e^x\)가 단사지만 음수 값을 만들지 못합니다. 이 마지막 예는 실수 지수함수의 기본 성질을 전제로 한 함수 반례이며, 앞의 선형 증명에는 지수함수가 필요하지 않습니다.

조건마다 반례가 있다는 것은 이 정리를 해당 방식으로 일반화할 수 없음을 보여 줍니다. 그러나 모든 가능한 다른 가정 체계까지 배제한다는 뜻은 아닙니다.

10. 직접 써 보는 문제와 전체 풀이#

문제 1 · 평균은 같고 분산은 다르게#

\(p(s)=(s,1-2s,s)\)에서 \(s=1/4\)\(s=1/2\)의 평균과 분산을 구해, 같은 평균이라는 조건의 한계를 설명하세요.

풀이. 두 경우 모두 평균은 \(\varepsilon(1-2s)+2\varepsilon s=\varepsilon\)입니다. 둘째 모멘트는 \(\varepsilon^2(1-2s)+4\varepsilon^2s=\varepsilon^2(1+2s)\)이므로 분산은 \(2s\varepsilon^2\)입니다. 따라서 각각 \(\varepsilon^2/2\)\(\varepsilon^2\)입니다. 확률분포가 다르고 분산도 다르지만 평균은 같습니다.

문제 2 · 사영이면 0 또는 항등인가?#

\(P^2=P\)이면 \(P=0\) 또는 \(P=I\)라는 주장에 최소 차원의 실수 반례를 제시하세요.

풀이. \(P=\operatorname{diag}(1,0)\)이면 \(P^2=\operatorname{diag}(1,0)=P\)이지만 0도 \(I\)도 아닙니다. \(1\times1\)에서는 \(p^2=p\)\(p(p-1)=0\)이므로 \(p=0\) 또는 \(p=1\)입니다. 따라서 최소 차원은 2입니다.

문제 3 · 곱의 순서#

\(A=\begin{pmatrix}1&0\\0&0\end{pmatrix}\), \(B=\begin{pmatrix}0&1\\0&0\end{pmatrix}\)에 대해 \(AB,BA\)를 계산하고 두 곱이 상사인지 판정하세요.

풀이. \(AB=B\)이며 \(BA=0\)입니다. \(AB\)는 둘째 열이 \(e_1\)이므로 계수 1, \(BA\)는 계수 0입니다. 상사는 계수를 보존하므로 상사가 아닙니다. 따라서 ‘같은 두 행렬을 곱했으므로 순서를 바꾸어도 상사’라는 주장은 거짓입니다.

문제 4 · 잘못된 차원 덧셈 수정#

\(U=W=\operatorname{span}\{(1,1)\}\)일 때 \(\dim U+\dim W\)\(\dim(U+W)\)를 비교하고 올바른 공식을 확인하세요.

풀이. 각각의 차원은 1이므로 합은 2입니다. 그러나 \(U+W=U\)여서 차원은 1입니다. 교집합도 \(U\)여서 차원 1입니다. 따라서 \(1+1-1=1\)이 맞습니다. 두 공간이 같다는 허용된 경우를 빼먹으면 잘못된 일반 공식을 놓치기 쉽습니다.

문제 5 · 잔차만으로 판정한 풀이 수정#

\(\|b-A\widehat x\|<10^{-8}\)이므로 \(\|x-\widehat x\|<10^{-8}\)이라고 쓴 풀이를 고치세요.

풀이. 두 길이가 같다는 전제가 없습니다. \(A\)가 가역이면 정확한 관계는 \(x-\widehat x=A^{-1}(b-A\widehat x)\)입니다. 따라서 \(A^{-1}\)가 그 잔차 방향을 얼마나 확대하는지 추가로 알아야 합니다. 7절에서 \(\delta=10^{-12}\)이면 잔차 길이는 \(10^{-12}\)지만 입력 오차 길이는 1이므로 원래 결론은 실패합니다.

11. 지금까지의 내용을 수학의 언어로 정리해 봅시다#

앞의 검토는 특정 예의 오류를 찾는 작업이었습니다. 이제 ‘반례로 부정한다’는 말의 논리 형식과, 검토 후 남은 올바른 선형대수 명제를 정의·증명으로 적어 봅시다.

11.1 전칭 명제와 반례#

집합 \(D\)에서 \(H(x)\)를 가정, \(C(x)\)를 결론이라고 합시다. 명제

\[ \forall x\in D,\quad H(x)\Rightarrow C(x) \]

의 부정은

\[ \exists x\in D,\quad H(x)\ \text{그리고}\ \neg C(x) \]

입니다. 따라서 반례에는 대상이 \(D\)에 속한다는 확인, 가정이 참이라는 확인, 결론이 거짓이라는 확인이 모두 필요합니다. 가정부터 어긴 예는 반례가 아닙니다.

앞의 실수 회전 행렬은 ‘모든 실수 행렬에 실수 고유벡터가 있다’는 명제의 반례입니다. 그러나 ‘모든 실수 대칭행렬에 실수 고유벡터가 있다’는 명제의 반례는 아닙니다. \(R^\top=-R\ne R\)여서 대칭이라는 가정을 만족하지 않기 때문입니다.

역명제도 구별합니다. \(H\Rightarrow C\)를 증명했다고 \(C\Rightarrow H\)가 증명된 것은 아닙니다. \(A=0\Rightarrow A^2=0\)은 맞지만 역은 \(N\)에서 틀렸습니다.

11.2 같은 차원의 포함#

정리 21 (부분공간의 차원)

\(U\subseteq V\), \(\dim V<\infty\)이면 \(\dim U\le\dim V\)이고, 등호가 성립할 필요충분조건은 \(U=V\)입니다.

증명. B2에서 유한차원 부분공간의 기저 존재를 증명했습니다. \(U\)의 기저 \(u_1,\ldots,u_k\)\(V\)의 기저 \(u_1,\ldots,u_k,v_1,\ldots,v_r\)로 확장하면 \(\dim U=k\), \(\dim V=k+r\)이므로 부등식을 얻습니다. 등호이면 \(r=0\)이므로 \(U\)의 기저가 \(V\)도 생성하여 \(U=V\)입니다. 반대로 공간이 같으면 기저 길이가 같으므로 차원도 같습니다. \(\square\)

11.3 부분공간의 합에서 중복 차원 빼기#

정리 22 (부분공간 합의 차원)

유한차원 부분공간 \(U,W\)에 대해 \(\dim(U+W)=\dim U+\dim W-\dim(U\cap W)\)입니다.

증명. 교집합의 기저를 \(z_1,\ldots,z_k\)라 합시다. 이를 각각 확장하여

\[ (z_1,\ldots,z_k,u_1,\ldots,u_r),\qquad (z_1,\ldots,z_k,w_1,\ldots,w_s) \]

\(U,W\)의 기저로 만듭니다. \(U+W\)의 기저 후보는 공통 목록을 한 번만 넣은 \((z_1,\ldots,z_k,u_1,\ldots,u_r,w_1,\ldots,w_s)\)입니다.

생성을 먼저 확인합니다. \(x\in U+W\)이면 \(x=u+w\)입니다. 각각의 기저 표현을 대입하면 \(z_i\)항들의 계수는 서로 더해지고 나머지 \(u_j,w_\ell\)항도 후보 목록에 속하므로 후보가 \(x\)를 표현합니다.

독립성을 위해

\[ \sum_i a_iz_i+\sum_j b_ju_j+\sum_\ell c_\ell w_\ell=0 \]

이라고 합시다. 이항하면

\[ \sum_\ell c_\ell w_\ell=-\sum_i a_iz_i-\sum_j b_ju_j\in U. \]

왼쪽은 \(W\)에도 속하므로 교집합에 속합니다. 따라서 어떤 \(d_i\)에 대해 \(\sum_\ell c_\ell w_\ell=\sum_i d_iz_i\)입니다. \(W\)의 기저 독립성에 의해 모든 \(c_\ell,d_i\)가 0입니다. 원래 등식에는 \(\sum_i a_iz_i+\sum_jb_ju_j=0\)만 남고, \(U\)의 기저 독립성으로 모든 \(a_i,b_j\)도 0입니다. 후보는 독립입니다.

그러므로 차원은 \(k+r+s\)입니다. 한편 \(\dim U=k+r\), \(\dim W=k+s\), \(\dim(U\cap W)=k\)이므로 주장한 공식이 됩니다. \(\square\)

11.4 관측이 유일하게 상태를 정하는 조건#

정리 23 (허용 집합 위의 관측 식별)

선형사상 \(T:V\to W\)와 비어 있지 않은 허용 입력 집합 \(S\subseteq V\)에 대해, \(S\) 안의 입력이 출력으로 유일하게 구별될 필요충분조건은 \((S-S)\cap\ker T=\{0\}\)입니다. 여기서 \(S-S=\{x-y:x,y\in S\}\)입니다.

증명. \(S\) 위에서 유일하게 구별된다고 합시다. \(z\in(S-S)\cap\ker T\)이면 \(z=x-y\)\(x,y\in S\)가 있습니다. \(T(z)=0\)이므로 \(T(x)=T(y)\)이고 유일성에 의해 \(x=y\), 따라서 \(z=0\)입니다. \(S\)가 비어 있지 않으므로 \(x-x=0\)이 교집합에 들어 있어 교집합은 정확히 \(\{0\}\)입니다.

역으로 교집합이 \(\{0\}\)이고 \(x,y\in S\)\(T(x)=T(y)\)를 만족하면 \(x-y\in(S-S)\cap\ker T\)이므로 \(x-y=0\), 즉 \(x=y\)입니다. \(\square\)

이 정리는 핵이 0이 아닌 선형사상도 제한된 허용 집합에서는 단사일 수 있음을 알려 줍니다. 예를 들어 \(T(x,y)=x\), \(S=\{(t,t):t\in\mathbb R\}\)이면 전체 공간의 핵은 세로축이지만 \(S-S=S\)와의 교집합은 0입니다. 실제로 출력 \(t\)가 허용 입력 \((t,t)\)를 유일하게 결정합니다.

11.5 유한 검사는 언제 증명이 되는가?#

유한 집합 \(D=\{d_1,\ldots,d_N\}\)의 모든 원소에서 명제를 확인하면 전칭 명제를 증명한 것입니다. ‘임의의 \(x\in D\)’를 고르면 반드시 어느 \(d_i\)와 같고, 그 경우가 이미 확인되었기 때문입니다. B2의 \(\mathbb F_2^3\) 영공간 검사는 후보 8개를 전부 확인했으므로 완전한 검사였습니다.

반면 실수 전체에 대한 명제를 유한 개의 실수만으로 확인하면 검사한 점 이외의 경우가 남습니다. 이를 보이기 위해 서로 다른 검사점 \(t_1,\ldots,t_N\)에서

\[ f(t)=\prod_{i=1}^N(t-t_i) \]

를 생각합시다. 모든 검사점에서 한 인수가 0이므로 \(f(t_i)=0\)입니다. 하지만 최고차항의 계수는 1이어서 영다항식이 아닙니다. 검사점 이외의 \(t\)에서는 모든 인수가 0이 아니므로 \(f(t)\ne0\)입니다. 따라서 유한 검사는 추가적인 구조 조건 없이 항등식의 증명이 될 수 없습니다.

11.6 증명을 검토할 때 실제로 남길 기록#

아래 항목은 점수표를 채우기 위한 형식이 아니라, 수정할 줄을 찾는 질문입니다.

확인 대상

원고에 남길 근거

가정

체, 차원, 정의역·공역, 비음수 등 제약을 썼는가?

논리

존재·유일성, 양방향, 생성·독립을 각각 확인했는가?

일반성

임의의 원소에서 증명했는가, 특정 예만 계산했는가?

계산

나눈 계수가 0이 아닌가, 행렬곱 방향과 크기가 맞는가?

수치 검증

정확한 대상과 저장된 근사값을 구별했는가?

반례

모든 가정의 성립과 결론의 실패를 함께 보였는가?

이 단원에서 사용하는 증명 전략은 정의 대입, 두 방향의 확인, 기저 확장, 차원 계산, 대우·모순, 귀납과 직접 구성입니다. 쌍대성·복소화 일반론·극값·조밀성 논법은 필요한 이론을 배우는 후속 단원에서 실제 증명과 함께 다룹니다. 아직 도입하지 않은 정리를 이 단원의 근거로 사용하지 않습니다.

반례 기록에는 ‘원래 주장 → 대상과 체 → 가정 확인 → 실패한 계산 → 수정한 주장’을 남기세요. 위의 \(N\)을 예로 하면 ‘\(AB=0\)의 소거 → 실수 \(2\times2\)\(N\ne0\)\(N^2=0\)\(A\)가 가역일 때만 왼쪽 소거’입니다. 이 다섯 줄이 있어야 이후에 같은 오류를 다시 검토할 수 있습니다.

반례는 결론을 부정하는 동시에 어떤 가정이 필요한지 알려 줍니다. 다음 장에서는 관측이 구별하지 못하는 상태들을 하나로 묶고, 그 묶음 위에 사상이 잘 정의되는 조건을 확인합니다. A1로 이어 읽기.