선형대수 2강. 행렬과 선형변환
행렬은 수를 담은 표가 아닙니다. 공간 전체를 한꺼번에 움직이는 기계입니다.
풀고 시작
표가 아니라 움직임이다
행렬을 처음 배우면 수를 직사각형으로 배열한 표로 보입니다. 그러나 선형대수의 관점은 다릅니다. 2×2 행렬 하나는 평면의 모든 점을 일제히 다른 점으로 보내는 선형변환(linear transformation)입니다. 선형변환이란 직선을 직선으로 보내고 원점을 고정하는 변환, 정확히는 덧셈과 상수배를 보존하는 변환이죠. T(u + v) = T(u) + T(v), T(cv) = cT(v)가 성립합니다.
이 관점의 핵심은 놀랄 만큼 경제적입니다. 선형변환은 기저 벡터가 어디로 가는지만 알면 완전히 결정됩니다. 평면의 표준 기저 (1, 0)과 (0, 1)이 각각 어디로 가는지를 두 열에 적은 것, 그것이 바로 행렬입니다. 임의의 벡터는 기저의 선형결합이므로, 행선지도 그 결합으로 자동 계산되죠. 행렬과 벡터의 곱셈 규칙은 이 사실을 그대로 옮겨 적은 것에 불과합니다.
회전, 확대, 전단
구체적으로 봅시다. 반시계 90도 회전은 (1, 0)을 (0, 1)로, (0, 1)을 (-1, 0)으로 보냅니다. 이 두 행선지를 열로 세우면 회전 행렬이 되죠. 모든 벡터를 2배로 늘이는 확대는 (1, 0)을 (2, 0)으로, (0, 1)을 (0, 2)로 보냅니다. 전단(shear)은 바닥은 고정한 채 위층을 옆으로 미는 변환으로, 카드 한 벌을 비스듬히 미는 모양입니다. (1, 0)은 제자리에 두고 (0, 1)을 (1, 1)로 보내면 됩니다.
용어와 이론의 역사도 짧게 짚겠습니다. "행렬(matrix)"이라는 이름은 1850년 실베스터(James Joseph Sylvester)가 붙였고, 행렬을 더하고 곱하는 대수로 정리한 것은 그의 친구 케일리(Arthur Cayley)의 1858년 논문 『행렬 이론에 관한 보고』입니다. 재미있게도 두 사람은 수학자이기 전에 런던의 변호사였고, 법정 일 틈틈이 수학을 논한 우정으로 유명하죠. 당시에는 쓸모가 불분명했던 이 대수는 반세기 뒤 하이젠베르크의 행렬역학으로 양자역학의 언어가 됩니다.
곱셈 규칙이 왜 그렇게 생겼는가
행렬 곱셈의 "행과 열을 짝지어 곱해 더하는" 규칙은 임의로 정한 약속이 아닙니다. 두 변환을 이어 적용한 합성을 계산하면 저절로 그 규칙이 나옵니다. 먼저 B를 적용하고 다음 A를 적용할 때, 기저 벡터의 최종 행선지를 추적해 보면 AB의 각 성분이 정확히 그 규칙대로 계산되죠. 즉 행렬 곱셈의 정의는 "합성 변환의 행렬을 구하라"는 문제의 답입니다.
이 관점은 곱셈의 성질을 공짜로 설명해 줍니다. 결합법칙 (AB)C = A(BC)는 변환을 이어 붙이는 순서 묶기가 결과와 무관하다는 자명한 사실이고, 교환법칙이 깨지는 것은 회전 후 전단과 전단 후 회전이 다르다는 기하적 사실입니다. 규칙을 암기 대상이 아니라 필연으로 이해하게 되는 거죠.
행렬식은 넓이의 배율이다
행렬마다 행렬식(determinant)이라는 수가 하나 딸려 있습니다. 기하적 의미는 명쾌합니다. 변환이 도형의 넓이를 몇 배로 만드는가입니다. 확대 행렬(2배)의 행렬식은 4입니다. 넓이가 4배가 되기 때문이죠. 회전의 행렬식은 1입니다. 돌리기만 할 뿐 넓이를 바꾸지 않으니까요. 전단도 1입니다. 카드 벌을 밀어도 부피가 변하지 않는 것과 같습니다. 행렬식이 음수면 공간이 뒤집힌 것(거울상)이고, 0이면 평면이 직선이나 점으로 짜부라진 것입니다. 짜부라진 정보는 복원할 수 없으므로, 행렬식 0은 역변환(역행렬)이 없다는 뜻과 정확히 같죠. 다음 강의 연립방정식에서 이 조건이 해의 개수를 가르는 열쇠가 됩니다.
인출 문제
생각해볼 질문 (정답 없음)
- 컴퓨터 그래픽스에서 3차원 물체의 이동, 회전, 확대를 모두 행렬 곱 하나로 처리합니다. 그런데 "평행이동"은 원점을 고정하지 않으므로 선형변환이 아니죠. 그래픽스는 이 문제를 어떻게 피해 갔을까요.
이전: 1강 벡터와 벡터공간 · 다음: 3강 연립방정식과 가우스 소거법