[include(틀:대수학)]
[include(틀:기하학·위상수학)]
[목차]
== 개요 ==
'''스킴'''이란 [[대수기하학]]에 나오는 용어로 아주 간단하게 말하면 '''"[[환(대수학)|ring]]들의 Zariski gluing"'''이라고 볼 수 있다.
처음에 [[알렉산더 그로텐디크]]가 소개한 개념이다. 그 후 이 개념은 유명한 개념이 되었으며 보통 대학교의 대수기하학에서 이 개념을 가르친다.
== 층 (sheaves) ==
먼저 scheme을 정의하기 전에 층(sheaf, 복수형은 sheaves)을 정의하자. 여기에서 [math(\cal C)]를 데카르트 곱(cartesian product)이 있는 아무 category라고 하자. 예를 들면 [math({\cal C}={\rm Set},{\rm Ab},{\rm Ring})]같이.
'''Definition.''' 위상공간(topological space) [math(X)]에 대해서 함자(functor) [math( {\cal F}:{\rm Open}(X)^{{\rm op}}\to {\cal C})]를 [math(X)]의 '''presheaf'''라고 하자. 여기에서 [math({\rm Open}(X))]는 object를 [math(X)]의 열린 집합(open set)으로, morphism을 [math(\subseteq)]로 가지는 범주([[Category]])라고 하자. 그러면 이는 [math(U\times_X V=U\cap V)]가 성립한다.
Presheaf란 건 각 공간에서 포함관계가 제대로 맞다면 별 거 아니다. 그냥 [math(X)]의 각 열린집합(open set)마다 [math(\cal C)]의 object를 하나씩 준 것에 불과하다. 여기서 [math(\rm op)]를 뺀다면 이를 precosheaf라고 한다.
Presheaf의 예를 들면 [math(X=\mathbb{R})]라고 할 때 [math({\cal F}(U)=\{\text{Ring of bounded functions on }U\})]라고 하자. 그렇다면 [math(V\subseteq U)]라면 [math({\cal F}(U)\subseteq {\cal F}(V))]가 되므로 이는 presheaf가 된다.
그렇다면 층(sheaf)은 뭘까? 우리의 직관대로라면 열린집합(open set)의 연산대로 거기에 딸린 object들도 거기에 맞춰서 행동하도록 만들고 싶다면 [math(U\cap V=\varnothing)]이라고 두자. 만약 이렇게 [math({\cal F}(U \cup V)={\cal F}(U)\times {\cal F}(V))] 직관적으로 [math(X=\mathbb{R})]이라고 한다면 [math(U\cup V)] 위의 함수들은 [math(U)] 위의 함수들과 [math(V)] 위의 함수들로 분리되는 걸 직관적으로 알 수 있지 않는가?
우리는 [math(X)]의 덮개 공간(covering space) [math(\{U_i\})]를 생각해보자. 그렇다면 [math({\cal F}(X))]의 정보는 [math({\cal F}(U_i))]들의 정보에 의해서 결정되어야 한다. 예를 들면 [math(\rho_{U_i\to X}(f)=f|_{U_i})]를 [math(U_i\to X)]에 대응되는 사상(morphism) [math({\cal F}(X)\to {\cal F}(U_i))]라고 하면 '''Axiom 1''' [math(f\in {\cal F}(X))]가 [math(0)]일 필요충분조건은 [math(f|_{U_i}\in {\cal F}(U_i)=0)]인 것이다.
그리고 다음 조건도 추가 해보면
'''Axiom 2''' [math(f_i\in {\cal F}(U_i))]들이 있을 때 [math(f_i|_{U_i\cap U_j}=f_j|_{U_i\cap U_j})]라면 적당한 [math(f\in {\cal F}(X))]가 있어서 [math(f|_{U_i}=f_i)]가 된다. 또 Axiom 2의 [math(f)]는 axiom 1에 의해서 유일성이 보장된다. 그리고 이 두 가지를 만족하는 [math({\cal F})]를 '''sheaf'''라고 하자. 그리고 두 axiom을 모아서 '''local-global compatibility'''라고 한다. 그러니까 sheaf는 local property가 global property를 결정하는 무언가다.
그렇다면 presheaf로 sheaf를 만들 수 있을까? 그러니까 presheaf는 local property와 global property를 모두 가지는데, 문제는 global property하고 local property가 완전히 따로 논다는 것이다. 그래서 쓸데없는 global property를 깔끔히 버리고 local property로 global property를 다시 만드는 것이다. 이런 작업을 '''sheafification'''이라고 부른다. 우리는 다음과 같은 notation을 만들자.
'''Notation''' Presheaf 사이 morphism (그냥 natural transformation이다.) [math({\cal F}\to {\cal G})]가 있다고 하자. 그렇다면 이것이 '''isomorphism of locallity'''라는 것은 적당한 [math(X)]의 covering [math(\{U_i\})]가 있어서 각 [math(i)]마다 [math(V\subseteq U_i)]가 있다면 이걸로 induce되는 [math({\cal F}(V)\to {\cal G}(V))]가 isomorphism인 것이다.
이제 [math(X)]의 모든 presheaf들의 category를 [math({\rm PSh}_{{\cal C}}(X))]라고 하자. 여기에서 morphism은 natural transformation이다. 그렇다면 모든 isomorphism of locallity들의 class에 대해서 이 category를 localize한 것을 바로 '''category of sheaves'''라고 하고 [math({\rm Sh}_{{\cal C}}(X))]라고 쓴다. (여기서 어떤 category를 그것의 어떤 morphism들의 class에 대해 localize한다는 것은, 그 category에 이 morphism들의 inverse들을 추가하여 이들을 isomorphism들로 만드는 것이다.) 그리고 이것은 신기하게도 그냥 sheaf들을 모은 것들의 category와 equivalent하다!!
여기에서 set-theoretic issue가 발생하는데, 바로 isomorphism of locality가 set이 아니라면 category of sheaves는 locally small category가 될 수 없고 이는 많이 심각한 문제다. 이를 우리는 [math(\cal C)]를 언제나 small이라고 가정하고 inaccessible cardinal의 존재를 가정하는 것으로 해결할 것이다. inaccessible cardinal의 존재성이 ZFC로 증명될 수 있다면 이 cardinal에 대한 Von Neumann universe를 ZFC의 model로 만드므로 ZFC가 consistent하게 만들고 이는 [[불완전성 정리|Gödel incompleteness theorem]]때문에 저 cardinal의 존재성은 ZFC와 독립일 수밖에 없다. 따라서 이 cardinal의 존재성을 가정하는 것이 껄끄러울 수 있는데, 그냥 우리는 ZFC에다가 저 cardinal의 존재성을 가정한 새로운 공리계를 받아들이자. (...) 그러면 모든 category의 object들을 모은 것의 크기가 inaccessible cardinal보다 작단 가정으로 우리는 (아마도 집합론을 제외한) 우리의 수학을 잘 할 수 있다.
그렇다면 당연히 [math({\rm Sh}_{{\cal C}}(X)\longrightarrow {\rm PSh}_{{\cal C}}(X))]라는 functor가 있을 것이다. 그럼 이건 left adjoint가 존재하고 이를 sheafification이라고 부른다. 여기선 Hartshorne의 notation을 따라서 [math({\cal F}^a)]라고 쓰자.
그렇다면 한 가지 예제를 보자. [math({\rm exp})]를 복소지수함수라고 하고 [math({\cal O})]를 holomorphic function들, [math({\cal A}(U)=\{e^f|f:U\to \mathbb{C}\text{ is a holomorphic function }\})]이라고 정의하자. 그렇다면 다음과 같은 exact sequece가 존재한다.
[math( 0\to 2\pi i \mathbb{Z}\longrightarrow {\cal O}\longrightarrow_{{\rm exp}}{\cal A}\to 0 )]
여기에서 [math(2\pi i \mathbb{Z})]는 모든 open set에 대해서 [math(2\pi i \mathbb{Z})]란 값을 내놓는 constant sheaf다.
이제 [math({\cal O})]는 sheaf다. 바로 analytic continuation에 의해서. 하지만 문제가 있는데, 바로 [math({\cal A})]가 sheaf가 아니다!! 그 이유는 로그함수에 있는데, branch cut만 잘 잡으면 [math(0)]을 포함하지 않는 simply connected domain은 모두 로그함수를 정의할 수 있지만 문제는 로그함수가 [math(\mathbb{C}\setminus \{0\})]에서 holomorphic이 아니다. 한 바퀴 삥 돌리면 [math(2\pi i )]만큼 차이나니까.
그러면 어떻게 할까?? 바로 sheafification을 생각하는 것이다!! sheafification은 right adjoint를 가지니까 exact sequence를 보존하고 [math({\cal A})]의 sheafification은 local하게만 보면 disk 안의 모든 nonzero holomorphic function은 로그를 씌울 수 있으니까
[math({\cal A}^a(U)={\cal O}^*(U)=\{f:U\to \mathbb{C}|f\text{ is a nonvanishing function }\})]
이 된다. 따라서 이렇게이렇게
[math(0\to 2\pi i \mathbb{Z}\longrightarrow {\cal O}\longrightarrow {\cal O}^*\to 0)]
잘 exact sequence를 만들 수 있다. 그렇다면 여기에서 바로 다음이 derive될 것 같다.
[math( 0\to 2\pi i \mathbb{Z}\longrightarrow {\cal O}(\mathbb{C}\setminus \{0\})\longrightarrow {\cal O}^*({\cal C}\setminus \{0\})\to 0)]
먼저 첫번째 injection 부분과 가운데는 맞다. 그런데 마지막 surjection부분은 틀렸다. (!!)
이유는 sheafification을 하는 과정에서 이상한 function이 만들어지기 때문이다. 바로 [math(f(z)=z)]같은. 이게 이상한 함수라는 건 뭔가 이상하지만 어쨌든 여기에선 이상한 함수 맞다.
그렇게, 우리는 다음 functor를 정의할 수 있다.
[math(\Gamma(X,-):{\rm Sh}_{{\cal C}}(X)\to {\cal C})]
[math(\Gamma(X,{\cal F})={\cal F}(X))]
그렇다면 이것은 exact functor가 아니고, sheaf cohomology를 만드는 동력이 된다.
stalk를 정의하자. [math({\cal F})]가 sheaf라면
[math({\cal F}_x=\lim_{x\in U}{\cal F}(U))]
여기에서 lim이라고 쓴 것은 colimit고 [math(x\in X)]다. 이는 [math(x)]에서의 local structure를 알려준다.
[math(U\subseteq X)]가 open set이고 [math({\cal F})]가 [math(X)]의 sheaf일 때 [math({\cal F}|_{U})]를
[math({\cal F}|_{U}(V)={\cal F}(U\cap V))]
라고 정의하자. 그러면 이것도 sheaf다.
연속함수 [math(f:X\to Y)]가 있고 [math({\cal F})]가 [math(X)]의 sheaf, [math({\cal G})]가 [math(Y)]의 sheaf일 때 다음 둘을 정의하자.
[math(f_*{\cal F}(U)={\cal F}(f^{-1}(U))(U\subseteq Y), f_*{\cal F}\in {\rm Ob}({\rm Sh}_{{\cal C}}(Y)))]
[math(f^*{\cal G}(U)=\lim_{V\subseteq f(U)}{\cal G}(V)(U\subseteq X), f^*{\cal G}\in {\rm Ob}({\rm Sh}_{{\cal C}}(X)))]
이 둘을 각각 direct image functor, inverse image functor라고 부르며, 모두 [math(f_*:{\rm Sh}_{{\cal C}}(X)\to {\rm Sh}_{{\cal C}}(Y))], [math(f^*:{\rm Sh}_{{\cal C}}(Y)\to {\rm Sh}_{{\cal C}}(X))]란 functor며 각각은 각각에 대해서 adjoint functor다.
[math({\cal F}(U))]의 원소를 [math(U)]에서의 [math({\cal F})]의 section이라고 부른다. 그리고 [math(U=X)]일 때는 global section이라고 부른다.
이제 Grothendieck topology를 설명하겠다. Grothendieck topology란 topology의 일반화라고 생각하면 된다. [math(\cal C)]이 finite limit를 가지는 category고, [math(X\in {\rm ob}({\cal C}))]라고 하자. 그러면 각 [math(X)]들에 대한 covering의 공리계를 다음과 같이 설정하자.
* [math(\{Y\to X\})]와 같은 isomorphism은 covering이다.
* [math(\{U_i\to X\})]가 covering이고 [math(Y\to X)]가 있다면 [math(U_i\times_X Y\to Y)] 역시 covering이다.
* [math(\{U_i\to X\})]가 covering이고 [math(\{U_{ij}\to U_i\})]도 각 [math(i)]에 대해서 covering이라면 [math(\{U_{ij}\to X\})]도 covering이다.
covering은 각 [math(X)]들에 대해서 잡을 수 있고, 이 system 자체를 [math(J)]라고 쓰면 [math(J)]를 '''Grothendieck topology'''라고 하고 [math(({\cal C},J))]를 '''site'''라고 한다. Grothendieck topology에서 첫번째 조건은 자기 자신도 open set이란 조건, 두번째 조건은 finite intersection도 open set이란 조건, 세번째 조건은 arbitrary union도 open set이란 조건으로 생각할 수 있다. 가장 간단한 site의 예로 [math({\rm Open}(X))]가 있는데, 이 땐 [math(U)]의 covering을 그냥 모두 union하면 [math(U)]가 되는 [math(U)]의 open subset들 [math(\{U_i\to U\})]로 생각한다.
그렇다면, [math(({\cal C},J))]가 site라면 여기 위의 '''sheaf'''를 정의할 수 있다. [math({\cal F}:{\cal C}^{{\rm op}}\to {\rm D})]라는 functor가 있다면 이를 [math(({\cal C},J))]의 '''presheaf'''라고 하고 이것이 '''sheaf'''란 것은 다음 두 가지를 만족할 때를 말한다.
* covering [math(\{U_i\to U\})]가 있고 [math(f\in {\cal F}(U))]가 모든 [math(i)]에 대해서 [math(f|_{U_i}=0)]일 때 [math(f=0)]이다.
* covering [math(\{U_i\to U\})]에 대해서 [math(f_i\in {\cal F}(U_i))]들이 [math(f_i|_{U_i\times_X U_j}=f_j|_{U_i\times_X U_j})]를 만족한다면 적당한 [math(f\in {\cal F}(U))]가 있어서 [math(f|_{U_i}=f_i)]가 된다.
== 스킴 (scheme) ==
이제 우린 sheaf를 충분히 설명했으니 scheme으로 들어가보자. 먼저 다음을 정의하자.
'''Definition.''' [math(X)]가 topological space라고 하고 [math({\cal O}_X)]를 [math(X)]의 어떤 한 sheaf of rings라고 하자. 그렇다면 [math((X,{\cal O}_X))]를 '''ringed space'''라고 하고 [math({\cal O}_X)]의 모든 stalk가 local ring일 때 이를 '''locally ringed space'''라고 하자.
[math(A)]를 ring이라고 하자. 그렇다면 다음 set을 정의하자.
[math({\rm Spec}\,A=\{\text{Prime ideals of }A\})]
이것의 표기법은 함수해석의 spectral theory에서 배낀 것이다. 우리가 Gelfand duality를 할 때 [math(C)]가 (unital) abelian C*-algebra라면
[math( {\rm Spec}\,C=\{h:C\to \mathbb{C}\})]
라고 정의한다. 여기에서 topology는 weak*-topology를 주고 그러면 unital이란 데에서 모든 homomorphism은 그 norm이 1이니까 Banach–Alaoglu theorem는 이것이 compact임을 열려준다. 이는 [math(T)]가 Hilbert space [math(H)] 위의 bounded normal operator라고 하고 [math(C=\overline{\mathbb{C}[T]})] ([math(H)]의 모든 bounded operator를 모은 C*-algebra에 주어진 strong topology, weak topology 아무거나로. 둘 중 아무거나 골라도 그 closure는 정확히 같다.)라고 정의한다면 정확히 [math({\rm Spec}\,C)]는 [math(T)]의 spectrum이 된다!! 이는 field인 Banach algebra는 [math(\cal C)]밖에 없다, maximal ideal 바깥에 있는 것과 invertible이란 건 동치란 두 정리를 이용한다. 여기에서 첫번째 정리를 생각한다면 그냥 이렇게 생각할 수 있다.
[math({\rm Spec}\,C=\{\text{Maximal ideals of }C\})]
덤으로 다음을 생각하자. [math(a\in C)]일 때
[math(\hat{a}(h)=h(a))]
그렇다면 hat은 다음과 같은 isometry를 만든다.
[math( C\cong C_0({\rm Spec}\,C) )]
그러니까, 사실 모든 abelian C*-algebra들은 [math(\mathbb{C})]의 compact closed subset이랑 다를 게 없단 것이다!!
[math({\rm Spec}\,A)]란 것은 그저 함수해석의 spectral theory를 배끼는 것으로 생각할 수 있다. 근데 여기에서 maximal ideal이 아니라 prime ideal을 모았는데 이는 nilpotent element를 위해서다. commutative algebra에선
[math(\bigcap_{\mathfrak{p}\subseteq A}\mathfrak{p}=\{\text{Nilpotent elements of }A\})]
란 정리가 있는데, 이것은 정확하게 "서로 다른 두 scheme이 topological space가 같으면 두 scheme은 nilpotent element로서만 다르다."를 induce한다. nilpotent element의 degree는 바로 closed subscheme의 multiplicity를 뜻하고, 이는 (Weil) divisor theory를 만든다. 서로 topological space로서 완전히 같은데 multiplicity 말고도 뭔가가 다르다면 어색하지 않을까??
이제 [math({\rm Spec}\,A)]에 topology를 줘야 하는데, 우리는 다음과 같은 직관을 생각하자. 여기에서 [math(f\in A)]라고 하자.
"[math(A)]를 작게 본 것은 그 localization [math(A_{(f)})]와 다름 없다."
그래서, 우리는 다음을 정의한다.
[math(D(f)=\{\mathfrak{p}\in {\rm Spec}\,A|(f)\nsubseteq \mathfrak{p}\})]
[math(D(\mathfrak{a})=\{\mathfrak{p}\in {\rm Spec}\,A|\mathfrak{a}\nsubseteq \mathfrak{p}\})]
여기에서 [math((f)\nsubseteq)]는 prime ideal의 정의로 [math( f\notin \mathfrak{p})]와 동치다. 이것은 직관적으로 [math(f\ne 0)]이 만족되는 공간이라고 할 수 있다. 그러면 [math(D(f))]를 base로 하는 topology를 [math({\rm Spec}\,A)]의 '''Zariski topology'''라고 하자. 그렇다면 이것이 compact(대수기하학에선 주로 quasi-compact라고 말하는)임을 보일 수 있는데, 간단히 [math(\{D(f_i)\})]라는 covering이 있으면 이것들의 합집합은 [math(D(\sum (f_i)))]니까 [math(\sum (f_i)\ne A)]라면 [math(\sum (f_i))]는 어떤 maximal ideal에 포함될 거고 따라서 [math(D(\sum (f_i))\ne {\rm Spec}\,A)]가 된다. 이는 모순이고 따라서 적당한 [math(i_1,...,i_k)]와 [math( a_1,...,a_k\in A)]가 있어서
[math( a_{i_1}f_{i_1}+\cdots+a_{i_k}f_{i_k}=1)]
가 되고 따라서 [math(D((f_{i_1})+\cdots+(f_{i_k}))={\rm Spec}\,A)]가 되므로 [math({\rm Spec}\,A)]는 quasi-compact가 된다.
[math({\rm Spec}\,A)]에 sheaf를 하나 주자. 이를 '''structure sheaf'''라고 한다. 주는 방법은 간단한데,
[math( {\cal O}_A(D(f))=A_{(f)})]
이렇게. 여기에서 [math(A_{(f)})]는 localization이다. 이것은 직관적으로 [math(D(f))]에 정의될 수 있는 함수들의 모임이라고 할 수 있다. 그렇다면 sheaf axiom으로 이런 sheaf는 유일하게 주어지고, 이제
[math( ({\rm Spec}\,A,{\cal O}_A))]
란 locally ringed space를 '''affine scheme'''이라고 부르자. 그렇다면 다음이 성립한다.
[math(({\rm Spec}\,A)_{\mathfrak{p}}=A_{\mathfrak{p}})]
이것의 증명은 그냥 [math(\mathfrak{p})] 바깥의 애들은 다 분모에 들어가게 되니까 끝난다. 덤으로 다음을 알 수 있다.
[math({\cal O}_A({\rm Spec}\,A)=A)]
특히 마지막은 대수기하판 Gelfand transform이라고 생각할 수 있다.
이제 scheme을 정의할 때가 되었다. '''scheme'''이란 단순히 affine scheme으로 이루어진 open covering을 가지는 locally ringed space일 뿐이다. 여기에서 locally ringed space에 대해서 open covering을 가진다는 말은 [math(({\rm Spec}\,A_i,{\cal O}_{A_i}))]가 있어서 [math(\bigcup {\rm Spec}\,A_i=X)]고 [math({\cal O}_X|_U={\cal O}_{A_i})]임을 뜻한다.
그렇다면 본격적으로 [math({\rm Spec}\,A)]가 어떻게 생겼는지 한 번 보자. 이 세상에서 가장 간단한 ring은 [math(\mathbb{Z})]인데, 이것의 spectrum을 생각해보자. 그렇다면 이는 다음과 같이 이루어져 있다.
[math( (0),2\mathbb{Z},3\mathbb{Z},5\mathbb{Z},7\mathbb{Z},\cdots)]
여기에서 [math(p\mathbb{Z})]꼴들은 별볼일 없는데 문제는 [math((0))]다. 왜냐하면 이것은 점 하나짜리주제에 open이고 그 closure가 [math({\rm Spec}\,\mathbb{Z})] 전체이기 때문이다. (!!) 따라서 [math((0))]를 포함하는 open set은 자기 자신과 전체 집합밖에 없으며 덤으로
[math({\cal O}_{\mathbb{Z}}((0))={{\cal O}_{\mathbb{Z}}}_{(0)}=\mathbb{Q})]
가 된다. 이는 [math(2\mathbb{Z},\cdots)]들을 "다시 한 번" 감싸준다는 느낌으로 이해하면 된다. 이런 point를 우리는 '''generic point'''라고 부른다.
다른 예제를 보자. 이젠 [math(A=\mathbb{C}[x])]라고 해보자. 그러면
[math({\rm Spec}\,\mathbb{C}[x]=\{(0),(x),(x-1),(x-2),(x-i),\cdots\})]
라고 표현할 수 있다. 여기에서 [math((x-a))]는 [math(a\in \mathbb{C})]라는 point를, [math((0))]는 generic point다. 그러니까 [math({\rm Spec}\,\mathbb{C}[x])]는 [math(\mathbb{C})]를 대수기하학적으로 해석한 것이라고 볼 수 있다.
또 다른 예제를 보자. 이젠 [math(A=\mathbb{C}[x,y])]를 생각하자. 그러면
[math({\rm Spec}\,\mathbb{C}[x,y]=\{(0),(x+y),(2x^2+y^3+1),(x-a,y-b),\cdots\})]
라고 표현할 수 있다. 여기에서 [math((0))]는 generic point고, [math((f(x,y),g(x,y)))]꼴들은 죄다 Hilbert nullstellensatz로 [math((x-a,y-b))]꼴이 된다. 그리고 세 개 이상의 element로 genenrate되는 prime ideal은 Hilbert basis theorem으로 존재하지 않는다. 그러면 이를 해석해보자. [math((0))]은 모든 원소들을 감싸준다. 그리고 [math((x-a,y-b))]는 [math((a,b)\in \mathbb{C}^2)]에 대응된다. 그렇다면 [math((f(x,y)))]꼴은 무엇일까?? 바로 [math(\mathbb{C}^2)] 안에 있는 "closed subscheme"이다. 그러니까 scheme이란 것은 자신 안에 있는 모든 closed subscheme들을 point의 형태로 다시 가지고 있다. 이것은 그 closure가 closed subscheme이 되고, scheme 안의 closed subscheme들은 각각 그 scheme 안에 있는 point들과 1-1대응 된다.
morphism of schemes를 생각해보자. 이는 scheme theory에서 가장 중요한 요소인데, Grothendieck는 scheme을 언제나 혼자 보지 않고 relative view에서 바라봤다고 한다.
먼저 locally ringed space 사이의 morphism을 생각해보자. 이는 다음과 같은 두 쌍으로 정의된다.
[math(f:X\to Y,f^{\sharp}:{\cal O}_X\to f^*{\cal O}_Y)]
그리고 각각의 stalk에 대한 morphism은 그 inverse가 maximal ideal을 maximal ideal로 옮겨야 한다.[* 앞으로 local ring 사이의 모든 homomorphism의 inverse는 maximal ideal을 maximal ideal로 옮겨야 한다고 생각하자. 이를 '''local homomorphsm'''이라고 한다.] 그렇다면 morphism of schemes는 단순히 scheme을 locally ringed space로 바라봤을 때의 morphism이다.
우리는 [math(f:A\to B)]라는 morphism을 알고 있다고 해보자. 그렇다면 이걸로 morphism of schemes [math({\rm Spec}\,B\to {\rm Spec}\,A)]를 만들고자 한다. 이걸 만드는 방법은 쉬운데, 단순히 [math(\mathfrak{P})]가 [math(B)]의 prime ideal이라면
[math(f(\mathfrak{P})(\in {\rm Spec}\,A)=f^{-1}(\mathfrak{P})(\subseteq A))]
라고 정의하면 topological space 사이 morphism이 완성되고, sheaf 사이엔 그냥 [math(f:A\to B)]로 induce되는 [math(f^{\sharp}(D(g)):D(g)=A_{(g)}\to B_{(f(g))}=D(f(g)))]를 생각한다. 그러면 이는 잘 정의된 morphism이 되고, 덤으로 global section functor를 생각하면 아무 morphism [math(f:{\rm Spec}\,B\to {\rm Spec}\,A)]를 가져와도 [math(f:A\to B)]를 만들 수 있으며 morphism of schemes에서 바로 오는 [math(f:A_{(g)}\to B_{(f(g))})]라는 morphism은 [math(f:A\to B)]에서 와야 함을 natural transformation의 성질에서 쉽게 알 수 있으므로 다음과 같은 equivalence of categories가 존재한다.
[math({\rm Ring}^{{\rm op}}\longrightarrow \{\text{Affine schemes}\})]
여기에서 오른쪽 category의 morphism은 morphism of schemes다. 이것이 바로 대수기하판 Gelfand representation이라고 할 수 있을 것이다.
== 점들을 모은 함자 (functor of points) ==
이제 [math(S)]-point에 대해서 알아보자. [math(X)]-point란 단순히 morphism of schemes [math(S\to X)]일 뿐이다. 그리고
[math(X(S)={\rm Hom}(S,X))]
라고 정의한다. 이것이 point라고 불리는 이유는 [math(X={\rm Spec}\,k)], [math(k)]를 field라고 했을 때 (이것은 그냥 점에 불과하지만 달려있는 sheaf가 중요함에 주의한다!!) 이것의 image를 [math(s\in S)]라고 하면 우리는 [math({\cal O}_{S,s}\to k)]라는 morphism을 만들 수 있다. 이것이 local homomorphism이여야 하므로, target의 maximal ideal인 (0)의 pre-image, 즉 kernel이 [math( {\cal O}_{S,s} )]의 maximal ideal 그 자체가 된다.
즉 이 local homomorphism은 field 사이의 map [math(k(x) \to k)]를 만드는데, field 사이의 homomorphism은 반드시 injective여야 한다.(zero map일 수 있으나 1을 1로 보내는 경우만 생각한다.) 즉 field k에 대해 k-point는 residue field가 k의 subfield인 점을 찾는 것과 동일함을 알게 된다.
공간에서 정의된 function 들의 sheaf를 structure sheaf로 인식하면, [math({\cal O}_{S,s})]를 [math(s)] 주위에서 정의되는 모든 rational function로, 이것의 maximal ideal은 [math(s)]에서 vanish되는 rational function들이라고 볼 수 있다. 미분기하학의 경우를 생각해보면, 모든 함수는 taylor series 전개를 가지는데, 이 중 1차 이상의 모든 항이 maximal ideal에 포함되고, 따라서 남는 상수항은 이 점에서의 함수값이 된다.
따라서 sheaf의 section인 함수를 residue field에서 계산하면 그 점에서의 "함수값", evaluation으로 보는 게 자연스럽다. 이것이 k-point라는 의미는 residue field가 k의 subfield라는 의미이므로, 이 evaluation값이 항상 k에 들어있어야 한다는 것.
좀 더 명확한 예제를 들어보자. 우리는 [math(A={\rm Spec}\,\mathbb{Q}[x])]라고 해보자. [math(\mathbb{Q})]는 [math(\mathbb{C})]완 달리 algebraically closed가 아니고, 따라서 여러가지 현상이 나온다. 예를 들면 [math({\rm Spec}\,\mathbb{Q}[x])]의 원소들을 나열해보면
[math({\rm Spec}\,\mathbb{Q}[x]=\{(0),(x-a),(x^2+ax+b),(x^3+ax^2+bx+c),\cdots\})]
가 된다. 뭔가 [math({\rm Spec}\,\mathbb{C}[x])]보다 복잡해졌는데, 바로 뒤에 2차다항식, 3차다항식이 그대로 남아 있단 것 때문에 그렇다. 이제
[math({\rm Spec}\,\mathbb{Q}\to {\rm Spec}\mathbb{Q}[x])]
의 image로 가능한 것은 오로지 [math((x-a))]꼴밖에 없다. 왜냐하면 [math((x-a))]꼴만이 그 residue field가 [math(\mathbb{Q})]고 따라서 자기 자신을 extension field로 가짐으로서 [math({\cal O}_{\mathbb{Q}[x],(x-a)}\to \mathbb{Q})]란 morphism을 가질 테니까. 따라서
[math(({\rm Spec}\,\mathbb{Q}[x])(\mathbb{Q})=({\rm Spec}\,\mathbb{Q}[x])({\rm Spec}\,\mathbb{Q})=\{a\in \mathbb{Q}\})]
라고 표현할 수 있을 것이다. 그러니까 [math(\mathbb{Q})]의 원소들을 모은 것이다. 우리의 직관으론 이것이 [math(\mathbb{Q})]란 space 자체라고 생각할 것이다.
그렇다면 다음을 생각하자.
[math({\rm Spec}\,\mathbb{Q}(\sqrt{2})\to {\rm Spec}\,\mathbb{Q}[x])]
이것의 image로 가능한 것들은 residue field를 [math(\mathbb{Q}(\sqrt(2)))]를 extension field로 가지는 point들. 그러니까 [math((x-a))]꼴들과 [math((x^2+ax+b))]꼴들 중에서도 [math(a^2-4b=2)]인 것들. 그러니까 써보면
[math(({\rm Spec}\,\mathbb{Q}[x])(\mathbb{Q}(\sqrt{2}))=\{\alpha \in \mathbb{Q}(\sqrt{2})\})]
가 된다. 그러니까 그냥 [math(\mathbb{Q}(\sqrt{2}))]다!! 이렇게 우린 이런 해석을 할 수 있다.
"[math({\rm Spec}\,\mathbb{Q}[x])]는 [math(\mathbb{Q})] 위의 정보 뿐만 아니라 [math(\mathbb{Q})]의 finite field extension 위의 정보도 가지고 있고 이런 정보들은 [math(S)]-point란 개념으로 알아낼 수 있다.
이제 우리는 특별히 [math({\rm Spec}\,k)]-point를 [math(k)]-rational point라고 부르자.
[math(S)]-point로 할 수 있는 게 더 있다. 바로 affine scheme들을 Yoneda embedding으로 보내는 것이다!! affine scheme을 relative point of view로 봐야겠다면 반드시 우리는 Yoneda embedding을 써야 한다. 이렇게
[math(h_A={\rm Hom}(A,-):{\rm Ring}\longrightarrow {\rm Set})]
Hom functor들은 모든 functor들 중에서 정말 극소수에 불과하다. 우리는 scheme을 재정의할텐데, 먼저 functor 사이 natural transformation [math(F\to G)]가 open immersion이란 것을 [math(h_B\to G)]라는 functor가 있으면 언제나 적당한 [math(h_A\to F)]라는 functor와 [math(h_A\to h_B)]란 natural transformation이 있어서 commutative diagram을 만들고 [math(h_A\to h_B)]가 만드는 [math(A\to B)]가 localization 방식으로 표현된다는 것이다. functor 사이에 "성질"을 주는 것은 모두 다 처음에 [math(h_B\to G)]를 생각하는 것으로 시작한다. 그렇다면 functor들 사이엔 당연히 finite limit와 finite colimit가 있으며, 이것으로 union을 정의한다면 [math(X:{\rm Ring}\longrightarrow {\rm Set})]이 scheme이란 것은 적당한 [math(A_i)]들이 있어서 [math(h_{A_i}\to X)]란 open immersion이 있고 덤으로 [math(\bigcup h_{A_i}\to X)]가 isomorpism인 것이다. 이런 정의가 우리가 맨 위에서 했던 scheme의 정의와 동치란 것은 증명하기 쉽다.
이것은 얼핏 보면 sheaf를 전혀 쓰지 않은 정의같지만, [math({\rm Spec}\,A)]의 sheaf는 [math(h_A)]에서 출발하는 morphism들에 encode되어 있는 것이나 마찬가지다. 다만 다른 점은 open [math(A)]의 localization들이 아니라 [math(A)]-algebra "전체"를 본다는 것이며 이는 "small" Zariski topology에서 벗어나 "big" Zariski topology를 정의하는 원동력이 된다.
이를 가만히 생각하고 보면, 사실 [math(S)]-point란 것은 그냥 [math(S)]-algebra라고 바꿔 불러도 좋다는 결론이 나온다. [math(S)]가 affine scheme이라면 그냥 algebra하고 다를 게 없으니까!!
보통 수학계에선 [math({\rm Ring})]를 쓰지 않고 affine scheme들을 모은 [math({\rm Aff}^{{\rm op}})]를 쓰고 [math({\rm Hom}(A,-))]도 [math({\rm Hom}(-,{\rm Spec}\,A))]를 쓴다.
이런 기법을 functor of points라고 하며, scheme을 category의 관점에서 보고 싶을 때 이 방법을 쓴다. 이 방법으로 우리는 category of schemes가 fibre product를 가짐을 쉽게 확인할 수 있다. 간단히 ring은 tensor product를 가지니까[* 하지만 infinite fibre product는 가지지 못 한다.] [* 반면에 Hartshorne에선 scheme의 fibre product가 존재한다는 것의 증명을 2.3단원에서 정말로 어렵게 하고 있다. 아무리 scheme을 구체적으로 보고 싶다고 해도 그렇지...]
이제 [math(x\in X)]란 점이 있을 때 이것은 적당한 field [math(k)]가 있어서 [math({\rm Spec}\,k\to X)]의 image로 표현할 수 있고, 대수기하에서 점을 [math({\rm Spec}\,k\to X)]와 같이 표현하는 것은 정말로 유용하다. 이것은 [math({\cal O}_{X,x})]를 생각하는데, 이것의 residue field를 [math(k)]라고 하면 image가 [math(x)]인 유일한 morphism [math({\rm Spec}\,k\to X)]가 존재한다. 그러면 우리는 [math(f:X\to Y)]란 morphism of schemes가 있을 때 [math(y\in Y)]에서의 fibre를 생각할 수 있는데, [math(y)]가 A^{\sim}_{I}을 [math(A/I