LieGroup - Maple Help

GroupActions[LieGroup] - create a module defining a Lie group

Calling Sequences

LieGroup(M,  G)

LieGroup(T,  G)

LieGroup(T,  vars)

LieGroup(Alg, G)

Parameters

M         - a square matrix defining an r-parameter matrix group

G         - a name or string, the name of the manifold for the Lie group being created

T         - a transformation

vars      - the list of the parameters appearing in the transformation T

Alg       - a name or string, the name of a solvable Lie algebra

Description

 • Let $G$ be a Lie group with multiplication * and identity $e$. In the DifferentialGeometry package a Lie group is represented by a module with exports Frame, Identity, LeftMultiplication, RightMultiplication, and Inverse. The Frame export returns the name given to the underlying manifold used to define coordinates on the Lie group. The export Identity gives the coordinate list for the identity point $e$. LeftMultiplication and RightMultiplication are procedures which accept the coordinates of a point $a$ as arguments and return the transformations from $G$ to $G$ defining left multiplication $x\to a*x$ and right multiplication $x\to x*a$. Inverse returns the transformation from $G$ to $G$ defined by $x\to {x}^{-1}$.
 • The first calling sequence computes the above Lie group module for a matrix group, that is, an $r$-parameter set of matrices containing the identity and closed under matrix multiplication and matrix inversion. The parameters appearing in the matrix $M$ must match the coordinates used to define the Lie group $G.$
 • The second calling sequence computes the Lie group module for a given $r$-parameter transformation group, defined by the transformation T. The parameters appearing in the transformation T must match the coordinates used to define the Lie group $G$.
 • In the third calling sequence the transformation in taken to be the transformation defining either the left  ($x\to a*x$)  or right ( $x\to x*a$) multiplication for the Lie group $G$. The coordinates of the generic point are specified by the list vars.
 • The fourth calling sequence implements Lie's second and third theorems and constructs a global Lie group $G$ for any solvable Lie algebra Alg.
 • The command LieGroup is part of the DifferentialGeometry:-GroupActions package.  It can be used in the form LieGroup(...) only after executing the commands with(DifferentialGeometry) and with(GroupActions), but can always be used by executing DifferentialGeometry:-GroupActions:-LieGroup(...).

Examples

 > $\mathrm{with}\left(\mathrm{DifferentialGeometry}\right):$$\mathrm{with}\left(\mathrm{GroupActions}\right):$$\mathrm{with}\left(\mathrm{LieAlgebras}\right):$

Example 1.

We create a Lie group module for the matrix group of upper triangular matrices.

 > $X≔\mathrm{Matrix}\left(\left[\left[x,y\right],\left[0,z\right]\right]\right)$
 ${X}{:=}\left[\begin{array}{cc}{x}& {y}\\ {0}& {z}\end{array}\right]$ (2.1)

Since the group parameters in the matrix are , we use these for the coordinates on the Lie group.

 > $\mathrm{DGsetup}\left(\left[x,y,z\right],\mathrm{G1}\right)$
 ${\mathrm{frame name: G1}}$ (2.2)
 G1 > $\mathrm{LG1}≔\mathrm{LieGroup}\left(X,\mathrm{G1}\right)$
 ${\mathrm{LG1}}{:=}{\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{export}}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathrm{Frame}}{,}{\mathrm{Identity}}{,}{\mathrm{LeftMultiplication}}{,}{\mathrm{RightMultiplication}}{,}{\mathrm{Inverse}}{;}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}$ (2.3)

Evaluate the exports for the LG1 module:

 G1 > $\mathrm{LG1}:-\mathrm{Frame}$
 ${\mathrm{G1}}$ (2.4)
 G1 > $\mathrm{LG1}\left[\mathrm{Identity}\right]$
 $\left[{x}{=}{1}{,}{y}{=}{0}{,}{z}{=}{1}\right]$ (2.5)
 G1 > $\mathrm{muL}≔\mathrm{LG1}:-\mathrm{LeftMultiplication}\left(\left[a,b,c\right]\right)$
 ${\mathrm{muL}}{:=}\left[{x}{=}{a}{}{x}{,}{y}{=}{a}{}{y}{+}{b}{}{z}{,}{z}{=}{c}{}{z}\right]$ (2.6)
 G1 > $\mathrm{muR}≔\mathrm{LG1}:-\mathrm{RightMultiplication}\left(\left[a,b,c\right]\right)$
 ${\mathrm{muR}}{:=}\left[{x}{=}{a}{}{x}{,}{y}{=}{b}{}{x}{+}{c}{}{y}{,}{z}{=}{c}{}{z}\right]$ (2.7)
 G1 > $\mathrm{muInv}≔\mathrm{LG1}:-\mathrm{Inverse}$
 ${\mathrm{muInv}}{:=}\left[{x}{=}\frac{{1}}{{x}}{,}{y}{=}{-}\frac{{y}}{{x}{}{z}}{,}{z}{=}\frac{{1}}{{z}}\right]$ (2.8)

