Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

W01 · 기호를 읽는 법 — 식 앞에서 무엇을 먼저 보는가

0. 이번 회차의 식

maxx  u(x)s.t.pxw,xR+L,  pR++L,  wR++,  u:R+LR\max_{x}\; u(x)\quad \text{s.t.}\quad p\cdot x \le w,\qquad x\in\mathbb{R}^{L}_{+},\; p\in\mathbb{R}^{L}_{++},\; w\in\mathbb{R}_{++},\; u:\mathbb{R}^{L}_{+}\to\mathbb{R}

지금 읽히지 않아도 된다. 7절에서 같은 식을 다시 본다.

1. 도입

논문 3쪽에서 멈춘다. 멈추는 이유는 수학이 어려워서가 아니라 각 기호가 무엇의 이름인지 모르기 때문이다. xR+Lx\in\R^L_+ 한 줄을 건너뛰고 max\max부터 읽는다. 그 한 줄에 정리의 가정이 다 적혀 있다.

일반균형 논문의 모형 절은 대개 이렇게 시작한다. “Each consumer ii chooses xiR+Lx^{i}\in\R^L_+ to maximize ui(xi)u_i(x^{i}) subject to pxiwip\cdot x^{i}\le w_i, wi:=pωiw_i:=p\cdot\omega^{i}. Assume uiu_i is continuous and locally nonsatiated, and p0p\gg 0.” 소득 wiw_i는 부존 묶음 ωi\omega^{i}를 시장가격에 판 값이다. 세 줄 뒤에 논문은 pxi=wip\cdot x^{i*}=w_i라고 등호로 쓴다. 다시 두 줄 뒤에 ixi\sum_i x^{i*}를 더한다. 학부의 읽기는 “Assume …” 줄을 상투구로 건너뛴다. 그러면 세 가지를 말할 수 없게 된다. p0p\gg0이 무엇을 위해 거기 있는지 말할 수 없다. 부등호 \le가 어디서 등호 ==로 바뀌었는지 말할 수 없다. 서로 다른 사람의 xix^{i*}를 더하는 것이 왜 허용되는지 말할 수 없다. 셋째 질문의 답은 짧다 — 모든 xix^{i*}가 같은 집합 R+L\R^L_+의 원소이므로 성분끼리 더할 수 있다. 사람마다 재화의 수가 달랐다면 그 합은 정의되지 않는다. 형상이 같다는 것이 덧셈의 자격이고, 논문은 그 자격을 첫 줄의 xiR+Lx^{i}\in\R^L_+에서 이미 발급했다. 앞의 두 질문도 답이 같은 줄에 있다. p0p\gg0은 예산집합(budget set)을 유한한 상자에 가두기 위해 있고, 등호는 “locally nonsatiated” 한 마디가 낸 값이다. 셋 가운데 둘 — 덧셈의 자격과 상자 — 은 기호의 형상에서 나오고, 등호 하나는 “Assume …” 줄의 가정에서 나온다. 형상 선언과 “Assume …” 줄은 한 목록의 두 자리다 — 정리가 부를 가정의 목록이며, 앞쪽 절반은 식 안에 기호로 적혀 있고 뒤쪽 절반은 그 곁에 말로 적혀 있다. 형상을 읽지 않으면 첫 줄은 정의이고 등호 줄은 주장이며, 그 사이에 무엇이 일어났는지는 저자만 안다.

실무에서도 같은 자리에서 멈춘다. 예산집합을 코드로 옮겨 격자 탐색을 돌릴 때 가격 하나를 0으로 두면 해가 격자의 끝에 붙는다. 격자를 키우면 해가 따라 올라간다. 코드는 "형상 선언을 잊었다"고 말해 주지 않는다. 해가 격자 끝에 붙은 것을 보고 격자를 키우는 사람과, 가격 벡터의 정의역을 보고 0을 지우는 사람의 차이가 이 회차의 차이다. pR++Lp\in\R^L_{++} 한 줄은 이 사고를 미리 막는 선언이다.

식 하나에는 글자가 열 개 남짓 있다. 그 글자 하나하나가 무엇의 이름인지, 어떤 종류의 대상인지, 어디에 사는지, 어떤 단위를 갖는지를 적는 표가 있으면 max\max가 왜 존재하는지가 표에서 읽힌다. 표를 채우는 데 걸리는 시간은 식을 훑는 시간의 열 배다. 그 열 배가 논문 3쪽에서 멈추지 않는 값이다. 이 회차는 그 표 — 기호 하나하나에 종류·형상·차원·이름을 붙이는 다섯 칸의 표 — 를 도구로 세운다.

2. 기호 대장

(1)에 등장하는 기호 전부와 3절에서 쓸 기호를 다섯 칸으로 옮긴다. 소속 \in · 사상 \to · 제약 "s.t."는 기호를 잇는 문법이며 표에 넣지 않는다. 다섯 칸은 기호 · 종류 · 형상 · 차원과 단위 · 한국어 이름이다. 종류는 그 기호가 어떤 부류의 대상인지다 — 스칼라·벡터·함수·연산자·집합·파라미터·지표 가운데 하나. 형상은 정의역과 공역, 또는 크기다. 차원은 단위를 바꾸면 값이 어떻게 변하는지다. 이름은 한국어 한 마디다.

