역수와 역행렬

수학 이야기 2017. 8. 12. 15:48

3의 역수는? 1/3


그럼 '역수'란? ...


역수를 구하는 방법은 알아도 역수가 무엇인지는 모르는 경우가 많다.


마찬가지로 역행렬이 무엇인지 물어보면,


학생 1) 1/(ad-bc) * [d -b; -c a]


학생 2) 곱해서 항등행렬(I)이 나오는 행렬


물론 두번째 대답이 정확한 대답이다. 만일, 이와 같이 바로 답할 수 있다면 이 학생의 수학실력이나 앞으로의 공부에 대해서는 걱정할 필요가 없을 듯 하다.


그런데, 학생 2와 같이 대답한 경우에도 사실은 한번 더 확인할 필요가 있다. 그걸 그냥 지식처럼 알고 있는 것인지, 아니면 정말 이해한 것인지


만일 대학생에게 두 행렬의 곱 AB의 역행렬이 무엇이냐고 물어보면 아마도 대부분 B-1A-1라고 자신있게 대답할 것이다 (물론, A-1B-1인가? 하는 학생도 분명 있다). 하지만, B-1A-1가 역행렬인 이유를 증명해봐라 하면 대부분 당황해 한다.


'증명'이라는 말만 들어도 사고기능이 정지하는 경우도 있고 역행렬의 의미를 제대로 이해하고 못한 경우도 있을 것이다. 하지만 그 증명은 정말 간단하다.


증명: AB에 B-1A-1를 곱하면 AB * B-1A-1 = I이다. 따라서, AB의 역행렬은 B-1A-1이다. 끝.


역행렬의 정의를 정확히 이해하고 있다면 당연히 풀수 있는 문제이다. 또한 역행렬의 정의를 안다면 AB의 역행렬이 A-1B-1인지 B-1A-1인지 혼동할 이유도 암기할 이유도 없다. 그리고, 정의로부터 kA의 역행렬은 1/kA-1, ABC의 역행렬은 C-1B-1A-1, PAP-1의 역행렬은 PA-1P-1, 대각행렬 diag{c1, c2, ..., cn}의 역행렬은 diag{1/c1, ..., 1/cn}임도 손쉽게 알 수 있다.


☞ 어떤 수의 역수는 자신과 곱해서 (곱셈에 대한 항등원인) 1이 나오는 수입니다.


☞ 2018.8.14일자 댓글을 참고로 적습니다: 두 행렬의 곱 P = AB가 full-rank square matrix 일 때 inv(P)가 존재하고, 또한 A와 B 각각은 full-rank square matrix가 아닐수도 있으므로 inv(A)나 inv(B)는 존재하지 않을 수도 있습니다. 따라서 만약 AB의 역행렬이 존재한다면 그것의 정확한 표기는 inv(B)*inv(A)가 아니라 inv(AB) 라고 해야합니다.


by 다크 프로그래머


'수학 이야기' 카테고리의 다른 글

