Lie Symmetry Methods for Solving Nonlinear ODEs
Around 1870, Marius Sophus Lie realized that many of the methods for solving differential equations could be unified using group theory. Lie symmetry methods are central to the modern approach for studying nonlinear ODEs. They use the notion of symmetry to generate solutions in a systematic manner. Here is a brief introduction to Lie's approach that provides some examples that are solved in this way by
DSolve.
A key notion in Lie's method is that of an
infinitesimal generator for a symmetry group. This concept is illustrated in the following example.
Here is the wellknown transformation for rotations in the x y plane. This is a oneparameter group of transformations with parameter t. 
For a fixed value of
t, the point
(m, n) (in blue) can be obtained by rotating the line joining
(x, y) (in red) to the origin through an angle of
t in the counterclockwise direction.
Out[3]=  
A rotation through
t can be represented by the matrix
The Lie symmetry method requires calculating a firstorder approximation to the expressions for the group. This approximation is called an
infinitesimal generator.
This expands the expressions for m and n in a series with respect to t and around the origin 0 to obtain linear approximations.
Out[8]=  
Out[9]=  

The coefficients of the linear terms in t are y and x, respectively. The infinitesimal generator for the rotation group in the plane is defined to be the following differential operator. 
Starting from the infinitesimal generator, the original group can be recovered by integrating the fundamental system of Lie equations. For the group of rotations, the Lie equations are given by the first argument to DSolve shown here.
Out[11]=  

The rotation group arises in the study of symmetries of geometrical objects; it is an example of a
symmetry group. The infinitesimal generator, a differential operator, is a convenient local representation for this symmetric group, which is a set of matrices.
An expression that reduces to 0 under the action of the infinitesimal generator is called an
invariant of the group.
Here is an invariant for this group. 
This states that the distance from the origin to (x, y), , is preserved under rotation.
Out[13]=  

In the following examples, these ideas are applied to differential equations.
This is an example of a Riccati equation, from page 103 of [ I99]. 
The equation is invariant under the following scaling transformation. 
The infinitesimal generator for this oneparameter group of transformations is found as before.
Out[17]=  
Out[18]=  

Now, the Riccati equation depends on three variables:
x,
y=y[x], and
p=y^{}[x]. Hence, the infinitesimal generator
v must be
prolonged to act on all three variables in this firstorder equation.
It turns out that the required prolongation is as follows. 
This shows that the expression for the Riccati equation in the (x, y, p) coordinates is indeed invariant under prolongedv.
Out[22]=  

Depending on the order of the given equation, the knowledge of a symmetry (in the form of an infinitesimal generator) can be used in three ways.
 If the order of the equation is 1, it gives an integrating factor for the ODE that makes the equation exact and hence solvable.
 It gives a set of canonical coordinates in which the equation has a simple (integrable) form.
 It reduces the problem of solving an ODE of order n to that of solving an ODE of order n1, which is typically a simpler problem.
The
DSolve function checks for certain standard types of symmetries in the given ODE and uses them to return a solution. Following are three examples of ODEs for which
DSolve uses such a symmetry method.
Here is a nonlinear firstorder ODE (equation 1.120, page 315 of [ K59]). 
This ODE has a symmetry with the following infinitesimal generator. 
The presence of this symmetry allows DSolve to calculate an integrating factor and return the solution.
Out[25]=  

Here is a secondorder nonlinear ODE, based on equation 6.93 on page 213 of [ K59]. 
This equation is invariant under the following scaling transformation. 
The presence of this scaling symmetry allows DSolve to find new coordinates in which the independent variable is not explicitly present. Hence the problem is solved easily.
Out[30]=  

Finally, here is a system of two nonlinear firstorder ODEs that can be solved by using a shift: u[x]→u[x]x. After the shift, the system becomes autonomous (it does not depend explicitly on x) and hence it can be solved by reduction to a firstorder ODE for v as a function of u. The Solve::ifun message can be ignored; it is generated while inverting the expression for Exp[v] to give an expression in terms of Log.
Out[34]=  
Out[35]=  

This concludes the discussion of ordinary differential equations.