楕円曲線入門 トーラスと楕円曲線のつながり

324
-1

Published on

第11回 数学カフェ 「暗号」
http://eventdots.jp/event/581176

Published in: Technology
0 Comments
7 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
324
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
7
Embeds 0
No embeds

No notes for slide

楕円曲線入門 トーラスと楕円曲線のつながり

  1. 1. 楕円曲線入門 トーラスと楕円曲線のつながり 数学カフェ 2016/2/28 光成滋生
  2. 2. • 楕円曲線暗号の原理を知る(前半30分ほど) • 暗号の話はここで終わり • 楕円曲線には様々な見方がある • トーラス𝑇 • 𝑦2 = 𝑥3 + 𝑎𝑥 + 𝑏の解集合𝐸 • 二重周期関数 • 1変数代数関数体 • 1次元アーベル多様体 • ... • 今回は特に𝑇と𝐸の関係性を紹介する(残り) 概要と目標 2/59
  3. 3. • 『クラウドを支えるこれからの暗号技術』 • 公開鍵暗号の(ほぼ)最先端の応用技術の紹介 • 前方秘匿性, 楕円曲線暗号, IDベース暗号, 属性ベース暗号, 関数型暗号, 準同型暗号, ゼロ知識証明, etc. • 比較的がっちり数学の話も入ってます • 楕円曲線, ℘関数, Weilペアリング, etc. • https://herumi.github.io/ango/ • 「クラウド時代の暗号化技術論」 • @ITでの暗号の連載記事 • 上記本の内容をかみ砕いて紹介したもの • http://www.atmarkit.co.jp/ait/series/1990/ 自分の宣伝 3/59
  4. 4. • サイボウズ新卒/キャリア採用 • http://cybozu.co.jp/company/job/recruitment/ • 29歳以下の第二新卒、ポスドク採用もあります • サイボウズ・ラボユース • https://cybozu-recruit.snar.jp/jobboard/apply.aspx • 学生の作りたいことをラボのメンバーがサポート 会社の宣伝 4/59
  5. 5. • 導入(暗号入門) • 有限体 • RSA暗号 • ElGamal暗号 • 中盤(少し暗号 少し数学) • トーラス • 楕円ElGamal暗号 • 楕円曲線の式と加法公式 • メイン(数学) • Riemann-Rochの定理の特殊版 • ℘関数 • トーラスと楕円曲線の関係 目次 5/59
  6. 6. • 剰余環 • RSA暗号 • 有限体 • ElGamal暗号 導入 6/59
  7. 7. • 整数𝑏を整数𝑎(> 0)で割った余り𝑟 • 𝑏 = 𝑞𝑎 + 𝑟, 0 ≤ 𝑟 < 𝑎 • 𝑏 ≡ 𝑟 mod 𝑎と書く • 面倒なので以下≡は=を使う • 20を3で割った余りは2 • 20 = 3 ∗ 6 + 2 • −7を3で割った余りは2 • −7 = 3 ∗ −3 + 2 余り 7/59
  8. 8. • 整数全体を整数𝑎 (> 0)で割った余りの集合 • 𝑍 𝑎𝑍と書く • 𝑍 𝑎と書く人もいる • 𝑍 𝑎𝑍 = {0, 1, … , 𝑎 − 1} • 足し算と掛け算は普通に計算した余りを考える • 𝑎 = 7のとき3 + 5 = 8 = 1, 3 × 5 = 15 = 1 • 整数の直線を[0, 𝑎]で切ってつなげた感じ 剰余環(じょうよかん) 𝑎 = 0 0−𝑎 𝑎 2𝑎 8/59
  9. 9. • 足し算 • 掛け算 𝑍/6𝑍の足し算と掛け算の表 + 0 1 2 3 4 5 0 0 1 2 3 4 5 1 1 2 3 4 5 0 2 2 3 4 5 0 1 3 3 4 5 0 1 2 4 4 5 0 1 2 3 5 5 0 1 2 3 4 × 0 1 2 3 4 5 0 0 0 0 0 0 0 1 0 1 2 3 4 5 2 0 2 4 0 2 4 3 0 3 0 3 0 3 4 0 4 2 0 4 2 5 0 5 4 3 2 1 9/59
  10. 10. • 6乗したら1になる • 素数𝑝に対して𝑎 ∈ 𝑍 𝑝𝑍 ∖ {0}について 𝑎 𝑝−1 = 1 mod 𝑝 • フェルマーの小定理 𝑍 7𝑍の巾乗の表 𝒂 𝒃 1 2 3 4 5 6 1 1 1 1 1 1 1 2 2 4 1 2 4 1 3 3 2 6 4 5 1 4 4 2 1 4 2 1 5 5 4 6 2 3 1 6 6 1 6 1 6 1 10/59
  11. 11. • 公開鍵暗号 • 異なる二つの素数𝑝, 𝑞を用意して𝑛 = 𝑝𝑞とする • 𝑎 = (𝑝 − 1)(𝑞 − 1)として𝑍/𝑎𝑍で𝑒𝑑 = 1となる整数𝑒, 𝑑を選ぶ • つまりある整数𝑏があって𝑒𝑑 = 𝑏 𝑝 − 1 𝑞 − 1 + 1 • 公開鍵 : 𝑃 𝐾= (𝑛, 𝑒) • 秘密鍵 : 𝑆 𝐾 = 𝑑 • 暗号化 : 平文𝑚に対して𝐸𝑛𝑐 𝑚 = 𝑚 𝑒 mod 𝑛 • 復号 : 暗号文𝑐に対して𝐷𝑒𝑐 𝑐 = 𝑚 𝑑 mod 𝑛 • 元に戻ることの確認 • 𝐷𝑒𝑐 𝐸𝑛𝑐 𝑚 = 𝑚 𝑒 𝑑 = 𝑚 𝑒𝑑 = 𝑚1+𝑏 𝑝−1 𝑞−1 = 𝑚 mod 𝑛 RSA暗号 11/59
  12. 12. 𝒂 𝒃 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 4 8 1 2 4 8 1 2 4 8 1 2 4 3 3 9 12 6 3 9 12 6 3 9 12 6 3 9 4 4 1 4 1 4 1 4 1 4 1 4 1 4 1 5 5 10 5 10 5 10 5 10 5 10 5 10 5 10 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 7 7 4 13 1 7 4 13 1 7 4 13 1 7 4 8 8 4 2 1 8 4 2 1 8 4 2 1 8 4 9 9 6 9 6 9 6 9 6 9 6 9 6 9 6 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 11 1 11 1 11 1 11 1 11 1 11 1 11 1 12 12 9 3 6 12 9 3 6 12 9 3 6 12 9 13 13 4 7 1 13 4 7 1 13 4 7 1 13 4 14 14 1 14 1 14 1 14 1 14 1 14 1 14 1 𝑍 15𝑍での巾乗の例  𝑝 = 3, 𝑞 = 5, 𝑝 − 1 𝑞 − 1 = 8 12/59
  13. 13. • RSA暗号はRSA仮定の下で 一方向性選択平文攻撃に対して安全 • 言葉の説明 • RSA仮定 • 𝑛 = 𝑝𝑞, 𝑒, 𝑐 = 𝑚 𝑑 mod 𝑛が与えられたときに 𝑚を求めるのが難しいという仮定(ぇ • 素因数分解との関係 • 𝑛 = 𝑝𝑞が与えられたときに𝑛を素因数分解できれば破れる • RSA仮定を解くより素因数分解を解く方が真に難しいか否か は未解決 RSA暗号の安全性(1/2) 13/59
  14. 14. • 一方向性 • 暗号文から平文を求められない • CPA(Chosen Plaintext Attack) • 攻撃者が自分で選んだ平文に対する暗号文を取得できる • 公開鍵暗号では最低限必要 • 誰もが公開鍵を使って暗号文を作れるから • RSA暗号は「安全ではない」 • 同じ平文はいつも同じ暗号文になる • 攻撃者が平文の範囲を予想できているなら危険 • 平文が「はい」か「いいえ」のどちらかと分かっていれば 容易に破れる • 実際にはRSA-OAEPなどの安全にした方式が使われる RSA暗号の安全性(2/2) 14/59
  15. 15. • 素数𝑝の剰余環𝑍 𝑝𝑍を有限体𝐹𝑝という • 𝐹7の掛け算表 • 2 × 4 = 1 →1 2 = 4と考える • 0以外の元は割り算ができる • 𝑝が合成数なら割り算できない(掛けてゼロ)ことがある 有限体 × 1 2 3 4 5 6 1 1 2 3 4 5 6 2 2 4 6 1 3 5 3 3 6 2 5 1 4 4 4 1 5 2 6 3 5 5 3 1 6 4 2 6 6 5 4 3 2 1 15/59
  16. 16. • パラメータ設定 • 適切な𝑔と素数𝑝を固定し公開する • 𝑥を秘密鍵, 𝑦 = 𝑔 𝑥 mod 𝑝を公開鍵とする • 暗号化 • 平文𝑚に対して乱数𝑟をとり 𝐸𝑛𝑐 𝑚 = 𝑔 𝑟, 𝑚𝑦 𝑟 • 復号 • 暗号文𝑐 = (𝑐1, 𝑐2)に対して 𝐷𝑒𝑐 𝑐 = 𝑐2 𝑐1 𝑥 • 元に戻ることの確認 • 𝐷𝑒𝑐 𝐸𝑛𝑐 𝑚 = 𝑚𝑦 𝑟 𝑔 𝑟 𝑥 = 𝑚𝑔 𝑥𝑟 𝑔 𝑟𝑥 = 𝑚 ElGamal暗号 16/59
  17. 17. • 離散対数問題の困難さの困難さ • DLP : Discrete Logarithm Problem • 𝑔, 𝑝が与えられたときに • 整数の問題なので離散 • 𝑥 = log 𝑔 𝑦の形なので対数 • DLPは難しいと信じられている ElGamal暗号の安全性 𝑥 𝑦 = 𝑔 𝑥 mod 𝑝 容易 困難 17/59
  18. 18. • ElGamal暗号は暗号文に乱数が入っているので 同じ平文を暗号化しても毎回異なる • 𝐸𝑛𝑐 𝑚 = 𝑔 𝑟, 𝑚𝑔 𝑟 • 攻撃の設定 • 攻撃者が平文が𝑚1と𝑚2のどちらかと知っているときに 暗号文を見て平文を当てられるか? • つまり𝐸𝑛𝑐 𝑚 = 𝑔 𝑟, 𝑚𝑔 𝑟 = ? 𝑔 𝑟′ , 𝑚𝑔 𝑟′ • できないとき強秘匿性(INDistinguishability)があるという • 強秘匿性は一方向性よりずっと強い安全性 • RSA暗号は強秘匿性をもたない 強秘匿性 18/59
  19. 19. • DDH(Dicisional Diffie-Hellman)仮定 • (𝑔, 𝑔 𝑎, 𝑔 𝑏)と𝑔 𝑎𝑏か𝑔 𝑐のどちらかが与えられたときに、 それを当てるのが難しいという仮定 • ElGamal暗号はDDH仮定の下でIND-CPA安全 • ただし暗号文を操作できないという性質(頑強性)は無い • 𝐸𝑛𝑐 𝑚 = (𝑔 𝑟, 𝑚𝑦 𝑟)→ 𝑔2𝑟, 𝑚2 𝑦2𝑟 • 平文を知らなくても𝐸𝑛𝑐(𝑚2)を作れてしまう • これはこれでよい性質(準同型性) • 一般にはより強い攻撃を想定 • 攻撃者が好きなだけ与えられた暗号文以外の平文を教えても らえる(CCA : Chosen Ciphertext Attack) • IND-CCA2が最も強い公開鍵暗号の安全性の一つ DDH仮定 19/59
  20. 20. • トーラス • 楕円離散対数問題 • 楕円ElGamal暗号 • Weierstrassの定義方程式 • 楕円曲線の加法 楕円曲線暗号 20/59
  21. 21. • 𝐹𝑝は円周の上を回っている感じ • 球面の上を回っている暗号はあるか? • 単純にはうまくいかない • 球面の上に適切な足し算を入れられない • (アナロジー)Hairy ballの定理 2次元球面上に0にならない連続な接ベクトル場はない • その点で足し算がうまく定義できない 2次元の世界へ つむじ・ 21/59
  22. 22. • 𝐹𝑝は線分の両端を張り付けて円にした • 長方形の両端を張り付けたら? もう少し考える 22/59
  23. 23. • 長方形の両端を張り付けると浮輪の形になる • これを(複素1次元)トーラスという トーラス 23/59
  24. 24. • トーラスの上の暗号 • 一歩が𝑃のベクトルで何歩も進む • 端に来たら反対側から出てくる 楕円曲線暗号 𝑃 𝑂 2𝑃 3𝑃 4𝑃5𝑃 10100 𝑃 4𝑃 24/59
  25. 25. • 𝐹𝑝の離散対数問題の楕円曲線版 • 有限体 • 楕円曲線 • ECDLP(Elliptic Curve DLP)という 楕円離散対数問題 𝑥, 𝑔 𝑦 = 𝑔 𝑥 mod 𝑝 容易 困難 𝑥, 𝑃 𝑄 = 𝑥𝑃 容易 困難 25/59
  26. 26. • パラメータ設定 • 楕円曲線上の点𝑃と秘密の整数𝑥をとり𝑄 = 𝑥𝑃とする • 秘密鍵 : 𝑥 • 公開鍵 : (𝑃, 𝑄) • 暗号化 • メッセージ𝑀に対して乱数𝑟を選び 𝐸𝑛𝑐 𝑀 = 𝑟𝑃, 𝑀 + 𝑟𝑄 • 復号 • 暗号文𝑐 = (𝐶1, 𝐶2)に対して 𝐷𝑒𝑐 𝑐 = 𝐶2 − 𝑥𝐶1 • 元に戻ることの確認 • 𝐷𝑒𝑐 𝐸𝑛𝑐 𝑀 = 𝐷𝑒𝑐 𝑟𝑃, 𝑀 + 𝑟𝑄 = 𝑀 + 𝑟𝑄 − 𝑥𝑟𝑃 = 𝑀 楕円ElGamal暗号 26/59
  27. 27. • 𝑎, 𝑏を定数として 𝐸 = 𝑥, 𝑦 𝑦2 = 𝑥3 + 𝑎𝑥 + 𝑏 ∪ ∞ を楕円曲線という • Weierstrassの定義方程式 • トーラスとは似てもにつかないが計算しやすい • トーラスとの関係は後半で • 実数上とみなして擬似的に描くと こんなグラフ • 𝑥軸対称 トーラスの別の形 27/59
  28. 28. • 𝑦2 = 𝑥3 + 𝑎𝑥 + 𝑏を満たす(𝑥, 𝑦)はどこで考える? • 例 : ℂ(複素数全体)や𝐹𝑝(有限体𝐹𝑝(𝑝 ≠ 2,3)の代数的閉体) • 代数的閉体とは • そのなかで任意の多項式が因数分解できるもの • ℝ(実数全体)は代数的閉体ではない • 𝑥2 + 1は因数分解できない • ℝに −1 を追加したものがℂ • −1は𝑥2 + 1 = 0の解 • 有限体も同様に元を追加していくことで代数的閉体にできる • 𝐹7 −1 = {𝑎 + 𝑏 −1 |𝑎, 𝑏 ∈ 𝐹7} • これはまだ代数的閉体ではないのでこの操作を繰り返す • 以降ℂで考えるが𝐹𝑝でも概ね似た議論ができる 解の空間 28/59
  29. 29. • ℂが代数的閉体とは • 任意の多項式が因数分解できる(代数学の基本定理) • 証明 • もし因数分解できない多項式𝑓(𝑥)があったら • 𝑓 𝑥 = 0となる𝑥 ∈ ℂがない • 𝑔 𝑥 = 1/𝑓(𝑥)はℂ上で有界 • つまりある範囲で押さえられる • 定数𝑀 > 0があって 𝑔 𝑥 < 𝑀 for 𝑥 ∈ ℂ • ここでLiouvilleの定理を使う • ℂ上の整関数(どこでも微分可能)が有界ならそれは定数関数 • 𝑔(𝑥)が定数関数(矛盾) 代数学の基本定理 29/59
  30. 30. 𝑃 𝑂 −𝑃𝑙1 • 𝐸上の点𝑂を一つ固定する(これが単位元) • 無限遠点でなくてもよい • 𝐸上の点𝑃に対して逆元−𝑃の図 • 𝑃と𝑂を通る直線𝑙1と𝐸が交わるもう一つの点 • 𝑥の3次式なので𝑙1は𝐸と3点で交わる 楕円曲線𝐸上の単位元と逆元 30/59
  31. 31. 𝑃 𝑂 𝑄 𝑙2 −(𝑃 + 𝑄) 𝑙3 𝑃 + 𝑄 • 𝐸上の点𝑃, 𝑄に対して𝑃, 𝑄を通る直線𝑙2が通る もう一つの𝐸上の点を−𝑅とする 𝑅 ≔ 𝑃 + 𝑄 楕円曲線𝐸上の足し算 31/59
  32. 32. • 足し算というからには次の性質を満たしてほしい • 任意の𝑃, 𝑄, 𝑅 ∈ 𝐸に対して • 𝑃 + 𝑂 = 𝑃 ; 𝑂が単位元 • 𝑃 + −𝑃 = 𝑂 ; −𝑃は𝑃の逆元 • 𝑃 + 𝑄 + 𝑅 = 𝑃 + 𝑄 + 𝑅 ; 結合法則 • この三つの性質を満たす集合を群という • 𝑃 + 𝑄 = 𝑄 + 𝑃 ; 可換 • この性質を満たす群を加法群という • 可換群, アーベル群ともいう • 楕円曲線𝐸について結合法則以外は容易に示せる • トーラスの場合の結合法則はほぼ明らか "足し算"になっていること 32/59
  33. 33. • 𝑃 + 𝑄 + 𝑅 = 𝑃 + (𝑄 + 𝑅) • https://www.desmos.com/calculator/28wbmxtqiu 結合法則 𝑃 𝑄 𝑆1 = −(𝑃 + 𝑄) 𝑂 𝑆2 = 𝑃 + 𝑄 𝑅 𝑆4 = −(𝑄 + 𝑅) 𝑆5 = 𝑄 + 𝑅 𝑙1 𝑙2 𝑙3 𝑙4 𝑙6 𝑆3 = − 𝑃 + 𝑄 + 𝑅 𝑆6 = −(𝑃 + 𝑄 + 𝑅 ) 𝑙5 33/59
  34. 34. • 𝑛次曲線 • 𝑥, 𝑦に関する𝑛次多項式で定まる曲線 • Bezoutの定理 • 𝑛次曲線と𝑚次曲線の交点は𝑛𝑚個 • Cayley-Bacharachの定理 • 3次曲線𝐶, 𝐶1, 𝐶2をとる • 𝐶1と𝐶2の交点は9個 • 𝐶がそのうち8個を通れば残りの1点も通る 結合法則を示すための二つの定理 2次曲線同士なら4個 34/59
  35. 35. • 点𝑃, 𝑅, 𝑅, 𝑂を固定すると • 𝑃 + 𝑄 + 𝑅のとき点− 𝑃 + 𝑄 , 𝑃 + 𝑄, −( 𝑃 + 𝑄 + 𝑅)が定まる • 𝑃 + (𝑄 + 𝑅)のとき点− 𝑄 + 𝑅 , 𝑄 + 𝑅, −(𝑃 + 𝑄 + 𝑅 )が定まる 状況確認 同じに(𝑚1と𝑙3の交点)なるか? 𝑃 𝑅 𝑄 −(𝑃 + 𝑄) 𝑃 + 𝑄 𝑂−(𝑄 + 𝑅) 𝑄 + 𝑅 −( 𝑃 + 𝑄 + 𝑅 −(𝑃 + 𝑄 + 𝑅 ) 𝑙1 𝑙2 𝑙3 𝑚1 𝑚2 𝑚3 35/59
  36. 36. • 𝐶1, 𝐶2を𝑙1 𝑙2 𝑙3,𝑚1 𝑚2 𝑚3とすると𝐶𝑖は3次曲線 • 楕円曲線𝐸は𝐶1 , 𝐶2と8点 𝑃, 𝑄, 𝑅, 𝑂, 𝑃 + 𝑄, 𝑄 + 𝑅, − 𝑃 + 𝑄 , − 𝑄 + 𝑅 で交わる • よって𝐸は𝐶1と𝐶2の残りの1点𝑋を通る • つまりX = − 𝑃 + 𝑄 + 𝑅 = −(𝑃 + 𝑄 + 𝑅 ) • よって 𝑃 + 𝑄 + 𝑅 = 𝑃 + (𝑄 + 𝑅) 観察 𝑃 𝑅 𝑄 −(𝑃 + 𝑄) 𝑃 + 𝑄 𝑂 −(𝑄 + 𝑅) 𝑄 + 𝑅 −( 𝑃 + 𝑄 + 𝑅 −(𝑃 + 𝑄 + 𝑅 ) 𝑙1 𝑙2 𝑙3 𝑚1 𝑚2 𝑚3 𝑋 36/59
  37. 37. • 3次式が"3個の直線の積"になったとき • 適当な直線𝐿1, 𝐿3上に6点をとって線を結ぶと交点が同一直線 𝐿2上に乗る ; Pappusの定理 • "𝐿1, 𝐿2, 𝐿3は無限遠点でつながっている"と心の目で見る 特別バージョン 𝑅 𝐿1𝑃 𝑂 𝑄 + 𝑅 𝑃 + 𝑄 𝑄 𝐿2 𝐿3 −(𝑃 + 𝑄) − 𝑃 + 𝑄 + 𝑅 = −(𝑃 + 𝑄 + 𝑅 ) −(𝑄 + 𝑅) 37/59
  38. 38. • 単位元𝑂を無限遠点にとる 楕円曲線の加法公式 𝑃 𝑄 𝑙2 −(𝑃 + 𝑄) 𝑙3 𝑃 + 𝑄 𝑃 𝑂(無限遠点) −𝑃 𝑙1 38/59
  39. 39. • 𝑃 = 𝑥1, 𝑦1 , 𝑄 = (𝑥2, 𝑦2),𝑅 = 𝑥3, 𝑦3 = 𝑃 + 𝑄とする • 𝑃, 𝑄を通る直線𝑙2は 𝑦 = 𝑦2 − 𝑦1 𝑥2 − 𝑥1 𝑥 − 𝑥1 + 𝑦1 = 𝜆 𝑥 − 𝑥1 + 𝑦1 • 𝑦2 = 𝑥3 + 𝑎𝑥 + 𝑏に代入して展開 • 𝑥3 − 𝜆2 𝑥2 + ⋯ = 0 • 𝑥2の係数に着目して3次方程式の解と係数の関係から 𝑥1 + 𝑥2 + 𝑥3 = 𝜆2 加法の計算式(1/2) 𝑃 𝑄 𝑙2 39/59
  40. 40. • 𝑃 = 𝑥1, 𝑦1 , 𝑄 = (𝑥2, 𝑦2),𝑅 = 𝑥3, 𝑦3 = 𝑃 + 𝑄 • 𝜆 = 𝑦1−𝑦2 𝑥1−𝑥2 • つまり 𝑥3 = 𝜆2 − 𝑥1 + 𝑥2 𝑦3 = −(𝜆 𝑥3 − 𝑥1 + 𝑦1) • ここまで書き下せばコンピュータで計算できる 加法の計算式(2/2) 40/59
  41. 41. • 突如現れた𝑦2 = 𝑥3 + 𝑎𝑥 + 𝑏ってなんだ? • この多項式は必然なのか • 作為的な加法公式の由来は • 最初はトーラスで説明していたのに • 以降、その関係性を眺める • 代数幾何の定理(Riemann-Rochの定理)を天下りに使う • もう少し手を動かして複素数上の二重周期関数を観察する トーラスと楕円曲線のつながり 41/59
  42. 42. • トーラス𝑇上の関数 • 関数の極 • 関数が作るベクトル空間𝐿(𝑛𝑃) • Riemann-Roch • 二重周期関数 • ℘関数 • ℘関数の満たす性質 • トーラスから楕円曲線への写像 • 同型性 概要 42/59
  43. 43. • ある物体𝑇を調べるとき、それを直接調べる代わりに その上の関数にどんなものがあるかを調べる • 𝑘(𝑇)を𝑇上の𝑘値関数全体とする(𝑘は代数的閉体) • 細かい条件はここでは触れない • 𝑘(𝑇)は大きい集合なので条件をつけてその部分集合を考える • 𝑇上の点𝑃を一つ決める • 𝑛 ∈ 𝑍≥0に対して 𝐿 𝑛𝑃 : = {𝑓 ∈ 𝑘(𝑇):𝑃でのみ高々𝑛位の極を持つ そのほかの点では極はない} ∪ {0} • 以下𝐿(𝑛𝑃)を調べよう • その前に用語の説明 トーラス𝑇上の関数 43/59
  44. 44. • 𝑓 ∈ 𝑘(𝑇)が点𝑃で𝑛(> 0)位の極を持つとは 点𝑃の付近で 𝑓 𝑧 = 𝑎−𝑛 𝑧−𝑛 + 𝑎−𝑛+1 𝑧−𝑛+1 + ⋯ , (𝑎−𝑛≠ 0) という形をしているもの • このときord 𝑃 𝑓 = −𝑛とかく • 例 • 𝑓 𝑥 = 𝑥−2 + 𝑥は𝑥 = 0で2位の極をもつのでord0 𝑓 = −2 • 𝑓 𝑥 = 1/ sin 𝑥 はsin 𝑥 = 𝑥 − 𝑥3 3! + 𝑥5 5! − ⋯よりord0 𝑓 = −1 関数の極(pole) 44/59
  45. 45. • 定数倍𝑎(≠ 0)しても変わらない • ord 𝑃 𝑎𝑓 = ord 𝑃(𝑓) • 関数𝑓, 𝑔に対して ord 𝑃 𝑓 + 𝑔 ≥ min (ord 𝑃 𝑓 , ord 𝑃 𝑔 ) • 3位と5位の極をもつ関数を足したら5位の極 • ord0 1 𝑥3 = −3, ord0 1 𝑥5 = −5, ord0 1 𝑥3 + 1 𝑥5 = −5 • 同じ位数の極をもつ関数を足せばキャンセルすることがある • 𝑓 = 1 𝑥3 + 𝑥, 𝑔 = − 1 𝑥3 + 1 𝑥2なら𝑓 + 𝑔 = 1 𝑥2 + 𝑥 • ord0 𝑓 = −3, ord0 𝑔 = −3 , ord0 𝑓 + 𝑔 = −2 ordの性質 45/59
  46. 46. • 𝑎, 𝑏 ∈ 𝑘, 𝑥, 𝑦 ∈ 𝑉に対して𝑎𝑥 + 𝑏𝑦 ∈ 𝑉 • 𝑉の基底𝑒1, … , 𝑒 𝑛 • 𝑉の任意の元は𝑎1 𝑒1 + ⋯ + 𝑎 𝑛 𝑒 𝑛, 𝑎𝑖 ∈ 𝑘の形で一意にかける • 特に𝑎1 𝑒1 + ⋯ + 𝑎 𝑛 𝑒 𝑛 = 0なら𝑎1 = ⋯ = 𝑎 𝑛 = 0 • この性質を一次独立という • 例 • 𝑉 = ℝ3 の基底𝑒1 = 1,0,0 , 𝑒2 = 0,1,0 , 𝑒3 = (0,0,1) • 任意の点 𝑥, 𝑦, 𝑧 ∈ 𝑉は𝑥𝑒1 + 𝑦𝑒2 + 𝑧𝑒3とかける • 𝑥𝑒1 + 𝑦𝑒2 + 𝑧𝑒3 = 0なら𝑥 = 𝑦 = 𝑧 = 0 • 𝑉は3次元ベクトル空間 • 𝑉 = 𝑘 𝑥 = {∑𝑎𝑖 𝑥 𝑖 ; 有限和, 𝑎𝑖 ∈ 𝑘}の基底は1, 𝑥, 𝑥2 , 𝑥3 , … • 𝑉は無限次元ベクトル空間 𝑘ベクトル空間𝑉 46/59
  47. 47. • 𝐿 𝑛𝑃 = {𝑓 ∈ 𝑘(𝑇): ord 𝑃 𝑓 ≥ −𝑛, 𝑓は𝑃以外に極はない} ∪ {0} • 𝐿(𝑛𝑃)は𝑘ベクトル空間 • 𝑓, 𝑔 ∈ 𝐿(𝑛𝑃)なら𝑓 + 𝑔 ∈ 𝐿 𝑛𝑃 • 𝑘𝑓 ∈ 𝐿(𝑛𝑃) • 一般に関数の集合のベクトル空間は無限次元なことが多い • トーラス𝑇に対する𝐿(𝑛𝑃)は有限次元ベクトル空間 • より強く 𝑙 𝑛𝑃 : = dim 𝑘 𝐿 𝑛𝑃 = 1 if 𝑛 = 0 𝑛 if 𝑛 > 0 • Riemann-Rochの定理からの帰結 𝐿(𝑛𝑃)の重要な性質 47/59
  48. 48. • 𝑙 0𝑃 = 1 • 𝑇上で極をもたない関数は定数関数のみ(Liouvilleの定理) • 𝐿 0𝑃 = 〈1〉 • 𝑙 𝑃 = 1 • 𝑃でのみ1位の極を持つ関数は存在しない • 𝐿 1𝑃 = 〈1〉 • 𝑙 2𝑃 = 2 • 𝑃でのみ2位の極を持つ関数𝜉が一つある • 𝐿 2𝑃 = 〈1, 𝜉〉, ord 𝑃 𝜉 = −2 • 𝑙 3𝑃 = 3 • 𝑃でのみ3位の極を持つ関数𝜂が一つある • 𝐿 3𝑃 = 〈1, 𝜉, 𝜂〉, ord 𝑃(𝜂) = −3 𝐿(𝑛𝑃)を観察する 48/59
  49. 49. • 続き • 𝜉2は𝑃で4位の極を持つ → 𝐿 4𝑃 = 〈1, 𝜉, 𝜂, 𝜉2〉 • 𝜉𝜂は𝑃で5位の極を持つ → 𝐿 5𝑃 = 〈1, 𝜉, 𝜂, 𝜉2, 𝜉𝜂〉 • 𝜉3 と𝜂2 は𝑃で6位の極を持つ → 1, 𝜉, 𝜂, 𝜉2 , 𝜉𝜂, 𝜉3 , 𝜂2 ∈ 𝐿(6𝑃) • 𝑙 6𝑃 = 6なのに基底の候補が7個ある • これらは一次独立ではない • 𝑎1, … , 𝑎7 ≠ (0, … , 0)となるもので次を満たすものがある 𝑎1 + 𝑎2 𝜉 + 𝑎3 𝜂 + 𝑎4 𝜉2 + 𝑎5 𝜉𝜂 + 𝑎6 𝜉3 + 𝑎7 𝜂2 = 0, 𝑎𝑖 ∈ 𝑘 • 𝑎7 = 0なら1, 𝜉, 𝜂, 𝜉2, 𝜉𝜂, 𝜉3が一次独立でない • 𝑙 6𝑃 = 6に反するので𝑎7 ≠ 0 • 全体を𝑎7で割って𝑎7 = 1としてよい • 𝜂2 + (𝑎5 𝜉 + 𝑎3)𝜂 = 𝑎6 𝜉3 + 𝑎4 𝜉2 + 𝑎2 𝜉 + 𝑎1 • 適当に変数変換して𝑎5 = 𝑎3 = 0とできる 𝜉と𝜂の関係(1/2) 49/59
  50. 50. • 𝜂2 = 𝑎6 𝜉3 + 𝑎4 𝜉2 + 𝑎2 𝜉 + 𝑎1 • 𝑎6 = 0なら2次式の関係式になって球面になってしまう • 適当に(線形結合の範囲で)変数変換して 𝜂2 = 𝜉3 + 𝑎𝜉 + 𝑏の形にもっていける • 楕円曲線𝐸の式! • 𝐿 3𝑃 の基底〈1, 𝜉, 𝜂〉はこの関係式を満たす • 定理 • 𝜑: 𝑇 ∋ 𝑧 ↦ 𝜉 𝑧 , 𝜂 𝑧 ∈ 𝐸は1対1のきれいな写像になる • 𝜑はトーラスと楕円曲線をつなぐ重要な写像 𝜉と𝜂の関係(2/2) 50/59
  51. 51. • トーラス𝑇上の関数𝑓とはなんだろう • 𝑇は長方形(より一般に平行四辺形)の両端を張り付けたもの • 𝑇上の関数は複素数ℂ上の関数とみなすと 長方形を単位とする二重周期関数となる • 𝑓 𝑧 + 𝜆1 = 𝑓 𝑧 + 𝜆2 = 𝑓(𝑧) 少し違うアプローチ 𝑂 𝜆1 𝜆1 + 𝜆2 𝜆2 . . . . . . . . . . . . 全ての黒丸は 同じ値になる 𝑧 . トーラス上の関数𝑓 複素平面ℂ上の関数𝑓 51/59
  52. 52. • ある関数𝑔(𝑥)があったとき 𝑓 𝑥 = 𝑔(𝑥 + 𝑛𝜆) 𝑛 は値が定まるなら周期関数 𝑓 𝑥 + 𝜆 = 𝑓(𝑥) • 例 • 𝑔 𝑥 = 1/𝑥2のときの 𝑓 𝑥 = 𝑔 𝑥 = 1 𝑥 − 𝑛 2 ∞ 𝑛=−∞𝑛 • 実際は𝑓 𝑥 = 𝜋2/ sin2 𝜋𝑥 • 二重周期関数の場合は Λ = {𝜆 = 𝑛𝜆1 + 𝑚𝜆2|𝑛, 𝑚 ∈ ℤ}について和をとる 周期関数を作る 52/59
  53. 53. • 𝑓 𝑧 = ∑ 1 𝑧−𝜆 3 = ∑ 1 𝑧−𝑛𝜆1−𝑚𝜆2 3𝑛,𝑚∈ℤ𝜆∈Λ • 𝑧 ∉ Λについて𝑓(𝑧)は確定(収束)する • 𝑓 𝑧 は𝑧 = 0で3位の極 • 別の例 • ℘ 𝑧 = 1 𝑧2 + ∑ ( 1 (𝑧−𝜆)2 − 1 𝜆2)𝜆∈Λ∖{0} • ℘ 𝑧 は𝑧 = 0で2位の極 • ℘′(𝑧) = − 2 𝑧3 − ∑ 2 𝑧−𝜆 3𝜆∈Λ∖ 0 = −2𝑓(𝑧) • ℘′(𝑧)は𝑧 = 0で3位の極 • ℘ −𝑧 = ℘(𝑧) • ℘をもう少し調べよう トーラス𝑇上の関数の具体例 53/59
  54. 54. • ℘ 𝑧 − 1/𝑧2は𝑧 = 0で0 • ℘ −𝑧 = ℘(𝑧)より℘ 𝑧 の級数展開は奇数次が無い • ℘ 𝑧 = 1 𝑧2 + 𝑐2 𝑧2 + 𝑐4 𝑧4 + 𝑐6 𝑧6 + ⋯ • ℘′(𝑧) = − 2 𝑧3 + 2𝑐2 𝑧 + 4𝑐4 𝑧3 + 6𝑐6 𝑧5 + ⋯ • ℘ 𝑧 3は1/𝑧6の項から始まる • ℘′ z 2は4/𝑧6の項から始まる • 𝑔 𝑧 = ℘′ 𝑧 2 − 4℘ 𝑧 3を計算してみる • 𝑔(𝑧) = − 20c2 z2 − 28c4 − 36c6 + 8c2 2 z2 + ⋯ • 𝑔(𝑧)に20𝑐2℘(𝑧)を足してみる • ℘′ 𝑧 2 − 4℘ 𝑧 3 + 20𝑐2℘ 𝑧 = −28𝑐4 + 12𝑐2 2 − 36𝑐6 𝑧2 + ⋯ • 右辺は𝑧 = 0で極をもたない ℘(𝑧)の性質 54/59
  55. 55. • 右辺が極を持たないので定数になる • またもやLiouvilleの定理 • ℘′ 𝑧 2 − 4℘ 𝑧 3 + 20𝑐2℘ 𝑧 = −28𝑐4 + 12𝑐2 2 − 36𝑐6 𝑧2 + ⋯ • つまり𝑐2 2 = 3𝑐6などが成り立つ • 改めて𝑥 = ℘ 𝑧 , 𝑦 = ℘′(𝑧)とおくと 𝐸 = 𝑥, 𝑦 𝑦2 = 4𝑥3 − 20𝑐2 𝑥 − 28𝑐4} • 楕円曲線の式がでてきた! • 𝜑Λ : 𝑇 ∋ 𝑧 ↦ ℘ 𝑧 , ℘′ 𝑧 ∈ 𝐸はトーラスから楕円曲線への写像 • 実は1対1の対応が成り立つ • 𝜑Λ 0 = 𝑂 ; 無限遠点 • ℘ 𝑧 , ℘′(𝑧)は𝐿(2𝑂), 𝐿(3𝑂)の基底𝜉, 𝜂に対応 • そしてそれだけではない トーラスから楕円曲線へ 55/59
  56. 56. • トーラス𝑇上の加算𝑧3 = 𝑧1 + 𝑧2は複素数としての加算 • 𝑃 = 𝜑Λ 𝑧1 = 𝑥1, 𝑦1 , 𝑄 = 𝜑Λ 𝑧2 = (𝑥2, 𝑦2)とすると 𝑦𝑖 2 = 4𝑥𝑖 3 − 20𝑐2 𝑥𝑖 − 28𝑐4 • 𝑢𝑖 = 2𝑥𝑖, 𝑣𝑖 = 2 𝑦𝑖とおくと 𝑣𝑖 2 = 𝑢𝑖 3 − 20𝑐2 𝑢𝑖 − 56𝑐4 • 𝑅 = 𝑥3, 𝑦3 = 𝑃 + 𝑄とすると楕円曲線の加法公式より 𝑢3 = ( 𝑣2 − 𝑣1 𝑢2 − 𝑢1 )2 −(𝑢1 + 𝑢2) • 𝑥𝑖, 𝑦𝑖の式に書き直すと 2𝑥3 = 1 2 𝑦2 − 𝑦1 𝑥2 − 𝑥1 2 − 2 𝑥1 + 𝑥2 加法公式の対応 56/59
  57. 57. • もし𝜑 𝑧3 = 𝑅になるなら𝑥3 = ℘ 𝑧3 = ℘(𝑧1 + 𝑧2)より ℘ 𝑧1 + 𝑧2 = 1 4 ℘′ 𝑧2 − ℘′(𝑧1) ℘ 𝑧2 − ℘ 𝑧1 2 − (℘ 𝑧1 + ℘ 𝑧2 ) • これは実際に成り立つ ℘関数の加法公式 57/59
  58. 58. • つまり 𝑅 = 𝑃 + 𝑄 𝜑Λ 𝑧1 + 𝑧2 = 𝜑Λ 𝑧1 + 𝜑Λ(𝑧2) • 図形的な加算の定義が複素数の加算とつながった 𝜑Λは同型 トーラス上の加算 楕円曲線上の加算 𝑧1 𝑧2 𝑧1 + 𝑧2 𝑃 𝑄 𝑙3 𝑃 + 𝑄 𝜑Λ 58/59
  59. 59. • 平行四辺形の両端をつなげてトーラスを作る • トーラスは加算ができる一番簡単な物体 • 楕円曲線𝐸 = {(𝑥, 𝑦)|𝑦2 = 𝑥3 + 𝑎𝑥 + 𝑏}も加算ができる • トーラスと楕円曲線は表裏一体 まとめ 59/59

×