単位分数の和
(1/2)² = (1/3)²+(1/4)²+(1/5)²+(1/7)²+(1/12)²+(1/15)²+(1/20)²+(1/28)²+(1/35)²
ネタとして面白そうです。
分母を素因数分解したときに現れる素数が一桁の、2, 3, 5, 7 に抑えられているのも興味深いです。
上は、知人が論文から拾ってきたようです。
こういうのを使ってコンペに応募したら
いいとこいくんですかね?
コンペ→ https://ct-competition-2023.dltcapital.ie/
コンペに応募するとして……
例えば、分母を 2023 以下に抑えつつ、項数をできるだけ多くする作戦がありえますね。
1 = 1/16
+1/6+1/10+1/12+1/14+1/18+1/20+1/22+1/24+1/28+1/36+1/40+1/44+1/48+1/56+1/66+1/70+1/72+1/80+1/88+1/90+1/110+1/112+1/132+1/140+1/144+1/154+1/176+1/180+1/210+1/220+1/264+1/280+1/308+1/360+1/420+1/440+1/528+1/560+1/616+1/720+1/840+1/880+1/1232+1/1680
上は 45 項ですが、見ればただちにお判りになるように、まだまだ項数は増やせそうです。
電卓などを補助に手計算で作りましたので根性が足らずに途中で挫折しました。とほほ。
(1/2)² = (1/3)²+(1/4)²+(1/5)²+(1/7)²+(1/12)²+(1/15)²+(1/20)²+(1/28)²+(1/35)²
をよく探したものだと感心したので(1/3)^2を調査してみたら
gp > V1=[4,6,9,15,20,36,45,60];
gp > V2=[4,6,12,13,15,20,39,52];
gp > V3=[4,6,12,14,15,20,28,42];
gp > V4=[5,6,7,10,14,15,21,30];
らに対しては全て
gp > vecsum(apply(i->1/i^2,V1))
%56 = 1/9
gp > vecsum(apply(i->1/i^2,V2))
%57 = 1/9
gp > vecsum(apply(i->1/i^2,V3))
%58 = 1/9
gp > vecsum(apply(i->1/i^2,V4))
%59 = 1/9
となり(1/3)^2を構成してくれるようです。
なお
(1/2)^2では
M1=[3,4,5,7,12,15,20,28,35]
でのパターン以外でも
M2=[3,4,5,6,12,36,45,60,90]
M3=[3,4,5,6,12,30,60,75,100]
M4=[3,4,5,6,14,20,35,84,140]
M5=[3,4,5,6,15,18,36,60,180]
M6=[3,4,5,6,12,28,60,105,210]
M7=[3,4,5,6,12,35,42,60,420]
M8=[3,4,5,6,12,36,45,50,900]
なども
gp > vecsum(apply(i->1/i^2,M1))
%60 = 1/4
gp > vecsum(apply(i->1/i^2,M2))
%61 = 1/4
gp > vecsum(apply(i->1/i^2,M3))
%62 = 1/4
・・・・・・・・・・・・・
となり(1/2)^2を構成してくれるようです。
検索ではなく、何とか構成式を見つけることは出来ないんでしょうかね?
GAI さん。
たくさん計算してくださってまことにありがとうございました。
見ているだけで不可思議な幸せな気持ちになります。
知人に、くだんの論文のありかを尋ねておりまして、回答が来ました。
An algorithm for Egyptian fraction representations with restricted denominators https://www.semanticscholar.org/paper/An-algorithm-for-Egyptian-fraction-representations-Martin-Shi/a7d01f6936c77be939b0cd7ada41344f0ff81af2
分母の大きさを押さえる方向で
単位分数の和とするにはどういうアルゴリズムがよいのか、
といった論文のようです。
関数型プログラミング言語だと移植しやすいのかなあと思いました。