Changeset b533b3 in git for kernel/ideals.cc
- Timestamp:
- Jan 18, 2007, 2:22:14 PM (17 years ago)
- Branches:
- (u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
- Children:
- 27afa17ad199291fbbc49248d936b0af2732e9da
- Parents:
- 35ee46ccc87abc5a90d3893f8d9348ede15b26f1
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/ideals.cc
r35ee46c rb533b3 2 2 * Computer Algebra System SINGULAR * 3 3 ****************************************/ 4 /* $Id: ideals.cc,v 1.3 4 2007-01-12 12:41:46Singular Exp $ */4 /* $Id: ideals.cc,v 1.35 2007-01-18 13:22:14 Singular Exp $ */ 5 5 /* 6 6 * ABSTRACT - all basic methods to manipulate ideals … … 182 182 void idNorm(ideal id) 183 183 { 184 for (int i= 0; i<IDELEMS(id); i++)184 for (int i=IDELEMS(id)-1; i>-0; i--) 185 185 { 186 186 if (id->m[i] != NULL) … … 203 203 if (id->m[i]!=NULL) 204 204 { 205 for (j=k-1; j>=0; j--) 206 { 207 if ((i!=j) 208 && (id->m[j]!=NULL) 209 && (pComparePolys(id->m[i], id->m[j]))) 205 for (j=k-1; j>i; j--) 206 { 207 if (id->m[j]!=NULL) 208 { 209 if(pComparePolys(id->m[i], id->m[j])) 210 { 211 pDelete(&id->m[j]); 212 } 213 } 214 } 215 } 216 } 217 } 218 219 /*2 220 * ideal id = (id[i]) 221 * if id[i] = id[j] then id[j] is deleted for j > i 222 */ 223 void idDelEquals(ideal id) 224 { 225 int i, j, t; 226 int k = IDELEMS(id), l = k; 227 for (i=k-1; i>=0; i--) 228 { 229 if (id->m[i]!=NULL) 230 { 231 for (j=k-1; j>i; j--) 232 { 233 if ((id->m[j]!=NULL) 234 && (pEqualPolys(id->m[i], id->m[j]))) 210 235 { 211 236 pDelete(&id->m[j]); 212 237 } 213 }214 }215 }216 }217 218 /*2219 * ideal id = (id[i])220 * if id[i] = id[j] then id[j] is deleted for j > i221 */222 void idDelEquals(ideal id)223 {224 int i, j, t;225 int k = IDELEMS(id), l = k;226 for (i=k-1; i>=0; i--)227 {228 for (j=k-1; j>i; j--)229 {230 if ((i!=j)231 && (id->m[i]!=NULL) && (id->m[j]!=NULL)232 && (pEqualPolys(id->m[i], id->m[j])))233 {234 pDelete(&id->m[j]);235 238 } 236 239 } … … 244 247 { 245 248 int i, j, t; 246 int k = IDELEMS(id) , l = k;249 int k = IDELEMS(id); 247 250 for (i=k-1; i>=0; i--) 248 251 { 249 252 if (id->m[i] != NULL) 250 253 { 251 for (j=l-1; j>=0; j--) 252 { 253 if ((i!=j) 254 && (id->m[j] != NULL) 254 for (j=k-1; j>i; j--) 255 { 256 if ((id->m[j] != NULL) 255 257 && pLmEqual(id->m[i], id->m[j])) 256 258 { … … 270 272 if (id->m[i] != NULL) 271 273 { 272 for (j=k-1; j>=0; j--) 273 { 274 if ((i!=j) 275 && (id->m[j]!=NULL) 276 && pDivisibleBy(id->m[i], id->m[j])) 274 for (j=k-1; j>i; j--) 275 { 276 if (id->m[j]!=NULL) 277 277 { 278 pDelete(&id->m[j]); 278 if(pDivisibleBy(id->m[i], id->m[j])) 279 { 280 pDelete(&id->m[j]); 281 } 282 else if(pDivisibleBy(id->m[j], id->m[i])) 283 { 284 pDelete(&id->m[i]); 285 } 279 286 } 280 287 }
Note: See TracChangeset
for help on using the changeset viewer.