符号计算实现

3

在使用 Wolfram Alpha 和 MATLAB 的符号数学工具箱解决积分、常微分方程和偏微分方程后,我好奇如何实现一个解析(封闭形式)积分(或非平凡方程)求解器。

例如,如何编程解析地求解以下积分?

enter image description here


1
这是一个非常大的话题,对于SO来说太大了。但是在互联网上有很多信息可供参考,我建议你打开搜索引擎查找。 - High Performance Mark
1
所以请从 http://sagemath.org 开始阅读。 - High Performance Mark
2
Mathematica的“Integrate”函数之一的开发人员撰写了一篇关于此主题的文章。您可以在http://www.sigsam.org/bulletin/articles/175/lichtblau.pdf上阅读它。 - Jommy
多么精彩的引语。谢谢你的发布。非常棒的阅读。 - duffymo
那篇文章中提到的第一种方法是Risch算法,可能是一个不错的起点。 - Salix alba
显示剩余2条评论
1个回答

1

积分是通过(非常复杂的)模式匹配来解决的。如果被积函数看起来像某个数的平方根,那么积分就是...; 如果看起来像有理函数,那么积分就是...; 如果是指数函数,那么就是....等等等。至少有两个主要困难。一个是识别被积函数是否与某种模式相匹配,另一个是一旦找到模式匹配就构建解决方案。上面引用的由Lichtblau撰写的论文是关于第二部分的。至于表达式的模式匹配,请尝试搜索“模式匹配”或“统一”。恰好,模式匹配最自然地用Lisp表达,但也可以用其他编程语言处理,通常是通过重新发明Lisp的子集来实现。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接