그림 예쁘게 그리려면 시간이 오래 걸리니까 그림판으로 대충 때우는 점 양해바람.


우선 타원곡선 y^2=x^3+ax+b는 너무 복잡하니까 좀 더 간단한 예제부터 시작해보자.

y^2=x, 그러니까 복소함수 f(z)=z^(1/2)를 어떻게 위상수학적으로 visualize 할 수 있을지 간단한 문제부터 이해해보자.

잘 알다시피 f(z)=z^(1/2)는 사실 '함수'가 아니다. 예를 들어, 1=1*exp(0*i)의 "square root"를 1(=exp(0*i/2))로 택할 수도 있지만 -1(=exp(2*pi*i/2))으로 택할 수도 있기 때문이다. 따라서 이 함수 비스무리한걸 정말 함수로 만들어주려면, domain을 확장할 필요가 있다. 이를테면, ramification point (z=0)를 지나는 branch cut을 취한 후 2장의 complex plane을 이 branch를 따라서 잘 붙여주면 이 'glued surface' 위에서는 f(z)=z^(1/2)가 정말로 함수가 되겠지. 여기서 branch를 붙일 때 주의해야 하는 것은 일종의 '부호'이다. 편의상 1번 plane sheet를 0~2pi까지의 편각을 갖는 복소평면으로, 2번 plane sheet를 2pi~4pi까지의 편각을 갖는 복소평면이라 하면 이 2개의 평면을 그대로 내려놓는게 아니라 1번 plane sheet의 2pi 부분을 2번 plane sheet의 2pi 부분에 맞게 붙여줘야한다. 이런 식으로.

viewimage.php?id=20bcc42e&no=24b0d769e1d32ca73ced83fa11d0283109f613b0c2e59fad7a6296a8113582ddcdf9cb9b58844db881fc4a131ac4f14b93a77fc18e15f6387f234c1d8767cb47


다시 y^2=x 모양으로 돌아가서, 이 해집합의 원소 (x,y)를 x로 보내는 projection을 생각하면 다음과 같이 P^1으로 가는 2:1 map을 얻는다. P^1은 C^1의 1-point compactification이니 어렵지 않게 위상수학적으로는 S^2, 즉 통상적인 구면이 된다. 

viewimage.php?id=20bcc42e&no=24b0d769e1d32ca73ced83fa11d0283109f613b0c2e59fad7a6296a8113582ddcdf9cb9b58844dd5eff846131bc9f443a6c3c2f41b1e782275d135f6e27413

P^1으로 compacty하면 y^2=x는 2개의 ramification point 0과 point at infinity를 갖는다 (왜 point at infinity에서 ramify하는지는 어렵지 않으니 연습문제로 생각해보길 바란다). Branch cut에서 위에 언급하였던 이 '부호'의 역할을 부각시키기 위해 의도적으로 branch cut을 크게 그린 것 같지만 뭐 이해하는데는 별 문제없으리라 본다. 구면 2개의 같은 부분에 적당히 칼집을 내고, 뒤집어서 갖다붙이면 된다. 그러면 구멍이 모두 막힌 닫힌 곡면이 나올테니 결과물 역시 구면, 즉 S^2가 된다.




여기까지가 납득이 되면 타원곡선의 visualize는 어렵지 않다. 

타원곡선 y^2=(x-a)(x-b)(x-c)를, 마찬가지로 (x,y) -> x로 보내는 projection을 고려하면 다음과 같은 P^1 위로의 2:1 map을 얻는다.

따라서 이 타원곡선 역시 P^1 2장을 적당히 잘 갖다붙이는 것이 관건인데, 4개의 ramification point(a, b, c, point at infinity) 근처에서 local하게

f(z)=z^(1/2) 과 정확히 같은 이슈로 인해 branch cut을 시행하여야 한다.   

viewimage.php?id=20bcc42e&no=24b0d769e1d32ca73ced83fa11d0283109f613b0c2e59fad7a6296a8113582ddcdf9cb9b58844dd5eff846131bc9f443a6c3c2f41c107524728567f6e27413

나는 편의상 a-b, c-infinity로 페어링했지만 다르게 페어링해도 상관없다. 요컨대 적당한 branch cut을 잡아서 y^2=f(x) 를 local하게 풀기만 하면 되는거니까. 그럼 저 2장의 P^1의 각각에 2번의 branch cut을 취하고 저 부호를 따라 두 구면을 갖다붙이면 어떻게 될까? 어렵지 않게 S^1*S^1, 즉 Torus가 됨을 알 수 있다. 그럼 이 발상을 확장해서 초타원곡선 y^2=(x-a_1)(x-a_2)...(x-a_(2g+1))이 왜 genus g인 닫힌 곡면이 되는지 한 번 잘 생각해보길 바란다.


댓글로 3:1 map과 Hurwitz formula를 써서 Torus인 것을 보인 것은, 틀린 설명은 아니지만 굳이 그렇게 어렵게 갈 필요도 없고 충분히 시각화, 혹은 상상 가능한 영역에 있으니 소 잡는 칼로 닭 때려잡은 느낌이라 굳이 긴 잡설을 달아보았다.