기호종류형상차원·단위한국어 이름
xx벡터(선택변수)R+L\R^L_+ (L×1L\times 1)[수량] (성분별로 단위가 다르다)소비 묶음
x, x_\ell,\ \ell스칼라 / 지표R+\R_+ / {1,,L}\ell\in\{1,\dots,L\}[수량_\ell] / 무차원재화 \ell의 소비량 / 재화 번호
pp벡터(파라미터)R++L\R^L_{++} (L×1L\times 1)[화폐/수량] (성분별로 단위가 다르다)가격 벡터
ww스칼라(파라미터)R++\R_{++}[화폐]소득(재산) — 임금이 아니다
LL파라미터(자연수)N\mathbb{N}, 1L<1\le L<\infty무차원(개수)재화의 수 — 노동이 아니다
uu함수R+LR\R^L_+\to\R서수(단위 없음)효용함수
maxx\max_{x}연산자(u,S)R(u,\,S)\mapsto\R — 함수와 집합을 받아 수 하나를 낸다최대화 연산자 — 묶인 변수 xx
argmaxx\arg\max_{x}연산자(u,S)2S(u,\,S)\mapsto 2^{S} — 집합을 낸다최대점 집합
pxp\cdot x스칼라(내적)RL×RLR\R^L\times\R^L\to\R, px\sum_\ell p_\ell x_\ell[화폐]지출
\le연산자(관계)R×R{0,1}\R\times\R\to\{0,1\}예산제약(부등식)
R+L, R++L\R^L_+,\ \R^L_{++}집합RL\subset\R^L비음 orthant(소비집합) / 양의 orthant(가격의 정의역)
B(p,w)B(p,w)집합(대응, correspondence)R++L×R++R+L\R^L_{++}\times\R_{++}\rightrightarrows\R^L_+예산집합
x(p,w)x^{*}(p,w)벡터(대응)R++L×R++R+L\R^L_{++}\times\R_{++}\rightrightarrows\R^L_+[수량]최적 소비(수요)
v(p,w)v(p,w)함수R++L×R++R\R^L_{++}\times\R_{++}\to\R서수간접효용함수(indirect utility function)
δ, t\delta,\ t스칼라R++\R_{++} / R++\R_{++}수량 / 무차원국소비포화(locally nonsatiated)의 반지름 / 가격·소득 공통 배율

연산자 두 행의 형상 칸에는 정의역을 함수와 집합의 쌍 (u,S)(u,\,S)로 적었다. max\max는 숫자를 받지 않는다. 함수 하나와 그 함수를 올려놓을 집합 하나를 받는다. (1)에서 그 집합은 “s.t.” 뒤의 제약과 xR+Lx\in\R^L_+ 선언이 함께 정한다 — 두 조각이 한 입력이다. 관계 \le의 형상 R×R{0,1}\R\times\R\to\{0,1\}은 수 둘을 받아 참·거짓을 낸다는 뜻이며, 그 출력이 집합 SS의 소속 여부를 정한다.

표의 형상 칸에 쓴 집합 두 개를 정의로 적는다. 중괄호 표기 {xRL:}\{x\in\R^L : \dots\}는 "콜론 뒤의 조건을 만족하는 xx 전부"로 읽는다(Hammack, 2018).

R+L={xRL:x0, =1,,L},R++L={pRL:p>0, =1,,L}\R^L_+ = \{x\in\R^L : x_\ell\ge 0,\ \ell=1,\dots,L\},\qquad \R^L_{++} = \{p\in\R^L : p_\ell> 0,\ \ell=1,\dots,L\}
px==1Lpxp\cdot x = \sum_{\ell=1}^{L} p_\ell\,x_\ell

(2)의 두 집합은 부등호 하나가 다르다. \ge는 0을 포함하고 >>는 0을 배제한다. 소비량은 0일 수 있고 가격은 0일 수 없다는 선언이다. 이 차이가 3절에서 정리 하나를 가른다. (3)의 내적은 LL개의 곱을 더한 수 하나다. 벡터 둘이 들어가 스칼라 하나가 나온다 — 형상이 줄어드는 자리이며, 그래서 우변의 ww가 스칼라여도 부등호를 쓸 수 있다.

예산집합을 쓰면 (1)은 한 줄로 접힌다.

maxxB(p,w)  u(x)\max_{x\in B(p,w)}\; u(x)

(5)(1)의 등가 재작성이다. 값은 같고 드러나는 구조가 다르다. 제약 하나와 형상 선언 세 개가 집합 B(p,w)B(p,w) 하나로 접혔다. 접힌 뒤에는 "어느 집합 위에서 최대화하는가"만 남는다. 경제학의 최적화 문제는 거의 전부 이 꼴 — 집합 위의 함수 — 로 접힌다.

max\max 연산자는 출력이 둘이다. 최대점의 집합과 최댓값이다.

x(p,w)argmaxxB(p,w)u(x),v(p,w):=supxB(p,w)u(x)x^{*}(p,w)\in\arg\max_{x\in B(p,w)} u(x),\qquad v(p,w) := \sup_{x\in B(p,w)} u(x)

둘째 식을 일부러 sup\sup으로 썼다. sup\sup은 상한이고 달성을 약속하지 않는다. argmax\arg\max는 비어 있을 수 있고 sup\sup++\infty일 수 있다. sup\supmax\max로 승격되는 것 — 곧 달성된다는 것 — 과 argmax\arg\max\neq\emptyset이 3절 정리의 내용이다. 첫째 식을 ==가 아니라 \in으로 쓴 이유는 최대점이 하나뿐이라는 보장이 없기 때문이다. 유일성은 이 회차가 다루지 않는다.

변수와 파라미터. xx는 고르는 것이고 (p,w)(p,w)는 주어진 것이다. maxx\max_x가 지나가면 xx는 사라진다 — 묶인 변수(bound variable)다. 남는 것은 (p,w)(p,w)의 함수다. 그래서 v(p,w)v(p,w)이지 v(x)v(x)가 아니다. 이 구분은 식 어디에도 글자로 적혀 있지 않다. max\max 아래의 첨자 하나가 전부다. 적분 f(x)dx\int f(x)\,dxxx가 결과에 남지 않는 것과 같은 구조다. 표의 종류 칸에 "선택변수"와 "파라미터"를 따로 적은 이유다.

첨자. xx_\ell의 아래첨자는 성분, 곧 재화 번호다. 위첨자 *는 최적해다. 사람 번호는 위첨자 xix^{i}로 쓰는 논문이 많다. 아래첨자와 위첨자가 각각 무엇인지는 첫 등장에서 정해지며, 논문마다 다르다. 이 책은 시간 첨자를 아래첨자 tt로 쓴다. 4절의 스칼라 tt는 배율이지 시간이 아니다.

