「明日話したくなる「素数」のお話」第1回プログラマのための数学勉強会...

Post on 15-Jul-2015

7.436 Views

Category:

Science

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

明日話したくなる「素数」のお話

日曜数学者辻 順平(@tsujimotter)

http://tsujimotter.info

プログラマのための数学勉強会 (2015/01/30)

日曜数学(者)とは

プログラマのための数学勉強会 22015/1/30

興味の赴くままに「趣味として」

数学を探究する行為(人)

【一番「熱い」と思う対象について学ぶ・話す】

明日話したくなる数学豆知識Advent Calendar 2014

2015/1/30 プログラマのための数学勉強会 3

1日目 グロタンディーク素数 14日目 知られざる反例

2日目 統計学における自由度 15日目 ペンローズ・タイル

3日目 一時期話題になった素数の… 16日目 積と微分とデルタ関数

4日目 数の呼び方 17日目 正十七角形は作れる

5日目 素数のスモールギャップに… 18日目 おつりでフラクタル

6日目 ほとんどいたるところ 19日目 期待値とある値以上の確率との関係

7日目 無理数の無理数乗は無理数か? 20日目 たのしい積分

8日目 例のレナ 21日目 アルキメデスと円周率

9日目 二次方程式の解の公式の別の… 22日目 すごい判別式

10日目 ステップ関数の微分 23日目 モンストラス・ムーンシャイン

11日目 ラングレーの問題とフランク… 24日目 クリスマス・イブには iを語ろう

12日目 数列の和の算数 25日目 3Dプリンタで正十二面体を作って…

13日目 おすすめ数学小説:ペトロス…

明日話したくなる「素数」のお話

プログラマのための数学勉強会 42015/1/30

素数とは

2, 3, 5, 7, 11, 13, …

プログラマのための数学勉強会 52015/1/30

定義:「 1と自分自身以外に正の約数を持たない数( 1を除く)」

ごーせーすー

素数は大人気

2015/1/30 プログラマのための数学勉強会 6

http://page.freett.com/hougi/contents/prime.htmlより引用

素数は「数の元素」

105

プログラマのための数学勉強会 72015/1/30

5 21

3 7

ユークリッド(B.C. 323 - B.C.283)

「素数は無限に存在する」

プログラマのための数学勉強会 82015/1/30

素数がいつ現れるか

2015/1/30 プログラマのための数学勉強会 9

2 3 5 7 11 13 17 19

(素数のリズムパターンを「演奏する」デモをしました)

ガウスの発想

カール・フリードリヒ・ガウス(1777 - 1855)

対数表

プログラマのための数学勉強会 102015/1/30

ガウスの素数階段

プログラマのための数学勉強会 112015/1/30

2

3 4

5 6

7 8 9 10

11

ガウスの素数階段

プログラマのための数学勉強会 122015/1/30

2

3 4

5 6

7 8 9 10

11

100

?1から100までの素数階段を作るためには、いったい何段の高さまで積み重ねる必要があるのか?

プログラマのための素数の数え方

$ irbirb> require 'prime'trueirb> Prime.each(10).count=> 4irb> Prime.each(100).count=> 25

プログラマのための数学勉強会 132015/1/30

1 から 100 までの素数階段

プログラマのための数学勉強会 142015/1/30

ガウスの素数階段(素数 pのときだけ 1 上がる)

何か法則がありそう

ガウスの予想

プログラマのための数学勉強会 152015/1/30

以下の素数の個数𝑥𝑥

𝑥𝑥 ≒ log 𝑥𝑥

ガウスの予想を確かめる

プログラマのための数学勉強会 162015/1/30

X X 以下の素数 X / X 以下の素数 対数表との誤差(比)

10 4 2.5 -8%100 25 4.0 +15%

1,000 168 6.0 +16%10,000 1,229 8.1 +13%

100,000 9,592 10.4 +10%1,000,000 78,498 12.7 +8%

÷ =÷ =÷ =÷ =÷ =÷ =

素数定理のつかいかた

