예제 #1
0
    def _s_to_self_base(self, part):
        r"""
        Returns a function which gives the coefficient of a partition
        in the expansion of the Schur functions ``s(part)`` in the Hall-Littlewood
        `P` basis.

        INPUT:

        - ``self`` -- an instance of the Hall-Littlewood `P` basis
        - ``part`` -- a partition

        OUTPUT:

        - returns a function which accepts a partition ``part2`` and returns
          the coefficient of ``P(part2)`` in ``s(part)``
          This coefficient is the t-Kostka-Foulkes polynomial  `K_{part,part2}(t)`

        EXAMPLES::

            sage: Sym = SymmetricFunctions(FractionField(QQ['t']))
            sage: HLP = Sym.hall_littlewood().P()
            sage: f21 = HLP._s_to_self_base(Partition([2,1]))
            sage: [f21(p) for p in Partitions(3)]
            [0, 1, t^2 + t]
        """
        from sage.combinat.sf.kfpoly import schur_to_hl
        t = QQt.gen()
        zero = self.base_ring().zero()
        res_dict = schur_to_hl(part, t)
        f = lambda part2: res_dict.get(part2,zero)
        return f
예제 #2
0
    def _s_to_self_base(self, part):
        r"""
        Returns a function which gives the coefficient of a partition
        in the expansion of the Schur functions ``s(part)`` in the Hall-Littlewood
        `P` basis.

        INPUT:

        - ``self`` -- an instance of the Hall-Littlewood `P` basis
        - ``part`` -- a partition

        OUTPUT:

        - returns a function which accepts a partition ``part2`` and returns
          the coefficient of ``P(part2)`` in ``s(part)``
          This coefficient is the t-Kostka-Foulkes polynomial  `K_{part,part2}(t)`

        EXAMPLES::

            sage: Sym = SymmetricFunctions(FractionField(QQ['t']))
            sage: HLP = Sym.hall_littlewood().P()
            sage: f21 = HLP._s_to_self_base(Partition([2,1]))
            sage: [f21(p) for p in Partitions(3)]
            [0, 1, t^2 + t]
        """
        from sage.combinat.sf.kfpoly import schur_to_hl
        t = QQt.gen()
        zero = self.base_ring()(0)
        res_dict = schur_to_hl(part, t)
        f = lambda part2: res_dict.get(part2,zero)
        return f