Let us check the results for , , and ${\mathrm{μ}}_{\mathrm{Inv}}$ by calculating matrix products and inverses.

 G1 > $A≔\mathrm{Matrix}\left(\left[\left[a,b\right],\left[0,c\right]\right]\right)$
 ${A}{:=}\left[\begin{array}{cc}{a}& {b}\\ {0}& {c}\end{array}\right]$ (2.9)

The entries of $L$ give the formulas for the transformation :

 G1 > $L≔A·X$
 ${L}{:=}\left[\begin{array}{cc}{a}{}{x}& {a}{}{y}{+}{b}{}{z}\\ {0}& {c}{}{z}\end{array}\right]$ (2.10)

The entries of give the formulas for the transformation

 G1 > $R≔X·A$
 ${R}{:=}\left[\begin{array}{cc}{a}{}{x}& {b}{}{x}{+}{c}{}{y}\\ {0}& {c}{}{z}\end{array}\right]$ (2.11)

The entries of give the formulas for the transformation ${\mathrm{μ}}_{\mathrm{Inv}}$ :

 G1 > $Y≔\frac{1}{X}$
 ${Y}{:=}\left[\begin{array}{cc}\frac{{1}}{{x}}& {-}\frac{{y}}{{x}{}{z}}\\ {0}& \frac{{1}}{{z}}\end{array}\right]$ (2.12)

We can also verify that the exports for LG1 are correct with the ApplyTransformation command.

 G1 > $\mathrm{ApplyTransformation}\left(\mathrm{muL},\mathrm{ApplyTransformation}\left(\mathrm{muInv},\left[a,b,c\right]\right)\right)$
 $\left[{1}{,}{0}{,}{1}\right]$ (2.13)

The output of the LieGroup command can be passed to the InvariantVectorsAndForms program to compute the left and right invariant vector fields and forms on the Lie group G1.

 G1 > $\mathrm{InvariantVectorsAndForms}\left(\mathrm{LG1}\right)$
 $\left[{x}{}{\mathrm{D_x}}{,}{x}{}{\mathrm{D_y}}{,}{\mathrm{D_y}}{}{y}{+}{\mathrm{D_z}}{}{z}\right]{,}\left[\frac{{\mathrm{dx}}}{{x}}{,}\frac{{\mathrm{dy}}}{{x}}{-}\frac{{y}{}{\mathrm{dz}}}{{x}{}{z}}{,}\frac{{\mathrm{dz}}}{{z}}\right]{,}\left[{\mathrm{D_x}}{}{x}{+}{\mathrm{D_y}}{}{y}{,}{z}{}{\mathrm{D_y}}{,}{z}{}{\mathrm{D_z}}\right]{,}\left[\frac{{\mathrm{dx}}}{{x}}{,}{-}\frac{{y}{}{\mathrm{dx}}}{{x}{}{z}}{+}\frac{{\mathrm{dy}}}{{z}}{,}\frac{{\mathrm{dz}}}{{z}}\right]$ (2.14)

Example 2.

