Changeset ae8a3a in git
 Timestamp:
 Dec 27, 2014, 4:10:36 PM (8 years ago)
 Branches:
 (u'jengelhdatetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', '0604212ebb110535022efecad887940825b97c3f')
 Children:
 4058df38c2114c692455481741dc4f1a8439e01b
 Parents:
 2f3b2753bc2be6d7396f61b99d46ba1977c9388d
 gitauthor:
 Martin Lee <martinlee84@web.de>20141227 16:10:36+01:00
 gitcommitter:
 Martin Lee <martinlee84@web.de>20150317 21:34:47+01:00
 Location:
 factory
 Files:

 2 edited
Legend:
 Unmodified
 Added
 Removed

factory/facAlgFunc.cc
r2f3b27 rae8a3a 327 327 R= Astar.getFirst(); 328 328 rb= R.mvar(); 329 Returnlist.append (rb); 330 if (isFunctionField) 331 Returnlist.append (denrb); 329 332 } 330 333 else … … 408 411 if (isFunctionField) 409 412 Returnlist.append (denra); 410 }411 }412 Returnlist.append (rb);413 if (isFunctionField)414 Returnlist.append (denrb);413 Returnlist.append (rb); 414 if (isFunctionField) 415 Returnlist.append (denrb); 416 } 417 } 415 418 416 419 if (isRat && getCharacteristic() == 0) 
factory/facAlgFuncUtil.cc
r2f3b27 rae8a3a 122 122 { 123 123 if (isFunctionField) 124 ASSERT ( 2*a.length() == b.length(), "wrong length of lists");124 ASSERT ((a.length()  1)*4 == b.length()  (a.length() == 1 && b.length() == 2), "wrong length of lists"); 125 125 else 126 ASSERT ( a.length() == b.length(), "lists of equal length expected");126 ASSERT ((a.length()  1)*2 == b.length()  (a.length() == 1 && b.length() == 1), "lists of equal length expected"); 127 127 CFListIterator j= b; 128 CanonicalForm result= f, tmp, powj ;128 CanonicalForm result= f, tmp, powj, tmp3; 129 129 CFListIterator i= a; 130 int length= a.length(); 131 int count= 0; 132 for (; i.hasItem() && j.hasItem(); i++, j++, count++) 133 { 134 if (length  count == 2) 135 { 136 if (!isFunctionField) 137 { 138 result= result (b.getLast(), a.getLast().mvar()); 139 result= result (j.getItem(), i.getItem().mvar()); 140 break; 141 } 142 else 143 { 144 tmp= b.getLast(); 130 CanonicalForm tmp1= i.getItem(); 131 i++; 132 CanonicalForm tmp2= j.getItem(); 133 j++; 134 for (;i.hasItem() && j.hasItem(); i++, j++) 135 { 136 if (!isFunctionField) 137 { 138 result= result (j.getItem(), i.getItem().mvar()); 139 result= result (tmp2, tmp1.mvar()); 140 tmp1= i.getItem(); 141 j++; 142 if (j.hasItem()) 143 tmp2= j.getItem(); 144 } 145 else 146 { 147 tmp= j.getItem(); 145 148 j++; 149 tmp3= j.getItem(); 146 150 j++; 147 powj= power (tmp, degree (result, a.getLast().mvar())); 148 result= evaluate (result, j.getItem(), tmp, powj, a.getLast().mvar()); 151 powj= power (j.getItem(), degree (result, i.getItem().mvar())); 152 result= evaluate (result, tmp3, j.getItem(), powj, i.getItem().mvar()); 153 154 if (fdivides (powj, result, tmp3)) 155 result= tmp3; 156 157 result /= vcontent (result, Variable (i.getItem().level() + 1)); 158 159 powj= power (tmp, degree (result, tmp1.mvar())); 160 result= evaluate (result, tmp2, tmp, powj, tmp1.mvar()); 149 161 150 162 if (fdivides (powj, result, tmp)) 151 163 result= tmp; 152 164 153 result /= vcontent (result, Variable (a.getLast().level() + 1)); 154 j; 155 j; 156 tmp= j.getItem(); 165 result /= vcontent (result, Variable (tmp1.level() + 1)); 166 tmp1= i.getItem(); 157 167 j++; 158 powj= power (j.getItem(), degree (result, i.getItem().mvar())); 159 result= evaluate (result, tmp, j.getItem(), powj, i.getItem().mvar()); 160 161 if (fdivides (powj, result, tmp)) 162 result= tmp; 163 164 result /= vcontent (result, Variable (i.getItem().level() + 1)); 165 break; 166 } 167 } 168 else 169 { 170 if (!isFunctionField) 171 result= result (j.getItem(), i.getItem().mvar()); 172 else 173 { 174 tmp= j.getItem(); 175 j++; 176 powj= power (j.getItem(), degree (result, i.getItem().mvar())); 177 result= evaluate (result, tmp, j.getItem(), powj, i.getItem().mvar()); 178 179 if (fdivides (powj, result, tmp)) 180 result= tmp; 181 182 result /= vcontent (result, Variable (i.getItem().level() + 1)); 183 } 168 if (j.hasItem()) 169 tmp2= j.getItem(); 184 170 } 185 171 }
Note: See TracChangeset
for help on using the changeset viewer.