같은 글자, 다른 이름. 이 식의 LL은 재화의 수이지 노동이 아니다. ww는 소득이지 임금이 아니다. pp는 가격 벡터이지 확률밀도가 아니다. uu는 효용함수이지 회귀의 오차항이 아니다. 3절에서 국소비포화의 반지름을 ε\varepsilon 대신 δ\delta로, 4절에서 배율을 α\alpha 대신 tt로 쓴 이유는 이 책에서 ε\varepsilon은 탄력성, α\alpha는 자본분배율로 예약돼 있기 때문이다. 한 회차 안에서 한 글자는 한 뜻이다.

3. 유도

가정을 넷으로 나눈다. 앞의 둘(A1·A2)은 (1)의 형상 선언을 옮겨 적은 것이다. 뒤의 둘(A3·A4)은 식에 없고 논문의 “Assume …” 줄에 있다.

미분가능성·오목성·단조성은 가정하지 않는다. 이 회차의 정리는 형상과 연속성만으로 선다.

어느 묶음 곁에도 — 아무리 가까운 곁에도 — 조금 더 좋은 묶음이 있다. 포만점이 없다는 뜻이다. "더 많은 것이 더 좋다"는 단조성보다 약하다. 단조성은 방향을 지정하지만 국소비포화는 방향을 묻지 않는다.

외부 정리 둘을 이름으로 부른다. Heine–Borel 정리 — RL\R^L의 부분집합은 닫히고 유계일 때 콤팩트다(L<L<\infty). Weierstrass 최대값 정리 — 공집합이 아닌 콤팩트 집합 위의 연속 실함수는 최댓값을 달성한다. 둘 다 증명하지 않고 쓴다(Sundaram, 1996). 두 정리에 든 말 둘을 풀어 둔다. 닫힌 집합은 그 안의 점렬이 수렴하면 극한도 그 안에 있는 집합이고, 유계인 집합은 어떤 유한한 상자 안에 드는 집합이다. 두 외부 정리는 경제학의 정리가 아니라 실수의 성질이다 — 유한 차원 실수 공간에서 닫힌 상자는 그 안의 어느 점렬도 수렴 부분열을 갖고, 연속함수는 그 극한에서 값이 끊기지 않는다. 존재 정리의 경제학은 전부 예산집합이 그 상자 안에 든다는 것을 보이는 데 있다.

번역. 가격이 모두 양수이고 소득이 유한하면, 살 수 있는 묶음의 집합은 닫힌 상자 안에 들어가고, 그 위에서 끊김 없는 선호는 가장 좋은 묶음을 반드시 갖는다. 어느 묶음 곁에도 조금 더 좋은 묶음이 있다면 그 가장 좋은 묶음은 소득을 남김없이 쓴다.

세 결론을 따로 옮기면 이렇다. (i) 살 수 있는 묶음의 집합에는 가장자리가 있고, 그 가장자리도 살 수 있는 묶음이다. (ii) 그 집합 안에 가장 좋은 묶음이 실제로 있다 — “더 좋은 것을 끝없이 찾아가는” 일이 일어나지 않는다. (iii) 가장 좋은 묶음은 예산선 위에 있다 — 돈을 남기는 묶음은 가장 좋은 묶음이 아니다. 논문이 세 줄 뒤에 등호를 쓸 수 있는 자격은 (iii)에서 온다.

5단계의 δ\delta는 남은 돈을 가격의 크기로 나눈 것이다. 남은 돈이 있으면 그 돈으로 살 수 있는 더 좋은 묶음이 근처에 있다는 것이 둘째 줄이고, 그 묶음이 예산 안에 든다는 것이 셋째 줄이다. 국소비포화가 하는 일은 "근처에 더 좋은 것이 있다"까지이고, 그것이 예산 안에 든다는 것은 δ\delta를 남은 돈으로 정한 덕이다.

5단계의 노름은 한 문장으로 짚어 둔다. p\lVert p\rVertyx\lVert y-x^{*}\rVert는 단위가 다른 성분을 섞은 유클리드 노름이다. 각 재화의 단위를 하나로 고정한 실수 위에서의 증명이며, RL\R^L의 모든 노름이 서로 동치이므로 닫힘·콤팩트·존재라는 위상적 결론은 단위 선택과 무관하다. 그래서 2절 표에서 δ\delta의 차원을 "수량"으로 적었다.

회색 삼각형 예산집합, 점선 상자, 파란 등고선 셋, 예산선 위의 붉은 최대점

Figure 1:예산집합은 상자 [0,w/p1]×[0,w/p2][0,w/p_1]\times[0,w/p_2] 안에 있고, 연속인 uu의 최대점은 예산선 위에 있다. p=(2,1)p=(2,1), w=10w=10, u=x1x2u=\sqrt{x_1x_2}. 최대점 x=(2.5,5.0)x^{*}=(2.5,\,5.0)은 격자 간격 0.01의 탐색으로 찾은 것이다.

Figure 1은 3단계와 5단계를 한 장에 담는다. 점선 상자가 3단계의 [0,w/p]\prod_\ell[0,w/p_\ell]이고, 회색 삼각형이 그 안의 B(p,w)B(p,w)다. 상자가 삼각형보다 크다 — 3단계는 예산집합을 정확히 그리는 것이 아니라 유계인 상자에 가두는 것으로 충분하다. 붉은 점이 예산선 위에 있는 것이 5단계다.

가정을 하나 빼면 어느 줄이 무너지는가. 정리는 가정 넷과 단계 다섯을 짝지어 놓았다. 짝을 하나씩 끊어 본다.

A2를 깬다 — 가격 하나를 0으로 둔다.

p=(p1,0), u(x)=x1x2:B(p,w)=[0,wp1]×[0,),supxB(p,w)u(x)=limx2wp1x2=p=(p_1,0),\ u(x)=\sqrt{x_1x_2}:\qquad B(p,w)=\Big[0,\frac{w}{p_1}\Big]\times[0,\infty),\qquad \sup_{x\in B(p,w)}u(x)=\lim_{x_2\to\infty}\sqrt{\tfrac{w}{p_1}\,x_2}=\infty

