def _to_s(self, part): r""" Returns a function which gives the coefficient of a partition in the Schur expansion of ``self(part)``. INPUT: - ``self`` -- an instance of the Hall-Littlewood `P` basis - ``part`` -- a partition OUTPUT: - returns a function which accepts a second partition ``part2`` and returns the coefficient of the expansion of the `Qp` in the Schur basis. This is the `t`-Kostka-Foulkes polynomial `K_{part2,part}(t)` EXAMPLES:: sage: Sym = SymmetricFunctions(FractionField(QQ['t'])) sage: HLQp = Sym.hall_littlewood().Qp() sage: f21 = HLQp._to_s(Partition([2,1])) sage: [f21(p) for p in Partitions(3)] [t, 1, 0] """ t = QQt.gen() if part == []: return lambda part2: QQt.one() res = hall_littlewood(part) # call to symmetrica (returns in variable x) f = lambda part2: res.coefficient(part2).subs(x=t) return f
def _to_s(self, part): r""" Returns a function which gives the coefficient of a partition in the Schur expansion of ``self(part)``. INPUT: - ``self`` -- an instance of the Hall-Littlewood `P` basis - ``part`` -- a partition OUTPUT: - returns a function which accepts a second partition ``part2`` and returns the coefficient of the expansion of the `Qp` in the Schur basis. This is the `t`-Kostka-Foulkes polynomial `K_{part2,part}(t)` EXAMPLES:: sage: Sym = SymmetricFunctions(FractionField(QQ['t'])) sage: HLQp = Sym.hall_littlewood().Qp() sage: f21 = HLQp._to_s(Partition([2,1])) sage: [f21(p) for p in Partitions(3)] [t, 1, 0] """ t = QQt.gen() if part == []: return lambda part2: QQt(1) res = hall_littlewood(part) # call to symmetrica (returns in variable x) f = lambda part2: res.coefficient(part2).subs(x=t) return f
def _to_s(self, part): """ Returns a function which gives the coefficient of a partition in the Schur expansion of ``self(part)``. EXAMPLES:: sage: Qp = HallLittlewoodQp(QQ) sage: f21 = Qp._to_s(Partition([2,1])) sage: [f21(p) for p in Partitions(3)] [t, 1, 0] """ Zt = ZZ['t'] t = Zt.gen() zero = Zt(0) if part == []: return lambda part2: Zt(1) res = hall_littlewood(part) f = lambda part2: res.coefficient(part2).subs(x=t) return f