2937
Comment:

1633

Deletions are marked like this.  Additions are marked like this. 
Line 2:  Line 2: 
== Q' Basis: == Timing data for arithmetic with HallLittlewood polynomials in the Q' basis. 

Line 5:  Line 3: 
=== Conversion to Schur basis ===  == P basis == 
Line 7:  Line 5: 
sage: Qp = HallLittlewood_qp(QQ) sage: S = SFASchur(QQ['t'].fraction_field()) sage: time b = S(Qp([2,2])) CPU times: user 0.05 s, sys: 0.00 s, total: 0.05 s Wall time: 0.05 sage: time b = S(Qp([3,2,1])) CPU times: user 0.16 s, sys: 0.00 s, total: 0.16 s Wall time: 0.15 sage: time b = S(Qp([3,3,2,1])) CPU times: user 0.87 s, sys: 0.03 s, total: 0.90 s Wall time: 0.89 sage: time b = S(Qp([2,2])) CPU times: user 0.02 s, sys: 0.00 s, total: 0.02 s Wall time: 0.02 sage: time b = S(Qp([3,2,1])) CPU times: user 0.02 s, sys: 0.00 s, total: 0.03 s Wall time: 0.03 sage: time b = S(Qp([3,3,2,1])) CPU times: user 0.07 s, sys: 0.00 s, total: 0.07 s Wall time: 0.07 sage: b s[3, 3, 2, 1] + t*s[3, 3, 3] + t*s[4, 2, 2, 1] + (t^2+t)*s[4, 3, 1, 1] + (t^3+2*t^2+t)*s[4, 3, 2] + (t^4+t^3+t^2)*s[4, 4, 1] + (t^3+t^2)*s[5, 2, 1, 1] + (t^4+t^3+t^2)*s[5, 2, 2] + (t^5+2*t^4+3*t^3+t^2)*s[5, 3, 1] + (t^6+t^5+t^4+t^3)*s[5, 4] + t^4*s[6, 1, 1, 1] + (t^6+2*t^5+2*t^4+t^3)*s[6, 2, 1] + (t^7+t^6+2*t^5+2*t^4)*s[6, 3] + (t^7+t^6+t^5)*s[7, 1, 1] + (t^8+t^7+2*t^6+t^5)*s[7, 2] + (t^9+t^8+t^7)*s[8, 1] + t^10*s[9] 
sage: HallLittlewoodP(QQ) HallLittlewood polynomials in the P basis over Fraction Field of Univariate Polynomial Ring in t over Rational Field sage: HallLittlewoodP(QQ, t=1) HallLittlewood polynomials in the P basis with t=1 over Rational Field sage: HLP = HallLittlewoodP(QQ) sage: s = SFASchur(HLP.base_ring()) sage: s(HLP([2,1])) (t^2t)*s[1, 1, 1] + s[2, 1] 
Line 31:  Line 15: 
=== Multiplication === Over ZZ: 
The HallLittlewood polynomials in the P basis at $t = 0$ are the Schur functions. 
Line 35:  Line 17: 
sage: Qp = HallLittlewood_qp(ZZ) sage: time c = Qp([2,2])^2 CPU times: user 0.54 s, sys: 0.01 s, total: 0.55 s Wall time: 0.55 sage: time c = Qp([3,2,1])^2 CPU times: user 11.52 s, sys: 0.24 s, total: 11.76 s Wall time: 11.78 sage: time c = Qp([2,2])^2 CPU times: user 0.21 s, sys: 0.01 s, total: 0.22 s Wall time: 0.22 sage: time c = Qp([3,2,1])^2 CPU times: user 1.16 s, sys: 0.02 s, total: 1.18 s Wall time: 1.18 
sage: HLP = HallLittlewoodP(QQ,t=0) sage: s = SFASchur(HLP.base_ring()) sage: s(HLP([2,1])) == s([2,1]) True 
Line 50:  Line 23: 
Over QQ:  The HallLittlewood polynomials in the P basis at $t = 1$ are the monomial symmetric functions. {{{ sage: HLP = HallLittlewoodP(QQ,t=1) sage: m = SFAMonomial(HLP.base_ring()) sage: m(HLP([2,2,1])) == m([2,2,1]) True }}} 
Line 52:  Line 31: 
== Q basis == The Q basis is dual to the P basis with respect to the HallLittlewood scalar product $<,>_t$. 

