Pebble Coding

ソフトウェアエンジニアによるIT関連技術や数学の備忘録

数学

Velu's Formula

Velu's Formulaの証明の最後の部分で悩んでいたのですが、解決したのでメモしておきます。 https://eprint.iacr.org/2011/430.pdfこちらの説明でeasyだって書いてあり、数学者のeasyはちょっと計算をすればという意味なので、 ちょっとした計算って何だろう…

拡大体F_25での有理点

python で有限体Fpでの楕円曲線上の有理点の群構造を調べる - Pebble Codingこの記事ででののcardinarityが9であることを調べました。 にの根を加えて拡大体を作ります。 この拡大体上の点を調べてみます。 sage: K = GF(5) sage: R.<x> = K[] sage: L = K.exte</x>…

sagemath をjupyter notebookモードで起動する

今まで ./sageでREPL環境を起動していましたが、jupyter notebookモードで起動することもできるようです。 ./sage -n jupyterテキストエディタ機能が使えるので便利です。

SageMathでisogenyを調べる

python で有限体Fpでの楕円曲線上の有理点の群構造を調べる - Pebble Codingこちらの記事で、 を調べたとき、cardinalityが9でした。 SageMathで同種写像を調べる方法があったので試してみます。 Isogenies — Sage Reference Manual v8.8: Plane curvesなお…

同種写像の例

What is an isogeny of elliptic curves?こちらの記事に同種写像(isogeny)の例がのっています。 この写像のxの部分の分母、分子で次数が大きい方が2なので、 この同種写像の次数(degree)は2ということになります。 この変換式が本当に同種写像かどうかを確か…

Tate(テイト)の同種定理(isogeny theorem)

Tateのisogeny thereom 以下の2つは同値である。 1) 有限体上の2つの楕円曲線が上同種写像である。 2) 2つの楕円曲線上の点の数は等しい。 https://www.math.auckland.ac.nz/~sgal018/iso.pdf

有限体F27の元

有限体の要素を作ります。 べき部分が3なので、3次の規約多項式の根を追加する必要があります。 を使います。 係数はなので、です。 計算の仕方はだいたい分かったと思いますので以後結果のみを書きます。 有限体の乗法群は元の数が26(=27-1)個あり全ての要…

代数的整数と代数的数

整数係数の1次元n次多項式で最大次数の係数が1のもの の根となる複素数を代数的整数(algebraic integer)と呼ぶ。 代数的整数 - Wikipedia代数体Kの元のうち、代数的整数のみを抜き出した集合を整数環(ring of integers)と呼び、と表す。 有理数係数の1次元n…

有限体の3等分点の例

上のの3等分点を考えます。 3等分点は9つあります。(一つは無限遠点です。) そのうちの2つをP, Qとします。 なのでPが曲線上にあることはすぐ確かめられます。 なので、Qも曲線上にあることが分かります。 ちなみに、この計算はmac book上のpython3で以下の…

位数nの2つの巡回群の直積の群は位数nの部分群をn+1個持つ

位数nの2つの巡回群の直積の群は位数nの部分群をn+1個持つ。 これ正しいのか一見分かりませんが、低次を計算してみると確かに正しいことが分かります。 部分群をで表します。 また巡回群なのでnは素数です。 n=2の場合。 確かに成り立っています。 n=3の場…

dual isogeny

楕円曲線のlattice(格子)を考える。 lattice上では無限遠点z=0である。格子上の点は全て無限遠点である。 C/L=Eは無限個の点を持つが、そのうち3倍点を考える。 3倍点とは点zを3つ加算したものが0になる点つまり、z+z+z=3z=0となる点のことである。 この点…

ガロア群

体Lの自己同型のうち同型群 を考える。 体Lを体Fの有限次拡大とする。 体Fの全ての要素を変更しない拡大体LからLへの自己同型群の全てを要素とし、 演算をこの群の合成としてガロア群 Gal(L/F)と定義する。 は自己同型群 命題1. Gal(L/F)は合成に関して群を…

群、環、体、正規拡大、分離拡大

群の定義 集合Gから任意の要素a, bを取り出してそれに対してGの要素cを割り当てる操作(写像ともいう)を c = f(a, b) と表す。 A) 結合律、B) 単位元 C) 逆元 が成り立つとき、これを群と呼ぶ。 A) 結合律 a, b, cを集合から取り出したとき、 f(a, f(b, c)) =…

拡張ユークリッドの互除法

