A Lie ring L is a Z-module equipped with a multiplication, denoted by a bracket [~,~] with

[x,x]=0 for all x in L,

[x,[y,z]]+[z,[x,y]]+[y,[z,x]]=0 for all x,y,z in L.

Contrary to Lie algebras (which are defined over a field), Lie rings may have torsion elements, i.e., elements x ≠ 0 such that mx=0 for some m∈ Z.

We say that a Lie ring is finite-dimensional if it is finitely-generated as abelian group. All functions of this package deal with finite-dimensional Lie rings.

Here is an example of a Lie ring L of order 5^6. As abelian group L is generated by x_1,x_2,x_3,x_4,x_5. We have 5x_i=0 for i=1,...,4, and 25x_5=0. Furthermore,

[x_1,x_4] = 4x_2+5x_5,~ [x_3,x_4] = 4x_1,~ [x_3,x_5]=4x_2,~ [x_4,x_5]=4x_3.

One of the main functions of this package constructs a Lie ring given by a multiplication table (as above) from a finite presentation. The Lie ring above can be obtained as follows.

gap> L:= FreeLieRing( Integers, ["a","b"] ); <Free algebra over Integers generators: a, b > gap> a:= L.1; b:= L.2; a b gap> S:= [ 5*a-(b*a)*a-((b*a)*b)*b,5*b]; [ (5)*a+(-1)*(a,(a,b))+(b,(b,(a,b))), (5)*b ] gap> K:= FpLieRing( L, S : maxdeg:= 4 ); <Lie ring with 5 generators> gap> v:=BasisVectors( Basis(K) ); [ v_1, v_2, v_3, v_4, v_5 ] gap> v[1]*v[4]; 4*v_2+5*v_5 gap> Torsion( Basis(K) ); [ 5, 5, 5, 5, 25 ]

Let X be a set of letters, which we denote by x_1,...,x_n. Then the free magma M(X) on X is defined to be the set of all bracketed expressions in the elements of X. More precisely, we have that X is a subset of M(X) and if a,b∈ M(X), then also (a,b)∈ M(X). The free magma has a natural binary operation m with m(a,b) = (a,b).

The elements of the free magma have a degree which is defined as deg(a,b) = deg(a)+deg(b). The degree of the elements of X can be set to be any positive integer. (Usually this is 1, but it is possible to use different degrees for the elements of X.)

Let R be a ring; then the free algebra A_R(X) on X over R is the R-span of M(X). The product on A_R(X) is obtained by bilinearly extending the map m.

The elements of M(X) are called monomials of A_R(X). We use the following ordering on them. The elements of X are ordered arbitrarily. Then (a,b) < (c,d) if deg(a,b) < deg(c,d). If these two numbers are equal, then (a,b) < (c,d) if a < c, and in case a=c, if b < d. Using this ordering we can speak of leading monomial, and leading coefficient of an element of A_R(X). Using these notions one can develop a Groebner basis theory for ideals in A_R(X) (see [CdG07] and [CdG09]).

Let J be the ideal of A_R(X) generated by all elements

(a,a),

(a,b)+(b,a),

(a,(b,c))+(c,(a,b))+(b,(c,a)),

for a,b,c∈ M(X). Set L_R(X) = A_R(X)/J, which is called the free Lie ring over R generated by X.

The free Lie ring is one of the central objects of this package. It can be defined over the integers, or over a field. The free Lie rings that can be constructed using this package rewrite their elements using anticommutativity. The Jacobi identity is not used for rewriting; this is because that would lead to expression swell, and sometimes tedious rewriting of elements to a form in which that can no longer be recognised. So, strictly speaking, we work with the free anticommutative algebra.

Using the Baker-Campbell-Hausdorff (or BCH) formula one can define an associative multiplication on a nilpotent Lie ring of order p^n and nilpotency class < p. This makes the Lie ring into a p-group of the same order and nilpotency class. The BCH-formula also has inverses, which can be used to define an addition and a Lie bracket on a p-group of class < p. These make the group into a Lie ring of the same order and nilpotency class.

These two operations are mutually inverse, and so define an equivalence of the categories of p-groups of class < p and nilpotent Lie rings of the same order and nilpotency class. This equivalence is known as the *Lazard correspondence* (see [Khu98]). This package has functions for performing this correspondence, i.e., to make a p-group into a Lie ring and vice versa. For the algorithms used we refer to [CdGVL11].

generated by GAPDoc2HTML