Opened 10 years ago

Closed 9 years ago

#469 closed bug (fixed)

genus before normal not the same as genus after normal?

Reported by: anonymous Owned by: boehm
Priority: minor Milestone: 3-1-6 and higher
Component: singular-libs Version: 3-1-5
Keywords: Cc:

Description (last modified by gorzel)

                    SINGULAR                                 /
 A Computer Algebra System for Polynomial Computations       /   version 3-1-5
                                                           0<
 by: W. Decker, G.-M. Greuel, G. Pfister, H. Schoenemann     \   Jul 2012
FB Mathematik der Universitaet, D-67653 Kaiserslautern        \
> LIB "normal.lib";
// ** loaded /automnt/Singular/default/LIB/normal.lib (15094,2012-07-10)
// ** loaded /automnt/Singular/default/LIB/algebra.lib (14661,2012-03-05)
// ** loaded /automnt/Singular/default/LIB/matrix.lib (13658,2010-11-16)
// ** loaded /automnt/Singular/default/LIB/nctools.lib (14246,2011-05-26)
// ** loaded /automnt/Singular/default/LIB/random.lib (14661,2012-03-05)
// ** loaded reesclos.lib (14005,2011-03-17)
// ** loaded /automnt/Singular/default/LIB/hnoether.lib (14196,2011-05-04)
// ** loaded /automnt/Singular/default/LIB/primitiv.lib (13499,2010-10-15)
// ** loaded /automnt/Singular/default/LIB/ring.lib (15100,2012-07-10)
// ** loaded /automnt/Singular/default/LIB/inout.lib (13499,2010-10-15)
// ** loaded /automnt/Singular/default/LIB/presolve.lib (14203,2011-05-05)
// ** loaded /automnt/Singular/default/LIB/elim.lib (14661,2012-03-05)
// ** loaded /automnt/Singular/default/LIB/primdec.lib (14732,2012-03-30)
// ** loaded /automnt/Singular/default/LIB/absfact.lib (14191,2011-05-04)
// ** loaded /automnt/Singular/default/LIB/triang.lib (13499,2010-10-15)
// ** loaded /automnt/Singular/default/LIB/sing.lib (14840,2012-04-20)
// ** loaded /automnt/Singular/default/LIB/poly.lib (14852,2012-04-30)
// ** loaded /automnt/Singular/default/LIB/general.lib (14191,2011-05-04)
> ring r=0,(y,x),dp;
> ideal i=y5-y3-yx5-x9;
> genus(i);
9
> list nor=normal(i);nor;

// 'normal' created a list, say nor, of two elements.
// To see the list type
      nor;

// * nor[1] is a list of 1 ring(s).
// To access the i-th ring nor[1][i], give it a name, say Ri, and type
     def R1 = nor[1][1]; setring R1; norid; normap;
// For the other rings type first (if R is the name of your base ring)
     setring R;
// and then continue as for R1.
// Ri/norid is the affine algebra of the normalization of R/P_i where
// P_i is the i-th component of a decomposition of the input ideal id
// and normap the normalization map from R to Ri/norid.

// * nor[2] is a list of 1 ideal(s). Let ci be the last generator
// of the ideal nor[2][i]. Then the integral closure of R/P_i is
// generated as R-submodule of the total ring of fractions by
// 1/ci * nor[2][i].
[1]:
   [1]:
      //   characteristic : 0
//   number of vars : 5
//        block   1 : ordering dp
//                  : names    T(1) T(2) T(3)
//        block   2 : ordering dp
//                  : names    y x
//        block   3 : ordering C
[2]:
   [1]:
      _[1]=yx8+y2x4
      _[2]=y2x4
      _[3]=yx7+y2x3
      _[4]=y3
> def R=nor[1][1];
> setring R;
> ideal s=std(norid);s;
s[1]=x^9+y*x^5-y^5+y^3
s[2]=T(3)*x^2-y^3+y
s[3]=T(3)*y^2-x^7-y*x^3
s[4]=T(2)*y-x^4
s[5]=T(2)*x^3-T(3)*y+x^3
s[6]=T(1)-T(3)*x
s[7]=T(3)^2+T(2)*x-y*x^5-y^2*x+x
s[8]=T(2)*T(3)-y^2*x^2+x^2
s[9]=T(2)^2+T(2)-T(3)*x
> genus(s);
8
> 

Change History (7)

comment:1 Changed 10 years ago by boehm

Owner: changed from somebody to boehm

comment:2 Changed 10 years ago by gorzel

Description: modified (diff)

comment:3 Changed 9 years ago by gorzel

This ticket is not due to me, I don't know created it.

My sole contribution was to format the input, i.e. to enclose the text in braces {{{

comment:4 Changed 9 years ago by kroeker@…

With recent spielwiese (patch dc2e7d521c529b1881baa1cbaeb461c0e7d3c88c) we still get different results for this example (it takes some time):

> genus(s,"nor"); 
9
> genus(s,"prim"); 
6
> genus(s,"prim","nor"); 
6

Ideas what is getting wrong?

Full example code:

LIB("normal.lib");
ring r=0,(y,x),dp;
ideal i=y^5-y^3-y*x^5-x^9;
dim(std(i)); //=1
genus(i); //9
genus(i,"prim"); // 9
genus(i,"nor"); // 9
genus(i,"prim","nor"); // 9
list nor=normal(i);nor;
def R=nor[1][1];
setring R;
ideal s=std(norid);s;
genus(s); // =6
genus(s,"nor"); // =9
genus(s,"prim"); // =6
genus(s,"prim","nor"); // =6

comment:5 Changed 9 years ago by hannes

Resolution: fixed
Status: newclosed

comment:6 Changed 9 years ago by hannes

Resolution: fixed
Status: closedreopened

too many things - some unresolved

comment:7 Changed 9 years ago by hannes

Resolution: fixed
Status: reopenedclosed

current status: + original bug

  • genus(s): 9, solved

+ additional reports:

  • genus(s,"nor"); 9, solved
  • genus(s,"prim"); 9, solved
  • genus(s,"prim","nor"); 9, solved
Note: See TracTickets for help on using tickets.