pythonの再帰で実装したもの import sys def egcd(a, b): """return (g, x, y) such that a*x + b*y = g = gcd(a, b)""" if a == 0: return (b, 0, 1) else: g, x, y = egcd(b % a, a) return (g, y - (b // a) * x, x) rustではタプルが使えるので、同じア…

オイラーの五角数定理(Euler's Pentagonal Number Theory)とj関数の係数の計算

オイラーの五角数定理というのがあるようです。 j関数の計算に使われるようです。 証明はこちら。 https://faculty.math.illinois.edu/~reznick/2690367.pdf j関数の係数は以下のように計算できます。 ここでは低次の係数のみを求めてみます。 と置いてを求…

楕円曲線の有理点の数の求め方 schoof アルゴリズムその5

schoofアルゴリズムをpythonで実装したらめちゃくちゃ遅かったのですが、楕円曲線の有理点の数の求め方 schoof アルゴリズムその4 - Pebble Codingrustで実装したところ、 a = -1 mod 3 a = -2 mod 5 の計算が、Debugビルドで90秒、Releaseビルドで7秒で計…

円分体で使われる式

nを整数として、とすると以下が成り立つ。 2番めの式で、とすると、左辺は0になるが、右辺の(x-1)は0ではない。 したがって 1番目の式が正しいかも確認してみます。 ここで、とを使えば係数が全て1になることが分かります。 となり、係数が全て1であること…

多項式についてのガウスの補題(Gauss's Lemma)

、 であるとき、f(x)を原始多項式(primitive polynomial)と呼ぶ。 係数の中に一つでも1または-1があれば、原始多項式です。 ガウスの補題(Gauss's Lemma) 2つの原始多項式の積は原始多項式である。 証明はこちら。 原始多項式とその積について | 高校数学の…

n次多項式の重根判定と微分

定理 複素数体上の多項式を考える。1)と2)は同値である。 1) n次多項式f(x)は重根を持つ。 2) n次多項式f(x)のある根に対しが成り立つ 証明 1) -> 2) と書ける。 微分して、 したがって、が成り立つ。 証明 2) -> 1) 対偶である、「重根を持たなければ、全て…

division polynomialと等分点

楕円曲線のn等倍点の多項式(division polynomial) - Pebble Codingここで、division polynomial を示しました。 体K上の楕円曲線上の点P(x, y)をn倍(nは整数)した点は、division polynomialを用いて、以下のように書けます。 ここで、n等分点、つまり、n倍し…

モジュラー多項式とN-isogenousの関係

定理1 標数 (0でもよい)の任意の体Fを考える。 を素数としとする。 体F上の楕円曲線Eの 不変量を とする。 モジュラー多項式 の 個の根 は体Fの代数閉包 に入っている。 定理2 この は - isogenous 楕円曲線 E/C の 不変量である。 ここでCは等分点の群 の …

複素数体(C)上の同種写像(isogenies), C/LとE(C)は同型

複数数体(C)上の楕円曲線はLattice(格子)によって決まります。 格子は、2つの複素数 の複素ベクトルによって作られます。 が格子ですが、無限個の頂点から成ります。 格子Lという時、点の集まりのことを指しています。 ガウス整数からなる格子と言えます。 4…

ワイエルシュトラスのペー関数(weierstrass p-function)の係数についての漸化式

ワイエルシュトラスのペー関数の係数についての漸化式の導出方法です。 から出発します。 なお、はkが奇数のとき0です。 微分します。 点がついている部分はzの1次以上の項を表します。 ここで、関数f(z)が格子に対する二重周期関数で、極を持たない場合は、…

モジュラー多項式の定義と係数の求め方

とします。これは ではありませんのでご注意ください。 例えば、N=2の時のの集合は、 となります。 以下の式を考えます。 N=2の場合は、 となります。 驚くべきことに、はの整数係数多項式で表せることが知られています。 N=2の場合は、 のように書けるとい…

楕円曲線のデルタの逆数のq展開の係数が整数であることの証明

楕円曲線で使われるの逆数のq展開の係数が整数であることの証明が素晴らしかったので、メモしておきます。 についてであることの証明。 ここで、 とおく。 は連続する3つの整数なので3の倍数、連続する2つの整数を含むので2の倍数でもある、したがって6の倍…

SL(2, Z)とモジュラー性

SL(2, Z)のちゃんとして説明はうまくできないので、高校数学の範囲内で特徴を説明したいと思います。 x, yの2次元平面を考えて、x, y, X, Yを整数とします。 線形変換を考えます。 ここでa, b , c, d も整数とします。 これは整数点P(x, y)から整数点Q(X, Y)…

SageMath 入門

ほぼpythonと同じ構文と考えておけばよいです。 100未満の素数を出力する sage: x = 1 sage: while x < 100: ....: if x.is_prime(): ....: print(x) ....: x = x + 1 ....: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 プログ…

SageMath のインストール方法と使い方

数学の研究に便利な SageMath のインストール方法と使い方です。 macOSの場合です。 以下のページのいずれかから以下のファイルをダウンロードします。 http://ftp.riken.jp/sagemath/osx/intel/index.html http://ftp.yz.yamagata-u.ac.jp/pub/math/sage/os…

楕円曲線における離散対数問題

例として、 を考えます。 有理点の数(群位数)は31で素数です。 点の加法群の位数が31ということは部分群が存在せず、巡回群つまり一つの元を足し合わせることで全ての元が表現できるということです。 全ての点が位数31となります。 ちなみに、無限遠点O以外…

楕円曲線の有理点の数の求め方 schoof アルゴリズムその4

y'についてもみていきます。 を使うと、 残りのフロベニウス写像部分は したがって、 分母を揃え、分子だけ取り出したものがで割り切れるかどうかを調べます。 コンピュータ計算上は分母にyが含まれるか否かの分岐が面倒なので、 分子だけの計算結果にyが含…

プライバシーポリシー

お問い合わせ

スポンサーリンク