Line 53:  Line 34: 
sage: Qp = HallLittlewood_qp(QQ) sage: time c = Qp([2,2])^2 CPU times: user 0.77 s, sys: 0.01 s, total: 0.78 s Wall time: 0.78 sage: time c = Qp([3,2,1])^2 CPU times: user 14.00 s, sys: 0.24 s, total: 14.24 s Wall time: 14.26 sage: time c = Qp([2,2])^2 CPU times: user 0.55 s, sys: 0.01 s, total: 0.56 s Wall time: 0.56 sage: time c = Qp([3,2,1])^2 CPU times: user 3.57 s, sys: 0.08 s, total: 3.65 s Wall time: 3.66 
sage: HallLittlewoodQ(QQ) HallLittlewood polynomials in the Q basis over Fraction Field of Univariate Polynomial Ring in t over Rational Field sage: HallLittlewoodQ(QQ, t=1) HallLittlewood polynomials in the Q basis with t=1 over Rational Field 
Line 67:  Line 39: 
The majority of time spent in the last computation is due to coercion from ZZ['t'] to QQ('t') (which should really be much faster).  
Line 69:  Line 40: 
== Qp basis == The Qp basis is dual to the P basis with respect to the standard Hall scalar product. {{{ sage: HallLittlewoodQp(QQ) HallLittlewood polynomials in the Qp basis over Fraction Field of Univariate Polynomial Ring in t over Rational Field sage: HallLittlewoodQp(QQ, t=1) HallLittlewood polynomials in the Qp basis with t=1 over Rational Field }}} {{{ 

Line 70:  Line 50: 
Over RR: {{{ sage: Qp = HallLittlewood_qp(RR) sage: time c = Qp([2,2])^2 CPU times: user 0.78 s, sys: 0.01 s, total: 0.78 s Wall time: 0.99 sage: time c = Qp([3,2,1])^2 CPU times: user 13.28 s, sys: 0.33 s, total: 13.61 s Wall time: 13.67 sage: time c = Qp([2,2])^2 CPU times: user 0.44 s, sys: 0.00 s, total: 0.44 s Wall time: 0.44 sage: time c = Qp([3,2,1])^2 CPU times: user 2.88 s, sys: 0.05 s, total: 2.94 s Wall time: 2.95 

Line 87:  Line 51: 
The majority of time spent in the last computation is due to coercion from ZZ['t'] to RR('t') (which should really be much faster). 
HallLittlewood Polynomials
P basis
sage: HallLittlewoodP(QQ) HallLittlewood polynomials in the P basis over Fraction Field of Univariate Polynomial Ring in t over Rational Field sage: HallLittlewoodP(QQ, t=1) HallLittlewood polynomials in the P basis with t=1 over Rational Field sage: HLP = HallLittlewoodP(QQ) sage: s = SFASchur(HLP.base_ring()) sage: s(HLP([2,1])) (t^2t)*s[1, 1, 1] + s[2, 1]
The HallLittlewood polynomials in the P basis at t = 0 are the Schur functions.
sage: HLP = HallLittlewoodP(QQ,t=0) sage: s = SFASchur(HLP.base_ring()) sage: s(HLP([2,1])) == s([2,1]) True
The HallLittlewood polynomials in the P basis at t = 1 are the monomial symmetric functions.
sage: HLP = HallLittlewoodP(QQ,t=1) sage: m = SFAMonomial(HLP.base_ring()) sage: m(HLP([2,2,1])) == m([2,2,1]) True
Q basis
The Q basis is dual to the P basis with respect to the HallLittlewood scalar product <,>_t.
sage: HallLittlewoodQ(QQ) HallLittlewood polynomials in the Q basis over Fraction Field of Univariate Polynomial Ring in t over Rational Field sage: HallLittlewoodQ(QQ, t=1) HallLittlewood polynomials in the Q basis with t=1 over Rational Field
Qp basis
The Qp basis is dual to the P basis with respect to the standard Hall scalar product.
sage: HallLittlewoodQp(QQ) HallLittlewood polynomials in the Qp basis over Fraction Field of Univariate Polynomial Ring in t over Rational Field sage: HallLittlewoodQp(QQ, t=1) HallLittlewood polynomials in the Qp basis with t=1 over Rational Field