The second calling sequence for LieGroup is similar in concept to the first calling sequence except that the Lie group is now determined from a group of transformations on a manifold instead of a matrix group. In this example, we consider a 5 parameter group of affine transformations in the plane.

 G1 > $\mathrm{DGsetup}\left(\left[x,y\right],M\right)$
 ${\mathrm{frame name: M}}$ (2.15)
 M > $\mathrm{T2}≔\mathrm{Transformation}\left(M,M,\left[x=ax+by+c,y=dy+e\right]\right)$
 ${\mathrm{T2}}{:=}\left[{x}{=}{a}{}{x}{+}{b}{}{y}{+}{c}{,}{y}{=}{d}{}{y}{+}{e}\right]$ (2.16)

 M > $\mathrm{DGsetup}\left(\left[a,b,c,d,e\right],\mathrm{G2}\right)$
 ${\mathrm{frame name: G2}}$ (2.17)
 M > $\mathrm{LG2}≔\mathrm{LieGroup}\left(\mathrm{T2},\mathrm{G2}\right)$
 ${\mathrm{LG2}}{:=}{\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{export}}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathrm{Frame}}{,}{\mathrm{Identity}}{,}{\mathrm{LeftMultiplication}}{,}{\mathrm{RightMultiplication}}{,}{\mathrm{Inverse}}{;}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}$ (2.18)
 M > $\mathrm{LG2}:-\mathrm{LeftMultiplication}\left(\left[\mathrm{\alpha },\mathrm{\beta },\mathrm{\gamma },\mathrm{\delta },\mathrm{\epsilon }\right]\right)$
 $\left[{a}{=}{a}{}{\mathrm{α}}{,}{b}{=}{b}{}{\mathrm{α}}{+}{d}{}{\mathrm{β}}{,}{c}{=}{c}{}{\mathrm{α}}{+}{e}{}{\mathrm{β}}{+}{\mathrm{γ}}{,}{d}{=}{\mathrm{δ}}{}{d}{,}{e}{=}{e}{}{\mathrm{δ}}{+}{\mathrm{ϵ}}\right]$ (2.19)

The group parameters are .

 M > $\mathrm{DGsetup}\left(\left[a,b,c,d,e\right],\mathrm{G2}\right)$
 ${\mathrm{frame name: G2}}$ (2.20)

 M > $\mathrm{LG2}≔\mathrm{LieGroup}\left(\mathrm{T2},\mathrm{G2}\right)$
 ${\mathrm{LG2}}{:=}{\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{export}}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathrm{Frame}}{,}{\mathrm{Identity}}{,}{\mathrm{LeftMultiplication}}{,}{\mathrm{RightMultiplication}}{,}{\mathrm{Inverse}}{;}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}$ (2.21)
 M > $\mathrm{LG2}:-\mathrm{LeftMultiplication}\left(\left[\mathrm{\alpha },\mathrm{\beta },\mathrm{\gamma },\mathrm{\delta },\mathrm{\epsilon }\right]\right)$
 $\left[{a}{=}{a}{}{\mathrm{α}}{,}{b}{=}{b}{}{\mathrm{α}}{+}{d}{}{\mathrm{β}}{,}{c}{=}{c}{}{\mathrm{α}}{+}{e}{}{\mathrm{β}}{+}{\mathrm{γ}}{,}{d}{=}{\mathrm{δ}}{}{d}{,}{e}{=}{e}{}{\mathrm{δ}}{+}{\mathrm{ϵ}}\right]$ (2.22)

Example 3.

If the left or right multiplication for a Lie group is known, then the third calling sequence can be used to create the corresponding Lie group module. We take, as a simple example, the left multiplication map constructed in Example 1. Then the procedure LieGroup will compute the corresponding right multiplication.

 G2 > $\mathrm{DGsetup}\left(\left[x,y,z\right],\mathrm{G3}\right)$
 ${\mathrm{frame name: G3}}$ (2.23)
 G3 > $\mathrm{T3}≔\mathrm{Transformation}\left(\mathrm{G3},\mathrm{G3},\left[x=ax,y=ay+bz,z=cz\right]\right)$
 ${\mathrm{T3}}{:=}\left[{x}{=}{a}{}{x}{,}{y}{=}{a}{}{y}{+}{b}{}{z}{,}{z}{=}{c}{}{z}\right]$ (2.24)
 G3 > $\mathrm{LG3L}≔\mathrm{LieGroup}\left(\mathrm{T3},\left[a,b,c\right]\right)$
 ${\mathrm{LG3L}}{:=}{\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{export}}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathrm{Frame}}{,}{\mathrm{Identity}}{,}{\mathrm{LeftMultiplication}}{,}{\mathrm{RightMultiplication}}{,}{\mathrm{Inverse}}{;}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}$ (2.25)
 G3 > $\mathrm{S3}≔\mathrm{LG3L}:-\mathrm{RightMultiplication}\left(\left[a,b,c\right]\right)$
 ${\mathrm{S3}}{:=}\left[{x}{=}{a}{}{x}{,}{y}{=}{b}{}{x}{+}{c}{}{y}{,}{z}{=}{c}{}{z}\right]$ (2.26)

