Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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

12,115 views

Published on

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

Published in: Technology
  • Be the first to comment

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

  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

×