Changeset 160ec6 in git


Ignore:
Timestamp:
Jan 7, 2013, 2:44:00 PM (11 years ago)
Author:
Martin Lee <martinlee84@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
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
Message:
chg: changes to output and documentation
Location:
factory
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • factory/facAbsFact.cc

    r5275c0 r160ec6  
    2323
    2424#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)
    2628int choosePoint (const CanonicalForm& F, int tdegF, CFArray& eval)
    2729{
     
    8082}
    8183
    82 CFList absFactorize (const CanonicalForm& G)
     84CFFList absFactorize (const CanonicalForm& G)
    8385{
    8486  //F is assumed to be bivariate, irreducible over Q, primitive wrt x and y, compressed
     
    123125  setCharacteristic (0);
    124126  CanonicalForm F1= F(eval[0],1);
    125   setCharacteristic (p);
    126   setCharacteristic (0);
    127127  int s= tdegF/minTdeg + 1;
    128128  CanonicalForm bound= power (maxNorm (F1), 2*(s-1));
     
    190190
    191191  transpose (NTLM, NTLM);
    192   long r=LLL (det, NTLM, 1L, 1L);
     192  long r=LLL (det, NTLM, 1L, 1L); //use floating point LLL ?
    193193  transpose (NTLM, NTLM);
    194194  M= *convertNTLmat_ZZ2FacCFMatrix (NTLM);
     
    201201  CFFList mipoFactors= factorize (mipo);
    202202  mipoFactors.removeFirst();
     203  //TODO check if mipoFactors has length 1 and multiplicity 1 - if not choose a new point!
    203204  On (SW_RATIONAL);
    204205  Variable alpha= rootOf (mipo);
    205206  CFFList QaFactors= factorize (F1, alpha);
    206207
     208  QaFactors.append (CFFactor (mipo, 1)); //last factor is the minimal polynomial that defines the extension
    207209  fmpz_poly_clear (v[0]);
    208210  fmpz_poly_clear (v[1]);
     
    213215  delete [] link;
    214216  fmpz_poly_factor_clear (liftedFactors);
    215   return CFList();
     217  return QaFactors;
    216218}
    217219#endif
    218 
    219 
     220#endif
     221
     222
  • factory/facAbsFact.h

    r5275c0 r160ec6  
    1919/*BEGINPUBLIC*/
    2020
    21 CFList absFactorize (const CanonicalForm& F);
     21CFFList absFactorize (const CanonicalForm& F);
    2222
    2323/*ENDPUBLIC*/
Note: See TracChangeset for help on using the changeset viewer.