在哪里可以查询有关数学函数计算时间的信息?是否进行过任何(一般)研究并且有任何严谨性?
例如,
的计算时间常数+常数
通常需要O(1)。
假设我想开始使用像积分这样的数学,我想得到各种积分的渐近逼近。有没有对此进行标准研究,或者我必须掌握我所拥有的信息并找出我自己的近似值。我对这个标准方法非常感兴趣,我想知道它是否已经存在。
这是我的动机: 我正在写一篇论文,指出NP难问题和某些类型的数学方程之间的等价性。似乎可能有用于研究数学计算时间的研究,就像一门新科学一样。
编辑: 我想我想知道是否存在无法避免的任何给定数学的标准计算复杂性。我想知道是否有人研究过这个问题。我很乐意看到别人的尝试。
编辑2: 维基百科在他们的百科全书中列出了“计算复杂性理论”,我认为这可能适合该法案。我仍然想知道是否有人研究过这一点可以肯定这一点。
答案 0 :(得分:8)
“标准”数学没有算法复杂性的概念。这是为计算机算法保留的。
有方法可以分析方程解的动态行为。像汇聚这样的事情对数学家来说很重要。
你可以询问euler集成与五阶Runge-Kutta进行集成的算法复杂度。他们将根据所需的功能评估数量和时间步长稳定性进行比较。
但费马最后定理解决方案的“运行时间”是什么?大卫希尔伯特的最后挑战问题怎么样?那个世纪的“运行时间”是不是在计算?使用变量分离求解偏微分方程的运行时间是多少?
当你以这种方式思考时,你是否更好地理解为什么人们会被你的问题推迟?
答案 1 :(得分:3)
是的,对于各种数学函数,已经研究了计算函数的计算复杂度(运行时间)。这可能因计算模型而异。
例如,添加两个n位数字需要Θ(n)时间,乘以它们需要Θ(n log n)时间(使用FFT),找到它们的gcd取Θ(n 2 )时间与通常的欧几里得算法和Θ(n(log n) 2 (log log n))有更好的算法等。对于更复杂的东西,如积分,显然它取决于你用什么算法做到这一点。
答案 2 :(得分:2)
user389117,
我认为潜意识里你想要从这种数学类型的形式推断出计算数学类型的复杂性。
E.g。一个数学类型涉及变量的平方(x ^ 2)你认为(至少在潜意识里)计算的复杂性与x ^ 2是同源的,所以复杂性应该是类似于O(n ^ 2)或者存在从数学方程的形式推导出复杂形式的标准过程。
这两者都是不同的品质,不能从另一品质中推断出一品质。
我将举一个例子:在论文中,所有算法都是用伪代码编写的,然后科学家们推断出伪代码的复杂性。
必须不可避免地编写伪代码,然后计算复杂性。
没有一种神奇的方法可以从你想要计算的东西的形式中获得复杂性。
即使你计算复杂性并且你发现表格类似于计算方程式的形式,我认为至少在第一时间你很难将这些评论从伪科学转换为科学
祝你好运!
答案 3 :(得分:2)
没有收集的工作,但近似功能的工作接近。例如,您想知道将sin(x)逼近epsilon误差可以在与log(x)和1 / epsilon中的某个多项式成比例的时间内完成。这里没有一般理论(你应该查看信息复杂性),关注特定功能可能会有所帮助。