# return structure constants of Iwahori-Hecke algebra as a list of pairs

I would like to return the result of multiplication in an Iwahori-Hecke algebra not as the element on the right hand side of $$C'_xC'_y=\sum_z h_{x,y,z}C'_z$$

but as a list of pairs $(z, h_{x,y,z})$.

Is this possible? It is easy to return a vector of just the coefficients without the index $z$: Can this list be created from the usual setup, e.g.

R.<v> = LaurentPolynomialRing(ZZ)
H = IwahoriHeckeAlgebra(['A',2,1], v^2)
W= H.coxeter_group()
s= W.simple_reflections();s
C=H.C()

C.product_on_basis(s[1], s[2]*s[1])
Cp[1,2,1] + Cp[1]

(C.product_on_basis(s[1], s[2]*s[1])).coefficients()
[1, 1]


But how can I also remember the indices $z$?

edit retag close merge delete

Sort by ยป oldest newest most voted

There is a dedicated function for that

sage: C.product_on_basis(s[1], s[2]*s[1]).monomial_coefficients()
{[ 1  0  0]
[ 2  0 -1]
[ 2 -1  0]: 1,
[ 1  0  0]
[ 1 -1  1]
[ 0  0  1]: 1}


You can also get separately the indices (in the same order as the coefficients) with

sage: C.product_on_basis(s[1], s[2]*s[1]).monomials()
[C[1,2,1], C[1]]

more