スライド 1

AKS実装part11
2012/1/11 伴地 慶介
目次

卒研発表について

迷い中・・・
AKS実装part11
2015/9/30
卒研発表について

数論システムNZMATHへの素数判定法AKSの実装

Introduction と Background

AKSの概要

実装

性能評価

まとめ
AKS実装part11
2015/9/30
Introduction と Background
① 素数判定について
・確率的素数判定 と 決定性素数判定
・指数時間 と 多項式時間
② What is AKS?
③ 研究の動機
AKS実装part11
2015/9/30
AKSの概要
① AKSの理論的な部分
② アルゴリズム
③改良版アルゴリズム
多項式の計算に時間がかかる
( NZMATHの多項式では3桁の素数でも約300秒近くかかってしまう)
AKS実装part11
2015/9/30
実装
NZMATHでは・・・
多項式にハッシュを使用
様々なモジュールを多重継承
⇒ だから遅いのか!
AKS用に新たな多項式を定義!
・リストでの多項式定義
・継承なし
AKS実装part11
2015/9/30
FFT実装



FFTとは・・・
そして実装・・・
しかしPythonでは事実上使い物にならなかった・・・
Raise
MemoryErorr・・・
AKS実装part11
2015/9/30
性能評価

実験環境

性能評価
・現状最速のAKSを用いた性能
・NZMATHの多項式を用いて実装したAKSの性能

結果
AKS実装part11
2015/9/30
まとめ

今回実装したもの
・素数判定法AKS
・FFT

理論上は・・・
・決定性多項式時間素数判定法AKS
・多項式の乗算を高速に行えるFFT

判定したい 𝑛 が大きくなれば実用的なものではない
AKS実装part11
2015/9/30
迷い中・・・

FFTの説明をどの程度詳しくするか?

他言語(Magma,Pari/GP,C)との比較は入れる?
AKS実装part11
2015/9/30