スキップしてメイン コンテンツに移動

平方因子の存在

自然数が与えられたとき、その数が平方因子を持つかどうかの判定は、現在のところ、因数分解してみる以上に効率的な方法が知られていない。 べつに因子自身を知る必要が無いということを考えると、因数分解は手間が掛かりすぎという感覚があり、多分これは多くの(計算数論に多少なりとも興味のある)人に喉に刺さった小骨のような苛立ちをもたらしている。 以下に述べることは、問題の解決ではなく、こんなことを考えてみたけどうまくいかんなあ、という記録である。

整数の難しい問題は、一変数多項式に手がかりを求めると良いと言われる。 多項式が平方因子を持つかどうかの判定は簡単で、\((f, f')\) を計算すると平方因子が求まる。 (もちろん \(f'\) は \(f\) を微分したもの、\((,)\) は最大公約因子の記号、である)

例えば \(f(X) = X^3 + 7 X^2 + 8 X - 16\) とすると、 \(f'(X) = 3 X^2 + 14X + 8\) で、 \(f(X)\) と \(f'(X)\) の最大公約因子は \(X+4\)。 よって \(f(X)\) は \(X+4\) で2回割り切れる。

整数には微分が定義されていないので、そのまま使えるわけではないが、類似の現象を探すのが良さそうである。

次の関係に注目してみたい。 「\(n\) が平方因子を持つ正整数ならば、\((n, \varphi(n)) > 1\)」

注意点としては、逆が成り立たないし、\(\varphi(n)\) の計算の手間も因数分解と大体同等だと思われる、という二つがある。 逆が成り立たないことは、\(p_1 | p_2 - 1\) となる \(n\) の素因数の組 \(p_1, p_2\) がある場合にも \((n, \varphi(n)) > 1\) となることを見れば良い。 オイラー関数の計算の手間が因数分解と同等か正確なところは判らないが、RSA 暗号の安全性と関わってそういう議論があったはずだ。

オイラー関数を計算してはいけないという縛りの下に \((n, \varphi(n)) > 1\) の成立を確かめよう、というのが次のタスクになる。 そこでひねり出したのが次の条件である。 \[\exists a \text{ s.t. } a^{n-1}\not\equiv 1 \bmod n \wedge a^{n(n-1)}\equiv 1 \bmod n\] これが \((n, \varphi(n)) > 1\) と同値な条件になっている。 問題は、存在するという \(a\) はどのぐらいの数を調べると見つかるのか、ということである。 それは各素(冪)因子での条件の中国式剰余定理での組み合わせなので、まあだいたい平方になっている素因子ぐらいは最低でも見ないと見つからないはずだ。 結局、そんなに大量に探すなら因数分解した方が早くなってしまう。 少し考えれば \(1\) かどうかにこだわらず \(n-1\) 乗では異なり \(n(n-1)\) 乗では一致する組 \(a, b\) を見つければ良いと判るが、これでも計算量は平方根程度に(確率的に)落ちるだけなのでまだ指数の手間が掛かる。

いつか改善策を思いつけたらいいな、と思ったのが5年ぐらい前の話である。

このブログの人気の投稿

「函数」音訳説について探してみる

Twitter に書こうかと思ったが、ちょっと長くなるのでこっちに書くことにする。 「函数」が音訳というデマと、本当の語源 というブログ記事について ツイートされてるの を見た。 詳しい内容はリンクを辿って読んでみて欲しい。 その記事中の「函数」音訳説という部分で、引用されているものが意外と新しい1980年代以降のものなので、さすがにもっと古いだろう、と探してみた。 1. 武部良明「漢字の用法」(1976) このほか武部良明『漢字の用法』(角川書店1976)にも同様の記述があるという(未確認)。 とあって、たまたま同書(三版)を持っているので調べてみた。 「関数」ではなく「関・函」の項にあった。 「函」は「いれる」意味。 したがって、「函数」という漢字の組み合わせからは、「対応して定まる数」という意味は出てこない。 「函数」については function という原語の音 fun を、「函」の音カン(現代中国語 han)で写したものとされている。 これに対し現代表記の「関数」は、全体の意味を「かかりあう数」と考え、「函」の部分を、同音で「かかりあう」意味の「関」に書き換えたものである。 2. 遠山啓「関数を考える」(1972) 近所の図書館で見つけた。 会話体の文章の中で、先生役が言っている。 はっきりはわからないが, 中国語の発音では function と似ていて, しかも意味も近いらしいのだ. 3. 遠山啓「数学は変貌する」(1971) 2012年にちくま学芸文庫から出た「現代数学入門」所収。 「関数を考える」が中学生ぐらいを対象にしたシリーズの一冊なので、そこでいきなり初披露ということは無いだろうと見当をつけて遡って探した。 機能とは簡単にいうと働きです。 ライプニッツが初めてファンクションという言葉を使った. ライプニッツはドイツ人ですが, ドイツ語は当時はいなかの言葉みたいで, フランスが文化の中心であったから, フランス語で書いてありますので, フォンクション (fonction) です. もとは日本では「函数」, あとになって「関数」と改めたのです. なぜこんな函の数という妙な言葉を使ったか, これは中国からきた字です. 中国人は各国語を音まで似せて訳すことがうまい. フォンクションは中国語で函数を中国読みしますと非常に似ているのだそ...

2025年の読書

読書メーターの記録 によるとマンガも入れて101冊。 久しぶりに年100冊に乗った。 前年からの勢いのままに菌類関係の本をいくつか読んだが深澤遊の「キノコとカビの生態学」「枯木ワンダーランド」は面白かった。 後半はファーブル昆虫記を読破した。岩波文庫の古い訳で読んだのが良かったのか良くなかったのか。 数学関係は、前半表現論の本を読んで表現とは加群のことであるという言葉で何だかすっきりした。 年の終わり近くはラングランズ予想というか楕円曲線と保型形式とガロワ表現とみたいな内容の本をいくつか。「ラングランズ予想」というそのものズバリなタイトルの本も出たのでその内読みたい。 マンガは、「ヴィンランド・サガ」も「アルテ」も「推しが武道館に行ってくれたら死ぬ」も完結して、読み続けるタイトルが少なくなってきた。

バス会社のキャラクター登場時期

東京のバスの行き先表示にある時期に一斉にマスコットの絵が付くようになった、ような気がしていた。 調べてみたら、登場時期には幅があったようだ。 都バス: みんくる 平成11年1月18日に都バスが75周年を迎えたことを記念して一般公募し、日本全国から集まった2,457点の中から選ばれました。 東急バス: ノッテちゃん 2011年、東急バス株式会社創立20周年を記念し、東急バス・東急トランセの従業員と、その家族たちの投票により制定したイメージキャラクター「ノッテちゃん」です。 小田急バス: きゅんた 2012年9月に誕生した、小田急バスのマスコットキャラクターです。 西東京バス: にしちゅん Q 誕生日は? A 2013年10月1日 神奈川中央交通: かなみん 2014年3月に誕生した、神奈中グループのマスコットキャラクターです。 関東バス: かんにゃん 平成26年夏に誕生した、関東バスのキャラクターです。 西武バス: エンジェ (いつ誕生したのか確認できず)