-- -*- M2-comint -*- hash: 17456071842202778056

i1 : F = lieAlgebra{a,b,c}

o1 = F

o1 : LieAlgebra

i2 : M = F/{a a b, a a c}

o2 = M

o2 : LieAlgebra

i3 : L1 = M/{a b c}

o3 = L1

o3 : LieAlgebra

i4 : describe M

o4 = generators => {a, b, c}
     Weights => {{1, 0}, {1, 0}, {1, 0}}
     Signs => {0, 0, 0}
     ideal => { - (a b a),  - (a c a)}
     ambient => F
     diff => {}
     Field => QQ
     computedDegree => 3


i5 : describe L1

o5 = generators => {a, b, c}
     Weights => {{1, 0}, {1, 0}, {1, 0}}
     Signs => {0, 0, 0}
     ideal => { - (a b a),  - (a c a),  - (b c a) + (c b a)}
     ambient => F
     diff => {}
     Field => QQ
     computedDegree => 0


i6 : F = lieAlgebra{a,b,c}

o6 = F

o6 : LieAlgebra

i7 : I = lieIdeal{a a b,a a c,a b c}

o7 = I

o7 : FGLieIdeal

i8 : L2=F/I

o8 = L2

o8 : LieAlgebra

i9 : describe L2

o9 = generators => {a, b, c}
     Weights => {{1, 0}, {1, 0}, {1, 0}}
     Signs => {0, 0, 0}
     ideal => { - (a b a),  - (a c a),  - (b c a) + (c b a)}
     ambient => F
     diff => {}
     Field => QQ
     computedDegree => 0


i10 : L1==L2

o10 = true

i11 : f = map(L1,M)

o11 = f

o11 : LieAlgebraMap

i12 : J = kernel f

o12 = J

o12 : LieIdeal

i13 : L3 = M/J

o13 = L3

o13 : LieAlgebra

i14 : describe L3

o14 = generators => {a, b, c}
      Weights => {{1, 0}, {1, 0}, {1, 0}}
      Signs => {0, 0, 0}
      ideal => J
      ambient => M
      diff => {}
      Field => QQ
      computedDegree => 0


i15 : dims(1,6,L2)

o15 = {3, 3, 5, 9, 22, 44}

o15 : List

i16 : dims(1,6,L3)

o16 = {3, 3, 5, 9, 22, 44}

o16 : List

i17 : L4 = L3/{a b,a c}

o17 = L4

o17 : LieAlgebra

i18 : g = map(L4,L3)
warning: the map might not be well defined, 
           use isWellDefined

o18 = g

o18 : LieAlgebraMap

i19 : K = kernel g

o19 = K

o19 : LieIdeal

i20 : L5 = L3/K

o20 = L5

o20 : LieAlgebra

i21 : ambient L5

o21 = M

o21 : LieAlgebra

i22 : ideal L5===inverse(map(L3,M),K)

o22 = true

i23 : L6 = (M/J)/{a b}

o23 = L6

o23 : LieAlgebra

i24 : L7 = ambient L6

o24 = L7

o24 : LieAlgebra

i25 : use M

i26 : L7 == M/{a b}

o26 = true

i27 : Q = image(map(L7,M),J)

o27 = Q

o27 : LieSubAlgebra

i28 : ideal L6===new LieIdeal from Q

o28 = true

i29 : 
      
      F = lieAlgebra({a,b,c2,c3,c4},Signs=>{0,0,1,0,1},
                Weights => {{1,0},{1,0},{2,1},{3,2},{5,3}},
                LastWeightHomological=>true)

o29 = F

o29 : LieAlgebra

i30 : D=differentialLieAlgebra{0_F,0_F,a b,a c2,a b c3}

o30 = D

o30 : LieAlgebra

i31 : describe D

o31 = generators => {a, b, c2, c3, c4}
      Weights => {{1, 0}, {1, 0}, {2, 1}, {3, 2}, {5, 3}}
      Signs => {0, 0, 1, 0, 1}
      ideal => { - (a b a), (a b a c2)}
      ambient => F
      diff => {0, 0,  - (b a), (a c2), (a b c3)}
      Field => QQ
      computedDegree => 0


i32 : L=D/{b c2}

o32 = L

o32 : LieAlgebra

i33 : describe L

o33 = generators => {a, b, c2, c3, c4}
      Weights => {{1, 0}, {1, 0}, {2, 1}, {3, 2}, {5, 3}}
      Signs => {0, 0, 1, 0, 1}
      ideal => { - (a b a), (a b a c2), (b c2),  - (b b a)}
      ambient => F
      diff => {0, 0,  - (b a), (a c2), (a b c3)}
      Field => QQ
      computedDegree => 0


i34 : L = lieAlgebra{a,b,c}

o34 = L

o34 : LieAlgebra

i35 : A = lieSubAlgebra{a,b c}

o35 = A

o35 : FGLieSubAlgebra

i36 : basis(4,A)

o36 = {2 (a c b a) - (b a c a) - (c a b a)}

o36 : List

i37 : S=lieSubSpace{a,b c}

o37 = S

o37 : LieSubSpace

i38 : dims(1,4,S)

o38 = {1, 1, 0, 0}

o38 : List

i39 : L = lieAlgebra{a,b,c}

o39 = L

o39 : LieAlgebra

i40 : I = lieIdeal{a a c+b a c-a b a,c c a-b b a }

o40 = I

o40 : FGLieIdeal

i41 : M = L/I

o41 = M

o41 : LieAlgebra

i42 : J=lieIdeal{a b}

o42 = J

o42 : FGLieIdeal

i43 : A = quotient(J,lieSubAlgebra{a c})

o43 = A

o43 : LieSubAlgebra

i44 : dims(1,3,A)

o44 = {2, 3, 5}

o44 : List

i45 : basis(2,A)

o45 = {(b a), (c a), (c b)}

o45 : List

i46 : member((c b) (a c),J)

o46 = true

i47 : L = lieAlgebra{a,b,c}

o47 = L

o47 : LieAlgebra

i48 : I = lieIdeal{a b}

o48 = I

o48 : FGLieIdeal

i49 : J = lieIdeal{b c}

o49 = J

o49 : FGLieIdeal

i50 : T = I+J

o50 = T

o50 : FGLieIdeal

i51 : U = I@J

o51 = U

o51 : LieIdeal

i52 : dims(1,5,T)

o52 = {0, 2, 6, 15, 42}

o52 : List

i53 : dims(1,5,U)

o53 = {0, 0, 0, 1, 6}

o53 : List

i54 : 2*dims(1,5,I)

o54 = {0, 2, 6, 16, 48}

o54 : List

i55 : 
