next | previous | forward | backward | up | top | index | toc | Macaulay2 website
QthPower :: minimization

minimization -- change to a better Noether normalization suggested by the induced weights

Synopsis

Description

i1 : wtR = matrix{{31,12}};

              1        2
o1 : Matrix ZZ  <--- ZZ
i2 : Rq = ZZ/2[y,x,Weights=>entries weightGrevlex(wtR)];
i3 : Iq = {y^12+y^11+y^10*x^2+y^8*x^9+x^31};
i4 : ic1 = qthIntegralClosure(wtR,Rq,Iq)

        28   11    7 9    10    9 2   10 3    6 12    9 3    8 5   9 6    5 15    8 6    7 8   8 9    4 18    7 9    6 11   7 12
o4 = ({x  , y   + y x  + y   + y x , y  x  + y x   + y x  + y x , y x  + y x   + y x  + y x , y x  + y x   + y x  + y x  , y x  
                                                                                                                                
     ----------------------------------------------------------------------------------------------------------------------------
        3 21    6 12    5 14   6 15    2 24    5 15    4 17     28   5 18      27    4 18    3 20   2 26      26   4 21    3 21  
     + y x   + y x   + y x  , y x   + y x   + y x   + y x  , y*x  , y x   + y*x   + y x   + y x  , y x   + y*x  , y x   + y x   +
                                                                                                                                 
     ----------------------------------------------------------------------------------------------------------------------------
      2 23   3 24    2 24      26     2              3       2       5             2               2       5                 
     y x  , y x   + y x   + y*x  }, {p  + p p   + p p   + p p   + p p  , p p  + p p   + p p   + p p   + p p  , p p  + p p   +
                                      0    1 11    2 11    3 11    5 11   0 1    0 11    3 11    5 11    6 11   0 2    1 11  
     ----------------------------------------------------------------------------------------------------------------------------
        4       3                     2       5             3                     2       5                     2       5       
     p p   + p p  , p p  + p p   + p p   + p p  , p p  + p p  , p p  + p p   + p p   + p p  , p p  + p p   + p p   + p p  , p p 
      3 11    4 11   0 3    5 11    6 11    7 11   0 4    1 11   0 5    6 11    7 11    8 11   0 6    7 11    8 11    9 11   0 7
     ----------------------------------------------------------------------------------------------------------------------------
                  2        5                      2     5             2              2                         2      2         
     + p p   + p p   + p  p  , p p  + p p   + p  p   + p  , p p  + p p   + p  p   + p  , p p   + p p   + p  , p  + p p   + p p  
        8 11    9 11    10 11   0 8    9 11    10 11    11   0 9    4 11    10 11    11   0 10    2 11    11   1    1 11    5 11
     ----------------------------------------------------------------------------------------------------------------------------
          2       5             2               4                     2       5             3       2                     2   
     + p p   + p p  , p p  + p p   + p p   + p p  , p p  + p p   + p p   + p p  , p p  + p p   + p p  , p p  + p p   + p p   +
        6 11    7 11   1 2    2 11    3 11    5 11   1 3    6 11    7 11    8 11   1 4    3 11    4 11   1 5    7 11    8 11  
     ----------------------------------------------------------------------------------------------------------------------------
        5                     2        5                      2     5             2              2                              
     p p  , p p  + p p   + p p   + p  p  , p p  + p p   + p  p   + p  , p p  + p p   + p  p   + p  , p p  + p p   + p  , p p   +
      9 11   1 6    8 11    9 11    10 11   1 7    9 11    10 11    11   1 8    4 11    10 11    11   1 9    2 11    11   1 10  
     ----------------------------------------------------------------------------------------------------------------------------
          2           3                          4             2                          4                     4               
     p , p  + p  + p p   + p , p p  + p p   + p p  , p p  + p p   + p , p p  + p p   + p p  , p p  + p p   + p p  , p p  + p p  
      0   2    0    1 11    2   2 3    5 11    6 11   2 4    0 11    4   2 5    6 11    7 11   2 6    7 11    8 11   2 7    8 11
     ----------------------------------------------------------------------------------------------------------------------------
          4                      4                    4                         2      2               2       5             3  
     + p p  , p p  + p p   + p  p  , p p  + p  p   + p  , p p   + p p   + p  , p  + p p   + p p   + p p   + p p  , p p  + p p  ,
        9 11   2 8    9 11    10 11   2 9    10 11    11   2 10    4 11    11   3    5 11    7 11    8 11    9 11   3 4    5 11 
     ----------------------------------------------------------------------------------------------------------------------------
               2               2        5             2                2     5             2       2              2         
     p p  + p p   + p p   + p p   + p  p  , p p  + p p   + p p   + p  p   + p  , p p  + p p   + p p   + p  p   + p  , p p  +
      3 5    6 11    8 11    9 11    10 11   3 6    7 11    9 11    10 11    11   3 7    4 11    8 11    10 11    11   3 8  
     ----------------------------------------------------------------------------------------------------------------------------
                2                         2                 2    2      2                  3             3             3         
     p p   + p p   + p  , p p  + p  + p  p  , p p   + p  + p  , p  + p p   + p , p p  + p p  , p p  + p p  , p p  + p p  , p p  +
      2 11    9 11    11   3 9    0    10 11   3 10    1    11   4    2 11    4   4 5    6 11   4 6    7 11   4 7    8 11   4 8  
     ----------------------------------------------------------------------------------------------------------------------------
        3              3            3    2      2                2     5             2       2              2                 
     p p  , p p  + p  p  , p p   + p  , p  + p p   + p p   + p  p   + p  , p p  + p p   + p p   + p  p   + p  , p p  + p p   +
      9 11   4 9    10 11   4 10    11   5    7 11    9 11    10 11    11   5 6    4 11    8 11    10 11    11   5 7    2 11  
     ----------------------------------------------------------------------------------------------------------------------------
        2                         2                2                2              2                         2                2  
     p p   + p  , p p  + p  + p  p  , p p  + p  + p  , p p   + p , p  + p p   + p p   + p  , p p  + p  + p  p  , p p  + p  + p  ,
      9 11    11   5 8    0    10 11   5 9    1    11   5 10    3   6    2 11    9 11    11   6 7    0    10 11   6 8    1    11 
     ----------------------------------------------------------------------------------------------------------------------------
                             2         2                                      2                               2                  
     p p  + p , p p   + p , p  + p  + p  , p p  + p , p p  + p , p p   + p , p  + p , p p  + p , p p   + p , p  + p , p p   + p ,
      6 9    3   6 10    5   7    1    11   7 8    3   7 9    5   7 10    6   8    5   8 9    6   8 10    7   9    7   9 10    8 
     ----------------------------------------------------------------------------------------------------------------------------
      2         ZZ
     p   + p }, --[p ..p  ], | 45 40 38 35 31 30 25 20 15 10 5 12 |)
      10    9    2  0   11

