InfinitesimalSymmetriesOfEDS - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim

ExteriorDifferentialSystems[InfinitesimalSymmetriesOfEDS] - find the infinitesimal symmetries of a Pfaffian differential system

Calling Sequences

     InfinitesimalSymmetriesOfEDS(Theta, options)

     InfinitesimalSymmetriesOfEDS(ThetaList, options)


   Theta     - a list of 1-forms on a manifold M, the (differential) generators of a Pfaffian differential system ℐ

   ThetaList - a list of lists of 1-forms on a manifold M, the (differential) generators of a sequence of Pfaffian differential systems ℐ1, ℐ2, ℐ3, ...

   options   - (optional keyword arguments) keyword arguments ansatz, unknowns, auxiliaryequations,output



 Let ℐ be an exterior differential system on a manifold M. A local symmetry of ℐ is a local diffeomorphism φ: MM such that the pullback map φ preserves ℐ, that is, for each differential form ω  ℐ,  φω  ℐ.  An infinitesimal symmetry of ℐ is a vector field X on M which preserves ℐ with respect to Lie differentiation, that is, for each differential form ω  ℐ, ℒX ω ℐ.   If φt: MM  is a 1-parameter group of local symmetries of ℐ, then the infinitesimal transformation determined by φt is an infinitesimal symmetry and, conversely, if X is an infinitesimal symmetry of ℐ, then the flow of X is a 1-parameter group of local symmetries. If ℐ is a Pfaffian differential system with generators Θ =θ1, θ2, ... , θp, then X is an infinitesimal symmetry of ℐ if:

  ℒXθj= a1jθ1 +a2jθ2  +  + apjθp ,   or equivalently,     Xθj  θ1  θ2   θp = 0. 

These conditions readily translate into a system of homogeneous linear first order PDE for the components of the vector field X.


The first calling sequence InfinitesimalSymmetriesOfEDS(Theta) uses pdsolve to integrate the first order PDE system for the infinitesimal symmetries of the Pfaffian system and returns the general infinitesimal symmetry depending upon a certain number of constants and arbitrary functions.


The second calling sequence finds the common symmetries for the given list of differential systems. Here is a simple application. Let ℐ' be the derived system of the Pfaffian system ℐ. Then every symmetry of ℐ is a symmetry of  ℐ'  so that finding the symmetries of  is mathematically equivalent to finding the symmetries of the pair [ℐ, ℐ']. But, symbolically, the latter approach generates more defining equations for the symmetry vector, which will often improve the performance of the Maple PDE solver.


One can search for special classes of symmetries by specifying the form of the symmetry vector using the keyword argument ansatz= X, where X is a vector field depending upon a certain number of arbitrary functions f1, f2, ..., fN. These functions should be explicitly declared with the keyword argument unknowns. Additional constraints (either algebraic or differential equations or inequalities) can be imposed upon the arbitrary functions f1, f2, ..., fN in the symmetry ansatz using the keyword argument auxiliaryequations.  


If the space of symmetries is finite dimensional, say m-dimensional, then the keyword argument output = "list" will change the output of  InfinitesimalSymmetriesOfEDS to a list of m vectors. This list of symmetry vectors defines a basis for a Lie algebra, the structure constants of which can be computed using the command LieAlgebraData.

See Also






with(DifferentialGeometry): with(ExteriorDifferentialSystems):


Example 1.

We define a rank 3 distribution on a 5-dimensional manifold and calculate its symmetry algebra to be 14-dimensional. Create the 5-dimensional manifold with coordinates x, z, y, y1 y2

DGsetup([x, z, y, y1, y2], M1):


Our Pfaffian system ℐ  is

Theta := evalDG([dy - y1*dx, dy1 - y2*dx, dz - y2^2*dx]);



Gamma := InfinitesimalSymmetriesOfEDS(Theta, output = "list");




There are 14 infinitesimal symmetries.

M1 > 




One can calculate the structure equations for this Lie algebra of vector fields with the command LieAlgebraData. The commands CartanSubalgebra, RootSpaceDecomposition, SimpleRoots and CartanMatrix can be used to show that this Lie algebra is the split real form of the exceptional simple Lie algebra g2. On an historical note, this is one of the first concrete realizations of g2 and was discovered independently by Cartan and Engel in 1893.


Example 2.

We continue with the Pfaffian system ℐ defined by Example 1. We find the derived system ℐ'and re-calculate the symmetries of  by calculating the symmetries of the two systems { , '}.

M1 > 

DF := DerivedFlag(Theta);


M1 > 

Theta1 := DF[2];


M1 > 

Gamma2 := InfinitesimalSymmetriesOfEDS([Theta1,Theta], output = "list"):


The results are the same.

M1 > 

seq(Gamma[i] &minus Gamma2[i], i = 1..14);



Example 3.

We continue with the Pfaffian system ℐ defined by Example 1. In this example we look for the symmetries of  which also preserve the Pfaffian system 𝒞 defined by the contact form dy  y1dx. Note that 𝒞 does appear as a differential system in the derived flag so that in this example we expect to obtain a subalgebra of the full 14-dimensional Lie algebra of infinitesimal symmetries.


M1 > 

C := evalDG([dy - y1*dx]);


M1 > 

Gamma3 := InfinitesimalSymmetriesOfEDS([C, Theta], output = "list");


M1 > 




Note that the coefficients of Dx, Dy, Dz in each of the vector fields in Γ3 are independent of the variable y2.


Example 4.

We continue with the Pfaffian system ℐ defined by Example 1. In this example we use the various keyword arguments to look for the symmetries for which the coefficients of Dx, Dy, and  Dz are functions of variables x, y, z. First define a general vector field. We shall uses this as our symmetry ansatz.

M1 > 

F := [F1, F2, F3, F4, F5](x, y, z, y1, y2);


M1 > 

X := DGzip(F, [D_x, D_y, D_z, D_y1, D_y2]);




The following equations impose the required functional dependencies on the coefficients of  Dx, Dy, and Dz .

M1 > 

Eq := [seq(seq(diff(G(x, y, z, y1, y2), v), v = [y1, y2]), G = [F1, F2, F3])];


M1 > 

InfinitesimalSymmetriesOfEDS(Theta, ansatz = X, unknowns = F, auxiliaryequations = Eq, output = "list");