P^2=(4/n)^n(4・2/n)^n(n-1)/2(4・3/n)^n(n-1)(n-2)/6・・・(4・n/n)=(4/n)^(2^n-1)・Πk^(n,k)
の非整除性の問題に対しては,
[1]2^m≦nとなる自然数の中で最大の数をmとする方法
[2]p≦nとなる最大の素数をpとする方法
などが考えられるところであるが,(その21)(その22)で行った路線の延長である[1]が現実的であろう.
(その22)でn>16ではP^2は整数にはならないことが証明(?)されているが,今回のコラムではこの下限を引き下げてみたい.
===================================
区間[1,2^k]には2の平方数・立方数などが含まれるが,偶数はk−1個,2の平方で割り切れる数はk−2個,2の立方で割り切れる数はk−3個,2のk乗で割り切れる数は1個あるから,
n=2^k(k-1)/2K (Kはn以下のすべての素因数の積)
と書くことができる.
ラフにスケッチすると,すべての整数のうちで,2の平方で割り切れる数は(2のk乗数も含めて)1/2^2程度,2の立方で割り切れる数は(2のk乗数も含めて)1/2^3程度あるから,2のk乗までわたってとれば,近似的に
1+1/2+1/2^2+1/2^3+・・・+1/2^k<2
したがって,最大で見積もって
2^2(2^(2^k)-1)
程度にしかならなかった.
2のところがk(k−1)/2^kに変わるが,これで少しは精緻化することができるだろう.
一方,
(4/2^k)^(2^(2^k)-1)=1/2^(k-2)(2^(2^k)-1)
であるから,
k−2>k(k−1)/2^k
2^k>k(k−1)/(k−2)=k+1+2/(k−2)
k>3,すなわち,n>2^3=8ではP^2は整数にはならないことになる.
(その21)では手計算でn=8までの非整除性を確認しているので,これで計算機に頼らなくても証明(?)されたことになる.
===================================
[雑感]
なお,阪本ひろむ氏の解説によると,
[1]オーバーフローするケースについて
Mathematicaは計算結果(整数/整数)の形のものはちゃんと求めていて,結果は整数かどうかをきちんと判定している.しかし,その後の近似値(数値)を求める段階でオーバーフローが発生していると考えられる.
[2]inderteminate not integerとなるケースについて
Mathematicaは整数/整数の形のデータをもち,それが整数となるか判断できる.すなわち,近似値でなく厳密な結果である.
しかし,通分して分子,分母がたまたま大きい整数のとき,近似値の計算で∞/∞と判断してしまうのである.だから(近似値が求まらなくても)これ以上計算することにはある程度意味があるようだ.
===================================