无心人 发表于 2014-7-21 08:47:01

wayne 发表于 2014-7-21 08:25
你这个大概有2/3的解不能获得。

测试下我的通解的覆盖率

无心人 发表于 2014-7-21 08:50:59

差为17的那组,我现在怀疑是否跟存在
\( 2x^2 +1 = y^2 \) 的复整数解有关

无心人 发表于 2014-7-21 15:32:40

写了个haskell程序算100万的,要3分半多点,难道是笔记本太慢么

无心人 发表于 2014-7-21 15:50:14

针对\( a^2 + b^2 + 1 = c^2 \)
\(1 <= a <= b <= c <= 1000000 \)
共有 \( 79497 \) 个 \( a \) 有解
解数量 \( 124973 \)

考虑截取的是 不大于1000000的数据,所以计数是不完整的

无心人 发表于 2014-7-21 16:11:51

以下是haskell代码,已经考虑各种限制,修改后可以任意控制计算范围
需要用cabal安装arithmoi库

结果文件:

import Data.Set
import Data.List
import Math.NumberTheory.Primes.Factorisation

divisorsPair n top =
             [(h, l) | let dvrs = Data.List.filter (<= top) $ Data.Set.toList $ divisors n,
                l <- dvrs, let h = div n l,
                ((even h) && (even l)) || ((odd h) && (odd l))]

convertToBC a ls top = [(a, b, c) | i <- ls, let h = fst i, let l = snd i, let b = div (h-l) 2, b >= a, b <= top, let c = div (h+l) 2, c >= a, c <= top]

solveNP a top = convertToBC a (divisorsPair (a*a + 1) a) top


main = do
        let rst = Data.List.filter (\l-> length l /=0) , let l = solveNP n 1000000]
        print $ show $ rst
        print $ show $ sum $ Data.List.map (\l->length l) rst

282842712474 发表于 2014-7-21 22:25:17

公式
$$\begin{aligned}
a&=2 m^2 + 4 m n - 2 n^2 - 8 m^2 n^2\\
b&=-2 m + 2 n + 8 m^2 n\\
c&=1 + 2 m^2 - 4 m n + 2 n^2 + 8 m^2 n^2
\end{aligned}$$
好像可以生成更多数量的解~~

wayne 发表于 2014-7-21 23:53:13

282842712474 发表于 2014-7-21 22:25
公式
$$\begin{aligned}
a&=2 m^2 + 4 m n - 2 n^2 - 8 m^2 n^2\\


