Changeset 4cfd6d in git
- Timestamp:
- Nov 20, 2008, 6:55:04 PM (15 years ago)
- Branches:
- (u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', '0604212ebb110535022efecad887940825b97c3f')
- Children:
- 3b5daf5c3b6d494f4399c4436450100041ce3dc0
- Parents:
- c16f9922fe5d93bd72e4b2440cd6c7cd43889ca6
- Location:
- kernel
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/f5gb.cc
rc16f99 r4cfd6d 2 2 * Computer Algebra System SINGULAR * 3 3 ****************************************/ 4 /* $Id: f5gb.cc,v 1.1 0 2008-10-11 12:12:46ederc Exp $ */4 /* $Id: f5gb.cc,v 1.11 2008-11-20 17:55:04 ederc Exp $ */ 5 5 /* 6 6 * ABSTRACT: f5gb interface … … 24 24 #include "f5gb.h" 25 25 #include "lpolynom.h" 26 27 28 // global variables 29 const poly one = pInit(); 26 30 27 31 … … 89 93 90 94 95 // generating the list lp of ideal generators and test if 1 is in lp 96 bool generate_input_list(lpoly* lp, ideal id) 97 { 98 long j; 99 for(j=0; j<IDELEMS(id)-1; j++){ 100 101 lp[j].setPoly(id->m[j]); 102 103 if(pComparePolys(lp[j].getPoly(), one)){ 104 Print("1 in GB\n"); 105 return(1); 106 } 107 108 lp[j].setIndex(j+1); 109 lp[j].setTerm(one); 110 lp[j].setDel(false); 111 lp[j].setNext(&lp[j+1]); 112 Print("Labeled Polynomial %d: ",j+1); 113 Print("Label Term: "); 114 pWrite(lp[j].getTerm()); 115 Print("Index: %d\n", lp[j].getIndex()); 116 Print("Delete? %d\n", lp[j].getDel()); 117 pWrite(lp[j].getPoly()); 118 Print("NEUNEUNEU\n\n"); 119 } 120 return(0); 121 } 122 123 91 124 /*2 92 125 * computes a gb of the ideal i in the ring r with our f5 … … 96 129 { 97 130 ideal iTmp, g_basis; 98 long j, k;99 poly one = pInit();131 bool one_id; 132 long j,k; 100 133 pSetCoeff(one, nInit(1)); 101 134 pWrite(one); … … 119 152 lp = new lpoly[IDELEMS(iTmp)]; 120 153 121 for(j=0; j <IDELEMS(iTmp)-1; j++){ 122 lp[j].setPoly(iTmp->m[j]); 123 124 if(pComparePolys(lp[j].getPoly(), one)){ 125 Print("1 in GB\n"); 126 return(iTmp); 127 } 128 129 lp[j].setIndex(j+1); 130 lp[j].setTerm(one); 131 lp[j].setDel(false); 132 lp[j].setNext(&lp[j+1]); 133 Print("Labeled Polynomial %d: ",j+1); 134 Print("Label Term: "); 135 pWrite(lp[j].getTerm()); 136 Print("Index: %d\n", lp[j].getIndex()); 137 Print("Delete? %d\n", lp[j].getDel()); 138 pWrite(lp[j].getPoly()); 139 Print("\n\n"); 140 } 141 142 lp[IDELEMS(iTmp)-1].setPoly(iTmp->m[IDELEMS(iTmp)-1]); 143 144 if(pComparePolys(lp[IDELEMS(iTmp)-1].getPoly(), one)){ 145 Print("1 in GB\n"); 146 return(iTmp); 147 } 148 149 lp[IDELEMS(iTmp)-1].setIndex(IDELEMS(iTmp)); 150 lp[IDELEMS(iTmp)-1].setTerm(one); 151 lp[IDELEMS(iTmp)-1].setDel(false); 152 lp[IDELEMS(iTmp)-1].setNext(NULL); 153 Print("Labeled Polynomial %d: ",IDELEMS(iTmp)); 154 Print("Label Term: "); 155 pWrite(lp[IDELEMS(iTmp)-1].getTerm()); 156 Print("Index: %d\n", lp[IDELEMS(iTmp)-1].getIndex()); 157 Print("Delete? %d\n", lp[IDELEMS(iTmp)-1].getDel()); 158 pWrite(lp[IDELEMS(iTmp)-1].getPoly()); 159 Print("\n\n"); 154 one_id = generate_input_list(lp,iTmp); 155 160 156 161 157 // PROBLEM: muss signatur mitliefern, daher datentyp -
kernel/f5gb.h
rc16f99 r4cfd6d 2 2 * Computer Algebra System SINGULAR * 3 3 ****************************************/ 4 /* $Id: f5gb.h,v 1. 9 2008-10-11 12:12:46ederc Exp $ */4 /* $Id: f5gb.h,v 1.10 2008-11-20 17:55:04 ederc Exp $ */ 5 5 /* 6 6 * ABSTRACT: f5gb interface … … 17 17 18 18 19 // generating the list lp of ideal generators and 20 // test if 1 is in lp(return 1) or not(return 0) 21 bool generate_input_list(lpoly* lp, ideal id); 22 19 23 /* computes incrementally gbs of subsets of the input 20 **gb{f_m} -> gb{f_m,f_(m-1)} -> gb{f_m,...,f_1}24 gb{f_m} -> gb{f_m,f_(m-1)} -> gb{f_m,...,f_1} 21 25 */ 22 26 lpoly* f5_inc(lpoly* lp, lpoly* g_prev);
Note: See TracChangeset
for help on using the changeset viewer.