找回密码
 欢迎注册
楼主: alt

[讨论] 6次方和 欧拉猜想

[复制链接]
 楼主| 发表于 2017-3-28 09:47:16 | 显示全部楼层
下一步可以考虑\(f^6 = e^6 \mod M, M=8,9,31\)这些情况,这些条件将导致
\(7*2|a,7*2|b,7*2|c,7*2|d\);
\(7*3|a,7*3|b,7*3|c,7*3|d\);
\(7*31|a, 7*31|b, 7*31|c, 7*31|d\)

对模31,它的六次剩余是1,2,4,8,16,允许重复地在这个集合中取4次,和不能等于31,所以在考虑互质解的情况下,\(f^6 = e^6 \mod 31\)将导致\(31*7|a,31*7|b,31*7|c,31*7|d\),

也可以考虑\(f^6 = e^6 \mod 7^7\),将导致\(7^2|a,7^2|b,7^2|c,7^2|d\)

毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2017-4-9 22:24:33 | 显示全部楼层
\(10^6\)这个范围应无解
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2017-5-28 13:57:56 | 显示全部楼层
一个简单粗暴的算法:
首先根据\(f^6=e^6 \mod 7^6\)得到\((f,e)\),剩下的\((a,b,c,d)\)必定是\(10^6\)内两个7的倍数的数对组成,如果能将这些候选的数对按其六次方和排序,那么对每个特定的\((f,e)\),我们只需要遍历一遍排完序的数对,即可知道是否有满足条件的\((a,b,c,d)\)。
但是这些数对可能有\((10^6/7)^2\)对,即\(10^{10}\)的数量级,我们不可能在内存里排序,而且就算用外部排序的方法,后面的遍历也是一个大问题。
考虑用多路归并的方法,可以用很少的内存将它们排序,将数对看成\(10^6/7\)路有序数据的归并问题,建立两个堆,一个是大顶堆,一个小顶堆,分别用来从头/尾遍历,头加尾大于\(f^6-e^6\)的话,移动头,大顶堆更新,得到下一个较小的数对;小于的话,移动尾,小顶堆更新,得到下一个较大的数对,这样可以方便地搜索a,b,c,d四个数
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2017-5-28 14:21:38 | 显示全部楼层
还有若干个加速的办法,另外也在考虑用丢番图方程的某些结论先找点特解。比如考虑如下的丢番图方程
\(a^2+b^2+c^2+d^2+e^6=f^6\)
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2017-5-29 14:46:35 | 显示全部楼层
a^6+0^6+0^6+0^6+0^6=a^6

对于这个问题,可以考虑穷举法!
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-11-23 16:07 , Processed in 0.021243 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表