78강에서 행렬식을 세 성질로 정의하고 계산법을 세웠습니다. 그런데 이런 의문이 남습니다.
왜 하필 그 세 성질입니까. 교대성과 다중선형성은 어디서 온 요구입니까.
그리고 78강 심화 6에서 여러 성질을 나열했는데, 각각이 왜 그런지는 계산으로만 확인했습니다.
이 강의에서 답을 냅니다. 행렬식은 변환이 부피를 몇 배로 만드는가입니다.
그 관점을 잡으면 78강의 성질이 모두 자명해집니다. 배율을 두 번 적용하면 곱해지고, 배율이 이면 차원이 뭉개진 것이며, 아무것도 안 하는 변환의 배율은 입니다. 부호는 방향이 뒤집히는지를 말합니다.
그리고 65강의 스칼라 삼중곱이 이 이야기의 삼차원 판이었음도 드러납니다.
문제. 을 봅니다.
(1) 단위정사각형의 네 꼭짓점이 어디로 갑니까?
(2) 상이 어떤 도형입니까?
(3) 그 넓이를 구하고 와 비교하세요.
생각의 실마리. 66강 문제 5에서 행렬의 열이 기저벡터의 상이라 했습니다. 단위정사각형은 과 가 만드는 도형이므로, 상은 두 열이 만드는 도형입니다.
풀이. (1) 네 꼭짓점 이 각각
으로 갑니다. 검산에서 이고 입니다.
(2) 평행사변형입니다. 두 변이 과 이고 나머지가 그 합입니다.
(3) 평행사변형의 넓이는 65강 문제 2에서 외적의 크기였습니다. 평면벡터를 인 공간벡터로 보면
그리고 입니다. 같습니다.
이 문제에서 배우는 것: 행렬식은 넓이 배율입니다.
이차원. 가 일 때 단위정사각형의 상은 의 두 열이 만드는 평행사변형이고, 그 넓이가 입니다.
단위정사각형의 넓이가 이므로, **배율이 곧 **입니다.
이것이 단위정사각형에만 성립하는 것이 아닙니다. 어떤 영역이든 마찬가지입니다. 이유는 이렇습니다. 임의의 영역을 작은 정사각형들로 잘게 나누면 각각이 평행사변형이 되고, 넓이가 모두 배가 되므로 합도 그렇습니다.
검산에서 몬테카를로로 확인합니다. 상의 영역을 감싸는 직사각형에 점을 뿌리고, 로 되돌려 단위정사각형에 들어가는 비율을 셉니다. 결과가 이고 입니다. 오차 입니다.
78강의 세 성질이 이제 자연스럽게 읽힙니다.
| 성질 | 기하적 뜻 |
|---|---|
| 아무것도 안 하면 배율이 | |
| 다중선형성 | 한 변을 배 하면 넓이가 배 |
| 두 행이 같으면 | 평행사변형이 납작해집니다 |
셋째 줄이 명쾌합니다. 두 열이 같으면 평행사변형이 선분이 되어 넓이가 입니다.
바로 확인 1.
확인 1-1. 단위정사각형의 상이 어떤 도형입니까?
답. 의 두 열이 만드는 평행사변형입니다.
확인 1-2. 그 넓이를 쓰세요.
답. 입니다.
확인 1-3. 두 열이 평행하면 넓이가 얼마입니까?
답. 입니다. 납작해집니다.
문제. 다음 변환의 행렬식을 구하고 도형이 어떻게 되는지 설명하세요.
생각의 실마리. 넓이 배율이 라면 부호가 남습니다. 그것이 무엇을 담는지가 이 문제입니다.
풀이. 검산에서 계산합니다.
| 변환 | 도형에 일어나는 일 | |
|---|---|---|
| 회전 | 넓이 보존, 방향 유지 | |
| 반사 | 넓이 보존, 방향 뒤집힘 | |
| 전단 | 넓이 보존, 기울어짐 | |
| 정사영 | 선으로 눌림 |
이 문제에서 배우는 것: 부호는 방향입니다.
부호의 뜻.
뜻 방향을 보존합니다 방향을 뒤집습니다 차원을 뭉갭니다
"방향"이 무엇인지 정확히 합니다. 평면에서 기저 가 반시계 방향이면 양의 방향이라 합니다. 에서 로 가는 회전이 반시계인지 보는 것입니다.
는 양의 방향이고, 이면 상 도 양의 방향입니다.
반사가 좋은 예입니다. 이고 인데, 이 순서는 시계 방향입니다. 종이를 뒤집은 것과 같아 글씨가 거울상이 됩니다.
연속적으로 갈 수 없다는 것이 부호의 본질입니다. 회전으로는 아무리 돌려도 방향을 뒤집을 수 없습니다. 이 연속이고 을 지나야 하는데, 이면 뭉개지기 때문입니다.
이 사실이 직교행렬을 두 부류로 나눕니다.
| 이름 | 예 | |
|---|---|---|
| 회전 | 특수직교군 | |
| 반사가 섞임 | 나머지 |
78강 문제 5에서 임을 보였는데, 두 경우가 기하적으로 다른 것입니다. 로봇의 자세나 분자의 손대칭성에서 이 구별이 실제로 중요합니다.
정사영은 이며, 69강 문제 3에서 "정보를 잃는다"고 한 것의 기하적 정체입니다. 넓이가 이 되므로 되돌릴 수 없습니다.
바로 확인 2.
확인 2-1. 이면 무엇을 뜻합니까?
답. 방향이 뒤집힙니다.
확인 2-2. 회전으로 방향을 뒤집을 수 없는 이유를 쓰세요.
답. 이 연속인데 에서 로 가려면 을 지나야 하기 때문입니다.
확인 2-3. 전단의 행렬식이 인 것이 뜻하는 바를 쓰세요.
답. 기울어져도 넓이가 변하지 않습니다.
문제. , , 를 봅니다.
(1) 세 벡터를 열로 놓은 행렬식을 구하세요.
(2) 스칼라 삼중곱 를 구하세요.
(3) 두 값의 관계와 그 뜻을 설명하세요.
생각의 실마리. 65강 심화에서 삼중곱이 평행육면체의 부피라고 했습니다. 행렬식이 부피 배율이라면 두 값이 같아야 합니다.
풀이. (1) 검산에서 입니다.
(2) 역시 입니다. 그리고 도 입니다.
(3) 같습니다.
이 문제에서 배우는 것: 삼중곱은 행렬식입니다.
삼차원. 세 벡터가 만드는 평행육면체의 부호 있는 부피가 그 벡터들을 열로 놓은 행렬식입니다.
65강에서 배운 것이 특별한 경우였습니다. 그때는 외적을 먼저 정의하고 삼중곱을 만들었는데, 이제 보니 행렬식의 삼차원 판입니다.
65강에서 삼중곱의 성질로 나열한 것들이 78강의 행렬식 성질과 일치합니다.
| 65강의 삼중곱 성질 | 78강의 행렬식 성질 |
|---|---|
| 순환 이동에 불변 | 짝순열이라 부호 유지 |
| 두 개를 바꾸면 부호 반전 | 교대성 |
| 세 벡터가 한 평면에 있으면 | 종속이면 |
| 각 인수에 선형 | 다중선형성 |
네 줄이 그대로 대응합니다. 외적을 몰라도 행렬식으로 다 설명됩니다.
일반 차원으로 확장됩니다.
차원. 개의 벡터가 만드는 평행다면체의 부호 있는 부피가 그 행렬식입니다.
그림을 그릴 수 없는 곳에서도 성립하며, 이것이 행렬식의 값어치입니다. 65강 심화에서 외적이 삼차원에만 있다고 했는데, 행렬식은 모든 차원에 있습니다.
크기 조절도 차원에 따라 다릅니다. 검산에서 확인합니다.
각 방향으로 두 배 늘리면 차원 부피가 배입니다. 78강 문제 4의 가 이 사실입니다. 정사각형을 두 배 키우면 넓이가 네 배, 정육면체는 부피가 여덟 배인 것과 같습니다.
바로 확인 3.
확인 3-1. 삼중곱과 행렬식의 관계를 쓰세요.
답. 세 벡터를 열로 놓은 행렬식이 삼중곱입니다.
확인 3-2. 세 벡터가 한 평면에 있으면 행렬식이 얼마입니까?
답. 입니다.
확인 3-3. 를 구하세요.
답. 입니다.
문제. , 를 봅니다.
(1) 세 행렬식을 계산하세요.
(2) 와 를 비교하세요.
(3) 기하로 설명하세요.
생각의 실마리. 는 **먼저 , 그다음 **를 적용하는 변환이었습니다. 각각이 부피를 몇 배로 만드는지 생각하면 됩니다.
풀이. (1) 검산에서 , , 입니다.
(2) 로 일치합니다.
(3) 영역 의 부피를 라 하면
배율을 두 번 적용하면 곱해집니다. 그래서
부호도 맞습니다. 방향을 두 번 뒤집으면 원래대로이므로 부호가 곱해집니다.
이 문제에서 배우는 것: 성질들의 기하적 근거.
곱셈 성질의 기하. 행렬식이 부피 배율이므로, 변환을 이어서 하면 배율이 곱해집니다.
78강에서 기본행렬로 나눠 증명했는데, 기하로 보면 한 줄입니다.
이 관점으로 78강의 다른 성질도 다시 읽힙니다.
| 성질 | 기하적 이유 |
|---|---|
| 배율의 합성 | |
| 되돌리면 배율이 역수 | |
| \det(A^{k})=(\det A)^ | 번 적용 |
| 특이 | 부피가 뭉개져 복원 불가 |
| 아무것도 안 합니다 | |
| 닮음 불변 | 좌표를 바꿔도 부피 배율은 같습니다 |
마지막 줄이 77강의 근거입니다. "이 변환은 부피를 배로 만든다"는 사실이 좌표계를 바꾼다고 달라질 리 없습니다.
검산에서 거듭제곱도 확인합니다. 가 로 와 일치합니다.
전치 성질만 기하로 설명하기 어렵습니다. 인데, 와 은 전혀 다른 변환입니다. 78강의 대수적 증명(여인수 전개가 행이나 열이나 같음)이 필요하며, 88강의 특이값 분해에서 다른 설명이 나옵니다. 와 의 특이값이 같기 때문입니다.
바로 확인 4.
확인 4-1. 곱셈 성질을 기하로 설명하세요.
답. 변환을 이어서 하면 부피 배율이 곱해집니다.
확인 4-2. 를 기하로 설명하세요.
답. 되돌리는 변환의 배율은 원래 배율의 역수입니다.
확인 4-3. 닮음 불변성을 기하로 설명하세요.
답. 부피 배율은 좌표계와 무관하기 때문입니다.
문제. 극좌표 변환 를 봅니다.
(1) 이것이 선형입니까?
(2) 미분(야코비 행렬)을 구하세요.
(3) 그 행렬식을 계산하고 뜻을 설명하세요.
생각의 실마리. (1)에서 76강의 정의로 판정합니다. (3)에서 국소적으로는 선형이므로, 그 점 근처의 배율이 야코비 행렬의 행렬식입니다.
풀이. (1) 선형이 아닙니다. 가 의 선형함수가 아닙니다.
(2) 편미분을 모읍니다.
(3) 계산합니다.
검산에서 세 점 모두 입니다.
이 문제에서 배우는 것: 야코비안은 국소 배율입니다.
야코비안. 미분 가능한 사상 에 대해 를 야코비안이라 하며, 점 근처에서 부피가 몇 배로 늘어나는지를 잽니다.
근거는 선형근사입니다. 39강에서 일변수 함수를 접선으로 근사했고, 다변수에서도 같습니다.
작은 영역에서는 가 거의 선형이므로, **그 선형사상의 부피 배율이 **입니다.
이것이 다변수 치환적분에 나타납니다.
극좌표에서는 이므로
극좌표 적분에서 이 붙는 이유가 이것입니다. 원점에서 멀수록 같은 가 더 넓은 호를 쓸고 지나가므로 넓이가 큽니다.
50강의 일변수 치환적분과 비교합니다.
**이 일차원의 "부피 배율"**이며, 야코비안이 그 다변수 판입니다. 절댓값이 붙는지 여부만 다른데, 일변수에서는 적분 구간의 방향이 부호를 담당하기 때문입니다.
이 관점이 쓰이는 곳이 많습니다.
| 분야 | 야코비안이 하는 일 |
|---|---|
| 다변수 적분 | 좌표 변환의 보정 인자 |
| 확률 | 변수 변환 시 밀도 보정 |
| 유체역학 | 부피 변화율 |
| 생성 모형 | 정규화 흐름의 밀도 추적 |
둘째 줄을 봅니다. 확률변수 의 밀도가 이고 이면
입니다. 밀도는 단위 부피당 확률이므로 부피가 변하면 보정해야 합니다. 145강 이후 확률에서 다시 봅니다.
넷째 줄이 최근의 응용입니다. 정규화 흐름은 간단한 분포를 가역 변환으로 옮겨 복잡한 분포를 만드는데, 매 단계 야코비안 행렬식을 계산해야 합니다. 그것을 싸게 하려고 78강 문제 5의 삼각 구조를 강제합니다. 대각의 곱이면 이기 때문입니다.
바로 확인 5.
확인 5-1. 야코비안이 무엇을 잽니까?
답. 국소적인 부피 배율입니다.
확인 5-2. 극좌표의 야코비안을 쓰세요.
답. 입니다.
확인 5-3. 를 극좌표로 쓰세요.
답. 입니다.
| 차원 | 행렬식이 재는 것 |
|---|---|
| 평행사변형의 부호 있는 넓이 | |
| 평행육면체의 부호 있는 부피 | |
| 평행다면체의 부호 있는 부피 | |
| 일반 사상 | 야코비안, 국소 배율 |
| 부호 | 뜻 |
|---|---|
| 방향 보존 | |
| 방향 반전 | |
| 차원 뭉개짐 |
| 성질 | 기하적 이유 |
|---|---|
| 배율의 합성 | |
| 되돌리면 역수 | |
| 각 방향으로 배 | |
| 아무 일도 안 합니다 | |
| 닮음 불변 | 좌표와 무관합니다 |
| 자주 하는 실수 | 바로잡기 |
|---|---|
| 넓이에 부호가 없다고 봅니다 | 행렬식은 부호를 담습니다 |
| 배입니다 | |
| 야코비안에 절댓값을 안 붙입니다 | 적분에서는 붙입니다 |
| 극좌표에서 을 잊습니다 |
문제 6. 단위정사각형의 상의 넓이를 쓰세요.
답. 입니다.
문제 7. 이 넓이를 몇 배로 만듭니까?
답. 배입니다.
문제 8. 회전행렬이 넓이를 얼마나 바꿉니까?
답. 바꾸지 않습니다. 입니다.
문제 9. 반사의 행렬식과 그 뜻을 쓰세요.
답. 이며 방향이 뒤집힙니다.
문제 10. 인 변환을 기하로 설명하세요.
답. 부피가 뭉개져 차원이 줄어듭니다.
문제 11. 삼중곱과 행렬식의 관계를 쓰세요.
답. 세 벡터를 열로 놓은 행렬식입니다.
문제 12. 을 구하세요.
답. 입니다.
문제 13. 곱셈 성질을 기하로 설명하세요.
답. 변환을 이어서 하면 배율이 곱해집니다.
문제 14. 일 때 를 구하세요.
답. 입니다.
문제 15. 닮음 불변성을 기하로 설명하세요.
답. 부피 배율은 좌표계와 무관합니다.
문제 16. 야코비안이 무엇입니까?
답. 미분의 행렬식이며 국소 부피 배율입니다.
문제 17. 극좌표에서 를 쓰세요.
답. 입니다.
문제 18. 전치 성질을 기하로 설명하기 어려운 이유를 쓰세요.
답. 와 이 전혀 다른 변환이기 때문입니다.
심화 1. 넓이 배율이 모든 영역에서 같음을 논하세요.
풀이. 문제 1에서 단위정사각형에 대해 확인했습니다. 임의의 영역에서도 성립하는지를 봅니다.
단계 1: 격자 정사각형. 한 변이 인 정사각형은 단위정사각형을 배 한 것이므로, 넓이가 입니다. 그 상은 평행사변형이고 넓이가 입니다. 비율이 로 같습니다.
단계 2: 격자로 근사. 임의의 영역 를 격자 정사각형들로 덮습니다. 안에 완전히 들어가는 것들의 합을 , 걸치는 것까지 포함한 합을 라 하면
이고 이면 둘이 같은 값으로 수렴합니다. 48강의 리만합과 같은 구조입니다.
단계 3: 상에서도 같습니다. 가 각 정사각형을 넓이 배로 옮기므로
이고 극한을 취하면
48강에서 정적분을 정의할 때 쓴 논법 그대로입니다. 잘게 나누고, 각 조각에서 확인하고, 극한을 취합니다.
검산의 몬테카를로가 이것을 수치로 확인합니다. 개의 점으로 를 얻었고 참값이 입니다. 상대오차가 이며, 몬테카를로의 오차가 이므로 수준의 정밀도와 일관됩니다.
여기서 주의할 점이 있습니다. 이 논법은 넓이를 잴 수 있는 영역에서만 성립합니다. 병적인 집합에서는 다르며, 측도론이 그것을 다룹니다. 실용적으로는 문제가 되지 않습니다.
심화 2. 방향의 개념을 정확히 하고 을 소개하세요.
풀이. 문제 2에서 부호가 방향이라 했습니다. 정확히 정의합니다.
방향. 의 두 기저 와 가 같은 방향이라는 것은 인 것입니다.
이 관계가 동치관계이고 부류가 정확히 둘입니다. 표준기저와 같은 쪽을 양의 방향이라 합니다.
이면 반시계와 시계, 이면 오른손과 왼손입니다. 65강에서 외적의 방향을 오른손 법칙으로 정한 것이 이 개념입니다.
직교행렬이 두 부류로 갈립니다.
을 특수직교군 또는 회전군이라 합니다.
| 성질 | ||
|---|---|---|
| 길이 보존 | 예 | 예 |
| 방향 보존 | 아닐 수 있습니다 | 예 |
| 연결성 | 두 조각 | 하나로 이어짐 |
셋째 줄이 중요합니다. 안에서는 항등원에서 어느 회전으로든 연속적으로 갈 수 있습니다. 그러나 인 부분으로는 갈 수 없습니다.
물리적 의미가 있습니다. 강체를 움직여 거울상으로 만들 수 없습니다. 오른손을 아무리 돌리고 옮겨도 왼손이 되지 않습니다.
화학에서 거울상 이성질체가 다른 물질인 이유이며, 약물에서 한쪽만 효과가 있고 다른 쪽이 해로운 경우가 있습니다.
차원에 따라 사정이 다릅니다. 삼차원 물체를 사차원에서 움직이면 거울상으로 만들 수 있습니다. 차원이 하나 늘면 뒤집을 여유가 생깁니다. 이차원 물체를 삼차원에서 뒤집을 수 있는 것과 같습니다.
응용도 봅니다.
| 분야 | 방향이 쓰이는 곳 |
|---|---|
| 그래픽스 | 면의 앞뒤 판정 |
| 로봇공학 | 자세 표현 (쿼터니언) |
| 화학 | 손대칭성 |
| 물리 | 반전 대칭성의 깨짐 |
첫째 줄이 실용적입니다. 삼각형의 세 꼭짓점 순서로 행렬식을 계산하면 부호가 앞면인지 뒷면인지 알려 줍니다. 보이지 않는 면을 버려 렌더링을 빠르게 합니다.
심화 3. 행렬식과 대각합의 관계를 부피의 변화율로 설명하세요.
풀이. 78강 심화 5에서 야코비 공식을 언급했습니다. 기하로 봅니다.
미분방정식 를 생각합니다. 해는 이며, 초기 영역이 시간에 따라 어떻게 변하는지 봅니다.
시점의 부피 배율은 입니다. 그런데
이 성립합니다. 검산에서 두 경우를 확인합니다.
**이면 **입니다.
부피가 보존됩니다. 이 은 회전을 만들므로 당연합니다.
**이면 **입니다.
| e^ | ||
|---|---|---|
부피가 지수적으로 커집니다.
대각합과 행렬식의 관계가 여기서 드러납니다. 77강에서 둘 다 닮음 불변량이라 했는데,
| 양 | 뜻 |
|---|---|
| 부피 배율 | |
| 부피의 순간 변화율 |
하나는 배율이고 하나는 그 로그의 미분입니다.
이 결과가 나타나는 곳을 봅니다.
| 분야 | 진술 |
|---|---|
| 유체역학 | 이면 비압축 |
| 해밀턴 역학 | 리우빌 정리, 위상공간 부피 보존 |
| 동역학계 | 대각합이 음수면 수축 |
| 생성 모형 | 연속 정규화 흐름의 밀도 변화 |
첫째 줄에서 발산이 대각합입니다. 이므로 같은 진술입니다.
넷째 줄이 최근의 응용입니다. 연속 시간 흐름으로 밀도를 옮길 때 로그밀도의 변화가 의 적분으로 주어지며, 행렬식을 직접 계산하지 않아도 됩니다. 이 으로 줄어듭니다.
심화 4. 행렬식이 에 가까울 때 기하적으로 무슨 일이 일어나는지 논하세요.
풀이. 78강 심화 3에서 의 크기가 조건수와 무관하다고 했습니다. 기하로 보면 왜 그런지 분명해집니다.
행렬식은 부피이고 조건수는 모양입니다.
이 변환은 정사각형을 작지만 여전히 정사각형으로 만듭니다. 모양이 안 바뀌므로 조건수가 입니다. 부피는 작지만 어느 방향도 특별히 눌리지 않았습니다.
이것은 다릅니다. 한 방향은 그대로이고 다른 방향만 배로 눌립니다. 정사각형이 가느다란 막대가 됩니다. 조건수가 입니다.
| 변환 | 조건수 | 모양 | |
|---|---|---|---|
| \varepsilon^ | 작아지지만 닮은꼴 | ||
| 납작해집니다 |
행렬식이 더 작은 쪽이 조건은 더 좋습니다. 이 대비가 78강의 경고를 기하로 설명합니다.
88강의 특이값으로 정확히 표현됩니다. 이라 하면
행렬식은 곱이고 조건수는 비입니다. 곱이 작아도 비가 좋을 수 있고, 반대도 가능합니다.
실용적 결론입니다.
| 묻는 것 | 보는 양 |
|---|---|
| 부피가 얼마나 줄었나 | |
| 되돌릴 때 오차가 얼마나 커지나 | |
| 얼마나 특이에 가까운가 | \sigma_ |
세 질문이 다르므로 답도 다릅니다. 69강 심화 5에서 "역행렬이 없을 때 무엇을 하는가"를 다뤘는데, 그 판단에 필요한 것은 이 아니라 입니다.
심화 5. 행렬식이 부피 이외의 것을 세는 사례를 논하세요.
풀이. 78강 심화 4에서 여러 분야를 나열했습니다. 부피가 아닌 것처럼 보이는 사례를 봅니다.
행렬-트리 정리. 그래프의 라플라시안 에서 아무 행과 열을 하나씩 지운 행렬식이 신장 트리의 개수입니다.
정수를 세는 데 행렬식이 쓰입니다. 왜 부피가 개수가 됩니까. 신장 트리들이 격자의 기본 영역에 대응하고, 그 부피가 개수와 같기 때문입니다. 부피 해석이 여전히 살아 있습니다.
격자의 부피. 격자 의 기본 영역 부피가 입니다. **격자점의 밀도가 **이며, 격자 암호의 안전성 분석에 쓰입니다.
보간과 반데르몬드. 72강 심화 2에서 반데르몬드 행렬식이
임을 봤습니다. 점들이 얼마나 잘 흩어져 있는지를 재며, 이면 점이 겹칩니다. 이것도 "부피"로 읽힙니다. 다항식 공간에서 점 평가가 만드는 평행다면체의 부피입니다.
그람 행렬식. 벡터 에 대해 이면
입니다. 정사각이 아닌 경우에도 부피를 잽니다. 이면 가 직사각이라 행렬식이 없는데, 는 정의됩니다.
, 에서 확인합니다.
65강 심화의 라그랑주 항등식입니다. 넓이의 제곱이 맞습니다.
결정점 과정. 확률에서 점들이 서로 밀어내는 분포를 만들 때 행렬식을 확률로 씁니다.
부피가 클수록, 즉 점들이 흩어져 있을수록 확률이 높습니다. 다양성을 요구하는 추천이나 요약에서 쓰입니다.
정리합니다.
| 사례 | 세는 것 | 부피 해석 |
|---|---|---|
| 신장 트리 | 개수 | 격자 기본 영역 |
| 격자 | 밀도 | 기본 영역 부피 |
| 반데르몬드 | 점의 분산 | 평가 사상의 부피 |
| 그람 | 낮은 차원 부피 | 제곱 |
| 결정점 과정 | 다양성 | 부피가 곧 확률 |
결국 모두 부피입니다. 행렬식이 재는 것은 하나이며, 겉보기에 다른 문제들이 부피 계산으로 환원되는 것입니다.
심화 6. 이 단원을 부피의 관점으로 정리하고 다음 단원을 예고하세요.
풀이. 04단원 전체를 하나의 관점으로 묶습니다.
76강. 선형변환을 좌표 없이 정의했습니다. 부피 배율은 좌표와 무관한 양이므로 여기서 정의될 자격이 있습니다.
77강. 닮음 불변량을 찾았습니다. 행렬식이 불변인 이유가 부피 배율이기 때문입니다.
78강. 계산법을 세웠습니다. 세 성질이 부피의 성질(정규화, 확대, 납작하면 )이었습니다.
79강. 그 기하적 정체를 밝혔습니다.
남은 질문이 있습니다. 행렬식은 부피가 전체적으로 몇 배가 되는지 말하지만, 어느 방향이 얼마나 늘어나는지는 말하지 않습니다.
부피는 같은데 하는 일이 전혀 다릅니다. 하나는 아무것도 안 하고 다른 하나는 크게 왜곡합니다.
방향별 정보가 필요합니다. 그것이 남은 단원의 주제입니다.
| 단원 | 묻는 것 |
|---|---|
| 05 (80~83) | 길이를 보존하는 변환은 무엇인가, 가장 가까운 근사는 |
| 06 (84~89) | 어느 방향이 얼마나 늘어나는가 |
| 07 (90~92) | 그 정보로 계산의 안전성을 어떻게 재는가 |
**84강의 고유값이 "이 방향은 배"**이고, 그것들의 곱이 행렬식입니다.
77강에서 불변량으로 나열한 두 양이 고유값의 곱과 합이며, 84강에서 증명합니다. 심화 3의 관계도 여기서 설명됩니다. 곱의 로그가 합이므로, 부피의 로그 변화율이 대각합입니다.
88강의 특이값은 방향별 늘임을 직교기저에서 잽니다.
행렬식이 특이값의 곱이므로, 심화 4에서 본 대로 조건수와 독립적인 정보입니다.
이 단원이 요약을 다뤘고 다음 단원들이 세부를 다룹니다.
이 강의에서는 numpy만 씁니다. 넓이를 몬테카를로로 재어 행렬식과 맞추고, 부호와 방향의 관계를 확인하며, 삼중곱과 야코비안을 계산합니다. 기하적 주장은 수치 실험으로 확인하기 좋습니다.
import numpy as np
from math import cos, sin, exp
# --- 문제 1: 단위정사각형의 상은 두 열이 만드는 평행사변형 ----------------
A = np.array([[3.,1.],[1.,2.]])
u, v = A @ np.array([1.,0.]), A @ np.array([0.,1.])
print(u.tolist(), v.tolist()) # [3.0, 1.0] [1.0, 2.0]
print(float(u[0]*v[1] - u[1]*v[0]), "%.10f" % float(np.linalg.det(A)))
# 5.0 5.0000000000
# --- 문제 1: 몬테카를로로 넓이를 잽니다 ----------------------------------
rng = np.random.default_rng(7)
N = 4_000_000
img = A @ rng.random((2, N))
lo, hi = img.min(axis=1), img.max(axis=1)
q = rng.random((2, N)) * (hi-lo)[:,None] + lo[:,None] # 상을 감싸는 상자에 뿌립니다
back = np.linalg.solve(A, q) # 되돌려서 단위정사각형 안인지 봅니다
inside = np.mean((back[0]>=0)&(back[0]<=1)&(back[1]>=0)&(back[1]<=1))
print("%.4f %.4f" % (inside*float(np.prod(hi-lo)), abs(np.linalg.det(A))))
# 5.0002 5.0000
# --- 문제 2: 부호는 방향입니다 -------------------------------------------
R = np.array([[0.,-1.],[1.,0.]]) # 회전
F = np.array([[1.,0.],[0.,-1.]]) # 반사
Sh = np.array([[1.,2.],[0.,1.]]) # 전단
Pj = np.array([[1.,0.],[0.,0.]]) # 정사영
for name, M in [("회전",R), ("반사",F), ("전단",Sh), ("정사영",Pj)]:
print(name, "%.1f" % float(np.linalg.det(M)))
# 회전 1.0
# 반사 -1.0
# 전단 1.0
# 정사영 0.0
# --- 문제 3: 삼중곱은 3x3 행렬식입니다 -----------------------------------
a = np.array([1.,2.,0.]); b = np.array([0.,3.,1.]); c = np.array([2.,0.,4.])
print("%.10f" % float(np.linalg.det(np.column_stack([a,b,c]))),
"%.10f" % float(np.dot(a, np.cross(b,c)))) # 16.0000000000 16.0000000000
print("%.10f" % float(np.dot(np.cross(a,b), c))) # 16.0000000000
# --- 문제 4: 곱은 배율의 합성입니다 --------------------------------------
B = np.array([[2.,0.],[0.,0.5]])
print("%.8f %.8f %.8f" % (np.linalg.det(A), np.linalg.det(B), np.linalg.det(A@B)))
# 5.00000000 1.00000000 5.00000000
print("%.8f" % (np.linalg.det(A)*np.linalg.det(B))) # 5.00000000
for k in [1,2,3]:
print(k, "%.8f %.8f" % (np.linalg.det(np.linalg.matrix_power(A,k)),
np.linalg.det(A)**k))
# 1 5.00000000 5.00000000
# 2 25.00000000 25.00000000
# 3 125.00000000 125.00000000
# --- 문제 3: 차원마다 배율이 다릅니다 ------------------------------------
for n in [2,3,5]:
print(n, "%.1f" % (2.0**n), "%.1f" % float(np.linalg.det(2.0*np.eye(n))))
# 2 4.0 4.0
# 3 8.0 8.0
# 5 32.0 32.0
# --- 문제 5: 극좌표의 야코비안은 r 입니다 --------------------------------
def polar_jac(r, th):
return np.array([[np.cos(th), -r*np.sin(th)], [np.sin(th), r*np.cos(th)]])
for (r, th) in [(1.0,0.0), (2.0,np.pi/3), (0.5,1.2)]:
print("%.6f %.6f" % (np.linalg.det(polar_jac(r,th)), r))
# 1.000000 1.000000
# 2.000000 2.000000
# 0.500000 0.500000
# --- 심화 3: det(e^{tM}) = e^{t tr M} ------------------------------------
Mg = np.array([[0.,1.],[-1.,0.]]) # tr = 0 (회전 생성자)
for t in [0.0, 0.5, 1.0, 2.0]:
E = np.array([[cos(t), sin(t)], [-sin(t), cos(t)]])
print("%.4f %.8f %.8f" % (t, np.linalg.det(E), exp(t*np.trace(Mg))))
# 0.0000 1.00000000 1.00000000
# 0.5000 1.00000000 1.00000000
# 1.0000 1.00000000 1.00000000
# 2.0000 1.00000000 1.00000000 <- 부피 보존
Mh = np.array([[1.,0.],[0.,2.]]) # tr = 3
for t in [0.0, 0.5, 1.0]:
E = np.diag([exp(t), exp(2*t)])
print("%.4f %.8f %.8f" % (t, np.linalg.det(E), exp(t*np.trace(Mh))))
# 0.0000 1.00000000 1.00000000
# 0.5000 4.48168907 4.48168907
# 1.0000 20.08553692 20.08553692 <- 지수적으로 팽창
실행하면 주석과 같은 값이 나옵니다. 다섯 곳을 짚어 둡니다.
첫째가 이 강의의 핵심 확인입니다. **몬테카를로로 잰 넓이가 **이고 입니다. 점을 개 뿌려 얻은 값이라 오차가 수준이며, 몬테카를로의 수렴 속도 과 일관됩니다. 행렬식이 정말 넓이라는 것을 계산이 아니라 측정으로 확인했습니다.
둘째, 네 변환의 부호가 예상대로입니다. 회전과 전단이 , 반사가 , 정사영이 입니다. 전단이 인 것이 눈여겨볼 만합니다. 도형이 크게 기울어지는데 넓이는 그대로입니다.
셋째, 삼중곱과 행렬식이 으로 같고, 도 같습니다. 65강의 순환 성질이 행렬식의 짝순열 성질입니다.
넷째, 곱과 거듭제곱이 모두 배율의 합성으로 설명됩니다. 차원별 배율에서 이 확인되며, 이 커질수록 같은 확대가 부피를 훨씬 크게 바꿉니다.
다섯째가 심화 3의 결과입니다. 회전을 만드는 은 대각합이 이고 부피가 언제나 입니다. 는 대각합이 이고 에서 부피가 배입니다. 대각합이 부피의 순간 변화율입니다.
코드로 할 수 없는 일도 분명히 해 둡니다. 몬테카를로는 확률적 추정이지 증명이 아닙니다. 넓이 배율이 모든 영역에서 같다는 주장은 심화 1의 극한 논법이 맡습니다. 또 이 실험은 가 가역이라 로 되돌릴 수 있었기에 가능했으며, 특이행렬에서는 상이 선분이라 넓이가 이고 이 방법이 통하지 않습니다.
정답.
| 기호 | 읽는 법 | 뜻 |
|---|---|---|
| $\lvert \det A\rvert $ | 부피 배율 | 넓이·부피가 몇 배가 되는지입니다 |
| 방향 | 뒤집히는지 여부입니다 | |
| 특수직교군 | 인 직교행렬입니다 | |
| 야코비 행렬 | 미분입니다 | |
| 야코비안 | 국소 부피 배율입니다 | |
| 그람 행렬식 | Gram | 낮은 차원 부피의 제곱입니다 |
| 리우빌 정리 | Liouville | 위상공간 부피 보존입니다 |
이것으로 04단원을 마칩니다. 76강에서 좌표를 벗어나 선형변환을 정의하고, 77강에서 표현이 여럿임과 불변량을 밝히고, 78강에서 행렬식을 세우고, 79강에서 그것이 부피 배율임을 확인했습니다.
다음 80강부터 시작하는 05단원은 길이와 각도를 보존하는 변환을 다룹니다. 이 단원의 행렬식이 부피 전체를 요약했다면, 05단원은 직교성을 도구로 삼아 가장 가까운 근사를 찾습니다. 64강의 정사영과 74강의 네 부분공간이 거기서 하나로 만나며, 82강의 최소제곱이 그 결론입니다.