此为 Mathematica 4 文档,内容基于更早版本的 Wolfram 语言
查看最新文档(版本11.1)

2.5.2 将表达式化为标准形式

Mathematica 的内部函数以多种方式计算,许多数学函数有重要的共性: 将各类表达式化为标准形式. 例如 Plus 函数就把求和化简为无括号的标准形式. 加法的结合律意味着 (a + b) + c, a + (b + c)a + b + c 等价,但由于多种原因, 将它们化为 a + b + c 更方便,内部函数 Plus 就可以完成此项任务.

用内部函数 Plus 将表达式化简为无括号的形式

Mathematica 知道一个函数有结合律时,它就会去掉括号使其成为标准形式. 像加法一样的函数不仅有结合律,而且有交换律,即 a+c+ba+b+c 相等. Mathematica 将它们化为标准形式,即按字母顺序列.

Mathematica 将和式的各项整理为标准形式

化函数为标准形式时的两个重要特性

将一个表达式化为标准形式的理由很多,最重要的是在标准形式下很容易看出 两个表达式是否相等.

将两个和式写为标准形式时立即看到它们相等,故其结果为零

可以想象通过测试 a+c+bc+a+b 所有的顺序来判断它们是否相等,显然将其化 为标准形式后很容易判断.可以设想让 Mathematica 自动地将所有表达式化简为单一的 标准形式,但通过一些简单表达式可以看出,由于各种目的,不需要将它们化为相同 的单一形式.以多项式为例,有两种不同的标准形式,第一种形式是用 Expand 函数产生的和式,它适宜于进行多若式的加减运算;另一种形式是用 Factor 函数产生 的不可约因子的乘积,这种形式适宜于作除法. 展开形式和因子形式都是多项式 非常好的标准式,可根据需要选择它们. Mathematica 不自动将多项式化为某一种 标准形式,而是提供了 ExpandFactor 函数让用户选用.

数学上相等的两个多项式

Expand 将它们化为展开形式就容易看出其相等

也可以通过因子形式看出它们相等

尽管不希望总是将表达式化简为相同的标准形式,但会猜想将 表达式化为某些形式.在计算数学理论中有一个基本结论,它表明无法在任何 情况下将表达式化为一些标准形式.无法保证有限变换序列将两个 任意表达式化为一个标准形式.这结论并不奇怪,如果能将所有的数学 表达式化为一个标准形式时,就很容易判断两个表达式是否相等. 许多困难的数学问题都可以表述为表达式是否相等这一事实表明这是十分 困难的.