Changeset 160ec6 in git
- Timestamp:
- Jan 7, 2013, 2:44:00 PM (11 years ago)
- Branches:
- (u'spielwiese', 'd1b01e9d51ade4b46b745d3bada5c5f3696be3a8')
- Children:
- 36ef97a87d28a9e3e20179ac4f978aad9a7883ba
- Parents:
- 5275c0ef15d708a9ad7d1d17c29af6421d2b2ed6
- git-author:
- Martin Lee <martinlee84@web.de>2013-01-07 14:44:00+01:00
- git-committer:
- Martin Lee <martinlee84@web.de>2013-05-02 11:42:35+02:00
- Location:
- factory
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
factory/facAbsFact.cc
r5275c0 r160ec6 23 23 24 24 #ifdef HAVE_FLINT 25 25 #ifdef HAVE_NTL 26 27 //TODO optimize choice of p -> choose p as large as possible (better than small p since factorization mod p does not require field extension, also less lifting) 26 28 int choosePoint (const CanonicalForm& F, int tdegF, CFArray& eval) 27 29 { … … 80 82 } 81 83 82 CF List absFactorize (const CanonicalForm& G)84 CFFList absFactorize (const CanonicalForm& G) 83 85 { 84 86 //F is assumed to be bivariate, irreducible over Q, primitive wrt x and y, compressed … … 123 125 setCharacteristic (0); 124 126 CanonicalForm F1= F(eval[0],1); 125 setCharacteristic (p);126 setCharacteristic (0);127 127 int s= tdegF/minTdeg + 1; 128 128 CanonicalForm bound= power (maxNorm (F1), 2*(s-1)); … … 190 190 191 191 transpose (NTLM, NTLM); 192 long r=LLL (det, NTLM, 1L, 1L); 192 long r=LLL (det, NTLM, 1L, 1L); //use floating point LLL ? 193 193 transpose (NTLM, NTLM); 194 194 M= *convertNTLmat_ZZ2FacCFMatrix (NTLM); … … 201 201 CFFList mipoFactors= factorize (mipo); 202 202 mipoFactors.removeFirst(); 203 //TODO check if mipoFactors has length 1 and multiplicity 1 - if not choose a new point! 203 204 On (SW_RATIONAL); 204 205 Variable alpha= rootOf (mipo); 205 206 CFFList QaFactors= factorize (F1, alpha); 206 207 208 QaFactors.append (CFFactor (mipo, 1)); //last factor is the minimal polynomial that defines the extension 207 209 fmpz_poly_clear (v[0]); 208 210 fmpz_poly_clear (v[1]); … … 213 215 delete [] link; 214 216 fmpz_poly_factor_clear (liftedFactors); 215 return CFList();217 return QaFactors; 216 218 } 217 219 #endif 218 219 220 #endif 221 222 -
factory/facAbsFact.h
r5275c0 r160ec6 19 19 /*BEGINPUBLIC*/ 20 20 21 CF List absFactorize (const CanonicalForm& F);21 CFFList absFactorize (const CanonicalForm& F); 22 22 23 23 /*ENDPUBLIC*/
Note: See TracChangeset
for help on using the changeset viewer.