안녕하세요. 이번에는 인강계의 전설적인 사건 중 하나로 꼽히는 박승동 복행렬 사건을 파헤쳐 보려고 합니다.
먼저 ‘전설의 복행렬 사건’부터 간략히 설명드리겠습니다.
사건의 발단은 박승동 강의를 듣던 한 학생의 질문에서 시작됩니다. 질문 전문은 다음과 같습니다.
(출처: https://mlbpark.donga.com/mlbpark/b.php?b=bullpen2&id=1956747)
—------------------------------------------------------------------------------------------------------------------
전문:
수험생 : 일단 AB가 단위행렬 이라면 BA도 단위행렬 이라는 것을 성립함을 알고 있습니다. 그렇다면 식은 AB=BA=E 라는 식이 성립함이지요 그런데 이런 명제가 하나 있습니다. (A+B)(C+D)=E 에서 C+D의 역행렬은 A+B이다. 그런데 이상하게도 이 명제는 거짓입니다. 같은 행렬 곱하기 행렬이고 그 괄호 안에 덧셈이라는 연산만 더 해줄뿐인데 위에 식은 맞고 아래식은 틀립니다. 일단 여기서 (C+D)(A+B)=E 라는 것은 성립하지 않기 떄문에 역행렬이 아니라는데요 제가 듣기론 행렬 A+B=a C+D=b 라고 치환해서 계산할수 없을 뿐더러, 복행렬 때문이라고도 하는데요 복행렬이 도대체 뭔가요? 그리고 저 두 식의 차이점이 뭔가요? 정말 궁금합니다 ~!
박승동 : 안녕하세요. 수리영역 박승동 입니다. 죄송합니다. 저의 강의 수강내용 질문에 답변을 합니다,. 임의로 아무 학생의 것을 다 답변드리지 못함을 용서 하세요, 죄송합니다. 아닙니다. 어디서 이상한 것을 배운 것으로 보입니다. 복행렬이 무엇인지요? 그런 것은 처음 듣습니다. 바르게 학습 하셔야 합니다. 감사합니다.
다시 수험생 : 선생님의 수강학생이 아니라서 답변을 못 달아주셔도 됩니다. 다만 제 글을 읽어주시기 바랍니다. 저번에 제가 물어봤던 그 명제 A(A+B)=E 일때 (A+B)의 역행렬은 A이다. 이건 거짓입니다. 근데 선생님은 당연히 참이라고 하셨습니다. 그때 물어볼 때 복행렬도 모르시더군요. A(A+B)=E 일때 A는 단행렬 이라고 하고 A+B는 복행렬 이라고 합니다. 게다가 A(A+B)=E 일때 A+B의 역행렬은 A 이다. 이거 거짓입니다. A(A+B)= A^2+AB=E 라고 해봅시다 (A+B)A= A^2+BA 인데요 AB=BA가 같다는 조건도 없는데 저거의 교환법칙이 성립한다고 보십니까? 반례 하나 세워드리고 싶습니다만 좀 쉽지가 않습니다. 찾으면 다음에 꼭 보여드리겠습니다;; 전 이상한것을 배워온것이 아닙니다. 아마 바르게 다시 행렬을 학습하셔야 할 분은 선생님인거 같습니다. 참고로 제 수학스승님은 서울대 경영학과 89학번 박기원 수학선생님 이시고요. 선생님이 고등학생떄 수학공부 하실때 책 이름이 수학의 왕도였나? 동경대 수학교수가 쓴 책에서 저것을 봤다고 하더군요. 그래서 강력히 주장하시는 겁니다. 참고로 제 선생님이 서울대 수학과 교수님 한테 확실히 알기 위해 작년에 물어본겁니다.
다시 박승동: 안녕하세요. 수리영역 박승동 입니다. 참 이상한 학생입니다. 바르게 공부하세요, 어디서 이상한 것을 배웠는지는 모르겠지만 수학을 전공한 시람과 비전공자의 확인도 안된 이상한 정보를 믿는지요? 더 이상의 답변의 가치가 없어 보입니다. 학생이 잘 모르고 있는 것은 E 라고 하는 단위행렬의 정의 그리고 역행렬의 정의 입니다. 복행렬이라고 하는 것은 있지도 않습니다. 어디서 그런 것을 배웠는지 좀 이상 합니다. 경영학을 전공한 사람이 수학을 전공한 사람과 비교가 되는지요? 정신차리고 공부하세요. 나는 서울대학교 수학교육학과 79학번이고 수석 졸업생 입니다. 경영학교 졸업생의 그 이상한 것을 믿는 학생이 안타깝습니다. 어떻게 그런 이상한 말도 안되는 것을 믿는지요? 그분이 눈이 3개인 사람이 정상이다라고 하면 믿을 학생으로 보입니다. 감사합니다.
—----------------------------------------------------------------------------------------------------------------------------
사건의 요약은 이렇습니다.
행렬을 공부하던 학생이 다소 황당한 질문을 합니다.
(A+B)(C+D) = E일 때, (A+B)의 역행렬이 (C+D)가 아니라는 것
학생은 스스로도 이 질문이 단순치 않다는 것을 아는 듯, A+B=a, C+D=b로 치환하면 문제가 쉽게 풀린다고 언급합니다. 하지만 곧바로 “그렇게 풀면 안 된다, 이유는 복행렬 때문”이라며 복행렬이 무엇인지 묻습니다. 박승동은 이 질문을 대수롭지 않게 넘겼지만, 학생은 계속 집요하게 파고들며 오히려 “복행렬도 모르냐”는 식으로 시비(?)를 겁니다. 결국 박승동은 “대답할 가치가 없다”며 답변을 마칩니다.
여기서 한 가지 의문이 생깁니다. 학생이 수학적으로 엉터리 주장을 한 것은 분명하지만, ‘복행렬’이라는 정체불명의 용어는 어디서 나온 것일까요? 학생이 단순히 지어낸 것 같지는 않고, 어딘가에서 들은 것을 확신에 차서 말한 듯합니다. 학생의 말에 따르면, 서울대 경영학과 89학번 박기원 선생님에게 배웠다고 하는데, 그렇다면 박기원 선생님이 잘못 가르친 것일까요? 아니면 학생이 오해한 것일까요? 이 사건 이후 많은 사람들이 ‘복행렬’ 논쟁의 미스터리를 풀려고 했지만, 아직 명확한 결론은 나오지 않았습니다. 저는 이번에 이 의문을 풀어보려 합니다.
—--------------------------------------------------------------------------------------------------------------
먼저, 학생이 주장한 내용 중 “A(A+B)=E이면 AB=BA가 항상 성립하지 않는다”는 말부터 살펴보겠습니다.
이 주장은 틀렸습니다.
실제로 A(A+B)=E이면, A^{-1}=A+B 이고, B=A^{-1}−A 입니다. 따라서 AB = A(A^{-1} - A) = E - A^2, BA = (A^{-1} - A)A = E - A^2, 이므로 AB=BA가 항상 성립합니다.
즉, 학생의 주장은 수학적으로 완전히 틀렸고, 박승동이 맞습니다.
—--------------------------------------------------------------------------------------------------------------
이제 본격적으로 ‘복행렬’의 정체를 추적해 보겠습니다.
‘복행렬’은 한자로 ‘複行列’이며, 일본어에서 bimatrix를 뜻하는 표현입니다.
수학에서 ‘bimatrix’라는 용어는 크게 두 가지 맥락에서 사용됩니다.
Bimatrix game – 게임이론에서 사용
Sylvester bimatrix equation – 행렬 방정식의 한 종류
정황상 이 사건에서 말한 복행렬은 ‘bimatrix game’이 아니라 ‘Sylvester bimatrix equation’일 가능성이 큽니다.
일반적으로 Sylvester equation은 다음과 같습니다.
AX+XB=C
여기서 A,B,C는 n×n 행렬입니다.
A와 −B의 고유값이 겹치지 않으면 해 X가 유일하게 존재하지만, 고유값이 겹치면 해가 없거나 무수히 많아집니다.
이 식은 다음과 같이 변형할 수 있습니다.
(I⊗A+B^T⊗I) vec(X)=vec(C)
여기서 ⊗는 크로네커 곱, vec()는 행렬을 1차원 벡터로 펴는 연산입니다.
아마 학생은 이 방정식의 표기법(⊗,vec)을 무시하고,
(A+B)X=C
꼴로 단순화해서 생각했을 수 있습니다. 특히 C=I인 경우
(A+B)X=I
가 되는데, 이를 “(A+B)의 역행렬이 항상 존재하지 않을 수 있다”는 식으로 잘못 이해했을 가능성이 있습니다.
즉, 학생은 기초 선형대수학 지식 없이,
“AX=I는 X=A^{-1}로 풀리지만, (A+B)X=I는 그렇지 않다. 그 이유는 (A+B)가 복행렬이기 때문이다.”
라고 오해한 것으로 보입니다.
좀 더 개연성 있는 추측을 해 보자면, 학생의 스승이 “AX+XB=I 같은 형태는 유일한 해가 항상 존재하지 않는다”는 사실을 설명하려다, 학생이 이를 ‘(A+B)의 역행렬이 없다’는 식으로 곡해했을 가능성이 큽니다.
실제로 Sylvester equation은 학부 선형대수학에서 다루지 않고, 대학원 수준의 행렬해석학(matrix analysis)이나 제어이론(control theory)에서 등장하는 주제여서 대부분의 전공자들도 처음 들어보는 개념일 것입니다. 학생의 스승이 경영학과 출신이라고 했는데, 만약 계량경영학(operations research)이나 제어이론을 공부했다면 Sylvester equation을 접했을 가능성이 높습니다. 그리고 이를 제자에게 설명하는 과정에서 ‘복행렬’이라는 단어가 전해진 것이라고 조심스럽게 추측을 해 봅니다.
—----------------------------------------------------------------------------------------------
결국 복행렬, 정확히 말하면 bimatrix는 라는 개념은 존재했습니다. 다만, 그 모습은 학생이 주장한 것처럼 (A+B)같은 금단의 역행렬이 아니라, Sylvester equation이라는 행렬방정식 속에 조용히 숨어 있던 개념이었죠. 즉, 학생이 들고 나온 ‘복행렬’은 원본과는 판이하게 왜곡된 형태였지만, 그 뿌리는 실제 수학 속에 존재했던 셈입니다. 다만 학생의 오해로 인해, 원래의 의미를 잃어버리고 정체불명의 개념으로 재탄생 해버렸던 것이었습니다.