ケンプナー関数
数論において、ケンプナー関数(けんぷなーかんすう、英: Kempner function) [1] は正整数について定義される関数である。
定義
階乗 をが割り切るときの最小値を与える関数である。例えばならば、はで割り切ることはできないが、で割り切ることができる。つまり.である。他の言い方をすればがの約数となる最小の整数を与える関数である。
この関数は、素数においては一次関数的に成長し、階乗数では対数関数的成長を見せる、一貫性がない成長率をもつ。
歴史
ケンプナー関数は、1883年、リュカによって初めて言及された[2]。その後は、1887年のヨーゼフ・ノイベルグのジャーナルにも見られた[3]。1918年、オーブリー・J・ケンプナー が最初に正しい計算アルゴリズムを与えた[1]。
1980年にスマランダチェが再発見したことからスマランダチェ関数(Smarandache function)とも呼ばれる[1]。
性質
はを約数に持つため、は常により小さい。 が4より大きい素数であることとが成り立つことは同値である[1]。つまりができるだけ大きくなるときは素数である。逆に、できるだけ小さくする場合はを階乗数にすればよい(について となる)。
は係数が整数である、出力された整数値がすべてで割り切れるモニック多項式の最小次数となる。例えばについて、以下の三次関数が出力する整数値は6で割り切れる(6を法として0である)。しかし二次また一次のモニック多項式で、その出力された整数値が常に6で割り切れるものは存在しない。
ほとんどすべての整数(漸近密度が0という意味)で、がの最大の素因数と一致する事がエルデシュによって指摘された[4]。この問題は1911年にThe American Mathematical Monthlyで発表され1994年に解決された。
計算複雑さ
任意の整数のケンプナー関数は、の素因数の素数冪 の中で、の最大値である。が自身であるとき、そのケンプナー関数は、の倍数の中でその階乗の約数がの十分な倍数を持つものを見つける、という手順程度の計算時間量 で見つけられる。 同様のアルゴリズムを任意のに拡張すると、のそれぞれ素因数で、と同様の手順を行い、最も大きい値がの値となる。
素数とより小さいで、と表せるときはである。したがって、半素数のケンプナー関数の計算は、その素因数分解と同等の難しさであることを示唆している。より一般的に、が合成数ならば、を繰り返し評価してが素因数分解できたとしても、との最大公約数は非自明である。ゆえに、ケンプナー関数の計算は一般的に、素因数分解より簡単でない。
出典
- ^ a b c d Called the Kempner numbers in the Online Encyclopedia of Integer Sequences: see Sloane, N.J.A. (ed.). "OEIS (home page)". The On-Line Encyclopedia of Integer Sequences. OEIS Foundation. 2024年7月6日閲覧。
- ^ Lucas, E. (1883). “Question Nr. 288”. Mathesis 3: 232.
- ^ Neuberg, J. (1887). “Solutions de questions proposées, Question Nr. 288”. Mathesis 7: 68–69.
- ^ Erdős, Paul; Kastanas, Ilias (1994). “The smallest factorial that is a multiple of n (solution to problem 6674)”. The American Mathematical Monthly 101: 179. doi:10.2307/2324376. JSTOR 2324376 ..
この記事は、クリエイティブ・コモンズ・ライセンス 表示-継承 3.0 非移植のもと提供されているオンライン数学辞典『PlanetMath』の項目Smarandache functionの本文を含む