【無料キャンペーン】「たす・ひく・かける・わる」だけで数学入門【Kindle】
Twitterのフォロワーさんが3414人(円周率)に到達したのを記念して、9月9日~9月13日に下記の本の無料キャンペーンを実施します。ぜひ、この機会に読んでみてください!!
【Python】素因数分解のプログラム
【Python】ボツになった素因数分解アルゴリズム【数論】
と表される場合を考える。このからを高速に求めたい。そこで、[text:sqrt{n}]と比べて大きすぎず小さ過ぎない適当な自然数をとり、
とすると、
となる。ここで、整数平方根のプログラムを用いた。
これを用いて、を
と表すことにする。ここで、はを満たす自然数である。
式変形して、
となる。ここで、がに比べて十分小さいとすると*1、この式は次のように近似できるはずである。
これをについて解くと、
となる。なので、更に変形して、
となる。cをこの範囲でループさせて、がを割り切るか調べれば良い。
aの数の候補は、トーシェント関数となるので、このアルゴリズムの計算量は、
となる。mを2から始まる素数の連続した積にとることで、この計算量を短縮できる。このときの計算量は
となる。
しかし、これだけ短縮してもrsa100は残念ながら分解できなかった。こんなアイデアではダメなんだろう。もっと革新的なアイデアが必要なはずだ。
*1:これは、2つの素因数が近すぎないことを意味する。このとき、である。
【Python】巨大な数の整数平方根
Amazon.co.jp: Yoshiki Ueoka:作品一覧、著者略歴
探しても見つからなかったので、巨大な(大きな)自然数nに対して、高速に整数平方根を計算するプログラムを書きました。整数平方根とはnに対して、
となる最大の整数のことです。math.sqrt等のライブラリ関数を使うと、誤差が出てしまいますが、以下の関数Intsqrtはnの桁数の計算量で整数平方根を厳密に計算してくれます。
【Kindle】「たす・ひく・かける・わる」だけで数学入門【入門書】
僕の数学の入門書がついに出版されました!!
「たす・ひく・かける・わる」だけで数学入門 数と関数をめぐって: 中学数学入門から大学数学入門までを1冊に | 上岡 良季 | 数学 | Kindleストア | Amazon
ついに、(僕が?)待ちに待った1冊が出版されました!!
本当に最小限の予備知識である四則演算だけで、中高大の数学へ入門できる究極の1冊です!!
公式や定理、計算も飛ばさず、これでもかというくらい丁寧に説明しています。
これから数学を始める人も、忘れてしまった人も、昔やったことを思い出したい人も、数式アレルギー治したい人もみんなみんなにオススメの1冊です。
中学数学では、数と関数などについて、
大学数学では、マクローリン展開、オイラーの公式、微分方程式、パデ近似などについて、
それぞれ解説しています。この本は既刊「多点総和法入門」の入門書にもなっていますし、これから出版予定の本の入門書にもなっています。つまり、全てのはじまりの数学入門書なのです!!
まずは、試し読みしてみてください。内容が気に入ったらぜひ購入して読んでいただきたいです。なんと、破格のワンコイン500円です。ページ数は元の原稿で約130ページです。ここにぎゅっと数学入門の全てが詰まっています。
では、巻末でまたお会いできることを期待しています。