컴퓨터와 수학을 공부해야 할까? 3편

컴퓨터와 수학을 공부해야 할까? 3편

2019, Aug 16    

2편을 읽고 와 주세요~

나는 옛날부터 무엇인가 공부를 할 때 그것에 얽힌 역사에 대해 알아보는 것을 좋아했다. 사실, 뭐 역사학도들만큼은 아니겠지만, 공대생치고는 역사 공부를 좋아하는 것 같다. 어릴 적 부모님께서 사주신 “이문열 이희재 만화 삼국지”시리즈를 읽고부터 그리 된 거 같은데, 심지어 게임도 역사나 신화적인 요소를 차용한 작품들을 좋아한다. 뭐 예를 들어 “어쌔신 크리드”나 “갓 오브 워” 같은…

<갓 오브 워 3> 신화에 대해 가르쳐주진 않고 거기 나오는 신들을 썰고 패기만 한다

여튼 이런 태도는 뭘 하든 도움이 되면 되었지 피해는 주지 않는다고 생각한다. 평소 나는 취미로 기타를 연주하는데, 어떤 음악가의 곡을 커버할 때 그에게 영향을 주었던 당시 시대상과 주류 음악, 선배 세대의 음악에 대해 알아본다. 이는 아티스트의 음악을 이해하고 연주하는 데 많은 도움이 된다.
문학도 마찬가지다. 1964년 미국의 역사학자 겸 고등학교 선생님이었던 핸리 리틀필드(Henry Littlefield)는 <오즈의 마법사: 포퓰리즘에 대한 우화 (The wizard of Oz: Parable on Populism)>라는 글을 기고했다. 결론만 말하자면, 그는 이 소설에 작가 프랭크 바움(Frank Baum)이 숨겨놓은 포퓰리스트적 은유(populist methaphor)를 밝혀냈고, 이후 학자들은 그의 논의를 확장하고 공고히 했다. 재미있는 점은, 프랭크 바움이 생전 공화당원으로 포퓰리즘의 정치적 이상을 지지하지 않았다고 평가되었고, 그 또한 그의 소설은 오직 아이들의 즐거움을 위해서만 쓰여졌다고 이야기했다는 것이다. 과연 그의 생각은 진짜 무엇이었을까? 그는 정말 포퓰리스트였을까, 아니면 후대 사람들이 포퓰리즘을 그의 소설에 억지로 끼워맞춘 것 뿐일까?

이렇듯, 음악이든 소설이든, 무엇인가가 만들어지고 발전된 역사의 맥락을 아는 것은 그것을 이해하는 범위를 넓혀주고 생각할 거리를 던져준다. 무엇보다, 정말 재미있다. 아니면 ㅈㅅ… 뭐 재미없다고 생각할 수 있지만, 과학천재 오타쿠가 아닌 이상 최소한 과학이나 수학 그 자체보다는 그에 얽힌 이야기를 듣는 게 더 재밌을 확률이 높을 것이다.

그래서 지금부터 그 이야기를 하려 한다. 컴퓨터라는 게 어떻게 갑자기 이 세상에 나타났는지에 대해 말이다. 이런 얘기를 하면 꼭 재미없는 이야기를 하는 사람들이 있다. 컴퓨터는 계산(Compute)을 하는 도구이고, 그렇게 볼 때 최초의 컴퓨터는 주판이니 어쩌니… 그보다는, 우리가 지금 “컴퓨터”하면 머릿속에 딱 생각나는 전자기기- 데스크탑, 노트북, 스마트폰, 태블릿컴퓨터 등등. 이런 마법같은 기계들에 대해 이야기하려 한다. 아마 이쪽이 좀 더 흥미롭지 않을까. 그리고 당분간 수학에 대한 이야기도 빼놓으려 한다. 수학의 역사에 대해서는, 물론 이 이야기도 흥미롭지만, 이 글은 어디까지나 “컴퓨터”에 초점이 맞춰져 있으니까.

Turing, the father of Computer Science

예전에 친구가 어떤 교양 수업을 들었는데, 교수님께서 각자 공부하는 전공 학문의 “아버지”에 대해 조사해오라고 이야기했다 한다. 이 이야기를 듣고 친구에게 내가 한번 수강생들이 조사해온 “아버지”란 작자분들이 누군지 맞춰보겠다고 이야기했다. 그 대화가 대충 이랬던 거 같다.

