Robust -- an optional argument for specifying the algorithm for calculating higherSpechtPolynomials

Description

This optional argument decides between two ways to calculate higherSpechtPolynomials. If it is set to to true then a calculation involving the row and column stabilizers is used. If it is set to false then another strategy is used. This strategy is based on a representation of higher specht polynomials as a multiplication of simpler Specht polynomials and Schur polynomials.

 i1 : R = QQ[x_1..x_4] o1 = R o1 : PolynomialRing i2 : p = new Partition from {2,2} o2 = Partition{2, 2} o2 : Partition i3 : S = youngTableau(p,{0,2,1,3}) o3 = | 0 2 | | 1 3 | o3 : YoungTableau i4 : T = youngTableau(p,{0,1,2,3}) o4 = | 0 1 | | 2 3 | o4 : YoungTableau i5 : higherSpechtPolynomial(S,T,R,Robust => true) 2 2 2 2 2 2 2 2 o5 = x x x - x x x + x x x - x x x - x x x + x x x - x x x + x x x 1 2 3 1 2 3 1 2 4 1 3 4 2 3 4 1 3 4 1 2 4 2 3 4 o5 : R i6 : higherSpechtPolynomial(S,T,R,Robust => false) 2 2 2 2 2 2 2 2 o6 = x x x - x x x + x x x - x x x - x x x + x x x - x x x + x x x 1 2 3 1 2 3 1 2 4 1 3 4 2 3 4 1 3 4 1 2 4 2 3 4 o6 : R

This option is used mainly to check that the alternative algorithm proposed was correct.