Changeset 699567 in git for kernel/ideals.cc
- Timestamp:
- Jan 23, 2007, 8:00:39 PM (16 years ago)
- Branches:
- (u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', 'c18334b998a8adbf0013b8e1ce0824774019443e')
- Children:
- aa64d1c4ff9ddcd00665c3dacabbc270080c66da
- Parents:
- 804d684c0c2adffa869264248e5f91ceac4b2508
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/ideals.cc
r804d68 r699567 2 2 * Computer Algebra System SINGULAR * 3 3 ****************************************/ 4 /* $Id: ideals.cc,v 1.3 5 2007-01-18 13:22:14Singular Exp $ */4 /* $Id: ideals.cc,v 1.36 2007-01-23 19:00:39 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=IDELEMS(id)-1; i> -0; i--)184 for (int i=IDELEMS(id)-1; i>=0; i--) 185 185 { 186 186 if (id->m[i] != NULL) … … 196 196 */ 197 197 void idDelMultiples(ideal id) 198 { 199 int i, j; 200 int k = IDELEMS(id)-1; 201 for (i=k; i>=0; i--) 202 { 203 if (id->m[i]!=NULL) 204 { 205 for (j=k; j>i; j--) 206 { 207 if ((id->m[j]!=NULL) 208 && (pComparePolys(id->m[i], id->m[j]))) 209 { 210 pDelete(&id->m[j]); 211 } 212 } 213 } 214 } 215 } 216 217 /*2 218 * ideal id = (id[i]) 219 * if id[i] = id[j] then id[j] is deleted for j > i 220 */ 221 void idDelEquals(ideal id) 198 222 { 199 223 int i, j, t; … … 201 225 for (i=k-1; i>=0; i--) 202 226 { 203 if (id->m[i]!=NULL) 204 { 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]))) 235 { 236 pDelete(&id->m[j]); 237 } 227 for (j=k-1; j>i; j--) 228 { 229 if ((i!=j) 230 && (id->m[i]!=NULL) && (id->m[j]!=NULL) 231 && (pEqualPolys(id->m[i], id->m[j]))) 232 { 233 pDelete(&id->m[j]); 238 234 } 239 235 } … … 247 243 { 248 244 int i, j, t; 249 int k = IDELEMS(id) ;245 int k = IDELEMS(id), l = k; 250 246 for (i=k-1; i>=0; i--) 251 247 { 252 248 if (id->m[i] != NULL) 253 249 { 254 for (j=k-1; j>i; j--) 255 { 256 if ((id->m[j] != NULL) 250 for (j=l-1; j>=0; j--) 251 { 252 if ((i!=j) 253 && (id->m[j] != NULL) 257 254 && pLmEqual(id->m[i], id->m[j])) 258 255 { … … 272 269 if (id->m[i] != NULL) 273 270 { 274 for (j=k-1; j>i; j--) 275 { 276 if (id->m[j]!=NULL) 271 for (j=k-1; j>=0; j--) 272 { 273 if ((i!=j) 274 && (id->m[j]!=NULL) 275 && pDivisibleBy(id->m[i], id->m[j])) 277 276 { 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 } 277 pDelete(&id->m[j]); 286 278 } 287 279 }
Note: See TracChangeset
for help on using the changeset viewer.