up previous next
BinExp

binomial expansion

Syntax
BinExp(N:INT, K:INT):TAGGED("$binrepr.BinExp")
BinExp(N:INT, K:INT, Up:INT, Down:INT):INT

where N and K are positive integers, and Up and Down are integers.

Description
This function computes the K-binomial expansion of N, i.e., the unique expression
  N = binomial(N(K),K) + binomial(N(K-1),K-1) + ... + binomial(N(I),I)
where N(K) > ... > N(I) >= 1, for some I. The value returned is tagged for pretty printing.

It can also compute the sum of the binomial coefficients appearing in the K-binomial expansion of N after replacing each summand binomial(N(J), J) by binomial(N(J)+Up, J+Down). It is useful in generalizations of Macaulay's theorem characterizing Hilbert functions.

Example
/**/  BE := BinExp(13,4);
/**/  BE;
Bin(5,4) + Bin(4,3) + Bin(3,2) + Bin(1,1)

/**/  BinExp(13,4,1,1);
16

See Also