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

FullSimplify

Usage

FullSimplify[expr] 涉及基本和特殊函数的expr进行很多的变换,并返回它找到的最简单的形式。
FullSimplify[expr, assum] 用假设做简化。


Notes

FullSimplify 总是至少产生和Simplify一样简单的形式,但本质上可能取的更长。
• 可以给出下面的选项:
"\!\(\*StyleBox[\"\\\"ComplexityFunction\\\"\", \"MR\"]\) ""\!\(\*StyleBox[\"\\\"Automatic\\\"\", \"MR\"]\) """如何分配产生的每种形式复杂度
"\!\(\*StyleBox[\"\\\"ExcludedForms\\\"\", \"MR\"]\) ""\!\(\*StyleBox[\"\\\"{\\\"\", \"MR\"]\) \!\(\*StyleBox[\"\\\"}\\\"\", \"MR\"]\) "不应当被触及的子表达式的指定模式形式
"\!\(\*StyleBox[\"\\\"TimeConstraint\\\"\", \"MR\"]\) ""\!\(\*StyleBox[\"\\\"Infinity\\\"\", \"MR\"]\) "在进行一个特殊变换时的秒数
"\!\(\*StyleBox[\"\\\"TransformationFunctions\\\"\", \"MR\"]\) ""\!\(\*StyleBox[\"\\\"Automatic\\\"\", \"MR\"]\) "在变换表达式时的函数
FullSimplifyRootReduce在涉及Root对象的表达式上。
FullSimplify 对大多数特殊函数进行变换。
• 参见Simplify的注解.
• 参见 Mathematica 全书: 1.4.4 and 3.3.9.
• 实现注释: 参见 A.9.5.
Further Examples

FullSimplify versus Simplify

FullSimplify can handle expressions that Simplify leaves unchanged.

In[1]:=  

Out[1]=

In[2]:=  

Out[2]=

Here are more rules that FullSimplify knows about.

In[3]:=  

Out[3]=

In[4]:=  

Out[4]=

In[5]:=  

Out[5]=

In[6]:=  

Out[6]=

In[7]:=  

Out[7]=

In[8]:=  

Out[8]=

In[9]:=  

Out[9]=

In[10]:=  

Out[10]=

In[11]:=  

Out[11]=

In[12]:=  

Out[12]=

In[13]:=  

Out[13]=

Differentiating a complicated indefinite integral should yield the integrand.

In[14]:=  

Out[14]=

FullSimplify can handle the simplification.

In[15]:=  

Out[15]=

The option ExcludedForms

In the absence of any constraints, Factorial and Gamma cancel out in this expression.

In[16]:=  

Out[16]=

Setting the option ExcludedForms to Factorial inhibits the simplification.

In[17]:=  

Out[17]=

Setting it to Gamma does not, because Factorial is expressed in terms of Gamma.

In[18]:=  

Out[18]=

In this example, partial simplification not involving Factorial is allowed to happen.

In[19]:=  

Out[19]=

Here both the trigonometric functions and the gamma function are simplified.

In[20]:=  

Out[20]=

By contrast, here the trigonometric functions are left untouched.

In[21]:=  

Out[21]=

Using Assumptions

This assumes that a, b, c are positive (and so real by default).

In[22]:=  

Out[22]=

This is a fairly complicated non-trivial example. The assumptions are that at least one of x, y, z or n is an integer, n is greater than  and x, y, z are nonzero.

In[23]:=  

Out[23]=

This simplifies an expression involving Fibonacci numbers.

In[24]:=  

Out[24]=

This simplifies an expression involving Bessel functions.

In[25]:=  

Out[25]=

The option ComplexityFunction

See the Further Examples for ComplexityFunction.