3단계가 무너진다. 상자의 둘째 변이 w/0w/0 — 없다. 예산집합은 닫혀 있지만 유계가 아니고, Heine–Borel 정리를 부를 자격이 사라진다. 이 uu에서는 최댓값이 없고 최대점도 없다. 경제적으로는 "한계효용이 양인 공짜 재화"다. 수요가 무한이 된다. Figure 2가 이 모습을 격자 위에서 보인다 — 격자 상한을 두 배로 키우면 최대점이 두 배 높이로 따라 올라간다. 격자를 아무리 키워도 해는 격자 끝에 붙어 있다.

왼쪽은 닫힌 삼각형과 최대점, 오른쪽은 위가 열린 띠와 격자 상한을 따라 올라가는 세 점

Figure 2:가격 하나가 0이면 상자의 한 변이 사라진다. 격자를 키우면 최대점이 따라 올라가고, 극한에는 최대점이 없다. 왼쪽 p=(2,1)p=(2,1), 오른쪽 p=(2,0)p=(2,0), 격자 상한 X2{10,20,40}X_2\in\{10,20,40\}.

\le<<로 바꾼다 — 가정이 아니라 기호 하나를 바꾼다.

B(p,w):={xR+L:px<w},L=1, u(x)=x:supxB(p,w)u(x)=wp,argmaxxB(p,w)u(x)=B^{\circ}(p,w):=\{x\in\R^L_+: p\cdot x<w\},\qquad L=1,\ u(x)=x:\qquad \sup_{x\in B^{\circ}(p,w)}u(x)=\frac{w}{p},\qquad \arg\max_{x\in B^{\circ}(p,w)}u(x)=\emptyset

2단계가 무너진다. BB^{\circ}는 유계이지만 닫혀 있지 않다 — 점렬 xn=w/p1/nx_n=w/p-1/nBB^{\circ} 안에 있지만 극한 w/pw/p는 밖에 있다. 상한 w/pw/p는 있으나 어느 xBx\in B^{\circ}도 그 값을 내지 않는다. 어떤 x<w/px<w/p를 잡아도 그보다 큰 x<w/px'<w/p가 있다. 논문이 max\max 대신 sup\sup을 쓰는 순간이 이것이다 — 오타가 아니라 "달성을 약속하지 않는다"는 선언이다.

A3을 깬다 — uu에 불연속점을 둔다. 4단계가 무너진다. 콤팩트 집합 위에서도 불연속 함수는 최댓값을 놓칠 수 있다. L=1L=1에서 u(x)=xu(x)=x로 두되 예산선 위의 한 점 x=w/px=w/p에서만 u=0u=0으로 떨어뜨리면, 예산집합은 닫힌 구간 그대로인데 상한 w/pw/p를 내는 점이 없다. 집합은 멀쩡하고 함수가 구멍을 냈다. A4를 깬다 — u=x(1,1)2u=-\lVert x-(1,1)\rVert^{2}로 두어 포만점 (1,1)(1,1)을 예산집합 안에 둔다. 5단계가 무너진다. 최대점은 남지만 등호가 사라진다. (1,1)(1,1)에서는 어느 방향으로 움직여도 효용이 줄므로 "근처에 더 좋은 묶음"이 없고, 남은 돈으로 살 것이 없다. 이 둘은 노트북에서 격자로 확인한다. A1을 깬다 — L=L=\infty, 무한히 많은 재화 또는 무한 기간의 소비열 x=(x0,x1,x2,)x=(x_0,x_1,x_2,\dots). 상자가 무한 곱이 되고, 노름 위상에서는 Heine–Borel 정리가 성립하지 않아 4단계를 부를 수 없다. 닫혀 있고 유계인 집합이 콤팩트가 아닐 수 있는 세계다. 형상 하나가 정리 하나를 바꾼다. 여기서는 전개하지 않는다.

왼쪽은 닫힌 구간과 열린 구간의 끝점, 오른쪽은 예산선에서 떨어진 포만점

Figure 3:\le<<로 바꾸면 상한은 남고 최대점이 사라진다(왼쪽, L=1L=1). 포만점이 안에 있으면 최대점은 남고 등호가 사라진다(오른쪽, u=x(1,1)2u=-\lVert x-(1,1)\rVert^{2}, px=3<10p\cdot x^{*}=3<10).

Figure 3의 두 패널은 결론이 사라지는 방식이 다르다. 왼쪽에서는 상한이 남고 최대점이 없다 — 정리의 (ii)가 무너진다. 오른쪽에서는 최대점이 있고 등호가 없다 — (ii)는 서 있고 (iii)만 무너진다. 어느 가정이 어느 결론을 지탱하는지는 이렇게 하나씩 끊어야 보인다.

수치로 확인한다. 격자 간격 0.01의 격자 탐색으로 최대점을 찾는다. 라그랑주로 풀지 않는다 — 존재를 확인하는 표이지 최적점을 유도하는 표가 아니다. w=10w=10이다.

사례ppu(x)u(x)상자 [0,w/p]\prod_\ell[0,w/p_\ell]격자 최대점 xx^{*}pxp\cdot x^{*}최대점 존재
기준(2,1)(2,1)x1x2\sqrt{x_1x_2}[0,5]×[0,10][0,5]\times[0,10](2.5,5.0)(2.5,\,5.0), u3.54u^{*}\approx3.5410
p20.1p_2\to0.1(2,0.1)(2,0.1)같음[0,5]×[0,100][0,5]\times[0,100](2.5,50)(2.5,\,50)10
p2=0p_2=0(2,0)(2,0)같음[0,5]×[0,)[0,5]\times[0,\infty)격자 상한 (5,X2)(5,X_2)X2X_2를 키우면 따라간다10아니오
Leontief(2,1)(2,1)min{x1,x2}\min\{x_1,x_2\}[0,5]×[0,10][0,5]\times[0,10](3.33,3.33)(3.33,\,3.33)10\approx10예 — 연속이면 충분하다
포만점(2,1)(2,1)x(1,1)2-\lVert x-(1,1)\rVert^{2}[0,5]×[0,10][0,5]\times[0,10](1,1)(1,1)3<103<10예 — 그러나 등호가 아니다(A4 위반)

