# lieDerivation -- make a graded derivation

## Description

Let $f: M -> L$ be a map of Lie algebras. Let $F$ be a free Lie algebra together with a surjective homomorphism $p: F -> M$. Define $g: F -> L$ as the composition $g=f*p$. A derivation $dF:F -> L$ over $g$ is defined by defining $dF$ on the generators of $F$ and then extending $dF$ to all of $F$ by the derivation rule $dF$ [x, y] = [$dF$ x, $g$ y] ± [$g$ x, $dF$ y], where the sign is plus if sign$(d)=0$ or sign$(x)=0$ and minus otherwise. The output d represents the induced map $M -> L$, which might not be well defined. That the derivation is indeed well defined may be checked (up to a certain degree) using isWellDefined(ZZ,LieDerivation). When no $f$ of class LieAlgebraMap is given as input, the derivation $d$ maps $L$ to $L$ (and $f$ is the identity map). In this case, the set $D$ of elements of class LieDerivation is a graded Lie algebra with Lie multiplication using SPACE. If $L$ has differential $del$, then $D$ is a differential Lie algebra with differential $d ->$[$del$,$d$]. If $e$ is the Euler derivation on $L$, then $d ->$[$e$,$d$] is the Euler derivation on $D$.

## Synopsis

• Usage:
d=lieDerivation(f,defs)
• Inputs:
• f, an instance of the type LieAlgebraMap
• defs, a list, the values of the generators
• Outputs:
 i1 : L=lieAlgebra({x,y},Signs=>1) o1 = L o1 : LieAlgebra i2 : M=lieAlgebra({a,b},Weights=>{2,2})/{b a b} o2 = M o2 : LieAlgebra i3 : f = map(L,M,{x x,0_L}) warning: the map might not be well defined, use isWellDefined o3 = f o3 : LieAlgebraMap i4 : d = lieDerivation(f,{x,y}) warning: the derivation might not be well defined, use isWellDefined o4 = d o4 : LieDerivation i5 : isWellDefined(6,d) the derivation is well defined for all degrees o5 = true i6 : describe d o6 = a => x b => y map => f sign => 1 weight => {-1, 0} source => M target => L i7 : d a b o7 = - (y x x) o7 : L

## Synopsis

• Usage:
d=lieDerivation(defs)
• Inputs:
• defs, a list, the values of the generators
• Outputs:
 i8 : L=lieAlgebra({x,y},Signs=>1) o8 = L o8 : LieAlgebra i9 : e = euler L o9 = e o9 : LieDerivation i10 : d1 = lieDerivation{x y,0_L} o10 = d1 o10 : LieDerivation i11 : d3 = lieDerivation{x x x y,0_L} o11 = d3 o11 : LieDerivation i12 : describe d3 o12 = x => - (1/2)(x y x x) y => 0 map => id_L sign => 1 weight => {3, 0} source => L target => L i13 : e d1 o13 = d1 o13 : LieDerivation i14 : e d3 o14 = derivation from L to L o14 : LieDerivation i15 : oo===3 d3 o15 = true

## Ways to use lieDerivation :

• "lieDerivation(LieAlgebraMap,List)"
• "lieDerivation(List)"

## For the programmer

The object lieDerivation is .