プログラマのための数学勉強会 172015/1/30

1,000,000以下の素数は

およそ12個に1個が素数

12 分の 1 で素数が出るサイコロ

ガウスの素数定理の言い換え

プログラマのための数学勉強会 182015/1/30

ガウスの素数階段(素数 pのときだけ 1 上がる)

ガウスの素数定理の式: 𝑦𝑦 = Li 𝑥𝑥

Li 𝑥𝑥 =1

log 2+

1log 3

+1

log 4+ ⋯+

1log 𝑥𝑥

対数積分

ベルンハルト・リーマン(1826 - 1866)

プログラマのための数学勉強会 192015/1/30

「与えられた数より小さい素数の個数について」

プログラマのための数学勉強会 202015/1/30

リーマンによる新手法

素数階段を

フーリエ変換したる

21

プログラマのための数学勉強会 222015/1/30

基本振動の波

フーリエ変換の復習タイム

2倍振動の波

3倍振動の波

プログラマのための数学勉強会 232015/1/30

フーリエ変換の復習タイム

分解した波を足し合わせると・・・

フーリエ変換

「任意の周期関数は基本振動の波と倍音の波の和によって表せる」

プログラマのための数学勉強会 242015/1/30

とは

𝑓𝑓 𝑥𝑥 = 𝐴𝐴1cos 𝑥𝑥 + �𝑘𝑘=2

𝐴𝐴𝑘𝑘 cos 𝑘𝑘𝑥𝑥

倍音の波基本振動の波任意の周期関数

素数階段のフーリエ変換

「リーマンの素数階段はガウスの素数定理の式とゼータ関数のゼロ点の波の和によって表せる」

プログラマのための数学勉強会 252015/1/30

𝐽𝐽 𝑥𝑥 = Li 𝑥𝑥 −�𝑘𝑘=1

∞2𝑥𝑥𝛽𝛽𝑘𝑘𝜌𝜌𝑘𝑘 log 𝑥𝑥

cos 𝛼𝛼𝑘𝑘 log 𝑥𝑥 − arg𝜌𝜌𝑘𝑘

ゼータ関数のゼロ点の波ガウスの素数定理の式リーマンの素数階段

リーマンの素数階段

プログラマのための数学勉強会 262015/1/30

ガウスの素数階段(素数 pのときだけ 1 上がる)

リーマンの素数階段(素数のべき乗 pmのとき 1/m 上がる)

リーマンの素数階段

プログラマのための数学勉強会 272015/1/30

ガウスの素数定理の式

リーマンの素数階段(素数のべき乗 pmのとき 1/m 上がる)

ドンピシャリ!

• 1つ目の「ゼロ点の波」

• 2つ目の「ゼロ点の波」

プログラマのための数学勉強会 282015/1/30

「ゼロ点の波」を足していきましょう

プログラマのための数学勉強会 292015/1/30

可視化アプリつくってみた

"Visualization of Riemann's Prime Number Formula"http://tsujimotter.info/works/prime-number-formula/

𝐽𝐽 𝑥𝑥 = Li 𝑥𝑥 −�𝑘𝑘=1

∞2𝑥𝑥𝛽𝛽𝑘𝑘𝜌𝜌𝑘𝑘 log 𝑥𝑥

cos 𝛼𝛼𝑘𝑘 log 𝑥𝑥 − arg𝜌𝜌𝑘𝑘

プログラマのための数学勉強会 312015/1/30

「周波数」

「振幅」

「ゼロ点の波」の分布

「ゼロ点の波」の分布

プログラマのための数学勉強会 322015/1/30

すべての「振幅」が 1/2

(リーマン予想)

「振幅」

「周波数」

今日一番伝えたいこと

「趣味で数学」は楽しい!!

19世紀くらいまでの数学は勉強すればアマチュアでも理解できる

プログラミングは「趣味で数学」の武器• わからなければ作ってみる• 数学者にはできないこともできるかも

2015/1/30 プログラマのための数学勉強会 33

素数の遊び方• ウラムの螺旋