검산은 이렇다. 기준 사례에서 2.55=12.53.54\sqrt{2.5\cdot5}=\sqrt{12.5}\approx3.54, 22.5+15=102\cdot2.5+1\cdot5=10. p2=0.1p_2=0.1에서는 상자의 둘째 변이 100으로 늘고 최대점이 x2=50x_2=50까지 올라가지만 여전히 상자 안이다. Leontief에서 x1=x2x_1=x_2이고 3x1=103x_1=10이므로 x1=10/3x_1=10/3이며, 격자 점 3.33은 33.33=9.993\cdot3.33=9.99로 예산 안이다. 포만점 (1,1)(1,1)2+1=3<102+1=3<10으로 BB의 내부에 있다. Leontief 행은 A3이 요구하는 것이 미분가능성이 아니라 연속성뿐임을 보인다. min\min은 대각선에서 꺾이지만 끊기지 않는다. 다섯 행 가운데 정리의 범위 밖은 셋째 행 하나이고, 그 행만 최대점이 없다.

격자가 보일 수 있는 것과 없는 것을 갈라 둔다. 격자는 유한 집합이므로 언제나 최대점을 낸다 — p2=0p_2=0에서도 격자는 답 (5,X2)(5,X_2)를 낸다. 존재가 끊긴 것은 격자 상한을 키울 때 답이 따라 움직이는 것으로만 드러난다. 격자는 정리를 증명하지 못하고 정리의 증상을 보인다. 반대로 최대점이 격자 안쪽에 머물면 — 기준 행과 둘째 행 — 상한을 아무리 키워도 답이 같고, 그것이 유계라는 3단계의 수치적 얼굴이다. 노트북에서 확인할 것은 답의 값이 아니라 답이 상한에 붙는지 여부다.

4. 읽기

(1)에 식 일기의 첫 세 문항을 적용한다. 표기 층의 문항은 Q1·Q2다. Q3은 차원 층의 문항이지만, 세 문항 모두 매 회차에 쓴다.

Q1 · 기호

종류·형상·차원·이름은 2절의 표다. 여기서 더 보는 것은 형상 칸이 정리의 가정 목록과 이어진다는 점이다 — 식 안의 형상 선언과 기호 하나가 집합 쪽 가정을, “Assume …” 줄의 두 마디가 함수 쪽 가정을 낸다.

선언가정지탱하는 줄얻는 결론
pR++Lp\in\R^L_{++} (형상)A23단계 (9)유계
xR+Lx\in\R^L_+ (형상)(정의역)3단계의 pkxk0p_kx_k\ge0 · 2단계유계 · 닫힘
pxwp\cdot x\le w\le (기호)2단계 (8)닫힘
L<L<\infty (형상)A14단계(Heine–Borel)콤팩트
uu 연속 (Assume 줄)A34단계 (10)달성
국소비포화 (Assume 줄)A45단계 (11)등호

표의 왼쪽 칸은 식의 형상 선언과 논문의 “Assume …” 줄이고, 오른쪽 칸은 논문이 세 줄 뒤에 쓰는 결론이다. 가운데 두 칸이 이 회차가 채운 것이다. 형상 선언을 읽는다는 것은 이 표의 왼쪽 칸에서 오른쪽 칸까지 한 줄로 잇는 일이다.

파라미터를 극단으로 보내면 형상이 무엇을 배제했는지 보인다. w0w\to0이면 상자의 모든 변이 0으로 줄고 B{0}B\to\{0\} — 선택이 없는 세계이며 x=0x^{*}=0이다. pp_\ell\to\infty이면 xw/p0x_\ell\le w/p_\ell\to0 — 그 재화가 시장에서 사라지는 세계다. p0+p_\ell\to0^{+}이면 상자의 한 변이 w/pw/p_\ell\to\infty로 늘어난다 — 해는 매 단계 존재하고, (12)uu에서는 늘어난 변을 따라 달아난다. p=0p_\ell=0에서는 정리의 보증이 끊긴다 — 존재 여부는 uu로 되돌아간다. 그 재화의 한계효용이 양이면 (12)처럼 최대점이 없고, Leontief min{x1,x2}\min\{x_1,x_2\}처럼 그 재화만 늘려서는 좋아지지 않으면 최대점이 남는다. 무너진 것은 결론이 아니라 결론을 보증하던 줄이다. 형상 선언 R++L\R^L_{++}는 이 마지막 극단을 정의에서 배제한 것이다. 극한으로 다가가는 것은 허용하고 극한점에 서는 것은 배제한다. 열린 집합 R++L\R^L_{++}가 하는 일이 정확히 그것이다. LL을 키우면 상자의 변이 늘어날 뿐 각 변은 유한하다. L=L=\infty가 되는 순간 상자는 무한 곱이 되고 Heine–Borel 정리는 침묵한다. 네 극단 가운데 둘(p=0p_\ell=0, L=L=\infty)에서 보증이 끊기고, 어느 보증이 어디서 끝나는지를 형상 칸 하나로 예측할 수 있다.

종류 칸에서 하나를 더 본다. maxx\max_xargmaxx\arg\max_x는 같은 입력을 받아 다른 종류를 낸다 — 하나는 수, 하나는 집합이다. 논문이 "the solution x(p,w)x^{*}(p,w)"라고 쓰면 집합에서 원소 하나를 꺼낸 것이고, 그 꺼냄이 허용되려면 집합이 비어 있지 않아야 한다. 정리의 (ii)가 그 허가다. 종류가 다른 두 출력을 한 글자로 부르는 논문이 많고, 그때 종류 칸이 어느 쪽인지를 정한다.

Q2 · 번역

주어진 가격에서 소득으로 살 수 있는 묶음 가운데 가장 마음에 드는 것을 고른다.

이 문장에서 "살 수 있는"이 B(p,w)B(p,w)이고 "가장 마음에 드는"이 maxu\max u다. "고른다"의 주어가 없다. 식에도 없다. 소비자는 기호 밖에 있다. 논문이 "consumer ii"를 쓰는 순간 위첨자 ii가 붙고, 그때부터 xix^{i}·uiu_i·wiw_i가 사람마다 다른 대상이 된다. 주어를 식에 넣는 방법은 첨자뿐이고, 첨자가 없는 식은 주어가 하나뿐이거나 주어가 중요하지 않다는 뜻이다.

