수학 개념 지도
큰 생각(Big ideas)

표현 바꾸기

같은 대상도 어떻게 적느냐에 따라 어려운 문제가 쉬운 문제로 바뀐다. 자릿값 표기, 곱셈을 덧셈으로 바꾸는 로그, 좌표와 고유벡터⁠(eigenvector)⁠, 사인파⁠(sinusoid)⁠의 합, 생성함수⁠(generating function)⁠, 지도를 지운 그래프, 식을 수로 바꾼 괴델 수⁠(Gödel number)⁠까지, 문제를 푸는 대신 문제를 옮겨 적는 생각.

log⁡(ab)=log⁡a+log⁡b,An=P DnP−1\log(ab) = \log a + \log b, \qquad A^n = P\,D^n P^{-1}

XLVIII × XXIV를 로마 숫자 그대로 곱해 보세요. 쉽지 않습니다. 48 × 24는 초등학생도 합니다. 두 문제는 같은 문제이고, 달라진 것은 수를 적는 방법뿐입니다. 수학의 큰 진전 가운데 적지 않은 것이 새 정리가 아니라 새 표기에서 왔습니다. 문제를 그대로 붙잡고 씨름하는 대신, 문제가 쉬워 보이는 언어로 옮겨 적고, 거기서 풀고, 다시 옮겨 오는 것입니다. 번역하고, 풀고, 되돌린다. 이 세 걸음이 분야를 가리지 않고 되풀이됩니다.

자릿값. 오늘날의 십진 자릿값 표기는 인도에서 자라, 9세기 바그다드 지혜의 집 주변의 알콰리즈미와 알킨디의 책을 통해 이슬람 세계에 퍼졌고, 1202년 피보나치의 『산반서』가 이탈리아 상인들에게 소개했습니다(진법⁠, positional notation⁠). 자리마다 10의 거듭제곱을 맡기니 곱셈이 한 자리 곱셈표와 받아올림으로 쪼개지고, 알고리즘⁠(algorithm)⁠이라는 낱말 자체가 알콰리즈미의 이름에서 왔습니다. 조선의 산학자들이 셈판 위에 산가지⁠(counting rods)⁠를 벌여 놓고 계산한 것도 자릿값 표기였습니다(조선의 산학). 밑을 바꾸면 보이는 것이 달라집니다. 2진법에서 자리 하나는 '있다/없다'의 선택이라 k자리 2진수는 k개짜리 집합⁠(set)⁠의 부분집합⁠(subset)⁠과 짝을 이루고, 라이프니츠가 1703년 논문에서 다룬 이 표기가 불의 논리와 만나 컴퓨터의 언어가 되었습니다. 3진법⁠(ternary)⁠으로 적으면 칸토어 집합⁠(Cantor set)⁠이 '숫자 1을 쓰지 않고 적을 수 있는 수들'이라는 한 줄로 정의됩니다.

곱셈을 덧셈으로. 16세기 말 천문학자와 항해사는 큰 수의 곱셈에 파묻혀 있었습니다. 1614년 에든버러 근교의 영주 존 네이피어가 발표한 로그는 곱셈을 덧셈으로 옮기는 번역표였고, 이듬해 런던의 수학자 헨리 브리그스가 그를 찾아가 논의한 끝에 밑이 10인 로그표가 나왔습니다. log⁡(ab)=log⁡a+log⁡b\log(ab) = \log a + \log b이니, 곱할 두 수를 표에서 로그로 바꾸고, 더하고, 다시 표에서 되돌리면 됩니다. 1620년대 영국의 성직자이자 수학자 윌리엄 오트레드는 로그 눈금을 새긴 두 자를 서로 밀어 길이를 더하는 계산자⁠(slide rule)⁠를 만들었고, 계산자는 전자계산기가 퍼진 1970년대까지 공학자의 주머니에 있었습니다. a와 b를 직접 바꿔 보세요: a = , b = . 노란 점을 끌면 위의 자가, 분홍 점을 끌면 커서가 움직입니다.

아래 자(1~100)와 위 자(1~10)에는 수 v가 log v에 비례하는 자리에 새겨져 있습니다. 위 자의 1을 a에 맞추면, 위 자의 b 아래에서 a × b를 읽습니다.

