//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,q20,q21,q22,q23,q24,q25,q26,q27),dp; ideal Invariants = q23*q25-q22*q26, q23*q25-q21*q27, q19*q25-q15*q27, q19*q25-q18*q26, q12*q25-q8*q27, q12*q25-q11*q26, q20*q24-q23*q25, q22*q23-q24*q27, q21*q23-q24*q26, q20*q23-q26*q27, q17*q23-q19*q24, q16*q23-q19*q27, q14*q23-q19*q26, q13*q23-q19*q25, q10*q23-q12*q24, q9*q23-q12*q27, q7*q23-q12*q26, q6*q23-q12*q25, q21*q22-q24*q25, q20*q22-q25*q27, q19*q22-q17*q27, q19*q22-q16*q24, q19*q22-q18*q23, q17*q22-q18*q24, q16*q22-q18*q27, q14*q22-q19*q25, q13*q22-q18*q25, q12*q22-q10*q27, q12*q22-q9*q24, q12*q22-q11*q23, q10*q22-q11*q24, q9*q22-q11*q27, q7*q22-q12*q25, q6*q22-q11*q25, q20*q21-q25*q26, q19*q21-q17*q26, q19*q21-q14*q24, q19*q21-q15*q23, q18*q21-q17*q25, q18*q21-q13*q24, q18*q21-q15*q22, q17*q21-q15*q24, q16*q21-q19*q25, q14*q21-q15*q26, q13*q21-q15*q25, q12*q21-q10*q26, q12*q21-q7*q24, q12*q21-q8*q23, q11*q21-q10*q25, q11*q21-q6*q24, q11*q21-q8*q22, q10*q21-q8*q24, q9*q21-q12*q25, q7*q21-q8*q26, q6*q21-q8*q25, q19*q20-q14*q27, q19*q20-q16*q26, q18*q20-q13*q27, q18*q20-q16*q25, q17*q20-q19*q25, q15*q20-q13*q26, q15*q20-q14*q25, q12*q20-q7*q27, q12*q20-q9*q26, q11*q20-q6*q27, q11*q20-q9*q25, q10*q20-q12*q25, q8*q20-q6*q26, q8*q20-q7*q25, q12*q19-q4*q23, q12*q18-q11*q19, q12*q18-q5*q27, q12*q18-q3*q23, q12*q18-q4*q22, q11*q18-q3*q22, q16*q17-q18*q19, q14*q17-q15*q19, q13*q17-q15*q18, q12*q17-q10*q19, q12*q17-q4*q24, q12*q17-q5*q23, q11*q17-q10*q18, q11*q17-q3*q24, q11*q17-q5*q22, q10*q17-q5*q24, q9*q17-q12*q18, q4*q17-q5*q19, q3*q17-q5*q18, q15*q16-q14*q18, q15*q16-q13*q19, q12*q16-q9*q19, q12*q16-q4*q27, q11*q16-q9*q18, q11*q16-q3*q27, q10*q16-q12*q18, q5*q16-q4*q18, q5*q16-q3*q19, q12*q15-q8*q19, q12*q15-q7*q17, q12*q15-q5*q26, q12*q15-q2*q23, q12*q15-q4*q21, q11*q15-q8*q18, q11*q15-q6*q17, q11*q15-q5*q25, q11*q15-q2*q22, q11*q15-q3*q21, q10*q15-q8*q17, q10*q15-q2*q24, q10*q15-q5*q21, q8*q15-q2*q21, q5*q15-q2*q17, q12*q14-q7*q19, q12*q14-q4*q26, q10*q14-q12*q15, q9*q14-q7*q16, q9*q14-q1*q23, q9*q14-q4*q20, q8*q14-q7*q15, q8*q14-q2*q26, q5*q14-q4*q15, q5*q14-q2*q19, q12*q13-q11*q14, q12*q13-q9*q15, q12*q13-q8*q16, q12*q13-q7*q18, q12*q13-q6*q19, q12*q13-q2*q27, q12*q13-q3*q26, q12*q13-q4*q25, q12*q13-q1*q24, q12*q13-q5*q20, q11*q13-q6*q18, q11*q13-q3*q25, q10*q13-q11*q15, q9*q13-q6*q16, q9*q13-q1*q22, q9*q13-q3*q20, q8*q13-q6*q15, q8*q13-q2*q25, q7*q13-q6*q14, q7*q13-q1*q21, q7*q13-q2*q20, q5*q13-q3*q15, q5*q13-q2*q18, q4*q13-q3*q14, q4*q13-q2*q16, q4*q13-q1*q17, q9*q10-q11*q12, q7*q10-q8*q12, q6*q10-q8*q11, q4*q10-q5*q12, q3*q10-q5*q11, q8*q9-q7*q11, q8*q9-q6*q12, q5*q9-q4*q11, q5*q9-q3*q12, q5*q8-q2*q10, q5*q7-q4*q8, q5*q7-q2*q12, q5*q6-q3*q8, q5*q6-q2*q11, q4*q6-q3*q7, q4*q6-q2*q9, q4*q6-q1*q10, q9*q16*q20-q1*q27^2, q7*q14*q20-q1*q26^2, q6*q13*q20-q1*q25^2, q4*q14*q16-q1*q19^2, q3*q13*q16-q1*q18^2, q2*q13*q14-q1*q15^2, q4*q7*q9-q1*q12^2, q3*q6*q9-q1*q11^2, q2*q6*q7-q1*q8^2, q2*q3*q4-q1*q5^2; // This is the inverse of the Fourier transform. matrix ptoq[51][27] = 1/256,3/256,3/256,3/256,3/128,3/256,3/256,3/128,3/256,21/256,3/128,3/128,3/256,3/256,3/128,3/256,21/256,3/128,3/128,3/256,21/256,21/256,21/256,15/64,3/128,3/128,3/128, 3/256,-3/256,-3/256,9/256,-3/128,-3/256,9/256,-3/128,9/256,-21/256,-3/128,9/128,-3/256,9/256,-3/128,9/256,-21/256,-3/128,9/128,9/256,-21/256,-21/256,63/256,-15/64,-3/128,9/128,9/128, 3/256,-3/256,9/256,-3/256,-3/128,9/256,-3/256,-3/128,9/256,-21/256,9/128,-3/128,9/256,-3/256,-3/128,9/256,-21/256,9/128,-3/128,9/256,-21/256,63/256,-21/256,-15/64,9/128,-3/128,9/128, 3/256,9/256,-3/256,-3/256,-3/128,-3/256,-3/256,-3/128,9/256,15/256,-3/128,-3/128,-3/256,-3/256,-3/128,9/256,15/256,-3/128,-3/128,9/256,15/256,-21/256,-21/256,3/64,-3/128,-3/128,9/128, 3/128,-3/128,-3/128,-3/128,3/64,-3/128,-3/128,3/64,9/128,3/128,-3/64,-3/64,-3/128,-3/128,3/64,9/128,3/128,-3/64,-3/64,9/128,3/128,-21/128,-21/128,3/16,-3/64,-3/64,9/64, 3/256,9/256,-3/256,-3/256,-3/128,9/256,9/256,9/128,-3/256,-21/256,-3/128,-3/128,9/256,9/256,9/128,-3/256,-21/256,-3/128,-3/128,9/256,63/256,-21/256,-21/256,-15/64,9/128,9/128,-3/128, 3/256,-3/256,9/256,-3/256,-3/128,-3/256,9/256,-3/128,-3/256,15/256,-3/128,-3/128,-3/256,9/256,-3/128,-3/256,15/256,-3/128,-3/128,9/256,-21/256,15/256,-21/256,3/64,-3/128,9/128,-3/128, 3/128,-3/128,-3/128,-3/128,3/64,-3/128,9/128,-3/64,-3/128,3/128,3/64,-3/64,-3/128,9/128,-3/64,-3/128,3/128,3/64,-3/64,9/128,-21/128,3/128,-21/128,3/16,-3/64,9/64,-3/64, 3/256,-3/256,-3/256,9/256,-3/128,9/256,-3/256,-3/128,-3/256,15/256,-3/128,-3/128,9/256,-3/256,-3/128,-3/256,15/256,-3/128,-3/128,9/256,-21/256,-21/256,15/256,3/64,9/128,-3/128,-3/128, 3/256,9/256,9/256,9/256,9/128,-3/256,-3/256,-3/128,-3/256,-21/256,-3/128,-3/128,-3/256,-3/256,-3/128,-3/256,-21/256,-3/128,-3/128,9/256,15/256,15/256,15/256,3/64,-3/128,-3/128,-3/128, 3/128,-3/128,-3/128,9/128,-3/64,-3/128,-3/128,3/64,-3/128,3/128,3/64,-3/64,-3/128,-3/128,3/64,-3/128,3/128,3/64,-3/64,9/128,3/128,3/128,15/128,-3/32,-3/64,-3/64,-3/64, 3/128,-3/128,-3/128,-3/128,3/64,9/128,-3/128,-3/64,-3/128,3/128,-3/64,3/64,9/128,-3/128,-3/64,-3/128,3/128,-3/64,3/64,9/128,-21/128,-21/128,3/128,3/16,9/64,-3/64,-3/64, 3/128,-3/128,9/128,-3/128,-3/64,-3/128,-3/128,3/64,-3/128,3/128,-3/64,3/64,-3/128,-3/128,3/64,-3/128,3/128,-3/64,3/64,9/128,3/128,15/128,3/128,-3/32,-3/64,-3/64,-3/64, 3/128,9/128,-3/128,-3/128,-3/64,-3/128,-3/128,-3/64,-3/128,3/128,3/64,3/64,-3/128,-3/128,-3/64,-3/128,3/128,3/64,3/64,9/128,15/128,3/128,3/128,-3/32,-3/64,-3/64,-3/64, 3/128,-3/128,-3/128,-3/128,3/64,-3/128,-3/128,3/64,-3/128,-9/128,3/64,3/64,-3/128,-3/128,3/64,-3/128,-9/128,3/64,3/64,9/128,3/128,3/128,3/128,0,-3/64,-3/64,-3/64, 3/256,9/256,9/256,9/256,9/128,-3/256,-3/256,-3/128,-3/256,-21/256,-3/128,-3/128,9/256,9/256,9/128,9/256,63/256,9/128,9/128,-3/256,-21/256,-21/256,-21/256,-15/64,-3/128,-3/128,-3/128, 3/256,-3/256,-3/256,9/256,-3/128,9/256,-3/256,-3/128,-3/256,15/256,-3/128,-3/128,-3/256,9/256,-3/128,9/256,-21/256,-3/128,9/128,-3/256,15/256,15/256,-21/256,3/64,-3/128,-3/128,-3/128, 3/128,-3/128,-3/128,9/128,-3/64,-3/128,-3/128,3/64,-3/128,3/128,3/64,-3/64,-3/128,9/128,-3/64,9/128,-21/128,-3/64,9/64,-3/128,3/128,3/128,-21/128,3/16,3/64,-3/64,-3/64, 3/256,-3/256,9/256,-3/256,-3/128,-3/256,9/256,-3/128,-3/256,15/256,-3/128,-3/128,9/256,-3/256,-3/128,9/256,-21/256,9/128,-3/128,-3/256,15/256,-21/256,15/256,3/64,-3/128,-3/128,-3/128, 3/256,9/256,-3/256,-3/256,-3/128,9/256,9/256,9/128,-3/256,-21/256,-3/128,-3/128,-3/256,-3/256,-3/128,9/256,15/256,-3/128,-3/128,-3/256,-21/256,15/256,15/256,3/64,-3/128,-3/128,-3/128, 3/128,-3/128,-3/128,-3/128,3/64,-3/128,9/128,-3/64,-3/128,3/128,3/64,-3/64,-3/128,-3/128,3/64,9/128,3/128,-3/64,-3/64,-3/128,3/128,3/128,15/128,-3/32,3/64,-3/64,-3/64, 3/128,-3/128,9/128,-3/128,-3/64,-3/128,-3/128,3/64,-3/128,3/128,-3/64,3/64,9/128,-3/128,-3/64,9/128,-21/128,9/64,-3/64,-3/128,3/128,-21/128,3/128,3/16,-3/64,3/64,-3/64, 3/128,-3/128,-3/128,-3/128,3/64,9/128,-3/128,-3/64,-3/128,3/128,-3/64,3/64,-3/128,-3/128,3/64,9/128,3/128,-3/64,-3/64,-3/128,3/128,15/128,3/128,-3/32,-3/64,3/64,-3/64, 3/128,9/128,-3/128,-3/128,-3/64,-3/128,-3/128,-3/64,-3/128,3/128,3/64,3/64,-3/128,-3/128,-3/64,9/128,15/128,-3/64,-3/64,-3/128,3/128,3/128,3/128,-3/32,3/64,3/64,-3/64, 3/128,-3/128,-3/128,-3/128,3/64,-3/128,-3/128,3/64,-3/128,-9/128,3/64,3/64,-3/128,-3/128,3/64,9/128,3/128,-3/64,-3/64,-3/128,-9/128,3/128,3/128,0,3/64,3/64,-3/64, 3/256,9/256,-3/256,-3/256,-3/128,-3/256,-3/256,-3/128,9/256,15/256,-3/128,-3/128,9/256,9/256,9/128,-3/256,-21/256,-3/128,-3/128,-3/256,-21/256,15/256,15/256,3/64,-3/128,-3/128,-3/128, 3/256,-3/256,9/256,-3/256,-3/128,9/256,-3/256,-3/128,9/256,-21/256,9/128,-3/128,-3/256,9/256,-3/128,-3/256,15/256,-3/128,-3/128,-3/256,15/256,-21/256,15/256,3/64,-3/128,-3/128,-3/128, 3/128,-3/128,-3/128,-3/128,3/64,-3/128,-3/128,3/64,9/128,3/128,-3/64,-3/64,-3/128,9/128,-3/64,-3/128,3/128,3/64,-3/64,-3/128,3/128,3/128,15/128,-3/32,3/64,-3/64,-3/64, 3/256,-3/256,-3/256,9/256,-3/128,-3/256,9/256,-3/128,9/256,-21/256,-3/128,9/128,9/256,-3/256,-3/128,-3/256,15/256,-3/128,-3/128,-3/256,15/256,15/256,-21/256,3/64,-3/128,-3/128,-3/128, 3/256,9/256,9/256,9/256,9/128,9/256,9/256,9/128,9/256,63/256,9/128,9/128,-3/256,-3/256,-3/128,-3/256,-21/256,-3/128,-3/128,-3/256,-21/256,-21/256,-21/256,-15/64,-3/128,-3/128,-3/128, 3/128,-3/128,-3/128,9/128,-3/64,-3/128,9/128,-3/64,9/128,-21/128,-3/64,9/64,-3/128,-3/128,3/64,-3/128,3/128,3/64,-3/64,-3/128,3/128,3/128,-21/128,3/16,3/64,-3/64,-3/64, 3/128,-3/128,-3/128,-3/128,3/64,-3/128,-3/128,3/64,9/128,3/128,-3/64,-3/64,9/128,-3/128,-3/64,-3/128,3/128,-3/64,3/64,-3/128,3/128,15/128,3/128,-3/32,-3/64,3/64,-3/64, 3/128,-3/128,9/128,-3/128,-3/64,9/128,-3/128,-3/64,9/128,-21/128,9/64,-3/64,-3/128,-3/128,3/64,-3/128,3/128,-3/64,3/64,-3/128,3/128,-21/128,3/128,3/16,-3/64,3/64,-3/64, 3/128,9/128,-3/128,-3/128,-3/64,-3/128,-3/128,-3/64,9/128,15/128,-3/64,-3/64,-3/128,-3/128,-3/64,-3/128,3/128,3/64,3/64,-3/128,3/128,3/128,3/128,-3/32,3/64,3/64,-3/64, 3/128,-3/128,-3/128,-3/128,3/64,-3/128,-3/128,3/64,9/128,3/128,-3/64,-3/64,-3/128,-3/128,3/64,-3/128,-9/128,3/64,3/64,-3/128,-9/128,3/128,3/128,0,3/64,3/64,-3/64, 3/128,9/128,-3/128,-3/128,-3/64,-3/128,-3/128,-3/64,-3/128,3/128,3/64,3/64,9/128,9/128,9/64,-3/128,-21/128,-3/64,-3/64,-3/128,-21/128,3/128,3/128,3/16,-3/64,-3/64,3/64, 3/128,-3/128,-3/128,-3/128,3/64,9/128,-3/128,-3/64,-3/128,3/128,-3/64,3/64,-3/128,9/128,-3/64,-3/128,3/128,3/64,-3/64,-3/128,15/128,3/128,3/128,-3/32,-3/64,-3/64,3/64, 3/128,-3/128,9/128,-3/128,-3/64,-3/128,-3/128,3/64,-3/128,3/128,-3/64,3/64,-3/128,9/128,-3/64,-3/128,15/128,-3/64,-3/64,-3/128,3/128,3/128,3/128,-3/32,3/64,-3/64,3/64, 3/128,-3/128,-3/128,-3/128,3/64,-3/128,-3/128,3/64,-3/128,-9/128,3/64,3/64,-3/128,9/128,-3/64,-3/128,3/128,3/64,-3/64,-3/128,3/128,-9/128,3/128,0,3/64,-3/64,3/64, 3/128,-3/128,-3/128,-3/128,3/64,-3/128,9/128,-3/64,-3/128,3/128,3/64,-3/64,9/128,-3/128,-3/64,-3/128,3/128,-3/64,3/64,-3/128,15/128,3/128,3/128,-3/32,-3/64,-3/64,3/64, 3/128,9/128,-3/128,-3/128,-3/64,9/128,9/128,9/64,-3/128,-21/128,-3/64,-3/64,-3/128,-3/128,-3/64,-3/128,3/128,3/64,3/64,-3/128,-21/128,3/128,3/128,3/16,-3/64,-3/64,3/64, 3/128,-3/128,9/128,-3/128,-3/64,-3/128,9/128,-3/64,-3/128,15/128,-3/64,-3/64,-3/128,-3/128,3/64,-3/128,3/128,-3/64,3/64,-3/128,3/128,3/128,3/128,-3/32,3/64,-3/64,3/64, 3/128,-3/128,-3/128,-3/128,3/64,-3/128,9/128,-3/64,-3/128,3/128,3/64,-3/64,-3/128,-3/128,3/64,-3/128,-9/128,3/64,3/64,-3/128,3/128,-9/128,3/128,0,3/64,-3/64,3/64, 3/128,-3/128,-3/128,9/128,-3/64,-3/128,-3/128,3/64,-3/128,3/128,3/64,-3/64,9/128,-3/128,-3/64,-3/128,15/128,-3/64,-3/64,-3/128,3/128,3/128,3/128,-3/32,-3/64,3/64,3/64, 3/128,-3/128,-3/128,9/128,-3/64,9/128,-3/128,-3/64,-3/128,15/128,-3/64,-3/64,-3/128,-3/128,3/64,-3/128,3/128,3/64,-3/64,-3/128,3/128,3/128,3/128,-3/32,-3/64,3/64,3/64, 3/128,9/128,9/128,9/128,9/64,-3/128,-3/128,-3/64,-3/128,-21/128,-3/64,-3/64,-3/128,-3/128,-3/64,-3/128,-21/128,-3/64,-3/64,-3/128,3/128,3/128,3/128,3/16,3/64,3/64,3/64, 3/128,-3/128,-3/128,9/128,-3/64,-3/128,-3/128,3/64,-3/128,3/128,3/64,-3/64,-3/128,-3/128,3/64,-3/128,3/128,3/64,-3/64,-3/128,-9/128,-9/128,3/128,0,3/64,3/64,3/64, 3/128,-3/128,-3/128,-3/128,3/64,-3/128,-3/128,3/64,-3/128,-9/128,3/64,3/64,9/128,-3/128,-3/64,-3/128,3/128,-3/64,3/64,-3/128,3/128,3/128,-9/128,0,-3/64,3/64,3/64, 3/128,-3/128,-3/128,-3/128,3/64,9/128,-3/128,-3/64,-3/128,3/128,-3/64,3/64,-3/128,-3/128,3/64,-3/128,-9/128,3/64,3/64,-3/128,3/128,3/128,-9/128,0,-3/64,3/64,3/64, 3/128,-3/128,9/128,-3/128,-3/64,-3/128,-3/128,3/64,-3/128,3/128,-3/64,3/64,-3/128,-3/128,3/64,-3/128,3/128,-3/64,3/64,-3/128,-9/128,3/128,-9/128,0,3/64,3/64,3/64, 3/128,9/128,-3/128,-3/128,-3/64,-3/128,-3/128,-3/64,-3/128,3/128,3/64,3/64,-3/128,-3/128,-3/64,-3/128,3/128,3/64,3/64,-3/128,3/128,-9/128,-9/128,0,3/64,3/64,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,p23,p24,p25,p26,p27,p28,p29,p30,p31,p32,p33,p34,p35,p36,p37,p38,p39,p40,p41,p42,p43,p44,p45,p46,p47,p48,p49,p50,p51),dp; //This is the Fourier transform. matrix qtop[27][51] = 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,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,-1/3,1,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,1,-1/3,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,-1/3,1, 1,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3, 1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1,1,1,-1/3,-1/3,-1/3,-1/3,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1,1,1,1,-1/3,-1/3,-1/3,-1/3, 1,-1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,-1/3,1,-1/3,1/3,-1/3,-1/3,1/3,1,-1/3,-1/3,-1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3,-1/3,-1/3,1/3,-1/3,1,-1/3,1/3,-1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3,1/3,-1/3,-1/3,1/3,-1/3,-1/3,1,-1/3,1/3,1/3,-1/3,-1/3, 1,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3, 1,1,-1/3,-1/3,-1/3,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3, 1,-1/3,-1/3,-1/3,1/3,1,-1/3,-1/3,-1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3,-1/3,-1/3,1/3,-1/3,1,-1/3,1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,-1/3,1,-1/3,1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,1,-1/3,-1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,1/3,-1/3, 1,1,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1,1,1,1,1,1,1,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3, 1,-1/3,-1/3,5/21,1/21,-1/3,5/21,1/21,5/21,-1/3,1/21,1/21,1/21,1/21,-1/7,-1/3,5/21,1/21,5/21,-1/3,1/21,1/21,1/21,1/21,-1/7,5/21,-1/3,1/21,-1/3,1,-1/3,1/21,-1/3,5/21,1/21,1/21,1/21,1/21,-1/7,1/21,-1/3,5/21,1/21,1/21,5/21,-1/3,1/21,-1/7,1/21,1/21,1/21, 1,-1/3,1,-1/3,-1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,-1/3,1/3, 1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1/3,1/3,1/3,1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1/3,1/3,1/3,1/3,-1/3,-1/3,-1/3,1,1,1,-1/3,-1/3,-1/3,-1/3,1/3,1/3,1/3,1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1/3,1/3,1/3,1/3, 1,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3,1,-1/3,-1/3,-1/3, 1,1,-1/3,-1/3,-1/3,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3, 1,-1/3,-1/3,-1/3,1/3,1,-1/3,-1/3,-1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3,1,-1/3,-1/3,-1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3,1,-1/3,-1/3,-1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3,1,-1/3,-1/3,-1/3,-1/3,-1/3,1/3,1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3,1/3,-1/3, 1,1,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1,1,1,1,1,1,1,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3, 1,-1/3,-1/3,5/21,1/21,-1/3,5/21,1/21,5/21,-1/3,1/21,1/21,1/21,1/21,-1/7,1,-1/3,-1/3,-1/3,5/21,1/21,-1/3,1/21,5/21,1/21,-1/3,5/21,1/21,5/21,-1/3,1/21,1/21,1/21,1/21,-1/7,-1/3,1/21,5/21,1/21,1/21,1/21,1/21,-1/7,5/21,1/21,-1/3,1/21,1/21,-1/7,1/21,1/21, 1,-1/3,1,-1/3,-1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,-1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3,-1/3,1/3, 1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1/3,1/3,1/3,1/3,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1/3,1/3,1/3,1/3,-1/3,-1/3,-1/3,-1/3,1/3,1/3,1/3,1/3,-1/3,-1/3,-1/3,-1/3,1/3,1/3,1/3,1/3, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3, 1,-1/3,-1/3,5/21,1/21,1,-1/3,-1/3,-1/3,5/21,1/21,-1/3,1/21,5/21,1/21,-1/3,5/21,1/21,5/21,-1/3,1/21,1/21,1/21,1/21,-1/7,-1/3,5/21,1/21,5/21,-1/3,1/21,1/21,1/21,1/21,-1/7,-1/3,5/21,1/21,1/21,5/21,-1/3,1/21,1/21,1/21,1/21,1/21,-1/7,1/21,1/21,-1/7,1/21, 1,-1/3,1,-1/3,-1/3,-1/3,5/21,1/21,-1/3,5/21,1/21,-1/3,5/21,1/21,1/21,-1/3,5/21,1/21,-1/3,5/21,1/21,-1/3,5/21,1/21,1/21,5/21,-1/3,1/21,5/21,-1/3,1/21,5/21,-1/3,1/21,1/21,1/21,1/21,1/21,-1/7,1/21,1/21,1/21,-1/7,1/21,1/21,1/21,-1/7,1/21,1/21,1/21,-1/7, 1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,5/21,5/21,5/21,1/21,1/21,1/21,1/21,-1/3,-1/3,-1/3,5/21,5/21,5/21,1/21,1/21,1/21,1/21,5/21,5/21,5/21,-1/3,-1/3,-1/3,1/21,1/21,1/21,1/21,1/21,1/21,1/21,1/21,1/21,1/21,1/21,1/21,1/21,1/21,1/21,1/21,-1/7,-1/7,-1/7,-1/7, 1,-1/3,-1/3,1/15,2/15,-1/3,1/15,2/15,1/15,1/15,-1/15,2/15,-1/15,-1/15,0,-1/3,1/15,2/15,1/15,1/15,-1/15,2/15,-1/15,-1/15,0,1/15,1/15,-1/15,1/15,-1/3,2/15,-1/15,2/15,-1/15,0,2/15,-1/15,-1/15,0,-1/15,2/15,-1/15,0,-1/15,-1/15,2/15,0,0,0,0,0, 1,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,1,-1/3,-1/3,-1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,-1/3,1/3,1/3,-1/3,-1/3,1/3,1/3, 1,1,-1/3,-1/3,-1/3,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1/3,1/3,1/3,1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1/3,1/3,1/3,1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1/3,1/3,1/3,1/3,1/3,1/3,1/3,1/3, 1,1,1,1,1,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,-1/3,1/3,1/3,1/3,1/3,1/3,1/3,1/3,1/3,1/3,1/3,1/3,1/3,1/3,1/3,1/3,1/3; 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,(a0,a1,b0,b1,c0,c1,d0,d1,e0,e1),dp; ideal P = a0*b0*c0*d0*e0+3*a1*b1*c1*d1*e1, 3*a0*b1*c0*d0*e0+3*a1*b0*c1*d1*e1+6*a1*b1*c1*d1*e1, 3*a0*b0*c1*d0*e0+3*a1*b1*c0*d1*e1+6*a1*b1*c1*d1*e1, 3*a0*b1*c1*d0*e0+3*a1*b0*c0*d1*e1+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d0*e0+6*a1*b0*c1*d1*e1+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d1*e1, 3*a0*b0*c0*d0*e1+3*a1*b1*c1*d1*e0+6*a1*b1*c1*d1*e1, 3*a0*b1*c0*d0*e1+3*a1*b0*c1*d1*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c0*d0*e1+6*a1*b0*c1*d1*e1+6*a1*b1*c1*d1*e0+6*a1*b1*c1*d1*e1, 3*a0*b0*c1*d0*e1+3*a1*b1*c0*d1*e0+6*a1*b1*c1*d1*e1, 3*a0*b1*c1*d0*e1+3*a1*b0*c0*d1*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d0*e1+6*a1*b0*c1*d1*e1+6*a1*b1*c0*d1*e0+6*a1*b1*c1*d1*e1, 6*a0*b0*c1*d0*e1+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d1*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d0*e1+6*a1*b0*c1*d1*e0+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d0*e1+6*a1*b0*c0*d1*e1+6*a1*b1*c1*d1*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d0*e1+6*a1*b0*c1*d1*e1+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d1*e0, 3*a0*b0*c0*d1*e0+3*a1*b1*c1*d0*e1+6*a1*b1*c1*d1*e1, 3*a0*b1*c0*d1*e0+3*a1*b0*c1*d0*e1+6*a1*b1*c1*d1*e1, 6*a0*b1*c0*d1*e0+6*a1*b0*c1*d1*e1+6*a1*b1*c1*d0*e1+6*a1*b1*c1*d1*e1, 3*a0*b0*c1*d1*e0+3*a1*b1*c0*d0*e1+6*a1*b1*c1*d1*e1, 3*a0*b1*c1*d1*e0+3*a1*b0*c0*d0*e1+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e0+6*a1*b0*c1*d1*e1+6*a1*b1*c0*d0*e1+6*a1*b1*c1*d1*e1, 6*a0*b0*c1*d1*e0+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d0*e1+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e0+6*a1*b0*c1*d0*e1+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e0+6*a1*b0*c0*d1*e1+6*a1*b1*c1*d0*e1+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e0+6*a1*b0*c1*d1*e1+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d0*e1, 3*a0*b0*c0*d1*e1+3*a1*b1*c1*d0*e0+6*a1*b1*c1*d1*e1, 3*a0*b1*c0*d1*e1+3*a1*b0*c1*d0*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c0*d1*e1+6*a1*b0*c1*d1*e1+6*a1*b1*c1*d0*e0+6*a1*b1*c1*d1*e1, 3*a0*b0*c1*d1*e1+3*a1*b1*c0*d0*e0+6*a1*b1*c1*d1*e1, 3*a0*b1*c1*d1*e1+3*a1*b0*c0*d0*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e1+6*a1*b0*c1*d1*e1+6*a1*b1*c0*d0*e0+6*a1*b1*c1*d1*e1, 6*a0*b0*c1*d1*e1+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d0*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e1+6*a1*b0*c1*d0*e0+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e1+6*a1*b0*c0*d1*e1+6*a1*b1*c1*d0*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e1+6*a1*b0*c1*d1*e1+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d0*e0, 6*a0*b0*c0*d1*e1+6*a1*b1*c1*d0*e1+6*a1*b1*c1*d1*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c0*d1*e1+6*a1*b0*c1*d0*e1+6*a1*b1*c1*d1*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c0*d1*e1+6*a1*b0*c1*d1*e0+6*a1*b1*c1*d0*e1+6*a1*b1*c1*d1*e1, 6*a0*b1*c0*d1*e1+6*a1*b0*c1*d1*e1+6*a1*b1*c1*d0*e1+6*a1*b1*c1*d1*e0, 6*a0*b0*c1*d1*e1+6*a1*b1*c0*d0*e1+6*a1*b1*c1*d1*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e1+6*a1*b0*c0*d0*e1+6*a1*b1*c1*d1*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e1+6*a1*b0*c1*d1*e0+6*a1*b1*c0*d0*e1+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e1+6*a1*b0*c1*d1*e1+6*a1*b1*c0*d0*e1+6*a1*b1*c1*d1*e0, 6*a0*b0*c1*d1*e1+6*a1*b1*c0*d1*e0+6*a1*b1*c1*d0*e1+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e1+6*a1*b0*c1*d0*e1+6*a1*b1*c0*d1*e0+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e1+6*a1*b0*c0*d1*e0+6*a1*b1*c1*d0*e1+6*a1*b1*c1*d1*e1, 6*a0*b1*c1*d1*e1+6*a1*b0*c1*d1*e1+6*a1*b1*c0*d1*e0+6*a1*b1*c1*d0*e1, 6*a0*b0*c1*d1*e1+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d0*e1+6*a1*b1*c1*d1*e0, 6*a0*b1*c1*d1*e1+6*a1*b0*c1*d0*e1+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d1*e0, 6*a0*b1*c1*d1*e1+6*a1*b0*c1*d1*e0+6*a1*b1*c0*d1*e1+6*a1*b1*c1*d0*e1, 6*a0*b1*c1*d1*e1+6*a1*b0*c0*d1*e1+6*a1*b1*c1*d0*e1+6*a1*b1*c1*d1*e0; // 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(1,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; }