(6)의 두 대상도 옮긴다. v(p,w)v(p,w)는 "이 가격과 이 소득에서 이를 수 있는 가장 높은 만족"이다. x(p,w)x^{*}(p,w)는 "그 만족을 주는 묶음들"이다 — 복수형이 \in의 번역이다. 정리의 (iii)은 "가장 좋은 묶음은 돈을 남기지 않는다"이고, 이 문장에는 가격도 소득도 없다. 번역에서 기호가 사라지는 자리가 그 기호의 역할이 끝나는 자리다 — ppww는 집합을 정하는 데 쓰였고 결론 문장에는 남지 않는다.

기호 선택이 보존하는 정보와 버리는 정보를 본다. \le는 "다 쓰지 않아도 된다"는 정보를 보존한다. 등호 ==는 그 정보를 버린다. 제약을 등호로 쓴 논문은 A4를 이미 가정한 것이고, 정리의 (iii)을 증명 없이 들여온 것이다. max\max는 "달성된다"는 정보를 담고 sup\sup은 그것을 유보한다. argmax\in\arg\max는 "여럿일 수 있다"를 보존하고 =x(p,w)=x^{*}(p,w)는 그것을 버린다. 어떤 기호를 골랐는지가 저자가 이미 증명했다고 믿는 것의 목록이다. 그 목록을 읽는 것이 표기 층의 읽기다.

Q3 · 차원

제약의 양변을 본다. pxp_\ell x_\ell은 [화폐/수량_\ell]·[수량_\ell] = [화폐]다. 합 px\sum_\ell p_\ell x_\ell도 [화폐], 우변 ww도 [화폐] — 맞는다. x1+x2x_1+x_2는 더할 수 없다. 단위가 다르다. p1x1+p2x2p_1x_1+p_2x_2는 더할 수 있다. 가격은 서로 다른 단위를 화폐로 바꾸는 환율이다. 내적 pxp\cdot x가 경제학의 식에 도처에 나오는 이유가 이것이다 — 이질적인 수량을 한 단위로 합산하는 선형 방법이다.

uu는 서수이므로 단위가 없다. uu의 "양변"이라는 것은 없다 — 식에 등식은 없고 부등식 하나만 있다. 단위가 없다는 것은 눈금이 없다는 뜻이기도 하다. uu2u2uu3u^{3}으로 바꿔도 — 순서를 엄격히 보존하는 강증가(strictly increasing) 변환을 무엇으로 걸어도 — 최대점의 집합은 같다. 최댓값 v(p,w)v(p,w)의 숫자는 바뀌지만 그 숫자를 읽을 눈금이 없으므로 잃는 것이 없다. 서수라는 차원 칸의 선언 하나가 "u3.54u^{*}\approx3.54"라는 숫자에 뜻이 없음을 미리 말해 준다. 표에서 그 숫자를 적은 것은 격자 탐색의 검산용이지 만족의 크기가 아니다.

3단계의 w/pw/p_\ell은 [화폐]/[화폐/수량_\ell] = [수량_\ell]이다. 상자의 변이 재화 단위로 나온다. 차원은 맞는지 틀리는지만 알려 주는 것이 아니라 계산 결과의 뜻을 알려 준다 — 그 변은 "소득 전부를 재화 \ell에 썼을 때 살 수 있는 양"이다. 5단계의 δ\delta는 [화폐]를 p\lVert p\rVert로 나눈 것인데 p\lVert p\rVert는 서로 다른 단위의 가격을 제곱해 더한 혼합량이다. 그래서 δ\delta의 차원은 깨끗하지 않고, 2절 표에 "수량"으로 적었다. 위상적 결론은 흔들리지 않지만, δ\delta의 숫자 자체를 경제량으로 읽으면 안 된다는 경고다.

무차원군을 센다. 지출 비중이 무차원이다.

s:=pxw,=1Ls1s_\ell := \frac{p_\ell x_\ell}{w},\qquad \sum_{\ell=1}^{L}s_\ell\le 1

[화폐]/[화폐]이므로 ss_\ell은 무차원이고 LL개다. 제약이 묶이면(A4) s=1\sum_\ell s_\ell=1이 되어 독립인 것은 L1L-1개다. 기준 예에서 s=(0.5,0.5)s=(0.5,\,0.5)이다. 3절 표의 둘째 행 — p2p_2를 1에서 0.1로 내린 경우 — 에서도 s=(22.5/10, 0.150/10)=(0.5,0.5)s=(2\cdot2.5/10,\ 0.1\cdot50/10)=(0.5,\,0.5)로 같다. 가격이 열 배 움직였는데 비중은 그대로다. 이것은 x1x2\sqrt{x_1x_2}의 성질이지 정리의 결론이 아니며, 학부에서 지수와 지출 비중이 같다고 배운 그 성질이다. 여기서 볼 것은 두 행에서 수량은 [수량2_2] 단위로 열 배 다르고 비중은 무차원이라 비교가 된다는 점이다. 차원 없는 양은 단위를 바꿔도 값이 그대로다. 그 성질을 식 전체에 적용하면 다음이 나온다.

B(tp,tw)=B(p,w)(t>0)x(tp,tw)=x(p,w),v(tp,tw)=v(p,w)B(tp,tw)=B(p,w)\quad(t>0)\quad\Longrightarrow\quad x^{*}(tp,tw)=x^{*}(p,w),\qquad v(tp,tw)=v(p,w)

근거는 한 줄이다 — pxw    tpxtwp\cdot x\le w\iff tp\cdot x\le tw (t>0t>0). 화폐 단위를 바꿔도(원에서 전으로) 예산집합은 같은 집합이고, 같은 집합 위의 같은 함수는 같은 최대점과 같은 최댓값을 낸다. 배율 tt는 가격과 소득에 함께 곱해야 한다 — 가격만 두 배가 되면 상자가 반으로 줄고 다른 문제가 된다. 이것은 차원 읽기의 첫 결과다. 여기서는 정리로 승격하지 않고 관찰로만 둔다.

5. 학부와 대학원의 간극

