The generators of M are mapped to the Lie elements in the last argument homdefs. It is checked by the program that f maps the relations in M to zero and commutes with the differential and that f preserves the weight and sign. The effect of mapLie(L,M) is that the "common" generators are mapped to themselves and the other generators are mapped to zero (cf map for rings). Two generators are "common" if they have the same name and the same weight and sign.
i1 : L1=lieAlgebra({a,b},genSigns=>1,diffl=>true, genWeights=>{{1,0},{2,1}})/{a a} o1 = L1 o1 : LieAlgebra |
i2 : L2=lieAlgebra({a,b,c}, genWeights=>{{1,0},{2,1},{5,2}},genSigns=>1,diffl=>true) o2 = L2 o2 : LieAlgebra |
i3 : L2=diffLieAlgebra{L2.zz,a a,a a a b}/{a a a a b,a b a b + a c} o3 = L2 o3 : LieAlgebra |
i4 : useLie L1 o4 = L1 o4 : LieAlgebra |
i5 : f=mapLie(L1,L2,{a,L1.zz,a b b}) o5 = f o5 : MapLie |
i6 : peekLie f o6 = MapLie{a => a } b => 0 c => (a b b) sourceLie => L2 targetLie => L1 |
i7 : useLie L2 o7 = L2 o7 : LieAlgebra |
i8 : f c c o8 = 2 (a b b a b b) o8 : L1 |
i9 : peekLie mapLie(L1,L2) o9 = MapLie{a => a } b => b c => 0 sourceLie => L2 targetLie => L1 |