The default assumption is that the transformation given as the first argument to LieGroup is the left multiplication map.The keyword argument multiplication = "right" can be used to indicate that the first argument is the right multiplication. Then the procedure LieGroup will compute the corresponding left multiplication.

 G3 > $\mathrm{LG3R}≔\mathrm{LieGroup}\left(\mathrm{S3},\left[a,b,c\right],\mathrm{multiplication}="right"\right)$
 ${\mathrm{LG3R}}{:=}{\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{export}}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathrm{Frame}}{,}{\mathrm{Identity}}{,}{\mathrm{LeftMultiplication}}{,}{\mathrm{RightMultiplication}}{,}{\mathrm{Inverse}}{;}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}$ (2.27)
 G5 > $\mathrm{LG3R}:-\mathrm{RightMultiplication}\left(\left[a,b,c\right]\right)$
 $\left[{x}{=}{a}{}{x}{,}{y}{=}{b}{}{x}{+}{c}{}{y}{,}{z}{=}{c}{}{z}\right]$ (2.28)
 G3 > $\mathrm{LG3R}:-\mathrm{LeftMultiplication}\left(\left[a,b,c\right]\right)$
 $\left[{x}{=}{a}{}{x}{,}{y}{=}{a}{}{y}{+}{b}{}{z}{,}{z}{=}{c}{}{z}\right]$ (2.29)

Example 4.

We use the fourth calling sequence to calculate the Lie group for a given abstract solvable Lie algebra. Retrieve an abstract Lie algebra from the DifferentialGeometry library and initialize it.

 G2 > $\mathrm{LA}≔\mathrm{Library}:-\mathrm{Retrieve}\left("Winternitz",1,\left[4,8\right],\mathrm{alg}\right)$
 ${\mathrm{LA}}{:=}\left[\left[{\mathrm{e2}}{,}{\mathrm{e3}}\right]{=}{\mathrm{e1}}{,}\left[{\mathrm{e2}}{,}{\mathrm{e4}}\right]{=}{\mathrm{e2}}{,}\left[{\mathrm{e3}}{,}{\mathrm{e4}}\right]{=}{-}{\mathrm{e3}}\right]$ (2.30)
 G2 > $\mathrm{DGsetup}\left(\mathrm{LA}\right)$
 ${\mathrm{Lie algebra: alg}}$ (2.31)

 G2 > $\mathrm{DGsetup}\left(\left[\mathrm{x1},\mathrm{x2},\mathrm{x3},\mathrm{x4}\right],\mathrm{G4}\right)$
 ${\mathrm{frame name: G4}}$ (2.32)
 G4 > $\mathrm{LG4}≔\mathrm{LieGroup}\left(\mathrm{alg},\mathrm{G4}\right)$
 ${\mathrm{LG4}}{:=}{\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{export}}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathrm{Frame}}{,}{\mathrm{Identity}}{,}{\mathrm{LeftMultiplication}}{,}{\mathrm{RightMultiplication}}{,}{\mathrm{Inverse}}{;}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}$ (2.33)
 G4 > $\mathrm{LG4}:-\mathrm{LeftMultiplication}\left(\left[\mathrm{y1},\mathrm{y2},\mathrm{y3},\mathrm{y4}\right]\right)$
 $\left[{\mathrm{x1}}{=}{\mathrm{y1}}{-}{{ⅇ}}^{{-}{\mathrm{y4}}}{}{\mathrm{x3}}{}{\mathrm{x4}}{}{\mathrm{y2}}{-}{{ⅇ}}^{{-}{\mathrm{y4}}}{}{\mathrm{x3}}{}{\mathrm{y2}}{}{\mathrm{y4}}{-}{{ⅇ}}^{{-}{\mathrm{y4}}}{}{\mathrm{x3}}{}{\mathrm{y2}}{-}{\mathrm{y2}}{}{\mathrm{y3}}{}{\mathrm{x4}}{-}{\mathrm{x2}}{}{{ⅇ}}^{{\mathrm{y4}}}{}{\mathrm{y3}}{}{\mathrm{x4}}{-}{\mathrm{x2}}{}{{ⅇ}}^{{\mathrm{y4}}}{}{\mathrm{y3}}{}{\mathrm{y4}}{-}{\mathrm{y4}}{}{\mathrm{x2}}{}{\mathrm{x3}}{+}{\mathrm{x1}}{,}{\mathrm{x2}}{=}{\mathrm{y2}}{+}{\mathrm{x2}}{}{{ⅇ}}^{{\mathrm{y4}}}{,}{\mathrm{x3}}{=}{\mathrm{y3}}{+}{\mathrm{x3}}{}{{ⅇ}}^{{-}{\mathrm{y4}}}{,}{\mathrm{x4}}{=}{\mathrm{x4}}{+}{\mathrm{y4}}\right]$ (2.34)