친구: 화학?
나: 라부아지에. 나 화학과였음 (한때)
친구: 그럼 전기공학은?
나: 맥스웰이나 패러데이겠지 머
어 친구: 다들 맥스웰로 조사해왔네… 그럼 다음. 산업공학의 아버지는?
나: 야 그걸 어캐 알어
친구: 와 산업공학 무시하네 쓰레기 ㅉㅉ
나: 망할 누군데 그게
친구: 프레드릭…타일러? 라는데?
나: 아 몰라 다음

(절대로 산업공학과 산업공학도 여러분을 무시하는 게 아닙니다. 저희 무지로 모르고 살았을 뿐…)

이런 의미없는 대화가 이어지다가 친구가 “컴퓨터과학의 아버지”를 물었을 때, 자신있게 앨런 튜링(Alan Turing)의 이름을 이야기하려 하다 순간 멈칫했다. 그가 컴퓨터과학의 아버지라면, 컴퓨터과학의 근간을 함께 닦은 다른 과학자들은 왜 컴퓨터과학의 아버지가 아닌 거지? 최초로 “프로그래밍 가능한 컴퓨터”라는 개념을 생각해낸 찰스 베비지(Charles Babegge), 세계 최초의 “컴퓨터 프로그램”을 작성한 에이다 러브레이스(Ada Lovelace), 현대 컴퓨터의 구조를 창시한 존 폰 노이만(Johann von Neumann) 등, 컴퓨터, 혹은 컴퓨터과학의 아버지라 불릴 만한 사람은 차고 넘친다. (이 사람들의 이야기도 재밌는데, 그 이야기는 나중에 또 적도록 하겠다)그렇다면 왜 하필 그 중 앨런 튜링이 많은 사람들에게 “컴퓨터과학의 아버지”라 불리는 걸까.

~~그야 당연히 킹갓구글신께서 그렇게 말씀하셨기 때문이다~~

이 이야기를 하기 전에, 먼저 앨런 튜링이라는 사람에 대해 먼저 알아볼 필요가 있다. 그는 대체 어떤 사람일까? 아마 많은 사람들이 이미테이션 게임이라는 영화로 그를 이미 접했을 것이다. 튜링은 수학, 전산학, 암호학, 심지어 생물학까지 다양한 분야에서 업적을 남긴 위대한 학자였다. 그는 1912년 영국에서 태어나 1934년 킹스 칼리지에서 수학 학사를 취득했고, 1938년 프린스턴 대학교에서 박사학위를 받았다. 그가 한국나이로 28살 때 박사학위를 딴 셈이므로 다른 천재들에 비하면 박사학위를 그렇게 빨리(??) 취득한 편은 아니다. 천재들을 찾아보면 20대 초반에 박사학위를 취득한 케이스가 수두룩한데, 난 학위도 없고 20대 중반인데 자살해야하나? 튜링이 그런 스타일은 아니었던 것 같다. 하지만 그는 박사학위를 따기 2년 전 이미 인류의 역사를 바꿀 논문을 내놓은 상태였다. 확실히 천재는 천재임이 틀림없다.

1938년 알론조 처치(Alonzo Church, 이 천재도 나중에 또 나오니 이름을 기억해 두길) 의 지도로 박사학위를 딴 그에게 당시 프린스턴의 교수였던 폰 노이만은 박사후 연구원 자리를 제안했다. 그러나 튜링은 이 제안을 거절하고 귀국했고, 현재 영국 정보통신본부(Government Communications Headquarters: GCHQ)의 전신인 정부 암호 연구소(GC&CS)에서 근무했다. 이곳에서 그는 나치 독일의 암호 생성기 “에니그마”의 해독에 주력했고, 폴란드의 초기 에니그마 해독 기계 봄바(Bomba)를 기반으로 에니그마를 해독하는 기계를 개발했다. 이 기계를 통해 영국과 연합국은 2차 세계대전에서 승기를 잡을 수 있었고, 튜링은 이 공로로 전쟁이 끝난 1946년 대영제국 훈장을 수여받았다. 그가 여기서 남긴 암호 해독 관련 업적은 전후 50년 후에야 공개될 정도로 중요한 정보로 취급되었다.

