Overview - Maple Help

LieAlgebras

 Query
 check various properties of a Lie algebra, subalgebra, or transformation

 Calling Sequence Query(arg1, arg2, ..., keyword)

Parameters

 arg1, arg2, ... - (optional) other arguments keyword - keyword string

Description

 • The Query function can be used in one of two ways to check various properties of a Lie algebra, subalgebra, or transformation.  In the first way the function simply returns true if the property defined by the keyword holds and false otherwise. In the second way, a set of parameters is specified and the function returns the following sequence - TF, Eq, Soln, A. Here TF is true if there is a choice of the parameters which makes the keyword property true; Eq is the list of equations which the parameters must satisfy for the property defined by the keyword to be be true; Soln is the list of all solutions to the equations as found by the Maple solve command; and A is the list of all algebraic structures defined by the previously listed solutions.
 • The argument keyword must be one of the following, entered as a string (in quotes    ):

 • Further information is available under ?Query[keyword], where keyword is from the above list.
 • A user can add new functionality to Query with the command Query:-addCheck(keyword, procedure).
 • The command Query is part of the DifferentialGeometry:-LieAlgebras package.  It can be used in the form Query(...) only after executing the commands with(DifferentialGeometry) and with(LieAlgebras), but can always be used by executing DifferentialGeometry:-LieAlgebras:-Query(...).

Examples

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

Define two Lie algebras.

 > $\mathrm{L1}≔\mathrm{_DG}\left(\left[\left["LieAlgebra",\mathrm{Alg1},\left[4\right]\right],\left[\left[\left[1,3,1\right],1\right],\left[\left[2,3,2\right],1\right]\right]\right]\right):$
 > $\mathrm{L2}≔\mathrm{_DG}\left(\left[\left["LieAlgebra",\mathrm{Alg2},\left[3\right]\right],\left[\left[\left[2,3,1\right],1\right]\right]\right]\right):$
 > $\mathrm{DGsetup}\left(\mathrm{L1}\right):$$\mathrm{DGsetup}\left(\mathrm{L2},\left[f\right],\left[\mathrm{\alpha }\right]\right):$

Example 1.

 > $\mathrm{Query}\left(\mathrm{Alg1},"Nilpotent"\right)$
 ${\mathrm{false}}$ (1)
 > $\mathrm{Query}\left(\mathrm{Alg2},"Nilpotent"\right)$
 ${\mathrm{true}}$ (2)
 > $\mathrm{Query}\left(\left[\mathrm{e1},\mathrm{e2}\right],"Ideal"\right)$
 ${\mathrm{true}}$ (3)
 > $\mathrm{Query}\left(\left[\mathrm{e1},\mathrm{e2}+a\mathrm{e4}\right],\left\{a\right\},"Ideal"\right)$
 ${\mathrm{true}}{,}\left\{{0}{,}{-}{a}\right\}{,}\left[\left\{{a}{=}{0}\right\}\right]{,}\left[\left[{\mathrm{e1}}{+}{\mathrm{_noncommutative}}{}\left(\right){,}{\mathrm{e2}}{+}{\mathrm{_noncommutative}}{}\left(\right)\right]\right]$ (4)

Example 2.