아이와 수학 공부하기  (5) 2017.11.15
역수와 역행렬  (11) 2017.08.12
Gram–Schmidt(그람-슈미트) 직교화  (12) 2017.05.17
곱셈과 덧셈  (2) 2017.04.26
  • 질문 2017.08.15 09:35 ADDR 수정/삭제 답글

    안녕하세요. 오랜만에 수학 보면서 블로그 방문 자주 하고 있습니다. 먼저 감사드립니다.
    mahalanobis distance를 보다 역행렬 올려주셔서 두개 묶어서 질문 드리려고 합니다.
    1차원의 MD는 이해가 되었는데, 2차원의 MD에서의 식이 잘 이해가 되지 않아 혹시 아실까 해서 여쭤봅니다. transpose와 공분산의 역행렬은 왜 들어가는지..모르겠습니다..ㅠㅠ

    • BlogIcon 다크pgmr 2017.08.15 21:26 신고 수정/삭제

      안녕하세요. 질문하신 내용에 대한 정확한 설명은 다소 긴 수학적 설명과 배경설명을 필요로 합니다. 간단히 댓글로 설명하기에는 어려움이 있습니다. 일단 직관적으로만 설명해보면 열벡터 x가 있을 때 x^T*x는 x의 길이(norm)의 제곱이 됩니다. 따라서, 평균이 벡터 m이라고 하면 (x-m)^T*(x-m)은 데이터 x와 평균까지의 거리^2(Euclidean distance)입니다. 그런데, MD는 데이터와 평균까지의 거리를 그 방향으로의 표준편차로 나눈 값입니다. 공분산행렬의 역행렬을 곱하는 것은 나누기의 의미를 갖습니다. 즉, 공분산 행렬 Σ에 대해, (x-m)^T * Σ^-1 * (x-m)은 x와 평균관의 거리의 제곱을 분산으로 나누는 의미가 됩니다. 따라서 여기에 sqrt(제곱근)를 씌우면 MD가 됩니다.

  • 질문2 2017.08.15 15:47 ADDR 수정/삭제 답글

    안녕하세요, 저도 요즘 아주 블로그 잘 보고 있습니다. 데이터 분석을 하던중 MLE(최대가능도)에 대한 이론이 많이 나오더라구요..... MLE,,,이해할 듯 말듯 합니다... 이론적으로 이해를 하려니 와닿지가 않고,, 예를 들어 어떻게 이해해야할까요?

    • BlogIcon 다크pgmr 2017.08.15 21:27 신고 수정/삭제

      MLE에 대해서는 http://darkpgmr.tistory.com/119 글을 보시면 좋을 것 같습니다.

  • 진지충 2018.08.14 13:04 ADDR 수정/삭제 답글

    두 행렬의 곱 P = AB가 full-rank square matrix 일 때 inv(P)가 존재하고, 또한 A와 B 각각은 full-rank square matrix가 아닐수도 있으므로 inv(A)나 inv(B)는 존재하지 않을 수도 있습니다. 따라서 만약 AB의 역행렬이 존재한다면 그것의 정확한 표기는 inv(B)*inv(A)가 아니라 inv(AB) 라고 해야합니다.

    • BlogIcon 다크pgmr 2018.08.14 13:38 신고 수정/삭제

      네 맞습니다. 좋은 의견 감사합니다. 다른 분들도 참고할 수 있도록 본문 말미에 말씀하신 내용을 추가하였습니다.

    • 구민준 2018.11.19 22:32 수정/삭제

      ㅋㅋㅋㅋ 이 댓글 보고나서 중학교였나 고등학교때 수없이 풀었던 5지선다형 문제가 생각나서 웃었습니다. ABA-1 = A-1BA 같은거 5개 있는 문제요.

    • BlogIcon 다크pgmr 2018.11.28 12:37 신고 수정/삭제

      ^^

  • 투덜2 2019.04.02 21:56 ADDR 수정/삭제 답글

    행렬 A, B가 각각 m x n, n x q 차 행렬이라면 r(A) + r(B) - n <= r(AB) <= min{r(A),r(B)} 입니다. 여기서 A,B가 정방행렬 즉 n x n 차 행렬 그리고 AB가 full-rank matrix라면 즉 r(AB) = n 이 되고, n <= min{r(A),r(B)} 이 됩니다. 그런데 r(A), r(B)가 n을 초과할 수는 없으므로 r(A) = r(B) = n이 됩니다. 즉 AB의 역행렬이 존재한다면 inv(B) * inv(A)라고 써도 될 것 같은데요.

    • BlogIcon 다크pgmr 2019.04.08 09:07 신고 수정/삭제

      네.. A, B가 모두 정방행렬이라는 조건이 있다면 그렇게 써도 될 것 같습니다.

  • jeremy 2022.02.01 05:54 ADDR 수정/삭제 답글

    항등원과 역원을 왜 배우는지 학생들이 모르고 배운다는게 문제인거 같아요. 학교 수업에서 왜라는 질문을 좀더 하면 좋을텐데.

    새로운 수가 나오면 새로운 수로 할수 잇는 연산이 나오고,
    연산을 알게 되면 이를 응용해서 미지수가 포함된 식을 만들수 있고,
    이식을 전개 하기 위해서는 식을 미지수 중심으로 정리해야 하고,
    그렇게 하기 위해서는 미지수에 가해진 연산을 항등원과의 연산으로 바꿔야 하고.
    그러기 위해서는 다시 역원을 등식에 가해야 한다는....

    행령, 로그, 지수, 복소수 모든 새로운 수 개념에 다 적용된다는 것을 왜 고등학교 수업 시간에는 듣지 못하는걸까요?