2015/1/30 プログラマのための数学勉強会 34

ほかにもあるよ!

4𝑥𝑥2 − 2𝑥𝑥 + 41 𝑥𝑥 = 0, 1, 2, …

Wikipedia 「ウラムの螺旋」より引用

まとめ

• 明日話したくなる「素数」のお話• ガウスの素数定理(素数階段と対数表の関係)

• リーマンの素数公式(素数階段のフーリエ変換)

• リーマン予想(「ゼロ点の波」の「振幅」はきれいに揃う)

• 日曜数学• プログラムを作って「素数」で遊んでみよう

プログラマのための数学勉強会 352015/1/30

宣伝

• ブログもあるよブログ: http://tsujimotter.hatenablog.com作品集: http://tsujimotter.info

• ほかにもネタはたくさんあるので、興味がある人はぜひお話しましょう!

2015/1/30 プログラマのための数学勉強会 36

参考文献1.マーカス・デュ・ソートイ著「素数の音楽」新潮クレスト・ブックス (2005).

リーマン予想や素数と人類の戦いの歴史について丁寧に解説してくれています。今回の話の流れはこの本を参考にしています。

2.ジョン・ダービーシャー「素数に憑かれた人たち」日経BP社(2004).

リーマンの素数公式について、もう少し突っ込んで知りたいと」思った方向け。「ゼータ関数」と「素数公式」がなぜ関係するのかを、非常に丁寧に解説してくれています。

3.ハロルド・M・エドワーズ著「明快ゼータ関数とリーマン予想」講談社 (2012).

本気で勉強したい人向け。素数公式の導出が完全な形で解説されています。

2015/1/30 プログラマのための数学勉強会 37

2015/1/30 プログラマのための数学勉強会 38

以下、補足スライド

注意点• 今回のスライドで登場した数式は、説明の都合上、ところどころ端折っていたり、簡単化しています。

• リーマンの論文と今回のスライドでは以下の点が異なりますので、参考にする際はご注意ください。

2015/1/30 プログラマのための数学勉強会 39

対数積分 Li 𝑥𝑥 の定義• 本スライド

Li 𝑥𝑥 =1

log 2+

1log 3

+1

log 4+ ⋯+

1log 𝑥𝑥

• リーマンの論文Li 𝑥𝑥 = �

0

𝑥𝑥 d𝑡𝑡log 𝑥𝑥

2015/1/30 プログラマのための数学勉強会 40

ただし、積分は「コーシーの主値」をとる

リーマンの素数公式• 本スライド

𝐽𝐽 𝑥𝑥 = Li 𝑥𝑥 −�𝑘𝑘=1

∞2𝑥𝑥𝛽𝛽𝑘𝑘𝜌𝜌𝑘𝑘 log 𝑥𝑥

cos 𝛼𝛼𝑘𝑘 log 𝑥𝑥 − arg𝜌𝜌𝑘𝑘

• リーマンの論文𝑓𝑓 𝑥𝑥 = Li 𝑥𝑥 −�

𝛼𝛼

Li 𝑥𝑥12+𝑖𝑖𝛼𝛼 + Li 𝑥𝑥

12−𝑖𝑖𝛼𝛼 + �

𝑥𝑥

∞ 1𝑥𝑥2 − 1 �

d𝑥𝑥log𝑥𝑥 + log 𝜉𝜉 0

2015/1/30 プログラマのための数学勉強会 41

今回の計算では未使用

(無視できる誤差)

計算では使用したがスライドでは触れず

リーマンの素数階段• 「リーマンの素数階段」という言葉は、今回便宜的に導入しましたが、ほかでは使われていない言葉なので注意してください。

• Wikipedia「与えられた数より小さい素数の個数について」では「離散関数」という書き方をしています。

• ちなみに、𝐽𝐽 𝑥𝑥 という表記は参考文献3で用いられています。リーマンの原論文では 𝑓𝑓 𝑥𝑥を用いています。

2015/1/30 プログラマのための数学勉強会 42

top related