In this example we find all the homomorphisms from Alg1 to Alg2 of the form defined by the Matrix A.

 > $A≔\mathrm{Matrix}\left(\left[\left[\mathrm{a6},0,0,\mathrm{a1}\right],\left[0,\mathrm{a5},0,\mathrm{a2}\right],\left[0,0,\mathrm{a4},\mathrm{a3}\right]\right]\right)$
 ${A}{≔}\left[\begin{array}{cccc}{\mathrm{a6}}& {0}& {0}& {\mathrm{a1}}\\ {0}& {\mathrm{a5}}& {0}& {\mathrm{a2}}\\ {0}& {0}& {\mathrm{a4}}& {\mathrm{a3}}\end{array}\right]$ (5)
 > $\mathrm{TF},\mathrm{Eq},\mathrm{Soln},B≔\mathrm{Query}\left(\mathrm{Alg1},\mathrm{Alg2},A,\left\{\mathrm{a1},\mathrm{a2},\mathrm{a3},\mathrm{a4},\mathrm{a5},\mathrm{a6}\right\},"Homomorphism"\right)$
 ${\mathrm{TF}}{,}{\mathrm{Eq}}{,}{\mathrm{Soln}}{,}{B}{≔}{\mathrm{true}}{,}\left\{{0}{,}{\mathrm{a5}}{,}{\mathrm{a6}}{,}{\mathrm{a4}}{}{\mathrm{a2}}{,}{\mathrm{a5}}{}{\mathrm{a3}}{,}{\mathrm{a5}}{}{\mathrm{a4}}{,}{-}{\mathrm{a5}}{,}{-}{\mathrm{a6}}{,}{-}{\mathrm{a4}}{}{\mathrm{a2}}{,}{-}{\mathrm{a5}}{}{\mathrm{a3}}{,}{-}{\mathrm{a5}}{}{\mathrm{a4}}\right\}{,}\left[\left\{{\mathrm{a1}}{=}{\mathrm{a1}}{,}{\mathrm{a2}}{=}{\mathrm{a2}}{,}{\mathrm{a3}}{=}{\mathrm{a3}}{,}{\mathrm{a4}}{=}{0}{,}{\mathrm{a5}}{=}{0}{,}{\mathrm{a6}}{=}{0}\right\}{,}\left\{{\mathrm{a1}}{=}{\mathrm{a1}}{,}{\mathrm{a2}}{=}{0}{,}{\mathrm{a3}}{=}{\mathrm{a3}}{,}{\mathrm{a4}}{=}{\mathrm{a4}}{,}{\mathrm{a5}}{=}{0}{,}{\mathrm{a6}}{=}{0}\right\}\right]{,}\left[\left[\begin{array}{cccc}{0}& {0}& {0}& {\mathrm{a1}}\\ {0}& {0}& {0}& {\mathrm{a2}}\\ {0}& {0}& {0}& {\mathrm{a3}}\end{array}\right]{,}\left[\begin{array}{cccc}{0}& {0}& {0}& {\mathrm{a1}}\\ {0}& {0}& {0}& {0}\\ {0}& {0}& {\mathrm{a4}}& {\mathrm{a3}}\end{array}\right]\right]$ (6)

Example 3.

In this example we add functionality to Query. Recall that a Lie algebra is said to be a two-step nilpotent Lie algebra if the second term in the lower central series vanishes. We create a procedure that returns true if the given Lie algebra is two-step nilpotent and false otherwise.

 > f := proc() local C, k; if nargs = 1 then ChangeLieAlgebraTo(args[1]) end if; C := LieAlgebraSeries("Lower"); k := nops(C[3]); if k = 0 then true else false end if; end:

Add this procedure to the Query command.

 > $\mathrm{Query}:-\mathrm{addCheck}\left("two-step",f\right)$
 ${f}$ (7)
 > $\mathrm{Query}\left(\mathrm{Alg1},"two-step"\right)$
 ${\mathrm{false}}$ (8)
 > $\mathrm{Query}\left(\mathrm{Alg2},"two-step"\right)$
 ${\mathrm{false}}$ (9)

Note that "two-step" has now been added to the keywords list for Query.

 > $\mathrm{Query}\left("Keywords"\right)$
 $\left[{"Abelian"}{,}{"AbsolutelyIndecomposable"}{,}{"AscendingIdealsBasis"}{,}{"Associative"}{,}{"CartanDecomposition"}{,}{"CartanInvolution"}{,}{"CartanSubalgebra"}{,}{"ChevalleyBasis"}{,}{"ClosedUnderConjugation"}{,}{"ClosedUnderHermitianTransposition"}{,}{"ClosedUnderTransposition"}{,}{"Commutative"}{,}{"CompactForm"}{,}{"Derivation"}{,}{"DirectSumDecomposition"}{,}{"Filtration"}{,}{"Gradation"}{,}{"Homomorphism"}{,}{"Ideal"}{,}{"Indecomposable"}{,}{"IntegerStructureConstants"}{,}{"InvariantSubspace"}{,}{"Jacobi"}{,}{"Keywords"}{,}{"LeviDecomposition"}{,}{"MatrixAlgebra"}{,}{"NaturallyReductivePair"}{,}{"NilRepresentation"}{,}{"Nilpotent"}{,}{"Normalizer"}{,}{"Parabolic"}{,}{"ReductivePair"}{,}{"RegularElement"}{,}{"Representation"}{,}{"RootSpaceDecomposition"}{,}{"Semisimple"}{,}{"SkewCommutative"}{,}{"Solvable"}{,}{"SolvableRepresentation"}{,}{"SplitForm"}{,}{"Subalgebra"}{,}{"SymmetricPair"}{,}{"two-step"}\right]$ (10)