곱셈이라는 어려운 일이 '길이 두 개 이어 붙이기'라는 쉬운 일로 번역되었습니다. 로그 번역은 그래프에서도 쓰입니다. 지수적으로 자라는 양은 세로축만 로그로 그리면 직선이 되고, y=cxky = cx^k 꼴의 거듭제곱 법칙⁠(power law)⁠은 두 축을 모두 로그로 그리면 기울기⁠(slope)⁠ k인 직선이 되어, 낱말 빈도의 지프의 법칙⁠(Zipf's law)⁠이 기울기 약 −1의 직선으로 드러납니다. 나머지의 세계에도 로그가 있습니다. 소수⁠(prime number)⁠ p에 대해, 거듭제곱하면 1부터 p − 1까지의 나머지가 모두 한 번씩 나오는 수 g를 원시근⁠(primitive root)⁠이라 합니다. p = 7이면 3이 그렇습니다(3, 9, 27, …을 7로 나눈 나머지⁠(remainder)⁠가 3, 2, 6, 4, 5, 1). 이런 g를 밑으로 쓰면 p로 나눈 나머지들의 곱셈이 지수의 덧셈으로 바뀌는데, 이 '이산로그⁠(discrete logarithm)⁠'로 되돌리는 계산이 몹시 어렵다는 사실이 거꾸로 디피–헬먼 키 교환⁠(Diffie–Hellman key exchange)⁠의 자물쇠가 됩니다. 한쪽 방향으로만 쉬운 번역도 쓸모가 있는 셈입니다.

좌표와 기저. 1637년 데카르트의 『기하학』과 비슷한 무렵의 페르마의 원고는 곡선을 두 수 사이의 방정식으로 옮겨 적었습니다. 원은 x2+y2=r2x^2 + y^2 = r^2이 되고, 두 곡선이 만나는 점을 찾는 기하⁠(geometry)⁠ 문제는 연립방정식을 푸는 대수 문제가 되었습니다. 어떤 좌표를 쓸지도 선택입니다. 행렬⁠(matrix)⁠ A를 거듭 곱하면 점은 휘어진 길을 그리지만, 고유벡터만으로 축을 모두 채울 수 있으면, 고유벡터를 축으로 삼을 때 A는 각 좌표에 제 고유값⁠(eigenvalue)⁠을 곱할 뿐인 대각행렬(대각선 밖의 칸이 모두 0인 행렬)이 됩니다(대각화⁠(diagonalization)⁠). 좌표: . 걸음 수 n()을 끌어 보세요. 흰검은 출발점도 끌 수 있습니다.

파란 점들은 출발점 x₀에 A를 거듭 곱한 자취입니다. 노란 선과 초록 선은 두 고유벡터 방향이고, 고유 좌표에서는 격자가 그 방향을 따라 기울어집니다.

같은 점, 같은 행렬인데 좌표만 바꾸자 뒤엉킨 계산이 수 두 개의 거듭제곱으로 풀렸습니다. 피보나치 수열⁠(Fibonacci sequence)⁠의 일반항에 황금비⁠(golden ratio)⁠가 나오는 것도, 마르코프 연쇄⁠(Markov chain)⁠가 정상 분포⁠(stationary distribution)⁠로 수렴⁠(convergence)⁠하는 것도, 선형 미분방정식⁠(linear differential equation)⁠의 모양을 고유값이 정하는 것도 같은 번역입니다. 데이터 구름에 맞춰 축을 돌리는 주성분 분석⁠(principal component analysis)⁠, 복소수⁠(complex number)⁠를 거리와 각도로 적어 곱셈을 '각도 더하기'로 만드는 극형식⁠(polar form)⁠도 좌표를 바꾸는 일입니다. 고유벡터가 모자라거나 정사각형이 아닌 행렬도 입력 쪽과 출력 쪽 좌표를 따로 고르면 늘 대각행렬⁠(diagonal matrix)⁠로 옮겨지는데, 이것이 특잇값 분해⁠(singular value decomposition)⁠입니다.

사인파의 합으로. 에콜 폴리테크니크에서 가르친 적이 있는 푸리에는 1807년 쇠막대 속 열의 흐름을 풀며, 어떤 처음 온도 분포든 사인파들의 합으로 쪼갤 수 있다고 주장했습니다. 사인파 하나는 열방정식⁠(heat equation)⁠ 아래에서 모양을 지킨 채 제 빠르기로 식을 뿐이니, 뒤엉킨 편미분방정식⁠(partial differential equation)⁠이 서로 상관없는 수많은 한 변수 문제로 번역됩니다. 심사를 맡은 라그랑주가 삼각급수⁠(trigonometric series)⁠로 아무 함수⁠(function)⁠나 나타낼 수 있다는 데 반대해 논문은 오래 출판되지 못했지만, 이 번역은 결국 물리학과 공학의 공용어가 되었습니다(푸리에 급수⁠(Fourier series)⁠). 계수를 구하는 일은 함수를 각 사인파 방향으로 정사영⁠(orthogonal projection)⁠하는 일이고, 한 신호를 밀어 가며 다른 신호와 곱해 더하는 합성곱(사진을 흐리게 하거나 소리에 메아리를 넣는 계산이 그 예)은 진동수⁠(frequency)⁠의 세계에서 그냥 곱셈이 됩니다. JPEG는 8×8 조각을 이산 코사인 변환⁠(discrete cosine transform)⁠으로 옮겨 눈에 덜 띄는 높은 진동수를 거칠게 적고, 표본화 정리⁠(sampling theorem)⁠도 진동수의 세계에서 보면 거의 당연한 말이 됩니다. 이 번역이 계산에서 실용이 된 것은 1965년 IBM의 제임스 쿨리와 벨 연구소와 프린스턴의 통계학자 존 튜키가 분할 정복⁠(divide and conquer)⁠으로 계산량을 n2n^2에서 nlog⁡nn\log n으로 줄인 고속 푸리에 변환⁠(fast Fourier transform)⁠을 발표한 뒤였습니다. 가우스가 1805년 무렵 소행성 궤도⁠(orbit)⁠를 계산하며 같은 방법을 써 놓고 출판하지 않았다는 것은 훨씬 뒤에 알려졌습니다.

수열을 함수로. 세는 문제도 번역됩니다. 수열 a0,a1,a2,…a_0, a_1, a_2, \ldots를 거듭제곱급수 ∑anxn\sum a_n x^n의 계수로 담으면(생성함수), '이것과 저것을 골라 합치는' 세기가 다항식⁠(polynomial)⁠의 곱셈이 됩니다. 오일러는 이 방법으로 자연수⁠(natural number)⁠를 합으로 쪼개는 분할수⁠(partition number)⁠를 다루었고, 드무아브르와 라플라스는 확률⁠(probability)⁠ 계산에 썼습니다. 주사위 눈처럼 우연에 따라 값이 정해지는 수를 확률변수⁠(random variable)⁠라 하는데, 서로 영향을 주지 않는(독립⁠(independence)⁠인) 확률변수를 더하는 일은 생성함수를 곱하는 일이라, 주사위 여러 개의 눈의 합이 종 모양으로 모이는 중심극한정리⁠(central limit theorem)⁠도 이 언어에서 깔끔하게 보입니다. 점화식⁠(recurrence relation)⁠은 대수 방정식이 되어, 피보나치 수열의 생성함수 x/(1−x−x2)x/(1-x-x^2)를 부분분수⁠(partial fractions)⁠로 나누면 일반항이 나오고, 카탈랑 수⁠(Catalan number)⁠는 이차방정식 하나에서 나옵니다.

지도를 지우고 관계만. 1735년 오일러는 쾨니히스베르크의 일곱 다리 문제에서 강과 섬의 모양을 모두 지우고 땅을 점, 다리를 선으로 바꾸었습니다(그래프, 오일러 경로⁠(Euler path)⁠). 이렇게 옮기고 나면 답은 꼭짓점⁠(vertex)⁠마다 이어진 선의 수를 세는 일로 줄어듭니다. 지도 칠하기도 나라를 점으로, 이웃함을 선으로 바꾸면 그래프 문제가 되고(4색 정리⁠(four color theorem)⁠), 그래프는 다시 행렬로 번역됩니다. 링크 구조를 전이 행렬⁠(transition matrix)⁠로 적으면 웹 페이지의 중요도는 고유값 1의 고유벡터가 됩니다(페이지랭크⁠(PageRank)⁠). 낱말을 수백 차원의 벡터⁠(vector)⁠로 옮기는 단어 임베딩⁠(word embedding)⁠은 뜻이 비슷하다는 막연한 말을 코사인 유사도⁠(cosine similarity)⁠라는 기하로 바꿉니다.

논리를 대수로, 식을 수로. 1854년 불은 참과 거짓을 1과 0으로 두고 논리를 불 대수⁠(Boolean algebra)⁠로 옮겼고, 1937년 섀넌은 석사 논문에서 스위치 회로가 바로 그 대수를 따른다는 것을 보여 회로 설계를 식 계산으로 바꾸었습니다. 1931년 괴델은 식과 증명을 소인수분해⁠(prime factorization)⁠로 되찾을 수 있는 수로 바꾸어, 산술이 자기 자신의 증명에 대해 말하게 했습니다(불완전성 정리⁠, incompleteness theorem⁠). 중국인의 나머지 정리⁠(Chinese remainder theorem)⁠는 큰 수 하나를 서로소⁠(coprime)⁠인(공약수가 1뿐인) 수들로 나눈 나머지 여러 개로 번역해(이를테면 0부터 14까지의 수는 3으로 나눈 나머지와 5로 나눈 나머지의 짝으로 하나씩 정해집니다), 큰 수의 곱셈을 서로 상관없는 작은 곱셈들로 쪼갭니다.

번역의 값. 번역은 공짜가 아닙니다. 옮기고 되돌리는 계산이 문제를 직접 푸는 것보다 비싸면 소용이 없고, 푸리에의 번역이 컴퓨터에서 실용이 된 것이 고속 푸리에 변환 뒤였던 까닭이 그것입니다. 어떤 번역은 무언가를 숨기거나 비틉니다. 불연속인 계단을 사인파로 적으면 계단 근처에서 항을 아무리 늘려도 약 9%의 뿔이 남고(깁스 현상⁠, Gibbs phenomenon⁠), 평면을 한 방향으로 미는 층밀림⁠(shear)⁠ 행렬처럼 고유벡터가 모자란 행렬은 고유벡터 좌표로 아예 옮길 수 없습니다. 좋은 표기가 늘 환영받은 것도 아닙니다. 1299년 피렌체의 환전상 조합이 장부에 인도–아라비아 숫자를 쓰지 못하게 했다는 기록이 흔히 인용되는데, 고쳐 쓰기 쉬운 숫자가 속임수에 쓰일까 걱정했다는 설명이 따라붙습니다. 그리고 가장 놀라운 번역은 전혀 다른 두 세계가 같은 구조임을 드러낼 때입니다. 오일러 공식⁠(Euler's formula)⁠은 지수함수⁠(exponential function)⁠와 회전⁠(rotation)⁠을, 1의 거듭제곱근⁠(roots of unity)⁠은 정다각형⁠(regular polygon)⁠과 나머지 산술을 같은 것으로 보이게 했습니다. 번역의 가장 일반적인 형태는 범주론⁠(category theory)⁠에 있습니다. 대상의 속을 들여다보는 대신 다른 모든 대상에서 그 대상으로 오는 화살표 전체로 적어도 대상이 동형⁠(isomorphism)⁠인 것까지 정확히 정해진다는 것이 요네다 보조정리⁠(Yoneda lemma)⁠입니다.

이어지는 곳. 좋은 좌표는 대개 문제의 대칭을 따라 잡은 좌표이고, 그 이야기는 대칭과 불변량⁠(invariant)⁠에 있습니다. 함수와 그 푸리에 계수처럼 두 표현이 서로를 비추는 짝은 쌍대성⁠(duality)⁠으로, 휘어진 문제를 곧은 문제로 옮기는 번역은 선형화⁠(linearization)⁠로 이어집니다. 식을 수로 바꾼 괴델 수가 어떻게 역설을 정리로 바꾸었는지는 자기 참조⁠(self-reference)⁠와 대각선에서, 높은 진동수를 버리는 압축이 왜 통하는지는 근사와 오차에서 볼 수 있습니다.

이 생각이 나오는 긴 글

타입 이론과 범주론 증명은 프로그램이다 러셀의 역설을 막으려던 '타입'이 프로그램의 실수를 막는 장치가 되었다. 명제를 타입으로, 증명을 프로그램으로 읽으면 둘이 규칙 하나하나까지 맞아떨어진다. 오늘날 수학자들은 그 사실로 컴퓨터에게 증명을 검사받는다. 라플라시안 라플라시안, 가장 많이 재사용된 식 이웃의 평균에서 나를 뺀다. 이 한 줄이 열의 법칙이고, 도박꾼이 이길 확률이고, 전기 회로와 나무 세기이고, 북의 음색이고, 사진의 윤곽선이고, 그래프를 가르는 칼이고, 잡음에서 그림을 빚는 확산 모델의 밑그림이다. 반환과 동적 계획법 같은 계산, 다른 덧셈 가장 짧은 길, 길의 가짓수, 가장 그럴듯한 해석, 갈 수 있는지 없는지. 따로 태어난 알고리즘들이 사실은 한 계산이고, 달라지는 것은 더하기와 곱하기 자리에 무엇을 넣느냐뿐이다. 그렇게 바꿔 넣어도 되는 까닭은 분배법칙 하나다. 압축과 과학 압축하는 것이 이해하는 것이다 튀코 브라헤가 20년 동안 적은 행성의 위치를 케플러는 법칙 세 줄로 줄였다. 짧게 적는 일과 이해하는 일은 정말 같은 일일까? 오컴의 면도날을 비트로 재는 법, 과적합을 압축의 실패로 읽는 법, 그리고 그 말이 정리인 곳과 철학인 곳. 범주론 화살표만으로 본 수학 최대공약수와 교집합과 '그리고'는 같은 것이고, 화살표를 뒤집으면 최소공배수와 합집합과 '또는'이 된다. 무엇으로 만들었는지 묻지 않고 어떻게 이어지는지만 보는 언어로, '자연스럽다'는 말의 뜻, 관계만으로 대상을 알아보는 요네다의 생각, 함자로 본 연쇄법칙, 어디에나 있는 수반까지 사이트의 여러 분야를 가로지른다.

이 생각을 언급하는 페이지

이 페이지가 가리키는 개념