# Singular

#### D.15.4.28 chSymm

Procedure from library `chern.lib` (see chern_lib).

Usage:
chSymm(k, r, c[, pos]); k, r integers, c list of polynomials, pos list of integers

Return:
list with entries: int N, list of polynomials l

Purpose:
computes the rank and the Chern classes of the symmetric power of a vector bundle

Note:
for the second symmetric power chSymm2L(...) could be faster

Example:
 ```LIB "chern.lib"; ring r=0, (c(1..5)), dp; list l=c(1..5); // the rank and the Chern classes of the second symmetric power of a vector bundle of rank 3 print( chSymm(2, 3, l) ); ==> [1]: ==> 6 ==> [2]: ==> [1]: ==> 4*c(1) ==> [2]: ==> 5*c(1)^2+5*c(2) ==> [3]: ==> 2*c(1)^3+11*c(1)*c(2)+7*c(3) ==> [4]: ==> 6*c(1)^2*c(2)+4*c(2)^2+14*c(1)*c(3) ==> [5]: ==> 4*c(1)*c(2)^2+8*c(1)^2*c(3)+4*c(2)*c(3) ==> [6]: ==> 8*c(1)*c(2)*c(3)-8*c(3)^2 // the rank and the first 3 Chern classes // of the second symmetric power of a vector bundle of rank 5 print( chSymm(2, 5, l, 1, 2, 3) ); ==> [1]: ==> 15 ==> [2]: ==> [1]: ==> 6*c(1) ==> [2]: ==> 14*c(1)^2+7*c(2) ==> [3]: ==> 16*c(1)^3+31*c(1)*c(2)+9*c(3) ```