5.5 대학 과정
Systems of Linear Equations
이 절은 5.1–5.2의 행렬식(825·828·829번)과 5.4의 행렬 연산(851·855·856·859번)을 종합해 연립일차방정식을 행렬방정식 Ax=b로 표현하고, 이 방정식을 푸는 세 가지 표준적인 방법―역행렬을 이용한 풀이, 크래머 공식(Cramer’s Rule), 가우스 소거법(Gaussian Elimination)―을 다룹니다. 이 사이트에 아직 formal하게 정의되어 있지 않던 역행렬(inverse matrix) 개념을 이 절에서 새로 정의하며, 이를 위해 딸림행렬(adjugate matrix)이라는 새 개념도 함께 도입합니다. 새 표기 컴포넌트로 첨가행렬(augmented matrix, 계수행렬과 상수벡터를 점선으로 구분한 .matrix 변형)을 하나 추가했습니다―나머지는 5.1–5.4의 대괄호 행렬·세로선 행렬식·Σ 합 표기를 그대로 재사용합니다. 이 챕터의 다른 절과 마찬가지로 일반 n×n이 아니라 2×2·3×3 두 구체적인 경우를 나란히 증명하는 방식을 유지합니다.
미지수가 x, y인 두 개의 일차방정식으로 이루어진 연립방정식을 생각합시다(계수를 824번과 같은 방식으로 aij로, 상수항은 bi로 씁니다).
a11x + a12y = b1
a21x + a22y = b2
계수를 모아 만든 2×2 계수행렬(coefficient matrix) A := (aij)(824번), 미지수 x, y를 성분으로 하는 미지수벡터 x := xy(845번의 열벡터), 상수항을 성분으로 하는 상수벡터 b := b1b2(845번의 열벡터)를 놓으면, A = a11a12a21a22이고 855번(행렬의 곱셈)에 의해
Ax = a11a12a21a22xy = a11x+a12ya21x+a22y
이므로, Ax의 (1,1)·(2,1) 성분은 정확히 원래 두 방정식의 좌변과 일치합니다. 따라서 844번(행렬의 상등)에 의해 Ax=b는 성분별로 원래의 두 방정식 a11x+a12y=b1, a21x+a22y=b2와 정확히 동치이며, 연립방정식 전체를 하나의 행렬방정식
Ax = b
로 표현할 수 있습니다. 미지수가 x, y, z인 세 방정식의 연립방정식도 3×3 계수행렬 A=(aij) (i, j=1, 2, 3), 열벡터 x=(x, y, z)의 전치(―세로로 쓴 것), b=(b1, b2, b3)의 전치에 대해 완전히 같은 방식으로 Ax=b로 표현되며, 이 절 전체에서 2×2·3×3 두 경우를 나란히 다룹니다.
연립방정식의 계수와 상수항을 하나의 표로 압축한 것이 첨가행렬(augmented matrix) [A|b]입니다―계수행렬 A의 오른쪽에 상수벡터 b를 한 열로 덧붙이되, 계수 부분과 상수 부분을 시각적으로 구분하기 위해 점선을 긋습니다.
[A|b] = a11a12b1a21a22b2
872번(가우스 소거법)에서 이 첨가행렬에 행 연산을 직접 적용해 연립방정식을 풉니다.
n차 정사각행렬(824번) A에 대해, 855번(행렬의 곱셈)으로
AB = BA = In
를 만족하는 n차 정사각행렬 B가 존재하면(831번의 단위행렬 In), A를 가역행렬(invertible matrix, 또는 정칙행렬 nonsingular matrix)이라 하고, 이러한 B를 A의 역행렬(inverse matrix)이라 하여 A−1로 씁니다. 즉
A A−1 = A−1 A = In
이며, 이는 A와 A−1이 행렬 곱셈(855번)에 대해 서로 항등원 In(859번, 단위행렬은 곱셈의 항등원)을 만들어 주는 관계에 있음을 뜻합니다. A가 가역이 아니면(그러한 B가 존재하지 않으면) A를 특이행렬(singular matrix)이라 부릅니다. AB, BA가 모두 정의되면서 둘 다 n×n이어야 하므로, A와 B는 반드시 같은 차수의 정사각행렬이어야 합니다―즉 이러한 의미의 역행렬은 정사각행렬(m=n)에 대해서만 정의됩니다.
증명법 : 직접증명법(가정한 두 역행렬이 실제로 같은 행렬임을 대수적으로 확인)
A가 가역행렬이고, B1, B2가 모두 A의 역행렬이라고, 즉 865번에 의해 AB1=B1A=I이고 AB2=B2A=I라고 가정합시다. 그러면
| B1 | |
| = B1I | 859번(항등원) |
| = B1(AB2) | AB2=I 대입 |
| = (B1A)B2 | 856번(곱셈의 결합법칙) |
| = IB2 | B1A=I 대입 |
| = B2 | 859번(항등원) |
즉 B1=B2입니다. 따라서 A의 역행렬은 존재한다면 유일하며, 이것이 표기 A−1이 여러 개가 아니라 특정한 하나의 행렬을 가리킬 수 있는 근거입니다.
증명 끝
증명법 : 직접증명법(딸림행렬을 직접 곱해 항등행렬이 나옴을 확인)과 귀류법(det A=0이면 가역일 수 없음)
A = abcd (825번)에 대해, 딸림행렬(adjugate matrix) adjA를 다음과 같이 정의합니다―주대각선 성분(a, d)은 자리를 맞바꾸고, 나머지 두 성분(b, c)은 부호만 반전합니다.
adjA := d−b−ca
855번(행렬의 곱셈)으로 직접 계산하면
A·adjA = abcdd−b−ca = ad−bc00ad−bc = (ad−bc)I2
이고, 같은 방식으로 adjA·A도 계산하면 역시 (ad−bc)I2가 나옵니다(2×2에서는 이 특정한 형태의 A와 adjA가 곱셈 순서를 바꾸어도 우연히 같은 결과를 줍니다). 825번(det A=ad−bc)에 의해
A·adjA = adjA·A = (det A)I2
를 얻습니다.
(⇐) det A≠0이면 A는 가역. 위 식의 양변에 852번(스칼라배)으로 1detA을 곱하면
A·(1detAadjA) = (1detAadjA)·A = I2
이므로, 865번의 정의에 의해 A는 가역이고
A−1 = 1detAadjA
입니다.
(⇒) A가 가역이면 det A≠0. 대우를 증명하는 대신, A가 가역인데 det A=0이라고 가정하고 모순을 이끌어냅니다(귀류법). A가 가역이므로 AB=I2인 B가 존재하는데, 841번(det(AB)=det A·det B)과 831번(det I2=1)에 의해
det A·det B = det I2 = 1
이어야 합니다. 그런데 det A=0이라 가정했으므로 좌변은 0·det B=0이 되어 0=1이라는 모순을 얻습니다. 따라서 A가 가역이면 반드시 det A≠0입니다.
두 방향을 합치면 A는 가역이다 ⇔ det A≠0이고, 이때 A−1=1detAadjA입니다.
수치 확인. A=231−2이면 det A=2·(−2)−3·1=−7≠0이므로 A는 가역이고, adjA=−2−3−12이므로
A−1 = −17−2−3−12 = 273717−27
이며, 실제로 직접 곱해 보면 A·A−1=1001임을 확인할 수 있습니다.
사용 : 825번 · 831번 · 841번 · 852번 · 855번 · 865번 · 귀류법
증명 끝
증명법 : 직접증명법(성분별로 A·adjA의 대각·비대각 성분을 각각 계산)
① 준비 — 임의의 행에 대한 여인수전개. 829번은 제1행에 대한 여인수전개 det A=a11C11+a12C12+a13C13만 증명했습니다. 제2행·제3행에 대해서도 같은 등식이 성립함을 827번(Cij:=(−1)i+jMij)의 정의를 직접 대입해 확인합니다. 제2행의 경우
a21C21+a22C22+a23C23
에서 C21=−(a12a33−a13a32), C22=a11a33−a13a31, C23=−(a11a32−a12a31)(827번, 2×2 소행렬식을 825번으로 계산)을 대입해 전개하면
a21C21+a22C22+a23C23 = a11a22a33+a12a23a31+a13a21a32−a13a22a31−a11a23a32−a12a21a33
인데, 이는 828번(사뤼스 법칙)의 det A와 항 하나하나가 정확히 일치합니다(순서만 재배열됨). 제3행 a31C31+a32C32+a33C33도 완전히 같은 방식으로 전개하면 역시 828번의 det A와 일치함을 확인할 수 있습니다. 즉 어느 행을 따라 여인수전개를 하든 결과는 항상 det A이며, 이하에서는 이 사실을 일반화된 829번으로 사용합니다.
② 딸림행렬의 정의. 827번의 여인수 Cij를 이용해, A의 딸림행렬(adjugate matrix) adjA를 여인수행렬의 전치―(i,j) 성분이 Cji인 행렬―로 정의합니다.
adjA := C11C21C31C12C22C32C13C23C33
③ A·adjA의 대각성분. 855번(행렬의 곱셈)에 의해 (A·adjA)의 (i,i) 성분은
(A·adjA)ii = 3Σk=1 aik(adjA)ki = 3Σk=1 aikCik
인데, 이는 정확히 ①에서 확인한 «제i행에 대한 여인수전개»이므로 i=1,2,3 어느 경우든 det A와 같습니다.
④ A·adjA의 비대각성분(i≠j). 마찬가지로
(A·adjA)ij = 3Σk=1 aik(adjA)kj = 3Σk=1 aikCjk
입니다. 827번의 정의에 의해 여인수 Cjk는 «j행, k열을 지운 소행렬의 행렬식»이므로, j행 자체의 성분과는 무관하게 나머지 행들만으로 결정됩니다. 따라서 A의 j행을 (원래 j행 대신) i행의 성분 (ai1,ai2,ai3)로 바꿔치기한 행렬 A*를 만들어도, A*의 여인수 Cjk(A*)는 A의 Cjk(A)와 정확히 같습니다(j행을 지우고 계산하므로 j행에 무엇이 들어있든 상관없음). 그러므로
3Σk=1 aikCjk(A) = 3Σk=1 aikCjk(A*) = 3Σk=1(A*의 j행 성분)kCjk(A*)
인데(A*의 j행이 바로 (ai1,ai2,ai3)이므로), 이는 ①에 의해 A*의 j행에 대한 여인수전개―즉 det A*―와 같습니다. 그런데 A*는 i행과 j행이 둘 다 (ai1,ai2,ai3)로 똑같으므로, 835번(두 행이 같으면 det=0)에 의해 det A*=0입니다. 따라서 i≠j이면 (A·adjA)ij=0.
③·④를 합치면 A·adjA는 대각성분이 전부 det A, 비대각성분이 전부 0인 행렬, 즉
A·adjA = (det A)I3
입니다.
⑤ adjA·A도 마찬가지. 833번(det AT=det A)에 의해, A의 열에 대해서도 ①–④와 완전히 대칭적인 논증이 성립합니다―A의 두 열이 같으면 AT의 두 행이 같아지므로 833번과 835번에 의해 det A=det AT=0(즉 835번은 행뿐 아니라 열에 대해서도 그대로 성립), 그리고 열에 대한 여인수전개도 어느 열을 따르든 det A와 같습니다(AT의 행 전개로 환원). adjA·A의 (i,j) 성분은 (adjA·A)ij=3Σk=1Ckiakj인데, 이는 A의 «i번째 열에 대한 여인수전개» 방식의 합이므로―i=j이면 이 값은 det A(열 전개), i≠j이면 두 열이 같아지는 경우로 환원되어 0―같은 방식으로
adjA·A = (det A)I3
를 얻습니다(8.2의 사잇값 정리·최대최소 정리를 다룬 방식과 같이, 이미 확립한 논증의 대칭적 반복이므로 8×8개 성분을 전부 다시 나열하지는 않습니다).
⑥ 가역성의 필요충분조건과 역행렬 공식. 867번과 완전히 같은 논증입니다. det A≠0이면 ④·⑤의 등식 양변에 1detA을 곱해 A(1detAadjA)=(1detAadjA)A=I3을 얻으므로 865번에 의해 A는 가역이고 A−1=1detAadjA(3×3에서도 841번의 «대학 참고» 결과 det(AB)=det A·det B와 831번의 det I3=1을 이용하면, 역으로 A가 가역인데 det A=0이라 가정할 때 867번과 똑같이 0=1이라는 모순이 나오므로 det A≠0은 가역성의 필요조건이기도 합니다).
즉 3×3에서도 A는 가역이다 ⇔ det A≠0이고, 이때 A−1=1detAadjA입니다.
수치 확인. A=123014560에 대해 827번의 정의로 아홉 개의 여인수를 모두 계산하면 adjA=−2418520−15−4−541이고, 829번(제1행 전개)으로 det A=1·(−24)+2·20+3·(−5)=−24+40−15=1≠0이므로 A는 가역이며
A−1 = 11·adjA = adjA = −2418520−15−4−541
이고, 실제로 직접 곱해 보면 A·adjA=100010001(det A=1이므로 A−1과 adjA가 이 예에서는 같은 행렬)임을 확인할 수 있습니다.
사용 : 825번 · 827번 · 828번 · 829번 · 831번 · 833번 · 835번 · 841번 · 852번 · 855번 · 865번 · 867번
증명 끝
증명법 : 직접증명법(정의를 만족함을 확인한 뒤 866번의 유일성으로 마무리―861번과 같은 전략)
① (A−1)−1=A. 865번에 의해 AA−1=A−1A=I인데, 이 등식은 정확히 «A가 A−1의 역행렬이다»라는 뜻입니다. 866번(유일성)에 의해 A−1의 역행렬은 하나뿐이므로 (A−1)−1=A.
② (AB)−1=B−1A−1. A, B가 모두 같은 차수의 가역행렬이라 합시다. 856번(결합법칙)과 865번(AA−1=A−1A=I, BB−1=B−1B=I)에 의해
| (AB)(B−1A−1) | |
| = A(BB−1)A−1 | 856번(결합법칙) |
| = AIA−1 | BB−1=I |
| = AA−1 = I | 859번·865번 |
이고, 같은 방식으로 (B−1A−1)(AB)=B−1(A−1A)B=B−1IB=B−1B=I도 확인됩니다. 즉 865번의 정의에 의해 B−1A−1은 AB의 역행렬이고, 866번(유일성)에 의해 그것이 바로 (AB)−1입니다―861번(전치의 곱은 순서가 뒤바뀜, (AB)T=BTAT)과 정확히 같은 형태로 순서가 뒤바뀝니다.
사용 : 856번 · 859번 · 865번 · 866번
증명 끝
증명법 : 직접증명법(존재성은 대입 확인, 유일성은 양변에 A−1을 곱해 확인)
A가 n차 정사각행렬(n=2 또는 3)이고 det A≠0이라 합시다(867·868번에 의해 A−1이 존재). 864번의 Ax=b에 대해:
① 존재성. x0 := A−1b라 놓으면, 856번(결합법칙)과 865번에 의해
Ax0 = A(A−1b) = (AA−1)b = Ib = b
(마지막 등호는 859번, 단위행렬은 곱셈의 항등원)이므로 x0=A−1b는 실제로 Ax=b의 해입니다.
② 유일성. x1이 Ax1=b를 만족하는 임의의 해라 합시다. 양변의 왼쪽에 A−1을 곱하면
A−1(Ax1) = A−1b ⇒ (A−1A)x1 = A−1b ⇒ Ix1 = A−1b ⇒ x1 = A−1b
(차례로 856번, 865번, 859번)이므로 어떤 해든 반드시 A−1b와 같습니다. 따라서 Ax=b는 유일한 해 x=A−1b를 갖습니다.
수치 확인. A=231−2, b=35(867번의 예)이면 A−1=273717−27이므로
x = A−1b = 3−1
즉 x=3, y=−1이며, 실제로 2·3+3·(−1)=3, 1·3−2·(−1)=5로 원래 두 방정식을 모두 만족합니다.
사용 : 856번 · 859번 · 864번 · 865번 · 867번 · 868번
증명 끝
증명법 : 직접증명법(2×2는 867번의 역행렬 공식을 대입해 직접 계산, 3×3은 868번의 딸림행렬 성분이 열 여인수전개와 일치함을 이용)
① 2×2. A=a11a12a21a22, b=b1b2인 연립방정식 Ax=b(a11x+a12y=b1, a21x+a22y=b2)에 대해, det A≠0이면 870번에 의해 유일한 해 x=A−1b가 있고, 867번(A−1=1detAa22−a12−a21a11)을 대입하면
x = a22·b1−a12·b2det A, y = a11·b2−a21·b1det A
를 얻습니다. 그런데 a22b1−a12b2는 정확히 A의 제1열을 b로 바꾼 행렬 A1=b1a12b2a22의 행렬식(825번, det A1=b1a22−a12b2)과 같고, a11b2−a21b1은 제2열을 b로 바꾼 A2=a11b1a21b2의 행렬식(det A2=a11b2−b1a21)과 같으므로
x = det A1det A, y = det A2det A
입니다. 예를 들어 A=231−2, b=35(867·870번의 예)이면 det A=−7, det A1=335−2=−21, det A2=2315=7이므로 x=−21−7=3, y=7−7=−1로 870번의 결과와 일치합니다.
② 3×3. A가 3×3이고 det A≠0이면, 870번(x=A−1b)과 868번(A−1=1detAadjA)에 의해 xi=1detA(adjA·b)i이고,
(adjA·b)i = 3Σj=1(adjA)ijbj = 3Σj=1Cjibj
입니다(868번, (adjA)ij=Cji). 827번의 정의에 의해 여인수 Cji는 A의 i번째 열을 지운 소행렬로 결정되므로 i번째 열의 성분과는 무관하고, 따라서 A의 i번째 열을 b로 바꾼 행렬 Ai에 대해서도 Cji(Ai)=Cji(A)입니다. 그러므로
3Σj=1Cji(A)bj = 3Σj=1(Ai의 i열 성분)jCji(Ai)
이고, 이는 868번의 ⑤에서 확인한 Ai의 i번째 열에 대한 여인수전개이므로 det Ai와 같습니다. 즉 (adjA·b)i=det Ai이고, 따라서
xi = det Aidet A (i=1,2,3)
입니다. 예를 들어 A=123014560(868번의 예), b=334이면 열을 차례로 바꾼 행렬식은 det A1=2, det A2=−1, det A3=1(828번으로 각각 직접 계산 가능)이고 det A=1이므로
x1=21=2, x2=−11=−1, x3=11=1
이며, 실제로 1·2+2·(−1)+3·1=3, 0·2+1·(−1)+4·1=3, 5·2+6·(−1)+0·1=4로 b=(3,3,4)와 정확히 일치합니다.
사용 : 825번 · 827번 · 828번 · 864번 · 867번 · 868번 · 870번
증명 끝
증명법 : 직접증명법(행 연산이 해집합을 보존함을 확인한 뒤 구체적인 예에 적용)
① 행 연산은 연립방정식의 해집합을 보존한다. 838번이 보장하는 것은 이 행 연산이 행렬식을 보존한다는 사실이지만, 지금 필요한 것은 이 행 연산이 연립방정식의 해 자체를 보존한다는, 별도로 확인해야 할 사실입니다. 제i식을 (제i식) + k·(제j식)으로 바꾼다고 합시다. x가 원래 연립방정식의 모든 식을 만족하면 특히 제i식·제j식을 만족하므로 그 k배 조합인 새 제i식도 만족하고, 나머지 식(제j식 포함)은 그대로이므로 x는 바뀐 연립방정식도 만족합니다. 거꾸로 x가 바뀐 연립방정식을 만족하면, 새 제i식에서 k·(제j식)(바뀌지 않은 그대로)을 도로 빼면 원래 제i식이 복원되므로 x는 원래 연립방정식도 만족합니다. 즉 두 연립방정식의 해집합은 정확히 같습니다―행을 맞바꾸는 연산(834번)은 식의 나열 순서만 바꾸므로 해집합에 영향이 없다는 것은 자명합니다.
② 방법. 이 사실에 의해, 864번의 첨가행렬 [A|b]에 행 연산(«한 행에 다른 행의 배수를 더하기»·«두 행 맞바꾸기»)을 반복해 계수 부분 A를 839번의 위삼각행렬 형태로 만들면, 원래 연립방정식과 정확히 같은 해를 갖는 «풀기 쉬운» 삼각 연립방정식을 얻습니다―이후 마지막 식부터 거슬러 올라가며 대입하는 후진대입(back-substitution)으로 해를 구합니다.
예. 871번과 같은 연립방정식 x+2y+3z=3, y+4z=3, 5x+6y=4의 첨가행렬은
[A|b] = 123301435604
입니다. 제3행에서 제1행의 5배를 빼면(제3행−5·제1행 : 5−5·1=0, 6−5·2=−4, 0−5·3=−15, 4−5·3=−11)
123301430−4−15−11
를 얻고, 이제 제3행에서 제2행의 4배를 더하면(−4+4·1=0, −15+4·4=1, −11+4·3=1)
123301430011
로 계수 부분이 위삼각행렬이 됩니다. 이 첨가행렬이 나타내는 연립방정식 x+2y+3z=3, y+4z=3, z=1을 마지막 식부터 거슬러 풀면: 제3식에서 즉시 z=1, 이를 제2식 y+4z=3에 대입하면 y+4=3에서 y=−1, 다시 이 둘을 제1식 x+2y+3z=3에 대입하면 x−2+3=3에서 x=2를 얻습니다. 즉 (x,y,z)=(2,−1,1)로, 870·871번(역행렬·크래머 공식)의 결과와 정확히 일치합니다.
가우스 소거법은 역행렬·크래머 공식과 달리 det A=0인 경우에도 그대로 적용할 수 있다는 장점이 있습니다―이 경우 삼각화 과정에서 어느 한 행이 전부 0이 되는데(839번, 대각성분에 0이 나타남), 상수항 쪽까지 0이 되는지 아닌지에 따라 해가 없는지 무수히 많은지가 갈립니다 — 873번에서 구체적인 예로 다룹니다.
사용 : 834번 · 838번 · 839번 · 864번
증명 끝
증명법 : 직접증명법(865–872번의 결과를 종합하고, det A=0인 두 예를 직접 풀어 비교)
① det A≠0일 때 세 방법의 일관성. 870번(역행렬)·871번(크래머 공식)·872번(가우스 소거법)을 같은 연립방정식(867·870·871번의 2×2 예, 868·871·872번의 3×3 예)에 각각 적용한 결과는 모두 정확히 같은 해―2×2는 (x,y)=(3,−1), 3×3은 (x,y,z)=(2,−1,1)―로 일치했습니다. 이는 우연이 아니라 870번(유일성)이 보장하는 바입니다―det A≠0이면 애초에 해가 유일하므로, 어떤 방법으로 구하든 같은 답에 도달할 수밖에 없습니다.
② det A=0 — 해가 없는 경우. x+y=1, x+y=3을 생각합시다. 계수행렬 A=1111은 두 행이 같으므로(835번) det A=0이고, 867번에 의해 A는 가역이 아니므로 870·871번(역행렬·크래머 공식)은 애초에 적용할 수 없습니다. 872번(가우스 소거법)으로 첨가행렬
[A|b] = 111113
에 제2행−제1행을 적용하면
111002
을 얻습니다. 이 둘째 행은 «0x+0y=2», 즉 0=2라는 거짓인 식을 뜻하므로―872번(①)에 의해 이 첨가행렬은 원래 연립방정식과 해집합이 같으므로―원래 연립방정식은 해가 없습니다(두 직선 x+y=1, x+y=3은 서로 평행하고 겹치지 않으므로 교점이 없다는 사실과 정확히 대응합니다).
③ det A=0 — 해가 무수히 많은 경우. x+y=2, 2x+2y=4를 생각합시다. A=1122은 제2행이 제1행의 2배이므로(837번) det A=0입니다. 첨가행렬
[A|b] = 112224
에 제2행−2·제1행을 적용하면
112000
를 얻습니다. 이번에는 둘째 행이 «0x+0y=0», 즉 0=0이라는 항상 참인(아무 정보도 주지 않는) 식이 되므로―이 연립방정식은 사실상 첫째 식 x+y=2 하나뿐이고, 이를 만족하는 (x,y)는 무수히 많습니다(예 : x=t, y=2−t, t는 임의의 실수―직선 x+y=2 위의 모든 점).
요약. det A≠0이면 Ax=b는 항상 유일한 해를 가지며(870번), det A=0이면 (상수항의 값에 따라) 해가 전혀 없거나 무수히 많습니다―후진대입 과정에서 계수가 전부 0인 행이 나타날 때, 상수항까지 0이면(③) 무수히 많고, 상수항이 0이 아니면(②) 해가 없습니다.
사용 : 835번 · 837번 · 867번 · 868번 · 870번 · 871번 · 872번
증명 끝