KeyTo9_Fans 发表于 2024-3-13 13:58:24

数学软件是用什么算法来解数学题的呢?

比如【1+1/2+1/3+1/4+... 的前n项和,在n等于多少的时候,会大于 1+1/2+1/3+1/4+...+1/10^40 的一半】这个问题,

答案是下图中红线标出的那个数值:



如果我编写简单的程序,一项一项地去累加前n项和,

那么这个程序大约需要运行1年甚至更长的时间,才能算出上面这个问题的答案。

但数学软件不到1秒就算出来了,它是怎么做到这么快的呢?

上面只是通过一个具体的例子提出我的疑问。

实际上有很多我不知道如何编程求解的数学问题,或者编出来的程序需要运行很久才能算出答案的问题,

交给数学软件去做,它不仅会做,而且很快就做出来了。

数学软件是怎么学会求极限、求积分、解方程组、级数求和这些连人类都很难掌握的技能的呢?

mathe 发表于 2024-3-13 14:22:43

参考digamma函数$\psi(x)$:
$\psi(n)=H_{n-1}-\gamma$
类似$\Gamma$函数,可以使用Stirling展开式:
$\psi(z) ~ \ln(z) - \sum_{n=1}^{\infty} \frac{B_n}{nz^n}$
页: [1]
查看完整版本: 数学软件是用什么算法来解数学题的呢?