멈추는 줄은 "Assume uu is continuous and locally nonsatiated, and p0p\gg0."이다. 학부의 읽기는 이 줄을 통과의례로 건너뛰고 max\max로 간다. 그래서 세 줄 뒤 px=wp\cdot x^{*}=w가 나올 때 "왜 등호인가"를 묻지 못하고, 논문이 sup\sup을 쓰면 오타로 읽는다. 학부 교과서는 같은 결과를 그림으로 대신했다 — 무차별곡선이 예산선 위에서 접한다. 그 그림은 미분가능성과 볼록성을 말없이 가정하고, 접점이 존재한다는 것은 그린 순간 전제된다. 그림에서는 어느 가정이 어느 결론을 지탱하는지 물을 자리가 없다.

대학원의 읽기가 그 한 줄에서 보는 것은 상투구가 아니라 증명이 쓸 도구의 목록이다. 연속은 4단계, 국소비포화는 5단계, p0p\gg0은 3단계다 — 4절 표의 가운데 두 칸이다. 저자가 형상을 R++L\R^L_{++}에서 R+L{0}\R^L_+\setminus\{0\}로 바꾸면 — 일부 재화의 공짜를 허용하면 — 3단계를 다른 방법으로 메워야 하고, 논문의 부록에 그 메움이 있다. 일반균형의 존재 증명이 그 자리다. 균형가격은 구하는 것이지 가정하는 것이 아니므로 가격이 0인 재화를 배제할 수 없고, 대신 경제 전체의 부존량으로 소비집합을 잘라 상자를 만든다 — "누구도 경제에 있는 것보다 많이 소비할 수 없다"는 실물 제약이 가격 대신 유계를 준다. 유계를 주는 것이 ++++에서 부존량으로 바뀌었고, 논문은 그 교체를 부록의 보조정리 하나로 처리한다. 형상 선언은 "어느 보조정리를 불러 쓸 자격이 있는가"의 선언이다. 자격이 적혀 있지 않은 줄에서 정리를 부르면 그 줄이 논문의 구멍이고, 심사자가 먼저 찾는 곳도 거기다. 형상 칸을 읽는 사람은 부록의 보조정리가 왜 거기 있는지 알고, 읽지 않는 사람에게 그 보조정리는 기술적 군더더기다.

Mas-Colell et al. (1995)의 3장 D절은 효용극대화 문제의 세 문장을 한 절에 나란히 둔다. uu가 연속이고 p0p\gg0이면 해가 존재한다는 문장, 국소비포화이면 Walras 법칙 px=wp\cdot x^{*}=w가 성립한다는 명제, 수요가 (p,w)(p,w)에 대해 0차 동차라는 명제다. 3절의 (i)·(ii)·(iii)과 (15)가 그 세 문장이다. 소비자 문제를 최적화의 첫 예로 세우는 것은 Dixit (1990)도 같다. Simonson & Gouvêa (2011)는 수학이 소설처럼 읽히지 않는다고 적는다 — 같은 30분에 소설은 수십 쪽이 읽히고 수학은 열 줄이 채 안 된다. Hubbard & Hubbard (2015)는 0.1절에서 그 느림의 한 원인을 표기에 둔다 — 악보의 음표가 A인지 F인지 멈춰 생각해야 하는 연주자는 초견을 할 수 없고, 식 앞에서도 먼저 "음표"를 식별하는 시간을 들여야 한다. 그 시간이 이 회차의 표를 채우는 시간이다.

6. 훈련

Solution to Exercise 1 #

채점 기준 — 표의 각 줄 옆에 다음이 적혀 있는가.

  1. maxx\max_{x} 줄 옆에 "연산자 · 묶인 변수 xx · 결과는 xx의 함수가 아니다"가 적혀 있는가.

  2. uu 줄 옆에 "함수 R+LR\R^L_+\to\R · 서수 · 단위 없음 · 연속(A3)이 4단계의 근거"가 적혀 있는가.

  3. xx 줄 옆에 "벡터 R+L\R^L_+ · 성분 단위가 재화마다 다름 · 선택변수"와 "R+L\R^L_+가 3단계의 각 항 pkxk0p_kx_k\ge0의 근거"가 적혀 있는가.

  4. pp 줄 옆에 "벡터 R++L\R^L_{++} · 화폐/수량_\ell · 파라미터"와 "++++가 유계(3단계)의 근거"가 적혀 있는가.

  5. ww 줄과 LL 줄 옆에 "스칼라 R++\R_{++} · 화폐 · 파라미터 · 소득"과 "L<L<\infty가 Heine–Borel 정리를 부를 자격(4단계)"이 적혀 있는가.

  6. pxp\cdot x 줄 옆에 "내적 px\sum_\ell p_\ell x_\ell · 화폐 · 양변 차원 일치"가 적혀 있는가.

  7. \le 줄 옆에 "닫힘(2단계)의 근거 · 등호는 A4의 결과이지 표기가 아니다"가 적혀 있는가.

  8. 번역 문장이 있는가.

냉시동 인출(40분) — 1주 전 · 3주 전 · 8주 전 항목 없음(첫 회차). 이 40분은 서문의 선수지식 자가 진단 1번(제약이 하나 있는 최적화의 라그랑주 풀이)과 5번(행렬 곱의 정의)을 백지에서 확인하는 데 쓴다. 1번은 등식 제약 하나가 붙은 두 변수 최대화 문제를 스스로 하나 적고, 라그랑지안을 세워 1계 조건을 얻은 뒤 승수를 소거해 두 변수 사이의 조건 하나로 줄이면 통과다 — 승수의 뜻은 묻지 않는다. 5번은 AAm×nm\times n, BBn×kn\times k일 때 (AB)ij=s=1naisbsj(AB)_{ij}=\sum_{s=1}^{n}a_{is}b_{sj}를 적고, 안쪽 크기 nn이 맞지 않으면 곱이 정의되지 않는다는 한 줄까지 적으면 통과다 — (3)의 내적이 1×L1\times LL×1L\times1의 곱이라는 것이 그 한 줄의 첫 쓰임이다. 새 항목을 만들지 않는다.

