首先谈点题外话,关于本系列以及本博客的写作。其实本博客的写作内容,代表了笔者在这段时间附近的研究成果。也就是说,我此时在写这篇文章,其实表明我这段时间正在研究这个问题。而接下来的研究是否有结果,有怎样的结果,则是完全不知道的。所以,我在写这篇文章的时候,并不确定下一篇文章会写些什么。有些类似的话题,我会放在同一个系列去写。但不管怎样,这些文章可能并不遵循常规的教学或者学习思路,有些内容还可能与主流的思想方法有相当出入,请读者见谅,望大家继续支持!

上一篇我们谈到了切线法来求二次和三次曲线的有理点。切线法在寻找不高于三次的曲线上的有理点是很成功的,可是对于更高次的曲线有没有类似的方法呢?换句话说,有没有推广的可能性。我们从纯代数的角度来回复一下切线法生效的原因。切线法,更一般的是割线法,能够起作用,主要是因为如果有理系数的三次方程有两个有理数的根,那么第三个根肯定是有理数。如果只有一个已知的有理根,那么就可以让两个根重合为已知的那个根,从而割线变成了切线。

下面我们考虑四次曲线,要注意,对于有理系数的四次方程,我们得预先准备好三个有理根,才能确定第四个根是有理根。三个有理根,也就是三个有理点,我们知道两个点就确定一条直线了,因此三个点一般地只能确定一条抛物线了(或者其他类型的曲线,反正这种曲线得有三个自由参数,才能对这三个点进行“插值”。要拟合的曲线还得满足:代入一个有理自变量,必须保证得到一个有理的因变量。比如$y=x^2$,代入有理的$x$,就可以得到有理的$y$;但如果是$y^2=x^2+1$,代入有理的$x$,未必得到有理的$y$,这种曲线类型是不可取的。)。假如只知道一个有理点呢?那就相当于让三个点重合咯!这时,抛物割线变成了抛物切线,这等价于原曲线该有理点处的二阶泰勒展式!也就是说,我们还是考虑切线,但是不单单考虑“切直线”,还考虑更精密的“切曲线”。

这里我们以求不定方程$2x^4=y^2+1$的有理点为例,展示上述技巧。已知有一个明显的有理点是$(1,1)$,在点处作泰勒展开,求得
$$\left\{\begin{aligned}&8x^3=2yy',\quad y'=\frac{4x^3}{y}=4\\
&12x^2=\left(y'\right)^2+y y'',\quad y''=\frac{12x^2-(y')^2}{y}=-4\end{aligned}\right.$$
于是二阶泰勒展式为
$$y=\frac{1}{2}(-4)(x-1)^2+4(x-1)+1=-2x^2+8x-5$$
这条曲线跟原曲线的交点由下式求得
$$2x^4=(-2x^2+8x-5)^2+1$$
也就是$x^4-16x^3+42x^2-40x+13=0$,由我们的构造知该四次方程有三重根$x=1$,因此最后一根必然是$x=13$,从而可以求得$y=-239$,也就是说$(13,239)$是另外一个正整数解。(很巧,这道不定方程只有这两个正整数解。)

这个例子看上去我们的推广是成功的,但倒不如说这是一个说明切线法在高次曲线失败的例子。首先,我们知道原曲线是四次的,而我们至少要用抛物线,也就是$y=ax^2+bx+c$类型的曲线来完成“插值”,在代入原曲线之后,为了保证得到的方程还是一道四次方程,那么$y$的次数不能超过2!也就是说,如果使用抛物割线或者抛物切线的方法,那么只适用于诸如$2x^4=y^2+1$、$3x^4=y^2+xy+1$之类的四次不定方程了。这是非常特殊的。如果我们考虑五次的方程,则已经没有这种技巧了,因为我们需要已知四个有理点,而拟合四个有理点,则需要三次曲线,三次曲线即使在平方之后,都变成了六次的了,超出了原来的次数。看来,抛物割线和抛物切线的方法,在四次不定方程这里,已经发挥了它的极限了。

当然,我们期待有更多的几何意义明显的求有理点的技巧出现。

转载到请包括本文地址:https://kexue.fm/archives/3008

更详细的转载事宜请参考:《科学空间FAQ》

如果您还有什么疑惑或建议,欢迎在下方评论区继续讨论。

如果您觉得本文还不错,欢迎分享/打赏本文。打赏并非要从中获得收益,而是希望知道科学空间获得了多少读者的真心关注。当然,如果你无视它,也不会影响你的阅读。再次表示欢迎和感谢!

如果您需要引用本文,请参考:

苏剑林. (Oct. 25, 2014). 《从费马大定理谈起(十二):再谈谈切线法 》[Blog post]. Retrieved from https://kexue.fm/archives/3008

@online{kexuefm-3008,
        title={从费马大定理谈起(十二):再谈谈切线法},
        author={苏剑林},
        year={2014},
        month={Oct},
        url={\url{https://kexue.fm/archives/3008}},
}