Implements the left adjoint BGG functor. The more primitive function SymExt does this only for linearly presented exterior modules.
i1 : E = ZZ/101[a,b,c,d, SkewCommutative => true] o1 = E o1 : PolynomialRing, 4 skew commutative variables |
i2 : P = E^1/ideal(a*b,c) o2 = cokernel | ab c | 1 o2 : E-module, quotient of E |
i3 : betti res P 0 1 2 3 4 5 o3 = total: 1 2 4 7 11 16 0: 1 1 1 1 1 1 1: . 1 3 6 10 15 o3 : BettiTally |
i4 : hf(0..3, P) o4 = {1, 3, 2, 0} o4 : List |
i5 : S = ZZ/101[x,y,z,w] o5 = S o5 : PolynomialRing |
i6 : betti BGGL(P,S) -2 -1 0 o6 = total: 2 3 1 0: 2 3 1 o6 : BettiTally |
This script really belongs in the BGG package.
The object BGGL is a function closure.