We use coordinates  for the Lie group ${G}_{4}.$

 G2 > $\mathrm{DGsetup}\left(\left[\mathrm{x1},\mathrm{x2},\mathrm{x3},\mathrm{x4}\right],\mathrm{G4}\right)$
 ${\mathrm{frame name: G4}}$ (2.35)
 G4 > $\mathrm{LG4}≔\mathrm{LieGroup}\left(\mathrm{alg},\mathrm{G4}\right)$
 ${\mathrm{LG4}}{:=}{\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{export}}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathrm{Frame}}{,}{\mathrm{Identity}}{,}{\mathrm{LeftMultiplication}}{,}{\mathrm{RightMultiplication}}{,}{\mathrm{Inverse}}{;}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}$ (2.36)

The structure equations for the right invariant vector fields on coincide with the structure equations for the Lie algebra we started with.

 G4 > $\mathrm{Γ4}≔\mathrm{InvariantVectorsAndForms}\left(\mathrm{LG4}\right)\left[3\right]$
 ${\mathrm{Γ4}}{:=}\left[{\mathrm{D_x1}}{,}{-}\left({\mathrm{x3}}{}{\mathrm{x4}}{+}{\mathrm{x3}}\right){}{\mathrm{D_x1}}{+}{\mathrm{D_x2}}{,}{-}{\mathrm{x2}}{}{\mathrm{x4}}{}{\mathrm{D_x1}}{+}{\mathrm{D_x3}}{,}{-}{\mathrm{x2}}{}{\mathrm{x3}}{}{\mathrm{D_x1}}{+}{\mathrm{x2}}{}{\mathrm{D_x2}}{-}{\mathrm{x3}}{}{\mathrm{D_x3}}{+}{\mathrm{D_x4}}\right]$ (2.37)
 G4 > $\mathrm{LieAlgebraData}\left(\mathrm{Γ4}\right)$
 $\left[\left[{\mathrm{e2}}{,}{\mathrm{e3}}\right]{=}{\mathrm{e1}}{,}\left[{\mathrm{e2}}{,}{\mathrm{e4}}\right]{=}{\mathrm{e2}}{,}\left[{\mathrm{e3}}{,}{\mathrm{e4}}\right]{=}{-}{\mathrm{e3}}\right]$ (2.38)

Example 5.

We calculate the Lie group module for the special linear group, defined here as the group of fractional linear transformations on the real line.

 G4 > $\mathrm{DGsetup}\left(\left[x\right],\mathrm{M5}\right)$
 ${\mathrm{frame name: M5}}$ (2.39)
 M5 > $\mathrm{T5}≔\mathrm{Transformation}\left(\mathrm{M5},\mathrm{M5},\left[x=\frac{ax+b}{cx+d}\right]\right)$
 ${\mathrm{T5}}{:=}\left[{x}{=}\frac{{a}{}{x}{+}{b}}{{c}{}{x}{+}{d}}\right]$ (2.40)

The group parameters are subject to the constraint  We solve for and re-write the group action  in terms of 3 group parameters .

 M5 > $\mathrm{T5}≔\mathrm{eval}\left(\mathrm{T5},\left[d=\frac{1+bc}{a}\right]\right)$
 ${\mathrm{T5}}{:=}\left[{x}{=}\frac{{a}{}{x}{+}{b}}{{c}{}{x}{+}\frac{{b}{}{c}{+}{1}}{{a}}}\right]$ (2.41)
 M5 > $\mathrm{DGsetup}\left(\left[a,b,c\right],\mathrm{G5}\right)$
 ${\mathrm{frame name: G5}}$ (2.42)

