// 6.54s, 6.51s, 6.39s, 5.02s, 4.97s,
// 5.16s full interreduced
// 4.7s [2 threads 3.92]
// 4.4s (delayed pairs) [2 threads 3.74]
// 4.31s [4.41, 3.86], mem 47 980K
// 4.15s
// 4.09s / [4.08, 3.63]
// 4.01 delayed, 4.30 non delayed
cyclic8:=[x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8, x1*x2 + x2*x3 + x3*x4 + x4*x5 + x5*x6 + x6*x7 + x1*x8 + x7*x8, x1*x2*x3 + x2*x3*x4 + x3*x4*x5 + x4*x5*x6 + x5*x6*x7 + x1*x2*x8 + x1*x7*x8 + x6*x7*x8, x1*x2*x3*x4 + x2*x3*x4*x5 + x3*x4*x5*x6 + x4*x5*x6*x7 + x1*x2*x3*x8 + x1*x2*x7*x8 + x1*x6*x7*x8 + x5*x6*x7*x8, x1*x2*x3*x4*x5 + x2*x3*x4*x5*x6 + x3*x4*x5*x6*x7 + x1*x2*x3*x4*x8 + x1*x2*x3*x7*x8 + x1*x2*x6*x7*x8 + x1*x5*x6*x7*x8 + x4*x5*x6*x7*x8, x1*x2*x3*x4*x5*x6 + x2*x3*x4*x5*x6*x7 + x1*x2*x3*x4*x5*x8 + x1*x2*x3*x4*x7*x8 + x1*x2*x3*x6*x7*x8 + x1*x2*x5*x6*x7*x8 + x1*x4*x5*x6*x7*x8 + x3*x4*x5*x6*x7*x8, x1*x2*x3*x4*x5*x6*x7 + x1*x2*x3*x4*x5*x6*x8 + x1*x2*x3*x4*x5*x7*x8 + x1*x2*x3*x4*x6*x7*x8 + x1*x2*x3*x5*x6*x7*x8 + x1*x2*x4*x5*x6*x7*x8 + x1*x3*x4*x5*x6*x7*x8 + x2*x3*x4*x5*x6*x7*x8, x1*x2*x3*x4*x5*x6*x7*x8 - 1];
//p:=prevprime(45000);
//threads:=2;
p:=prevprime(2^24); 
time(H:=gbasis(cyclic8 % p,indets(cyclic8),revlex,with_cocoa=false));
size(H);
write("Hcyclic8mod",H);
p:=prevprime(2^29); 
time(H:=gbasis(cyclic8 % p,indets(cyclic8),revlex,with_cocoa=false));
size(H);
p:=prevprime(2^31); 
time(H:=gbasis(cyclic8 % p,indets(cyclic8),revlex,with_cocoa=false));
size(H);
