如何以编程方式计算不定积分

Rak*_*aks 16 algorithm math

我记得解决了很多不确定的集成问题.有一些解决它们的标准方法,但是存在一些问题,它们采用多种方法来达成解决方案.但是我们如何以编程方式实现解决方案.

例如,看看Mathematica的在线集成商应用程序.那么我们如何编写这样一个接受函数作为参数的程序并返回函数的不定积分.

wolfram mathematica在线集成商

PS.可以假设输入函数是连续的(即,例如不是sin(x)/ x).

Ale*_* C. 19

你有Risch的算法,它是微妙的不可判断的(因为你必须决定两个表达式是否相等,类似于无处不在的停顿问题),而且实现起来真的很长.

如果你是复杂的东西,解决一个普通的微分方程实际上并不困难(计算一个不定积分相当于求解y'= f(x)).存在一种伽罗瓦微分理论,其模仿多项式方程的伽罗瓦理论(但是利用解的对称性的李群而不是根的置换的有限群).Risch的算法基于它.

  • 这是关于微分伽罗瓦理论的非常有趣的评论.我开始理解Risch算法中通常被掩盖的部分. (3认同)

Nor*_*ame 6

您正在寻找的算法是Risch'算法:

http://en.wikipedia.org/wiki/Risch_algorithm

我相信使用起来有点棘手.这本书:

http://www.amazon.com/Algorithms-Computer-Algebra-Keith-Geddes/dp/0792392590

有描述.100页的描述.