什么是符号计算?

Amu*_*umu 14 symbolic-math

根据维基:

在数学和计算机科学中,计算机代数,也称为符号计算或代数计算,是指研究和开发用于操纵数学表达式和其他数学对象的算法和软件的科学领域.

符号计算是否专注于符号操作和计算?Lisp程序以AST的形式编写,原子为叶子.据说Lisp是符号计算的语言.这是否意味着在符号计算中,它是:

  • 所有关于符号(符号是Lisp中的原子或非原子表达式)
  • 每个符号都分配了一个语义
  • 符号计算是一种范式,它使程序员专注于处理符号和语义(语义可以是做某事的原子或表达式)和符号之间的关系,而不是认为数据结构和代码是两个独立的实体.
  • 程序设计是基于符号组合/操作和语义分配的语言设计.

根据这个问题,符号计算的反面是数值计算.这两者之间的主要区别是什么?当我使用Octave(我正在研究它)时,我必须经常使用数字并且必须多次猜测这些魔术数字的含义.这是数值计算的焦点吗?

小智 22

符号计算强调术语重写而不是评估(电子价值,提取价值).符号(也称为表达式)是可重写的术语,意味着丢失或可重写的结束.在某种程度上,符号更抽象,价值更具体.

答案是3/9什么?象征性的答案是(代表)1/3.值得回答的是0.333333333,无论你关心多少小数.请注意,这里存在精度损失(以及可重写性),0.333333333 * 3并不是1应该的.

计算器(评估机器)可能会阻止尝试评估,(2^(74,207,281) ? 1)/(2^(74,207,281) ? 1)即使答案很简单1.当仅仅重写就足够了时,没有必要在这里评估.

当然,也存在相反的方程式,因此对于术语重写而言难以处理它们只能通过数值方法得到大致的回答.


Rai*_*wig 11

“符号计算”是用符号表达式进行的计算。

符号表达式示例:

  • 一个数学公式。例如一个积分表达式
  • 一个逻辑定理
  • 计划情况

对于后者:

  • abbdceefbf,...
  • 包裹p1ap2dp3f
  • 一辆卡车t1d
  • 一个目标

现在的任务是制定一个好的计划,该计划可以收集所有包裹并达到给定的目标。

  1. d领取包裹p2
  2. 将卡车t1d移到b
  3. 将卡车t1b移到a
  4. a取包裹p1
  5. ...

在上面的例子中,符号代表地点和事物(卡车、包裹)。符号表达式描述一种情况,计划生成器将返回一系列动作 - 再次描述为符号表达式。