//This is the ideal Fourier invariants. ring rQ = 0, (q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12,q13,q14,q15,q16,q17,q18,q19), dp; ideal Invariants = q17*q18-q16*q19, q13*q18-q12*q19, q11*q18-q10*q19, q7*q18-q6*q19, q6*q18-q5*q19, q3*q18-q2*q19, q15*q17-q14*q19, q12*q17-q11*q19, q10*q17-q9*q19, q5*q17-q4*q19, q4*q17-q3*q19, q16^2-q15*q19, q15*q16-q14*q18, q13*q16-q11*q19, q12*q16-q10*q19, q11*q16-q9*q19, q10*q16-q9*q18, q9*q16-q8*q19, q7*q16-q6*q17, q6*q16-q4*q19, q5*q16-q4*q18, q4*q16-q2*q19, q3*q16-q2*q17, q13*q15-q9*q19, q12*q15-q9*q18, q11*q15-q8*q19, q10*q15-q8*q18, q9*q15-q8*q16, q7*q15-q3*q19, q6*q15-q2*q19, q5*q15-q2*q18, q4*q15-q2*q16, q3*q15-q1*q19, q2*q15-q1*q18, q13*q14-q9*q17, q12*q14-q8*q19, q11*q14-q8*q17, q10*q14-q8*q16, q7*q14-q3*q17, q6*q14-q2*q17, q5*q14-q2*q16, q4*q14-q1*q19, q3*q14-q1*q17, q2*q14-q1*q16, q11*q12-q10*q13, q7*q12-q6*q13, q6*q12-q5*q13, q3*q12-q2*q13, q11^2-q9*q13, q10*q11-q9*q12, q9*q11-q8*q13, q6*q11-q4*q13, q5*q11-q4*q12, q4*q11-q2*q13, q9*q10-q8*q12, q7*q10-q4*q13, q6*q10-q4*q12, q4*q10-q2*q12, q3*q10-q2*q11, q9^2-q8*q11, q7*q9-q3*q13, q6*q9-q2*q13, q5*q9-q2*q12, q4*q9-q2*q11, q3*q9-q1*q13, q2*q9-q1*q12, q7*q8-q3*q11, q6*q8-q2*q11, q5*q8-q2*q10, q4*q8-q1*q12, q3*q8-q1*q11, q2*q8-q1*q10, q6^2-q5*q7, q3*q6-q2*q7, q3*q5-q2*q6, q4^2-q2*q6, q3^2-q1*q7, q2*q3-q1*q6, q2^2-q1*q5; // This is the inverse of the Fourier transform. matrix ptoq[22][19] = 1/256,3/64,3/128,3/32,1/32,3/64,1/256,1/32,3/32,1/8,3/32,1/8,1/32,1/64,3/64,3/32,1/64,1/32,3/64, 1/32,3/16,0,0,0,-3/16,-1/32,3/16,3/16,1/4,-3/16,-1/4,-3/16,1/16,3/16,0,-1/16,0,-3/16, 1/64,0,3/32,0,-1/8,0,1/64,1/16,3/16,-1/4,3/16,-1/4,1/16,1/16,0,0,1/16,-1/8,0, 3/64,3/16,-3/32,-3/8,0,3/16,3/64,3/16,-3/16,0,-3/16,0,3/16,0,0,0,0,0,0, 3/32,-3/16,0,0,0,3/16,-3/32,3/16,3/16,-3/4,-3/16,3/4,-3/16,3/16,-3/16,0,-3/16,0,3/16, 3/64,0,-3/32,0,0,0,3/64,3/16,-3/16,0,-3/16,0,3/16,0,3/16,-3/8,0,0,3/16, 3/128,-3/32,9/64,-3/16,3/16,-3/32,3/128,0,0,0,0,0,0,3/32,-3/32,-3/16,3/32,3/16,-3/32, 1/32,3/16,0,0,0,-3/16,-1/32,1/16,-3/16,0,3/16,0,-1/16,-1/16,-3/16,0,1/16,0,3/16, 3/32,0,-3/16,0,0,0,3/32,0,0,0,0,0,0,0,-3/8,3/4,0,0,-3/8, 3/32,-3/16,0,0,0,3/16,-3/32,3/16,-9/16,0,9/16,0,-3/16,-3/16,3/16,0,3/16,0,-3/16, 3/32,-3/16,0,0,0,3/16,-3/32,-3/16,-3/16,3/4,3/16,-3/4,3/16,3/16,-3/16,0,-3/16,0,3/16, 3/32,-3/8,-3/16,3/4,0,-3/8,3/32,0,0,0,0,0,0,0,0,0,0,0,0, 1/64,0,3/32,0,-1/8,0,1/64,-1/16,-3/16,1/4,-3/16,1/4,-1/16,1/16,0,0,1/16,-1/8,0, 1/128,3/32,3/64,3/16,1/16,3/32,1/128,0,0,0,0,0,0,-1/32,-3/32,-3/16,-1/32,-1/16,-3/32, 1/32,3/16,0,0,0,-3/16,-1/32,-1/16,3/16,0,-3/16,0,1/16,-1/16,-3/16,0,1/16,0,3/16, 1/32,0,3/16,0,-1/4,0,1/32,0,0,0,0,0,0,-1/8,0,0,-1/8,1/4,0, 3/64,3/16,-3/32,-3/8,0,3/16,3/64,-3/16,3/16,0,3/16,0,-3/16,0,0,0,0,0,0, 3/32,-3/16,0,0,0,3/16,-3/32,-3/16,9/16,0,-9/16,0,3/16,-3/16,3/16,0,3/16,0,-3/16, 3/128,-3/32,9/64,-3/16,3/16,-3/32,3/128,0,0,0,0,0,0,-3/32,3/32,3/16,-3/32,-3/16,3/32, 1/32,3/16,0,0,0,-3/16,-1/32,-3/16,-3/16,-1/4,3/16,1/4,3/16,1/16,3/16,0,-1/16,0,-3/16, 3/64,0,-3/32,0,0,0,3/64,-3/16,3/16,0,3/16,0,-3/16,0,3/16,-3/8,0,0,3/16, 1/256,3/64,3/128,3/32,1/32,3/64,1/256,-1/32,-3/32,-1/8,-3/32,-1/8,-1/32,1/64,3/64,3/32,1/64,1/32,3/64; // This is the ring of probability distributions. ring rP = 0,(p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,p16,p17,p18,p19,p20,p21,p22),dp; //This is the Fourier transform. matrix qtop[19][22] = 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1/2,0,1/3,-1/6,0,-1/3,1/2,0,-1/6,-1/6,-1/3,0,1,1/2,0,1/3,-1/6,-1/3,1/2,0,1, 1,0,1,-1/3,0,-1/3,1,0,-1/3,0,0,-1/3,1,1,0,1,-1/3,0,1,0,-1/3,1, 1,0,0,-1/3,0,0,-1/3,0,0,0,0,1/3,0,1,0,0,-1/3,0,-1/3,0,0,1, 1,0,-1,0,0,0,1,0,0,0,0,0,-1,1,0,-1,0,0,1,0,0,1, 1,-1/2,0,1/3,1/6,0,-1/3,-1/2,0,1/6,1/6,-1/3,0,1,-1/2,0,1/3,1/6,-1/3,-1/2,0,1, 1,-1,1,1,-1,1,1,-1,1,-1,-1,1,1,1,-1,1,1,-1,1,-1,1,1, 1,3/4,1/2,1/2,1/4,1/2,0,1/4,0,1/4,-1/4,0,-1/2,0,-1/4,0,-1/2,-1/4,0,-3/4,-1/2,-1, 1,1/4,1/2,-1/6,1/12,-1/6,0,-1/4,0,-1/4,-1/12,0,-1/2,0,1/4,0,1/6,1/4,0,-1/4,1/6,-1, 1,1/4,-1/2,0,-1/4,0,0,0,0,0,1/4,0,1/2,0,0,0,0,0,0,-1/4,0,-1, 1,-1/4,1/2,-1/6,-1/12,-1/6,0,1/4,0,1/4,1/12,0,-1/2,0,-1/4,0,1/6,-1/4,0,1/4,1/6,-1, 1,-1/4,-1/2,0,1/4,0,0,0,0,0,-1/4,0,1/2,0,0,0,0,0,0,1/4,0,-1, 1,-3/4,1/2,1/2,-1/4,1/2,0,-1/4,0,-1/4,1/4,0,-1/2,0,1/4,0,-1/2,1/4,0,3/4,-1/2,-1, 1,1/2,1,0,1/2,0,1,-1/2,0,-1/2,1/2,0,1,-1,-1/2,-1,0,-1/2,-1,1/2,0,1, 1,1/2,0,0,-1/6,1/3,-1/3,-1/2,-1/3,1/6,-1/6,0,0,-1,-1/2,0,0,1/6,1/3,1/2,1/3,1, 1,0,0,0,0,-1/3,-1/3,0,1/3,0,0,0,0,-1,0,0,0,0,1/3,0,-1/3,1, 1,-1/2,1,0,-1/2,0,1,1/2,0,1/2,-1/2,0,1,-1,1/2,-1,0,1/2,-1,-1/2,0,1, 1,0,-1,0,0,0,1,0,0,0,0,0,-1,-1,0,1,0,0,-1,0,0,1, 1,-1/2,0,0,1/6,1/3,-1/3,1/2,-1/3,-1/6,1/6,0,0,-1,1/2,0,0,-1/6,1/3,-1/2,1/3,1; ideal Fourier = qtop*transpose(maxideal(1)); // This is the list of polynomial invariants. map F = rQ, Fourier; ideal PInvariants = F(Invariants); // This is the polynomial parametrization. ring r = 0,(b0,b1,b2,f0,f1,f2),dp; ideal P = b0^2*f0^5+2*b0^2*f1^5+b0^2*f2^5+4*b0*b1*f0^4*f1+4*b0*b1*f0*f1^4+4*b0*b1*f1^4*f2+4*b0*b1*f1*f2^4+2*b0*b2*f0^4*f2+2*b0*b2*f0*f2^4+4*b0*b2*f1^5+2*b1^2*f0^5+2*b1^2*f0^4*f2+2*b1^2*f0*f2^4+8*b1^2*f1^5+2*b1^2*f2^5+4*b1*b2*f0^4*f1+4*b1*b2*f0*f1^4+4*b1*b2*f1^4*f2+4*b1*b2*f1*f2^4+b2^2*f0^5+2*b2^2*f1^5+b2^2*f2^5, 8*b0^2*f0^4*f1+8*b0^2*f0*f1^4+8*b0^2*f1^4*f2+8*b0^2*f1*f2^4+32*b0*b1*f0^3*f1^2+16*b0*b1*f0^2*f1^3+32*b0*b1*f0*f1^3*f2+16*b0*b1*f1^3*f2^2+32*b0*b1*f1^2*f2^3+16*b0*b2*f0^3*f1*f2+16*b0*b2*f0*f1^4+16*b0*b2*f0*f1*f2^3+16*b0*b2*f1^4*f2+16*b1^2*f0^4*f1+16*b1^2*f0^3*f1*f2+32*b1^2*f0*f1^4+16*b1^2*f0*f1*f2^3+32*b1^2*f1^4*f2+16*b1^2*f1*f2^4+32*b1*b2*f0^3*f1^2+16*b1*b2*f0^2*f1^3+32*b1*b2*f0*f1^3*f2+16*b1*b2*f1^3*f2^2+32*b1*b2*f1^2*f2^3+8*b2^2*f0^4*f1+8*b2^2*f0*f1^4+8*b2^2*f1^4*f2+8*b2^2*f1*f2^4, 4*b0^2*f0^4*f2+4*b0^2*f0*f2^4+8*b0^2*f1^5+16*b0*b1*f0^3*f1*f2+16*b0*b1*f0*f1^4+16*b0*b1*f0*f1*f2^3+16*b0*b1*f1^4*f2+8*b0*b2*f0^3*f2^2+8*b0*b2*f0^2*f2^3+16*b0*b2*f1^5+8*b1^2*f0^4*f2+8*b1^2*f0^3*f2^2+8*b1^2*f0^2*f2^3+8*b1^2*f0*f2^4+32*b1^2*f1^5+16*b1*b2*f0^3*f1*f2+16*b1*b2*f0*f1^4+16*b1*b2*f0*f1*f2^3+16*b1*b2*f1^4*f2+4*b2^2*f0^4*f2+4*b2^2*f0*f2^4+8*b2^2*f1^5, 12*b0^2*f0^3*f1^2+12*b0^2*f0^2*f1^3+12*b0^2*f1^3*f2^2+12*b0^2*f1^2*f2^3+24*b0*b1*f0^3*f1^2+48*b0*b1*f0^2*f1^3+24*b0*b1*f0^2*f1^2*f2+24*b0*b1*f0*f1^2*f2^2+48*b0*b1*f1^3*f2^2+24*b0*b1*f1^2*f2^3+24*b0*b2*f0^2*f1^3+24*b0*b2*f0^2*f1^2*f2+24*b0*b2*f0*f1^2*f2^2+24*b0*b2*f1^3*f2^2+24*b1^2*f0^3*f1^2+48*b1^2*f0^2*f1^3+24*b1^2*f0^2*f1^2*f2+24*b1^2*f0*f1^2*f2^2+48*b1^2*f1^3*f2^2+24*b1^2*f1^2*f2^3+24*b1*b2*f0^3*f1^2+48*b1*b2*f0^2*f1^3+24*b1*b2*f0^2*f1^2*f2+24*b1*b2*f0*f1^2*f2^2+48*b1*b2*f1^3*f2^2+24*b1*b2*f1^2*f2^3+12*b2^2*f0^3*f1^2+12*b2^2*f0^2*f1^3+12*b2^2*f1^3*f2^2+12*b2^2*f1^2*f2^3, 24*b0^2*f0^3*f1*f2+24*b0^2*f0*f1^4+24*b0^2*f0*f1*f2^3+24*b0^2*f1^4*f2+48*b0*b1*f0^2*f1^3+96*b0*b1*f0^2*f1^2*f2+96*b0*b1*f0*f1^3*f2+96*b0*b1*f0*f1^2*f2^2+48*b0*b1*f1^3*f2^2+96*b0*b2*f0^2*f1*f2^2+48*b0*b2*f0*f1^4+48*b0*b2*f1^4*f2+48*b1^2*f0^3*f1*f2+96*b1^2*f0^2*f1*f2^2+96*b1^2*f0*f1^4+48*b1^2*f0*f1*f2^3+96*b1^2*f1^4*f2+48*b1*b2*f0^2*f1^3+96*b1*b2*f0^2*f1^2*f2+96*b1*b2*f0*f1^3*f2+96*b1*b2*f0*f1^2*f2^2+48*b1*b2*f1^3*f2^2+24*b2^2*f0^3*f1*f2+24*b2^2*f0*f1^4+24*b2^2*f0*f1*f2^3+24*b2^2*f1^4*f2, 12*b0^2*f0^3*f1^2+24*b0^2*f0*f1^3*f2+12*b0^2*f1^2*f2^3+48*b0*b1*f0^2*f1^3+48*b0*b1*f0^2*f1^2*f2+48*b0*b1*f0*f1^2*f2^2+48*b0*b1*f1^3*f2^2+24*b0*b2*f0^2*f1^2*f2+48*b0*b2*f0*f1^3*f2+24*b0*b2*f0*f1^2*f2^2+24*b1^2*f0^3*f1^2+24*b1^2*f0^2*f1^2*f2+96*b1^2*f0*f1^3*f2+24*b1^2*f0*f1^2*f2^2+24*b1^2*f1^2*f2^3+48*b1*b2*f0^2*f1^3+48*b1*b2*f0^2*f1^2*f2+48*b1*b2*f0*f1^2*f2^2+48*b1*b2*f1^3*f2^2+12*b2^2*f0^3*f1^2+24*b2^2*f0*f1^3*f2+12*b2^2*f1^2*f2^3, 6*b0^2*f0^3*f2^2+6*b0^2*f0^2*f2^3+12*b0^2*f1^5+48*b0*b1*f0^2*f1*f2^2+24*b0*b1*f0*f1^4+24*b0*b1*f1^4*f2+12*b0*b2*f0^3*f2^2+12*b0*b2*f0^2*f2^3+24*b0*b2*f1^5+24*b1^2*f0^3*f2^2+24*b1^2*f0^2*f2^3+48*b1^2*f1^5+48*b1*b2*f0^2*f1*f2^2+24*b1*b2*f0*f1^4+24*b1*b2*f1^4*f2+6*b2^2*f0^3*f2^2+6*b2^2*f0^2*f2^3+12*b2^2*f1^5, 8*b0^2*f0^3*f1^2+8*b0^2*f0^2*f1^3+8*b0^2*f1^3*f2^2+8*b0^2*f1^2*f2^3+16*b0*b1*f0^4*f1+16*b0*b1*f0^3*f1*f2+32*b0*b1*f0*f1^4+16*b0*b1*f0*f1*f2^3+32*b0*b1*f1^4*f2+16*b0*b1*f1*f2^4+16*b0*b2*f0^3*f1^2+32*b0*b2*f0*f1^3*f2+16*b0*b2*f1^2*f2^3+32*b1^2*f0^3*f1^2+16*b1^2*f0^2*f1^3+32*b1^2*f0*f1^3*f2+16*b1^2*f1^3*f2^2+32*b1^2*f1^2*f2^3+16*b1*b2*f0^4*f1+16*b1*b2*f0^3*f1*f2+32*b1*b2*f0*f1^4+16*b1*b2*f0*f1*f2^3+32*b1*b2*f1^4*f2+16*b1*b2*f1*f2^4+8*b2^2*f0^3*f1^2+8*b2^2*f0^2*f1^3+8*b2^2*f1^3*f2^2+8*b2^2*f1^2*f2^3, 24*b0^2*f0^2*f1^3+24*b0^2*f0^2*f1^2*f2+24*b0^2*f0*f1^2*f2^2+24*b0^2*f1^3*f2^2+48*b0*b1*f0^3*f1^2+48*b0*b1*f0^2*f1^2*f2+192*b0*b1*f0*f1^3*f2+48*b0*b1*f0*f1^2*f2^2+48*b0*b1*f1^2*f2^3+48*b0*b2*f0^2*f1^3+48*b0*b2*f0^2*f1^2*f2+48*b0*b2*f0*f1^2*f2^2+48*b0*b2*f1^3*f2^2+96*b1^2*f0^2*f1^3+96*b1^2*f0^2*f1^2*f2+96*b1^2*f0*f1^2*f2^2+96*b1^2*f1^3*f2^2+48*b1*b2*f0^3*f1^2+48*b1*b2*f0^2*f1^2*f2+192*b1*b2*f0*f1^3*f2+48*b1*b2*f0*f1^2*f2^2+48*b1*b2*f1^2*f2^3+24*b2^2*f0^2*f1^3+24*b2^2*f0^2*f1^2*f2+24*b2^2*f0*f1^2*f2^2+24*b2^2*f1^3*f2^2, 24*b0^2*f0^2*f1^3+24*b0^2*f0^2*f1^2*f2+24*b0^2*f0*f1^2*f2^2+24*b0^2*f1^3*f2^2+48*b0*b1*f0^3*f1*f2+96*b0*b1*f0^2*f1*f2^2+96*b0*b1*f0*f1^4+48*b0*b1*f0*f1*f2^3+96*b0*b1*f1^4*f2+48*b0*b2*f0^2*f1^2*f2+96*b0*b2*f0*f1^3*f2+48*b0*b2*f0*f1^2*f2^2+48*b1^2*f0^2*f1^3+96*b1^2*f0^2*f1^2*f2+96*b1^2*f0*f1^3*f2+96*b1^2*f0*f1^2*f2^2+48*b1^2*f1^3*f2^2+48*b1*b2*f0^3*f1*f2+96*b1*b2*f0^2*f1*f2^2+96*b1*b2*f0*f1^4+48*b1*b2*f0*f1*f2^3+96*b1*b2*f1^4*f2+24*b2^2*f0^2*f1^3+24*b2^2*f0^2*f1^2*f2+24*b2^2*f0*f1^2*f2^2+24*b2^2*f1^3*f2^2, 48*b0^2*f0^2*f1*f2^2+24*b0^2*f0*f1^4+24*b0^2*f1^4*f2+48*b0*b1*f0^2*f1^3+96*b0*b1*f0^2*f1^2*f2+96*b0*b1*f0*f1^3*f2+96*b0*b1*f0*f1^2*f2^2+48*b0*b1*f1^3*f2^2+48*b0*b2*f0^3*f1*f2+48*b0*b2*f0*f1^4+48*b0*b2*f0*f1*f2^3+48*b0*b2*f1^4*f2+48*b1^2*f0^3*f1*f2+96*b1^2*f0^2*f1*f2^2+96*b1^2*f0*f1^4+48*b1^2*f0*f1*f2^3+96*b1^2*f1^4*f2+48*b1*b2*f0^2*f1^3+96*b1*b2*f0^2*f1^2*f2+96*b1*b2*f0*f1^3*f2+96*b1*b2*f0*f1^2*f2^2+48*b1*b2*f1^3*f2^2+48*b2^2*f0^2*f1*f2^2+24*b2^2*f0*f1^4+24*b2^2*f1^4*f2, 24*b0^2*f0^2*f1^2*f2+48*b0^2*f0*f1^3*f2+24*b0^2*f0*f1^2*f2^2+96*b0*b1*f0^2*f1^2*f2+192*b0*b1*f0*f1^3*f2+96*b0*b1*f0*f1^2*f2^2+48*b0*b2*f0^2*f1^2*f2+96*b0*b2*f0*f1^3*f2+48*b0*b2*f0*f1^2*f2^2+96*b1^2*f0^2*f1^2*f2+192*b1^2*f0*f1^3*f2+96*b1^2*f0*f1^2*f2^2+96*b1*b2*f0^2*f1^2*f2+192*b1*b2*f0*f1^3*f2+96*b1*b2*f0*f1^2*f2^2+24*b2^2*f0^2*f1^2*f2+48*b2^2*f0*f1^3*f2+24*b2^2*f0*f1^2*f2^2, 4*b0^2*f0^3*f2^2+4*b0^2*f0^2*f2^3+8*b0^2*f1^5+16*b0*b1*f0^3*f1*f2+16*b0*b1*f0*f1^4+16*b0*b1*f0*f1*f2^3+16*b0*b1*f1^4*f2+8*b0*b2*f0^4*f2+8*b0*b2*f0*f2^4+16*b0*b2*f1^5+8*b1^2*f0^4*f2+8*b1^2*f0^3*f2^2+8*b1^2*f0^2*f2^3+8*b1^2*f0*f2^4+32*b1^2*f1^5+16*b1*b2*f0^3*f1*f2+16*b1*b2*f0*f1^4+16*b1*b2*f0*f1*f2^3+16*b1*b2*f1^4*f2+4*b2^2*f0^3*f2^2+4*b2^2*f0^2*f2^3+8*b2^2*f1^5, 2*b0^2*f0^4*f1+2*b0^2*f0*f1^4+2*b0^2*f1^4*f2+2*b0^2*f1*f2^4+4*b0*b1*f0^5+4*b0*b1*f0^4*f2+4*b0*b1*f0*f2^4+16*b0*b1*f1^5+4*b0*b1*f2^5+4*b0*b2*f0^4*f1+4*b0*b2*f0*f1^4+4*b0*b2*f1^4*f2+4*b0*b2*f1*f2^4+8*b1^2*f0^4*f1+8*b1^2*f0*f1^4+8*b1^2*f1^4*f2+8*b1^2*f1*f2^4+4*b1*b2*f0^5+4*b1*b2*f0^4*f2+4*b1*b2*f0*f2^4+16*b1*b2*f1^5+4*b1*b2*f2^5+2*b2^2*f0^4*f1+2*b2^2*f0*f1^4+2*b2^2*f1^4*f2+2*b2^2*f1*f2^4, 8*b0^2*f0^3*f1^2+16*b0^2*f0*f1^3*f2+8*b0^2*f1^2*f2^3+16*b0*b1*f0^4*f1+16*b0*b1*f0^3*f1*f2+32*b0*b1*f0*f1^4+16*b0*b1*f0*f1*f2^3+32*b0*b1*f1^4*f2+16*b0*b1*f1*f2^4+16*b0*b2*f0^3*f1^2+16*b0*b2*f0^2*f1^3+16*b0*b2*f1^3*f2^2+16*b0*b2*f1^2*f2^3+32*b1^2*f0^3*f1^2+16*b1^2*f0^2*f1^3+32*b1^2*f0*f1^3*f2+16*b1^2*f1^3*f2^2+32*b1^2*f1^2*f2^3+16*b1*b2*f0^4*f1+16*b1*b2*f0^3*f1*f2+32*b1*b2*f0*f1^4+16*b1*b2*f0*f1*f2^3+32*b1*b2*f1^4*f2+16*b1*b2*f1*f2^4+8*b2^2*f0^3*f1^2+16*b2^2*f0*f1^3*f2+8*b2^2*f1^2*f2^3, 8*b0^2*f0^3*f1*f2+8*b0^2*f0*f1^4+8*b0^2*f0*f1*f2^3+8*b0^2*f1^4*f2+16*b0*b1*f0^4*f2+16*b0*b1*f0^3*f2^2+16*b0*b1*f0^2*f2^3+16*b0*b1*f0*f2^4+64*b0*b1*f1^5+16*b0*b2*f0^3*f1*f2+16*b0*b2*f0*f1^4+16*b0*b2*f0*f1*f2^3+16*b0*b2*f1^4*f2+32*b1^2*f0^3*f1*f2+32*b1^2*f0*f1^4+32*b1^2*f0*f1*f2^3+32*b1^2*f1^4*f2+16*b1*b2*f0^4*f2+16*b1*b2*f0^3*f2^2+16*b1*b2*f0^2*f2^3+16*b1*b2*f0*f2^4+64*b1*b2*f1^5+8*b2^2*f0^3*f1*f2+8*b2^2*f0*f1^4+8*b2^2*f0*f1*f2^3+8*b2^2*f1^4*f2, 12*b0^2*f0^2*f1^3+12*b0^2*f0^2*f1^2*f2+12*b0^2*f0*f1^2*f2^2+12*b0^2*f1^3*f2^2+24*b0*b1*f0^3*f1^2+48*b0*b1*f0^2*f1^3+24*b0*b1*f0^2*f1^2*f2+24*b0*b1*f0*f1^2*f2^2+48*b0*b1*f1^3*f2^2+24*b0*b1*f1^2*f2^3+24*b0*b2*f0^3*f1^2+24*b0*b2*f0^2*f1^3+24*b0*b2*f1^3*f2^2+24*b0*b2*f1^2*f2^3+24*b1^2*f0^3*f1^2+48*b1^2*f0^2*f1^3+24*b1^2*f0^2*f1^2*f2+24*b1^2*f0*f1^2*f2^2+48*b1^2*f1^3*f2^2+24*b1^2*f1^2*f2^3+24*b1*b2*f0^3*f1^2+48*b1*b2*f0^2*f1^3+24*b1*b2*f0^2*f1^2*f2+24*b1*b2*f0*f1^2*f2^2+48*b1*b2*f1^3*f2^2+24*b1*b2*f1^2*f2^3+12*b2^2*f0^2*f1^3+12*b2^2*f0^2*f1^2*f2+12*b2^2*f0*f1^2*f2^2+12*b2^2*f1^3*f2^2, 24*b0^2*f0^2*f1^2*f2+48*b0^2*f0*f1^3*f2+24*b0^2*f0*f1^2*f2^2+48*b0*b1*f0^3*f1*f2+96*b0*b1*f0^2*f1*f2^2+96*b0*b1*f0*f1^4+48*b0*b1*f0*f1*f2^3+96*b0*b1*f1^4*f2+48*b0*b2*f0^2*f1^3+48*b0*b2*f0^2*f1^2*f2+48*b0*b2*f0*f1^2*f2^2+48*b0*b2*f1^3*f2^2+48*b1^2*f0^2*f1^3+96*b1^2*f0^2*f1^2*f2+96*b1^2*f0*f1^3*f2+96*b1^2*f0*f1^2*f2^2+48*b1^2*f1^3*f2^2+48*b1*b2*f0^3*f1*f2+96*b1*b2*f0^2*f1*f2^2+96*b1*b2*f0*f1^4+48*b1*b2*f0*f1*f2^3+96*b1*b2*f1^4*f2+24*b2^2*f0^2*f1^2*f2+48*b2^2*f0*f1^3*f2+24*b2^2*f0*f1^2*f2^2, 12*b0^2*f0^2*f1*f2^2+6*b0^2*f0*f1^4+6*b0^2*f1^4*f2+24*b0*b1*f0^3*f2^2+24*b0*b1*f0^2*f2^3+48*b0*b1*f1^5+24*b0*b2*f0^2*f1*f2^2+12*b0*b2*f0*f1^4+12*b0*b2*f1^4*f2+48*b1^2*f0^2*f1*f2^2+24*b1^2*f0*f1^4+24*b1^2*f1^4*f2+24*b1*b2*f0^3*f2^2+24*b1*b2*f0^2*f2^3+48*b1*b2*f1^5+12*b2^2*f0^2*f1*f2^2+6*b2^2*f0*f1^4+6*b2^2*f1^4*f2, 8*b0^2*f0^3*f1*f2+8*b0^2*f0*f1^4+8*b0^2*f0*f1*f2^3+8*b0^2*f1^4*f2+32*b0*b1*f0^3*f1^2+16*b0*b1*f0^2*f1^3+32*b0*b1*f0*f1^3*f2+16*b0*b1*f1^3*f2^2+32*b0*b1*f1^2*f2^3+16*b0*b2*f0^4*f1+16*b0*b2*f0*f1^4+16*b0*b2*f1^4*f2+16*b0*b2*f1*f2^4+16*b1^2*f0^4*f1+16*b1^2*f0^3*f1*f2+32*b1^2*f0*f1^4+16*b1^2*f0*f1*f2^3+32*b1^2*f1^4*f2+16*b1^2*f1*f2^4+32*b1*b2*f0^3*f1^2+16*b1*b2*f0^2*f1^3+32*b1*b2*f0*f1^3*f2+16*b1*b2*f1^3*f2^2+32*b1*b2*f1^2*f2^3+8*b2^2*f0^3*f1*f2+8*b2^2*f0*f1^4+8*b2^2*f0*f1*f2^3+8*b2^2*f1^4*f2, 12*b0^2*f0^2*f1^2*f2+24*b0^2*f0*f1^3*f2+12*b0^2*f0*f1^2*f2^2+48*b0*b1*f0^2*f1^3+48*b0*b1*f0^2*f1^2*f2+48*b0*b1*f0*f1^2*f2^2+48*b0*b1*f1^3*f2^2+24*b0*b2*f0^3*f1^2+48*b0*b2*f0*f1^3*f2+24*b0*b2*f1^2*f2^3+24*b1^2*f0^3*f1^2+24*b1^2*f0^2*f1^2*f2+96*b1^2*f0*f1^3*f2+24*b1^2*f0*f1^2*f2^2+24*b1^2*f1^2*f2^3+48*b1*b2*f0^2*f1^3+48*b1*b2*f0^2*f1^2*f2+48*b1*b2*f0*f1^2*f2^2+48*b1*b2*f1^3*f2^2+12*b2^2*f0^2*f1^2*f2+24*b2^2*f0*f1^3*f2+12*b2^2*f0*f1^2*f2^2, b0^2*f0^4*f2+b0^2*f0*f2^4+2*b0^2*f1^5+4*b0*b1*f0^4*f1+4*b0*b1*f0*f1^4+4*b0*b1*f1^4*f2+4*b0*b1*f1*f2^4+2*b0*b2*f0^5+4*b0*b2*f1^5+2*b0*b2*f2^5+2*b1^2*f0^5+2*b1^2*f0^4*f2+2*b1^2*f0*f2^4+8*b1^2*f1^5+2*b1^2*f2^5+4*b1*b2*f0^4*f1+4*b1*b2*f0*f1^4+4*b1*b2*f1^4*f2+4*b1*b2*f1*f2^4+b2^2*f0^4*f2+b2^2*f0*f2^4+2*b2^2*f1^5; // This checks that the polynomial parametrization // lies on the probability simplex. // It requires suma.sing. Most likely, you should // change the directory where you saved this file. // If you do have this file, you should uncomment // the following two lines. // < "/home/lgp/singular/suma.sing"; // Suma(Substitute(2,P)); // This checks that the PInvariants vanish at // the polynomial parametrization. map Evaluate = rP, P; // The following command takes a lot of space and time to // finish for larger models. // ideal Z = Evaluate(PInvariants); setring rP; ideal Z; int i; for (i=1; i<= size(PInvariants); i++) { i; Z = PInvariants[i]; setring r; Evaluate(Z); setring rP; }