그러나 영화에서도 나오듯 그는 20세기 중반에 살았던 동성애자였고, 그 시기 영국은 동성애가 불법이었다. 전쟁 영웅이자 천재 컴퓨터과학 / 수학자였음에도 불구하고 그는 범죄자로 낙인찍혔고, 감옥에 가지 않기 위해 화학적 거세를 선택했다. 우울증에 시달리던 그는 1954년 청산가리 중독으로 사망했는데, 그가 영국 정부에게 사과를 받기까지는 50년이 넘는 시간이 걸렸다.

다행인 점은, 이젠 그의 명예가 회복되어 2013년 영국 총리가 직접 사과한 바 있으며, 두 달 전(2019년 7월) 새 영국은행 50파운드 지폐 초상의 주인공으로 선정되었다는 것이다. 이런 걸 볼 때마다 천재의 운명은 기구하다는 생각이 든다. 21세기 현재 그는 위대한 학자로 칭송받고 있고, 그의 이름을 따 제정된 튜링상은 컴퓨터공학계의 노벨상이라 불린다. 그가 사후에 받은 이런 대접을 생전에 받고, 하고 싶은 연구를 말년까지 맘껏 할 수 있었다면 인류 문명은 한 단계 더 발전할 수 있지 않았을까.

천재연기 전문 베네딕트 컴버배치가 분한 앨런 튜링. 솔직히 튜링보다는 셜록 같았다

튜링 머신

본론으로 돌아가서, 앨런 튜링이 컴퓨터과학의 아버지라 불리는 이유를 살펴보자. 위에서 그가 쓴 “인류의 역사를 바꾼” 1936년 논문에 대해 잠깐 언급하고 넘어갔다. 그가 박사 학위를 받기도 전에 쓴 이 논문의 제목은 <On Computable Numbers, with an Application to the Entscheidungsproblem>인데, “계산가능한 수에 대하여, 그리고 그것의 결정 문제(Entscheidungsproblem)로의 적용” 정도로 번역할 수 있다. 컴퓨터와 1도 관련없어 보이는 제목을 가진 이 논문이 왜 갑자기 소개된 걸까. 이는 논문이 “튜링 머신”이라 불리는 수학적 모델을 제시했고, 현재 우리가 사용하는 모든 컴퓨터는 이 모델을 기초로 만들어졌기 때문이다.

그러면 도대체 튜링 머신은 무엇이고, 결정 문제(Entscheidungsproblem)는 또 무엇이며, 계산가능한 수라는 것은 뭘 의미하는 걸까. 결정 문제는 1928년 다비드 힐베르트(David Hilbert)가 제시한 개념으로, 대충 설명하자면 어떤 명제를 집어넣었을 때 특정 알고리즘을 거쳐 그 명제가 참인지 거짓인지를 알려주는 기계를 만들 수 있을까에 대한 의문이었다. 튜링은 튜링 머신이라는 가상의 기계를 통해 이 문제를 부정적인 방향으로 해결하는 데 성공했다. 정확히는 그러한 기계가 절대로 만들어질 수 없다는 것을 증명했다. 그렇다면, 이 문제가, 그리고 이 가상의 기계가 어떻게 현대 컴퓨터까지 이어질 수 있었을까? 그리고 튜링이 이 기계를 통해 증명한 결과는 도대체 왜 중요하고, 또 대단한 결과일까? 이 질문들에 답하기 위해 일단 우리는 “튜링 머신”이 대체 무엇인가에 대해 알아볼 필요가 있다.

4편에서 계속..



출처:

  1. Wikipedia, Political interpretations of The Wonderful Wizard of Oz. https://en.wikipedia.org/wiki/Political_interpretations_of_The_Wonderful_Wizard_of_Oz
  2. Wikipedia, L. Frank Baum. https://en.wikipedia.org/wiki/L._Frank_Baum
  3. Wikipedia, Alan Turing. https://en.wikipedia.org/wiki/Alan_Turing
  4. Famous Scientist, John Von Neumann. https://www.famousscientists.org/john-von-neumann/
  5. Wikipedia, Government Communications Headquarters. https://en.wikipedia.org/wiki/Government_Communications_Headquarters
  6. Wikipedia, Entscheidungsproblem. https://en.wikipedia.org/wiki/Entscheidungsproblem