노트북(40분)w01-lab.ipynb. 코드를 쓰기 전에 다음 셋에 답한다.

  1. p=(2,1)p=(2,1), w=10w=10, u=x1x2u=\sqrt{x_1x_2}, 격자 간격 0.01: x=(2.5,5.0)x^{*}=(2.5,\,5.0), u3.54u^{*}\approx3.54, px=10p\cdot x^{*}=10(등호). 최대점이 격자 경계에 닿지 않는다.

  2. p2p_210.101\to0.1\to0으로 보낸다(u=x1x2u=\sqrt{x_1x_2}): x2=550x_2^{*}=5\to50\to 격자 상한. p2=0p_2=0에서 격자 상한 X2X_210204010\to20\to40으로 두 배씩 키우면 x2x_2^{*}10204010\to20\to40으로 따라간다. p2>0p_2>0이면 X2w/p2X_2\ge w/p_2인 한 xx^{*}는 격자 상한과 무관하다. 같은 p2=0p_2=0에서 u=min{x1,x2}u=\min\{x_1,x_2\}로 바꾸면 u=5u^{*}=5이고, 최대점 집합 {(5,x2):5x2X2}\{(5,x_2): 5\le x_2\le X_2\}의 아래 끝 (5,5)(5,5)X2X_2를 키워도 그대로다 — 보증이 끊긴 자리에서 결론이 남는 사례다.

  3. L=1L=1, p=2p=2, w=10w=10, u(x)=xu(x)=x이되 x=5x=5에서만 u=0u=0(A3 위반): 격자 간격 h=0.1,0.01,0.001h=0.1,\,0.01,\,0.001에서 격자 최대점 4.94.994.9994.9\to4.99\to4.999 — 5로 다가가되 5는 아니고, 상한 5는 달성되지 않는다. u=x(1,1)2u=-\lVert x-(1,1)\rVert^{2}(A4 위반): x=(1,1)x^{*}=(1,1), px=3<10p\cdot x^{*}=3<10 — 부등호가 유지된다. u=min{x1,x2}u=\min\{x_1,x_2\}(연속·미분불가·A4 성립): x=(3.33,3.33)x^{*}=(3.33,\,3.33)(이론값 10/310/3), px=9.9910p\cdot x^{*}=9.99\approx10 — 격자점 (3.33,3.34)(3.33,\,3.34)와 동률이다.

격자는 직접 쌓는다 — 상자를 격자로 채우고, 예산 안의 점만 남기고, 가장 큰 uu를 고른다. 최적화 패키지를 부르지 않는다. 경계 접촉 판정은 xx^{*}의 어느 성분이 격자 상한 XX_\ell과 격자 간격 안에서 같은지로 한다 — 붙어 있으면 상한을 두 배로 키워 다시 돌리고, 답이 따라 움직이면 3절 표 셋째 행의 증상이다. 대조표는 예측 · 결과 · 어긋남 · 원인의 4열이다.

7. 마치며…

0절의 식을 다시 본다.

maxx  u(x)s.t.pxw,xR+L,  pR++L,  wR++,  u:R+LR\max_{x}\; u(x)\quad \text{s.t.}\quad p\cdot x \le w,\qquad x\in\mathbb{R}^{L}_{+},\; p\in\mathbb{R}^{L}_{++},\; w\in\mathbb{R}_{++},\; u:\mathbb{R}^{L}_{+}\to\mathbb{R}

지금은 형상 선언이 먼저 읽힌다. xxLL개 성분의 비음 벡터, pp는 양의 벡터, ww는 양수, uu는 그 위의 연속함수다. 다음으로 제약의 양변이 화폐임이 읽힌다 — 가격이 서로 다른 단위를 화폐로 바꾼다. 마지막으로 max\max가 연산자임이 읽힌다. 그 결과는 xx가 아니라 (p,w)(p,w)의 함수이고, 그 함수가 실제로 존재한다는 것을 ++++·\le·L<L<\infty 세 형상과 연속 가정 하나가 보증하며, 등호 px=wp\cdot x^{*}=w는 가정 하나를 더 낸 값이다. “s.t.” 뒤의 한 조각은 제약이 아니라 집합의 이름으로 읽힌다 — 살 수 있는 묶음의 집합, 닫힌 상자 안의 닫힌 집합. 식에 없는 글자 하나 — B(p,w)B(p,w) — 가 식의 절반을 접어 넣는다. 기호 하나가 결론 하나를 쥐고 있는 것도 읽힌다 — ++++를 지우면 상자의 한 변이 사라지고, \le<<로 바꾸면 가장자리가 사라진다. 읽는 순서도 바뀌었다 — max\max에서 오른쪽으로 가던 눈이 맨 오른쪽의 형상 선언에서 왼쪽으로 온다. 무엇이 어디에 사는지를 먼저 정하고, 그 위에 어떤 관계가 걸리는지를 보고, 마지막에 그 관계 위에서 무엇을 고르는지를 본다. 논문의 모형 절이 형상 선언을 먼저 두는 이유가 그것이다.

xx^{*}가 왜 존재하는지 말하지 못하면 3절의 (9)로 돌아간다.

W02는 이 표의 넷째 칸 — 차원과 단위 — 을 식 전체로 넓힌다: 경제학의 식도 차원을 갖는다.


이어지는 자료 — Simonson & Gouvêa, How to Read Mathematics · Hubbard & Hubbard, Vector Calculus, Linear Algebra, and Differential Forms 0.1절 “Reading Mathematics” · Mas-Colell, Whinston & Green, Microeconomic Theory 2장 D절·3장 D절

References
  1. Hammack, R. (2018). Book of Proof (3rd ed.). Richard Hammack.
  2. Sundaram, R. K. (1996). A First Course in Optimization Theory. Cambridge University Press.
  3. Mas-Colell, A., Whinston, M. D., & Green, J. R. (1995). Microeconomic Theory. Oxford University Press.
  4. Dixit, A. K. (1990). Optimization in Economic Theory (2nd ed.). Oxford University Press.
  5. Simonson, S., & Gouvêa, F. Q. (2011). How to Read Mathematics. In Rediscovering Mathematics: You Do the Math. Mathematical Association of America.
  6. Hubbard, J. H., & Hubbard, B. B. (2015). Vector Calculus, Linear Algebra, and Differential Forms: A Unified Approach (5th ed.). Matrix Editions.