WOLFRAM LANGUAGE TUTORIAL

Indefinite Integrals

The Wolfram Language function Integrate[f,x] gives you the indefinite integral . You can think of the operation of indefinite integration as being an inverse of differentiation. If you take the result from Integrate[f,x], and then differentiate it, you always get a result that is mathematically equal to the original expression f.

In general, however, there is a whole family of results which have the property that their derivative is f. Integrate[f,x] gives you an expression whose derivative is f. You can get other expressions by adding an arbitrary constant of integration, or indeed by adding any function that is constant except at discrete points.

If you fill in explicit limits for your integral, any such constants of integration must cancel out. But even though the indefinite integral can have arbitrary constants added, it is still often very convenient to manipulate it without filling in the limits.

The Wolfram Language applies standard rules to find indefinite integrals.
In[1]:=
Click for copyable input
Out[1]=
You can add an arbitrary constant to the indefinite integral, and still get the same derivative. Integrate simply gives you an expression with the required derivative.
In[2]:=
Click for copyable input
Out[2]=
This gives the indefinite integral .
In[3]:=
Click for copyable input
Out[3]=
Differentiating should give the original function back again.
In[4]:=
Click for copyable input
Out[4]=
You need to manipulate it to get it back into the original form.
In[5]:=
Click for copyable input
Out[5]=

The Integrate function assumes that any object that does not explicitly contain the integration variable is independent of it, and can be treated as a constant. As a result, Integrate is like an inverse of the partial differentiation function D.

The variable is assumed to be independent of .
In[6]:=
Click for copyable input
Out[6]=
The integration variable can be any expression that does not involve explicit mathematical operations.
In[7]:=
Click for copyable input
Out[7]=

Another assumption that Integrate implicitly makes is that all the symbolic quantities in your integrand have "generic" values. Thus, for example, the Wolfram Language will tell you that is even though this is not true in the special case .

The Wolfram Language gives the standard result for this integral, implicitly assuming that is not equal to .
In[8]:=
Click for copyable input
Out[8]=
If you specifically give an exponent of , the Wolfram Language produces a different result.
In[9]:=
Click for copyable input
Out[9]=

You should realize that the result for any particular integral can often be written in many different forms. The Wolfram Language tries to give you the most convenient form, following principles such as avoiding explicit complex numbers unless your input already contains them.

This integral is given in terms of ArcTan.
In[10]:=
Click for copyable input
Out[10]=
This integral is given in terms of ArcTanh.
In[11]:=
Click for copyable input
Out[11]=
This is mathematically equal to the first integral, but is given in a somewhat different form.
In[12]:=
Click for copyable input
Out[12]=
The derivative is still correct.
In[13]:=
Click for copyable input
Out[13]=
Even though they look quite different, both ArcTan[x] and -ArcTan[1/x] are indefinite integrals of .
In[14]:=
Click for copyable input
Out[14]=
Integrate chooses to use the simpler of the two forms.
In[15]:=
Click for copyable input
Out[15]=