o4 : Sequence
i5 : ic2 = minimization(ic1); toString ic2

o6 = {matrix {{45, 40, 38, 35, 31, 30, 25, 20, 15, 10, 12, 5}}, (ZZ/2)[p_0..p_11], {p_10^3+p_4*p_11, p_4*p_10+p_2*p_11+p_10,
     p_2*p_10+p_11^10+p_10^2*p_11^2+p_10, p_4^2+p_10*p_11^10+p_4*p_11^3+p_4+p_10^2,
     p_2*p_4+p_10^2*p_11^9+p_2*p_11^3+p_4+p_10*p_11^2, p_2^2+p_4*p_11^9+p_11^12+p_11^9+p_10^2*p_11^4+p_2+p_10*p_11^2}}
i7 : ic3 = qthIntegralClosure(ic2#0,ic2#1,ic2#2)

                2              2           9      4      2    12    9            3           9      2            3           10 
o7 = ({1, p  , p  , p , p }, {p  + p  + p p  + p p  + p p  + p   + p , p p  + p p  + p  + p p  + p p , p p  + p p  + p  + p p  ,
           10   10   4   2     0    0    1 4    2 4    3 4    4     4   0 1    0 4    1    2 4    3 4   0 2    1 4    2    3 4  
     ----------------------------------------------------------------------------------------------------------------------------
               2         10   2      3                10            3                11                     2      2             
     p p  + p p  + p  + p  , p  + p p  + p  + p  + p p  , p p  + p p  + p  + p p  + p  , p p  + p p  + p , p  + p p  + p p , p p 
      0 3    2 4    3    4    1    1 4    1    2    3 4    1 2    2 4    2    3 4    4    1 3    0 4    3   2    0 4    3 4   2 3
     ----------------------------------------------------------------------------------------------------------------------------
              2        ZZ
     + p p , p  + p }, --[p ..p ], | 38 31 24 12 5 |)
        1 4   3    2    2  0   4

o7 : Sequence
i8 : R1=ZZ/2[f38,f31,f12,f5,Weights=> entries weightGrevlex(matrix{{38,31,12,5}})];
i9 : phi1=map(R1,ic2#1,matrix{{0,0,f38,0,f31,0,0,0,0,0,f12,f5}});

                     ZZ
o9 : RingMap R1 <--- --[p ..p  ]
                      2  0   11
i10 : I1=ic2#2/(v->phi1(v))

          3                                               10      2  2           2         10         3            2           
o10 = {f12  + f31*f5, f31*f12 + f38*f5 + f12, f38*f12 + f5   + f12 f5  + f12, f31  + f12*f5   + f31*f5  + f31 + f12 , f38*f31 +
      ---------------------------------------------------------------------------------------------------------------------------
         2  9         3               2     2         9     12     9      2  4               2
      f12 f5  + f38*f5  + f31 + f12*f5 , f38  + f31*f5  + f5   + f5  + f12 f5  + f38 + f12*f5 }

o10 : List
i11 : G1=transpose gens gb ideal I1

o11 = {-3}  | f12^3+f31f5                                    |
      {-2}  | f31f12+f38f5+f12                               |
      {-10} | f38f12+f5^10+f12^2f5^2+f12                     |
      {-11} | f31^2+f12f5^10+f31f5^3+f31+f12^2               |
      {-11} | f38f31+f12^2f5^9+f38f5^3+f31+f12f5^2           |
      {-12} | f38^2+f31f5^9+f5^12+f5^9+f12^2f5^4+f38+f12f5^2 |

               6        1
o11 : Matrix R1  <--- R1
i12 : R2=ZZ/2[f38,f31,f24,f12,f5,MonomialOrder=>{Weights=>{1,1,1,1,0},Weights=>{1,1,1,0,0},Weights=>{1,1,0,0,0},Weights=>{1,0,0,0,0},Weights=>{38,31,24,12,5}}];
i13 : phi2=map(R2,R1,matrix{{f38,f31,f12,f5}});

o13 : RingMap R2 <--- R1
i14 : I2=ideal((flatten entries G1)/(v->phi2(v)))+ideal(f12^2-f24)

                3                                                2  2           10     2      2         3               10 
o14 = ideal (f12  + f31*f5, f31*f12 + f38*f5 + f12, f38*f12 + f12 f5  + f12 + f5  , f31  + f12  + f31*f5  + f31 + f12*f5  ,
      ---------------------------------------------------------------------------------------------------------------------------
                   2  9         3               2     2      2  4               9         2     12     9     2
      f38*f31 + f12 f5  + f38*f5  + f31 + f12*f5 , f38  + f12 f5  + f38 + f31*f5  + f12*f5  + f5   + f5 , f12  + f24)

o14 : Ideal of R2
i15 : G2=transpose gens gb I2

o15 = {-2}  | f12^2+f24                                    |
      {-2}  | f24f12+f31f5                                 |
      {-2}  | f31f12+f38f5+f12                             |
      {-10} | f38f12+f24f5^2+f12+f5^10                     |
      {-3}  | f24^2+f38f5^2+f12f5                          |
      {-11} | f31f24+f24f5^3+f24+f12f5+f5^11               |
      {-11} | f38f24+f31f5^3+f24+f12f5^10                  |
      {-11} | f31^2+f31f5^3+f31+f24+f12f5^10               |
      {-10} | f38f31+f38f5^3+f31+f24f5^9+f12f5^2           |
      {-12} | f38^2+f38+f31f5^9+f24f5^4+f12f5^2+f5^12+f5^9 |

               10        1
o15 : Matrix R2   <--- R2

Minimization changes the order of the variables to impicitly change to a new Noether normalization, but doesn't actually recompute the integral closure presentation as a strict affine algebra over the new Noether normalization. Therefore a second call to an integral closure method is required if the output of normalization doesn't suffice. It does produce the three outputs needed as input to either qthIntegralClosure or rationalIntegralClosure. I don't necessarily like this second call. At the current time it is easier to use the output of minimization to produce manually (as above) a good minimization.

Ways to use minimization :

For the programmer

The object minimization is a method function.