Ask Your Question
0

Fundamental polynomials with Sage

asked 2023-10-12 01:40:04 +0100

klaaa gravatar image

updated 2023-10-12 01:47:27 +0100

Let $N>0$ be a positive natural number and let $k \geq 0$ be natural number with $N \geq k$.Let $S$ be a subset of the set {1,2,...,k-1}. Define the fundamental polynomial in $N$ variables as $F_{k,S}(x_1,x_2,...,x_N):= \sum\limits_{1 \leq i_1 \leq i_2 \leq \cdots \leq i_k \leq N \ ; \ j \in S \implies i_j < i_{j+1}}^{}{x_{i_1} x_{i_2} \cdots x_{i_k}}$.

For example we have $F_{k,\emptyset}=h_k$, the complete symmetric function and $F_{k,S}=e_k$ for S={1,...,k-1}, the elementary symmetric function.

Question: Is there an existing command or another easy way to obtain those polynomials for a given triple $(N,k,S)$ via Sage?

I found a section about quasi-symmetric functions in Sage but it uses the language of Hopf algebras and I am not sure whether this contains the fundamental polynomials already in this form.

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted
1

answered 2023-10-12 03:19:50 +0100

Max Alekseyev gravatar image

updated 2023-10-12 05:33:08 +0100

If I've not misread the docs, this is a function that computes $F_{k,S}$:

def myF(k,S,N):
    S = sorted(S)
    C = vector(S+[k]) - vector([0]+S)
    QSym = QuasiSymmetricFunctions(QQ)
    F = QSym.F()
    return F[C].expand(N)

If you want it in unexpanded form as a quasi-symmetric polynomial object, then you can return F[C] instead.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2023-10-12 01:40:04 +0100

Seen: 114 times

Last updated: Oct 12 '23