def test_semistandard_marked_setvalued(): mu = () assert Tableau.semistandard_marked_setvalued(0, mu) == {Tableau()} assert Tableau.semistandard_marked_setvalued(1, mu) == {Tableau()} assert Tableau.semistandard_marked_setvalued(2, mu) == {Tableau()} mu = (1, ) assert Tableau.semistandard_marked_setvalued(1, mu) == { Tableau({(1, 1): 1}), Tableau({(1, 1): -1}), Tableau({(1, 1): (-1, 1)}) } assert Tableau.semistandard_marked_setvalued(2, mu) == { Tableau({(1, 1): 1}), Tableau({(1, 1): -1}), Tableau({(1, 1): (-1, 1)}), Tableau({(1, 1): 2}), Tableau({(1, 1): -2}), Tableau({(1, 1): (-2, 2)}), Tableau({(1, 1): (1, 2)}), Tableau({(1, 1): (1, -2)}), Tableau({(1, 1): (1, -2, 2)}), Tableau({(1, 1): (-1, 2)}), Tableau({(1, 1): (-1, -2)}), Tableau({(1, 1): (-1, -2, 2)}), Tableau({(1, 1): (-1, 1, 2)}), Tableau({(1, 1): (-1, 1, -2)}), Tableau({(1, 1): (-1, 1, -2, 2)}) }
def test_skew_semistandard_marked_setvalued(): for n in [1, 2, 3]: mu = (2, 1) nu = (1, ) tabs = Tableau.semistandard_marked_setvalued(n, mu, nu) assert len(tabs) == (2**(2 * n) - 1)**2
def _slow_stable_grothendieck_s(cls, num_variables, mu, nu=()): return BETA**(sum(nu) - sum(mu)) * cls._slow_vectorize( num_variables, Tableau.semistandard_marked_setvalued(num_variables, mu, nu), BETA)