| LIB "autgradalg.lib";
//////////////////
// example: fano 15:
intmat Q[1][5] = 3,3,2,2,1;
ring R = 0,T(1..5),dp;
// attach degree matrix Q to R:
setBaseMultigrading(Q);
//ideal I = T(1)*T(2) + T(3)^2*T(4) + T(5)^6;
def S = autKS();
==> // coefficients: QQ
==> // number of vars : 50
==> // block 1 : ordering dp
==> // : names T(1) T(2) T(3) T(4) T(5) Y(1) Y(2) Y(3) Y(\
4) Y(5) Y(6) Y(7) Y(8) Y(9) Y(10) Y(11) Y(12) Y(13) Y(14) Y(15) Y(16) Y(1\
7) Y(18) Y(19) Y(20) Y(21) Y(22) Y(23) Y(24) Y(25) Y(26) Y(27) Y(28) Y(29\
) Y(30) Y(31) Y(32) Y(33) Y(34) Y(35) Y(36) Y(37) Y(38) Y(39) Y(40) Y(41)\
Y(42) Y(43) Y(44) Y(45)
==> // block 2 : ordering C
setring S;
dim(std(Iexported));
==> 17
basering;
==> // coefficients: QQ
==> // number of vars : 46
==> // block 1 : ordering dp
==> // : names Y(1) Y(2) Y(3) Y(4) Y(5) Y(6) Y(7) Y(8) Y(\
9) Y(10) Y(11) Y(12) Y(13) Y(14) Y(15) Y(16) Y(17) Y(18) Y(19) Y(20) Y(21\
) Y(22) Y(23) Y(24) Y(25) Y(26) Y(27) Y(28) Y(29) Y(30) Y(31) Y(32) Y(33)\
Y(34) Y(35) Y(36) Y(37) Y(38) Y(39) Y(40) Y(41) Y(42) Y(43) Y(44) Y(45)
==> // block 2 : ordering dp
==> // : names Z
==> // block 3 : ordering C
autKSexported;
==> [1]:
==> [1]:
==> _[1,1]=Y(1)
==> _[1,2]=Y(2)
==> _[1,3]=0
==> _[1,4]=0
==> _[1,5]=0
==> _[1,6]=Y(6)
==> _[1,7]=Y(7)
==> _[1,8]=0
==> _[1,9]=Y(9)
==> _[2,1]=Y(10)
==> _[2,2]=Y(11)
==> _[2,3]=0
==> _[2,4]=0
==> _[2,5]=0
==> _[2,6]=Y(15)
==> _[2,7]=Y(16)
==> _[2,8]=0
==> _[2,9]=Y(18)
==> _[3,1]=0
==> _[3,2]=0
==> _[3,3]=Y(21)
==> _[3,4]=Y(22)
==> _[3,5]=0
==> _[3,6]=0
==> _[3,7]=0
==> _[3,8]=Y(26)
==> _[3,9]=0
==> _[4,1]=0
==> _[4,2]=0
==> _[4,3]=Y(30)
==> _[4,4]=Y(31)
==> _[4,5]=0
==> _[4,6]=0
==> _[4,7]=0
==> _[4,8]=Y(35)
==> _[4,9]=0
==> _[5,1]=0
==> _[5,2]=0
==> _[5,3]=0
==> _[5,4]=0
==> _[5,5]=Y(41)
==> _[5,6]=0
==> _[5,7]=0
==> _[5,8]=0
==> _[5,9]=0
==> _[6,1]=0
==> _[6,2]=0
==> _[6,3]=0
==> _[6,4]=0
==> _[6,5]=0
==> _[6,6]=Y(21)*Y(41)
==> _[6,7]=Y(22)*Y(41)
==> _[6,8]=0
==> _[6,9]=Y(26)*Y(41)
==> _[7,1]=0
==> _[7,2]=0
==> _[7,3]=0
==> _[7,4]=0
==> _[7,5]=0
==> _[7,6]=Y(30)*Y(41)
==> _[7,7]=Y(31)*Y(41)
==> _[7,8]=0
==> _[7,9]=Y(35)*Y(41)
==> _[8,1]=0
==> _[8,2]=0
==> _[8,3]=0
==> _[8,4]=0
==> _[8,5]=0
==> _[8,6]=0
==> _[8,7]=0
==> _[8,8]=Y(41)^2
==> _[8,9]=0
==> _[9,1]=0
==> _[9,2]=0
==> _[9,3]=0
==> _[9,4]=0
==> _[9,5]=0
==> _[9,6]=0
==> _[9,7]=0
==> _[9,8]=0
==> _[9,9]=Y(41)^3
==> [2]:
==> 1
==> [3]:
==> _[1]=Y(3)
==> _[2]=Y(4)
==> _[3]=Y(5)
==> _[4]=Y(8)
==> _[5]=Y(12)
==> _[6]=Y(13)
==> _[7]=Y(14)
==> _[8]=Y(17)
==> _[9]=Y(19)
==> _[10]=Y(20)
==> _[11]=Y(23)
==> _[12]=Y(24)
==> _[13]=Y(25)
==> _[14]=Y(27)
==> _[15]=Y(28)
==> _[16]=Y(29)
==> _[17]=Y(32)
==> _[18]=Y(33)
==> _[19]=Y(34)
==> _[20]=Y(36)
==> _[21]=Y(37)
==> _[22]=Y(38)
==> _[23]=Y(39)
==> _[24]=Y(40)
==> _[25]=Y(42)
==> _[26]=Y(43)
==> _[27]=Y(44)
==> _[28]=Y(45)
==> _[29]=-Y(2)*Y(10)*Y(22)^2*Y(30)^2*Y(41)^8*Z+Y(1)*Y(11)*Y(22)^2*Y(30\
)^2*Y(41)^8*Z+2*Y(2)*Y(10)*Y(21)*Y(22)*Y(30)*Y(31)*Y(41)^8*Z-2*Y(1)*Y(11)\
*Y(21)*Y(22)*Y(30)*Y(31)*Y(41)^8*Z-Y(2)*Y(10)*Y(21)^2*Y(31)^2*Y(41)^8*Z+Y\
(1)*Y(11)*Y(21)^2*Y(31)^2*Y(41)^8*Z-1
==> [4]:
==> T(1),T(2),T(3),T(4),T(5),T(3)*T(5),T(4)*T(5),T(5)^2,T(5)^3
getVariableWeights();
==> 3,3,2,2,1,3,3,2,3,3,3,2,2,1,3,3,2,3,3,3,2,2,1,3,3,2,3,3,3,2,2,1,3,3,2,3,3\
,3,2,2,1,3,3,2,3,-22
kill S, Q, R;
/////////////
// example 3.14 from the paper
intmat Q[3][5] =
1,1,1,1,1,
1,-1,0,0,1,
1,1,1,0,0;
list TOR = 2;
ring R = 0,T(1..5),dp;
// attach degree matrix Q to R:
setBaseMultigrading(Q);
//ideal I = T(1)*T(2) + T(3)^2 + T(4)^2;
def S = autKS();
==> // coefficients: QQ
==> // number of vars : 30
==> // block 1 : ordering dp
==> // : names T(1) T(2) T(3) T(4) T(5) Y(1) Y(2) Y(3) Y(\
4) Y(5) Y(6) Y(7) Y(8) Y(9) Y(10) Y(11) Y(12) Y(13) Y(14) Y(15) Y(16) Y(1\
7) Y(18) Y(19) Y(20) Y(21) Y(22) Y(23) Y(24) Y(25)
==> // block 2 : ordering C
==> // ** redefining adMons ( list adMons;) autgradalg.lib::autKS:2325
==> // ** redefining MONexported ( export(MONexported);)
setring S;
Iexported;
==> Iexported[1]=Y(23)
==> Iexported[2]=Y(22)
==> Iexported[3]=Y(21)
==> Iexported[4]=Y(18)
==> Iexported[5]=Y(17)
==> Iexported[6]=Y(16)
==> Iexported[7]=Y(15)
==> Iexported[8]=Y(14)
==> Iexported[9]=Y(12)
==> Iexported[10]=Y(11)
==> Iexported[11]=Y(10)
==> Iexported[12]=Y(9)
==> Iexported[13]=Y(8)
==> Iexported[14]=Y(5)
==> Iexported[15]=Y(4)
==> Iexported[16]=Y(3)
==> Iexported[17]=Y(24)*Y(25)
==> Iexported[18]=Y(20)*Y(25)
==> Iexported[19]=Y(6)*Y(25)
==> Iexported[20]=Y(2)*Y(25)
==> Iexported[21]=Y(19)*Y(24)
==> Iexported[22]=Y(7)*Y(24)
==> Iexported[23]=Y(1)*Y(24)
==> Iexported[24]=Y(19)*Y(20)
==> Iexported[25]=Y(7)*Y(20)
==> Iexported[26]=Y(1)*Y(20)
==> Iexported[27]=Y(6)*Y(19)
==> Iexported[28]=Y(2)*Y(19)
==> Iexported[29]=Y(6)*Y(7)
==> Iexported[30]=Y(2)*Y(7)
==> Iexported[31]=Y(1)*Y(6)
==> Iexported[32]=Y(1)*Y(2)
==> Iexported[33]=Y(2)*Y(6)*Y(13)*Y(20)*Y(24)*Z+Y(1)*Y(7)*Y(13)*Y(19)*Y(25)*Z\
-1
==> Iexported[34]=Y(1)*Y(7)*Y(13)*Y(19)*Y(25)^2*Z-Y(25)
==> Iexported[35]=Y(1)*Y(7)*Y(13)*Y(19)^2*Y(25)*Z-Y(19)
==> Iexported[36]=Y(1)*Y(7)^2*Y(13)*Y(19)*Y(25)*Z-Y(7)
==> Iexported[37]=Y(1)^2*Y(7)*Y(13)*Y(19)*Y(25)*Z-Y(1)
print(getVariableWeights());
==> 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 -5
==> 1 -1 0 0 1 1 -1 0 0 1 1 -1 \
0 0 1 1 -1 0 0 1 1 -1 0 0 \
1 -1
==> 1 1 1 0 0 1 1 1 0 0 1 1 \
1 0 0 1 1 1 0 0 1 1 1 0 \
0 -3
kill S, R, Q;
|