Note that for this group the values  and  both determine the identity transformation. A choice of identity point can be imposed with the keyword argument

identity .

 G5 > $\mathrm{LG5}≔\mathrm{LieGroup}\left(\mathrm{T5},\mathrm{G5},\mathrm{identity}=\left[a=1,b=0,c=0\right]\right)$
 ${\mathrm{LG5}}{:=}{\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{export}}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathrm{Frame}}{,}{\mathrm{Identity}}{,}{\mathrm{LeftMultiplication}}{,}{\mathrm{RightMultiplication}}{,}{\mathrm{Inverse}}{;}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}$ (2.43)
 G5 > $\mathrm{LG5}\left[\mathrm{RightMultiplication}\right]\left(\left[r,s,t\right]\right)$
 $\left[{a}{=}{a}{}{r}{+}{b}{}{t}{,}{b}{=}\frac{{a}{}{r}{}{s}{+}{b}{}{s}{}{t}{+}{b}}{{r}}{,}{c}{=}\frac{{a}{}{c}{}{r}{+}{b}{}{c}{}{t}{+}{t}}{{a}}\right]$ (2.44)

Example 6.

In this example, we calculate the Lie group multiplication for the Euclidean group of motions in the plane. Here is the standard matrix representation of this group.

 G1 > $X≔\mathrm{Matrix}\left(\left[\left[\mathrm{cos}\left(\mathrm{\theta }\right),\mathrm{sin}\left(\mathrm{\theta }\right),a\right],\left[-\mathrm{sin}\left(\mathrm{\theta }\right),\mathrm{cos}\left(\mathrm{\theta }\right),b\right],\left[0,0,1\right]\right]\right)$
 ${X}{:=}\left[\begin{array}{ccc}{\mathrm{cos}}{}\left({\mathrm{θ}}\right)& {\mathrm{sin}}{}\left({\mathrm{θ}}\right)& {a}\\ {-}{\mathrm{sin}}{}\left({\mathrm{θ}}\right)& {\mathrm{cos}}{}\left({\mathrm{θ}}\right)& {b}\\ {0}& {0}& {1}\end{array}\right]$ (2.45)

The group parameters are [$\mathrm{θ}$, a, b]  so we use these as coordinates for the Lie group ${G}_{6}.$

 G5 > $\mathrm{DGsetup}\left(\left[\mathrm{\theta },a,b\right],\mathrm{G6}\right)$
 ${\mathrm{frame name: G6}}$ (2.46)

In this example, the entries of the matrix $X$ are not simple rational functions of group parameter $\mathrm{θ}$. Therefore some simplification of the defining equations for the left and right multiplication may be required in order for the LieGroup procedure to succeed. This can be done with the DifferentialGeometry Preferences command. The combine command will apply the addition formulas for sine and cosine which will simplify the defining equations for the left and right multiplications. The multiplication rules for the Euclidean Lie group can then be determined.



 G6 > $\mathrm{Preferences}\left("simplification",x↦\mathrm{simplify}\left(\mathrm{combine}\left(x\right)\right)\right)$
 ${\mathbf{proc}}\left({s}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{...}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end proc}}$ (2.47)
 G6 > $\mathrm{G6}≔\mathrm{LieGroup}\left(X,\mathrm{G6}\right)$
 ${\mathrm{G6}}{:=}{\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{export}}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathrm{Frame}}{,}{\mathrm{Identity}}{,}{\mathrm{LeftMultiplication}}{,}{\mathrm{RightMultiplication}}{,}{\mathrm{Inverse}}{;}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}$ (2.48)
 G6 > $\mathrm{G6}\left[\mathrm{LeftMultiplication}\right]\left(\left[\mathrm{\phi },c,d\right]\right)$
 $\left[{\mathrm{θ}}{=}{\mathrm{φ}}{+}{\mathrm{θ}}{,}{a}{=}{\mathrm{cos}}{}\left({\mathrm{φ}}\right){}{a}{+}{\mathrm{sin}}{}\left({\mathrm{φ}}\right){}{b}{+}{c}{,}{b}{=}{-}{\mathrm{sin}}{}\left({\mathrm{φ}}\right){}{a}{+}{\mathrm{cos}}{}\left({\mathrm{φ}}\right){}{b}{+}{d}\right]$ (2.49)