有 88.9913%的解 不能覆盖。
{{60,132,145},{70,182,195},{86,278,291},{96,348,361},{104,172,201},{112,476,489},{118,266,291},{122,566,579},{128,268,297},{132,336,361},{136,148,201},{138,726,739},{148,836,849},{162,438,467},{164,1028,1041},{168,552,577},{174,1158,1171},{182,286,339},{182,650,675},{186,582,611},{190,1382,1395},{192,216,289},{196,448,489},{200,1532,1545},{208,212,297},{214,538,579},{216,1788,1801},{218,938,963},{220,820,849},{226,1958,1971},{232,1064,1089},{242,418,483},{242,526,579},{242,2246,2259},{244,1012,1041},{246,378,451},{252,2436,2449},{268,1424,1449},{268,2756,2769},{278,562,627},{278,922,963},{278,1318,1347},{278,2966,2979},{282,1578,1603},{288,756,809},{294,342,451},{294,678,739},{294,3318,3331},{296,1048,1089},{302,494,579}, \2204630\ ,{999978,26606418,26625203},{999978,133077174,133080931},{999978,452468226,452469331},{999978,1730027538,1730027827},{999978,2262343782,2262344003},{999978,5882094078,5882094163},

无心人 发表于 2014-7-22 09:38:40

以下我的讨论针对
\( a^2 + b^2 + 1 = c^2 \)
当 \( a = b \) 时候,由一组解,引出两组通项公式,上面已经阐明了形式

进一步分析发现,很多不符合的例子,针对
\( c - b = 13, c - b = 17 \) 的分析发现
差\( 13 \)的解与\( a = 8, b = 4, c = 9 \)有关
差\( 17 \)的解与\( a = 4, b = 8, c = 9 \)有关
==================================
即,任何一组\( a_0, b_0, c_0, a_0 \ne b_0 \)可以引出两个方向一共4组通项公式

\( d = b_0 + c_0 \)
\( a_k = 2dk \pm a_0 \)
\(b_k = 2dk^2 \pm 2a_0 k - b_0 \)
\(c_k = 2dk^2 \pm 2a_0 k + c_0 \)

\( d = a_0 + c_0 \)
\( a_k = 2dk \pm b_0 \)
\(b_k = 2dk^2 \pm 2b_0 k - a_0 \)
\(c_k = 2dk^2 \pm 2b_0 k + c_0 \)

结合上面关于 \( a_0 = b_0 \) 的分析发现,也符合等于的情况

282842712474 发表于 2014-7-22 10:24:13

无心人 发表于 2014-7-22 09:38
以下我的讨论针对
\( a^2 + b^2 + 1 = c^2 \)
当 \( a = b \) 时候,由一组解,引出两组通项公式,上面已 ...

第一个是
\[\left( {\begin{array}{*{20}{c}}
{{a_k}}\\
{{b_k}}\\
{{c_k}}
\end{array}} \right) = \left( {\begin{array}{*{20}{c}}
{ \pm 1}&{2k}&{2k}\\
{ \pm 2k}&{2{k^2} - 1}&{2{k^2}}\\
{ \pm 2k}&{2{k^2}}&{2{k^2} + 1}
\end{array}} \right)\left( {\begin{array}{*{20}{c}}
{{a_0}}\\
{{b_0}}\\
{{c_0}}
\end{array}} \right)\]
第二个是
\[\left( {\begin{array}{*{20}{c}}
{{a_k}}\\
{{b_k}}\\
{{c_k}}
\end{array}} \right) = \left( {\begin{array}{*{20}{c}}
{2k}&{ \pm 1}&{2k}\\
{2{k^2} - 1}&{ \pm 2k}&{2{k^2}}\\
{2{k^2}}&{ \pm 2k}&{2{k^2} + 1}
\end{array}} \right)\left( {\begin{array}{*{20}{c}}
{{a_0}}\\
{{b_0}}\\
{{c_0}}
\end{array}} \right)\]

wayne 发表于 2014-7-22 22:00:28

282842712474 发表于 2014-7-22 10:24
第一个是
\[\left( {\begin{array}{*{20}{c}}
{{a_k}}\\


非常不错!

经测试,该方法产生的结果 与我前面用因子分解产生的解,100万以内的。进行集合的差集运算,发现完全一致!!!

这可谓是最优的表达了。

MAX = 10^4; dddd =
Flatten[NestWhileList[
    Flatten[Table[
       Union[Sort /@
         Flatten[Table[{Transpose[{{1, 2 k, 2 k}, {2 k, 2 k^2 - 1,
                2 k^2}, {2 k, 2 k^2, 2 k^2 + 1}}],
             Transpose[{-{1, 2 k, 2 k}, {2 k, 2 k^2 - 1, 2 k^2}, {2 k,
               2 k^2, 2 k^2 + 1}}],
             Transpose[{{2 k, 2 k^2 - 1, 2 k^2}, {1, 2 k, 2 k}, {2 k,
                2 k^2, 2 k^2 + 1}}],
             Transpose[{{2 k, 2 k^2 - 1, 2 k^2}, -{1, 2 k, 2 k}, {2 k,
               2 k^2, 2 k^2 + 1}}]}.jj, {k, Sqrt[(MAX - 1)/(
            2 Last)]}], 1]], {jj, #}], 1] &, {{0,0, 1}},
    Length[#] > 0 &], 1] // Union;
页: 1 2 3 [4] 5
查看完整版本: \(a^4+b^4+1=c^4\)有整数解吗?