# poincare(Complex) -- assemble degrees of a chain complex into a polynomial

## Synopsis

• Function: poincare
• Usage:
poincare C
• Inputs:
• C, ,
• Outputs:

## Description

This method encodes information about the degrees of the generators of each term in a chain complex. It returns an element in the degrees ring, which is the ring of Laurent polynomials whose monomials correspond to the degrees of the monomials in the underlying ring of $C$. When the $i$-th term $C_i$ of the complex $C$ is generated by elements of degree $d_{i,1}, d_{i,2}, \dotsc$, this Laurent polynomial is $\sum_i (-1)^i \sum_j T^{d_{i,j}}$, where we use multi-index notation $T^d = T_0^{d_0} T_1^{d_1} \dotsb T_r^{d_r}$.

 i1 : R = ZZ/32003[a..f]; i2 : K = koszulComplex vars R 1 6 15 20 15 6 1 o2 = R <-- R <-- R <-- R <-- R <-- R <-- R 0 1 2 3 4 5 6 o2 : Complex i3 : betti K 0 1 2 3 4 5 6 o3 = total: 1 6 15 20 15 6 1 0: 1 6 15 20 15 6 1 o3 : BettiTally i4 : p = poincare K 2 3 4 5 6 o4 = 1 - 6T + 15T - 20T + 15T - 6T + T o4 : ZZ[T] i5 : factor p 6 o5 = (1 - T) o5 : Expression of class Product
 i6 : C = freeResolution ideal(a*b, b*c*d, c*d*e^2) 1 3 2 o6 = R <-- R <-- R 0 1 2 o6 : Complex i7 : betti C 0 1 2 o7 = total: 1 3 2 0: 1 . . 1: . 1 . 2: . 1 1 3: . 1 1 o7 : BettiTally i8 : poincare C 2 3 5 o8 = 1 - T - T + T o8 : ZZ[T]

Since the number of variables in the degrees ring is equal to the rank of the grading group, the Poincare polynomial may have more than one variable.

 i9 : S = ZZ/101[x,y,z, DegreeRank => 3]; i10 : L = koszulComplex vars S 1 3 3 1 o10 = S <-- S <-- S <-- S 0 1 2 3 o10 : Complex i11 : poincare L o11 = 1 - T - T - T + T T + T T + T T - T T T 0 1 2 0 1 0 2 1 2 0 1 2 o11 : ZZ[T ..T ] 0 2

If the terms in the complex are not free, then this method uses just the degrees of the generators of each term.

 i12 : D = C ** coker vars R o12 = cokernel | a b c d e f | <-- cokernel {2} | a b c d e f 0 0 0 0 0 0 0 0 0 0 0 0 | <-- cokernel {4} | a b c d e f 0 0 0 0 0 0 | {3} | 0 0 0 0 0 0 a b c d e f 0 0 0 0 0 0 | {5} | 0 0 0 0 0 0 a b c d e f | 0 {4} | 0 0 0 0 0 0 0 0 0 0 0 0 a b c d e f | 2 1 o12 : Complex i13 : poincare D 2 3 5 o13 = 1 - T - T + T o13 : ZZ[T] i14 : betti D 0 1 2 o14 = total: 1 3 2 0: 1 . . 1: . 1 . 2: . 1 1 3: . 1 1 o14 : BettiTally

This is equivalent to computing the Poincare polynomial of the Betti table.

 i15 : poincare betti D 2 3 5 o15 = 1 - T - T + T o15 : ZZ[T]