Changeset 6fd3a2 in git for Singular/LIB/primdec.lib
- Timestamp:
- Dec 7, 2007, 11:20:34 AM (16 years ago)
- Branches:
- (u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
- Children:
- b809a8a816d3540b354df0da574c2d8753d13879
- Parents:
- 70c2cc2d9c397681c3678b4a007ae94378a277f6
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/LIB/primdec.lib
r70c2cc2 r6fd3a2 1 1 /////////////////////////////////////////////////////////////////////////////// 2 version="$Id: primdec.lib,v 1.13 5 2007-04-20 09:53:27Singular Exp $";2 version="$Id: primdec.lib,v 1.136 2007-12-07 10:20:34 Singular Exp $"; 3 3 category="Commutative Algebra"; 4 4 info=" … … 5724 5724 static proc radicalReduction(ideal I, ideal ser, int allIndep, list #) 5725 5725 { 5726 // allMaximal 1 -> Indicates that the reduction to the zerodim case 5727 // must be done for all indep set of the leading terms ideal 5728 // 0 -> Otherwise 5729 // ideal ser Only for radicalKL. (Same as in radicalKL) 5730 // list # Only for radicalKL (If #[1] = 1, only equiradical is required. 5731 // It is used to set the value of done.) 5726 // allMaximal 1 -> Indicates that the reduction to the zerodim case 5727 // must be done for all indep set of the leading terms ideal 5728 // 0 -> Otherwise 5729 // ideal ser Only for radicalKL. (Same as in radicalKL) 5730 // list # Only for radicalKL (If #[1] = 1, 5731 // only equiradical is required. 5732 // It is used to set the value of done.) 5732 5733 5733 5734 attrib(I, "isSB", 1); // I needs to be a reduced standard basis … … 5786 5787 //------------------------------------------------------------------------- 5787 5788 5788 // SL 2006-04-24 1 5789 // 5790 // 5791 // 5789 // SL 2006-04-24 1 If allIndep = 0, then it only computes one maximal 5790 // independent set. 5791 // This looks better for the new algorithm but not for KL 5792 // algorithm 5792 5793 list parameters = allIndep; 5793 5794 indep = newMaxIndependSetDp(I, parameters); … … 5873 5874 op = option(get); 5874 5875 option(redSB); 5875 @j = interred(@j); //to obtain a reduced standardbasis 5876 attrib(@j, "isSB", 1); 5876 @j = std(@j); //to obtain a reduced standardbasis 5877 5877 option(set, op); 5878 5878 … … 5974 5974 // SL 2006.04.11 2 Debug messages 5975 5975 5976 // SL 2006.04.21 1 5977 // 5978 // 5976 // SL 2006.04.21 1 New variable "done". 5977 // It tells if the radical is already computed or 5978 // if it still has to be computed the radical of the new ideal I 5979 5979 int done; 5980 5980 if(((@wr == 1) && (dim(I)<jdim)) || (deg(I[1])==0) || (size(te) == 0)) … … 5988 5988 // SL 2006.04.21 2 5989 5989 5990 // SL 2006.04.21 1 See details of the output at the beggining of this proc.5990 // SL 2006.04.21 1 See details of the output at the beginning of this proc. 5991 5991 list result = rad, I, done; 5992 5992 return(result); 5993 5993 // SL 2006.04.21 2 5994 5994 } 5995 5996 5997 5995 5998 5996 /////////////////////////////////////////////////////////////////////////////// … … 6006 6004 // Output: ideal. Intersection of some primes of I different from the ones in P. 6007 6005 { 6008 int k = 1; 6009 int good = 0; 6006 int k = 1; // Counter 6007 int good = 0; // Checks if an element of P is in rad(I) 6010 6008 6011 6009 dbprint (printlevel-voice, "// We search for an element in P - sqrt(I)."); … … 6027 6025 if (P[k] != 1) 6028 6026 { 6027 intvec oo=option(get); 6028 option(redSB); 6029 6029 ideal J = sat(I, P[k])[1]; 6030 option(set,oo); 6031 6030 6032 } 6031 6033 else … … 6040 6042 dbprint(printlevel - voice, "// The dimension is ", dim(groebner(J))); 6041 6043 6042 int allMaximal = 0; // Compute the zerodim reduction for only one indep set. 6043 ideal re = 1; // No reduction is need, there are not redundant components. 6044 list emptyList = list(); // Look for primes of any dimension, not only of max dimension. 6044 int allMaximal = 0; // Compute the zerodim reduction for only one indep set. 6045 ideal re = 1; // No reduction is need, 6046 // there are not redundant components. 6047 list emptyList = list(); // Look for primes of any dimension, 6048 // not only of max dimension. 6045 6049 list result = radicalReduction(J, re, allMaximal, emptyList); 6046 6050
Note: See TracChangeset
for help on using the changeset viewer.