Changeset 69fdf90 in git
- Timestamp:
- Mar 5, 2012, 10:31:58 PM (11 years ago)
- Branches:
- (u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', 'a800fe4b3e9d37a38c5a10cc0ae9dfa0c15a4ee6')
- Children:
- 51aa1628bc6d045fbc3a9adf018acd4371a09596
- Parents:
- 47dc5eae8e5fa15711c4af64c3ce91a844425401
- git-author:
- Martin Lee <martinlee84@web.de>2012-03-05 22:31:58+01:00
- git-committer:
- Martin Lee <martinlee84@web.de>2012-04-04 14:42:26+02:00
- Location:
- factory
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
factory/facFqBivar.cc
r47dc5ea r69fdf90 882 882 earlyFactors, DegreePattern& degs, int& liftBound, 883 883 const CFList& uniFactors, const ExtensionInfo& info, 884 const CanonicalForm& eval, constmodpk& b)884 const CanonicalForm& eval, modpk& b) 885 885 { 886 886 Variable alpha= info.getAlpha(); … … 920 920 921 921 if (smallFactorDeg >= liftBound || degree (A,y) <= 4) 922 henselLift12 (A, bufUniFactors, liftBound, Pi, diophant, M, true, b);922 henselLift12 (A, bufUniFactors, liftBound, Pi, diophant, M, b, true); 923 923 else if (sizeOfLiftPre > 1 && sizeOfLiftPre < 30) 924 924 { 925 henselLift12 (A, bufUniFactors, smallFactorDeg, Pi, diophant, M, true, b);925 henselLift12 (A, bufUniFactors, smallFactorDeg, Pi, diophant, M, b, true); 926 926 if (!extension) 927 927 earlyFactorDetection (earlyFactors, bufA, bufUniFactors, newLiftBound, … … 983 983 else 984 984 { 985 henselLift12 (A, bufUniFactors, smallFactorDeg, Pi, diophant, M, true, b);985 henselLift12 (A, bufUniFactors, smallFactorDeg, Pi, diophant, M, b, true); 986 986 if (!extension) 987 987 earlyFactorDetection (earlyFactors, bufA, bufUniFactors, newLiftBound, … … 1048 1048 1049 1049 return bufUniFactors; 1050 } 1051 1052 CFList 1053 henselLiftAndEarly (CanonicalForm& A, bool& earlySuccess, CFList& 1054 earlyFactors, DegreePattern& degs, int& liftBound, 1055 const CFList& uniFactors, const ExtensionInfo& info, 1056 const CanonicalForm& eval) 1057 { 1058 modpk dummy= modpk(); 1059 return henselLiftAndEarly (A, earlySuccess, earlyFactors, degs, liftBound, 1060 uniFactors, info, eval, dummy); 1050 1061 } 1051 1062 -
factory/facFqBivar.h
r47dc5ea r69fdf90 744 744 const ExtensionInfo& info, ///< [in] information about extension 745 745 const CanonicalForm& eval, ///< [in] evaluation point 746 const modpk& b= modpk() ///< [in] coeff bound 746 modpk& b ///< [in] coeff bound 747 ); 748 749 /// hensel Lifting and early factor detection 750 /// 751 /// @return @a henselLiftAndEarly returns monic (wrt Variable (1)) lifted 752 /// factors without factors which have been detected at an early stage 753 /// of Hensel lifting 754 /// @sa earlyFactorDetection(), extEarlyFactorDetection() 755 756 CFList 757 henselLiftAndEarly ( 758 CanonicalForm& A, ///< [in,out] poly to be factored, 759 ///< returns poly divided by detected factors 760 ///< in case of success 761 bool& earlySuccess, ///< [in,out] indicating success 762 CFList& earlyFactors, ///< [in,out] list of factors detected 763 ///< at early stage of Hensel lifting 764 DegreePattern& degs, ///< [in,out] degree pattern 765 int& liftBound, ///< [in,out] (adapted) lift bound 766 const CFList& uniFactors, ///< [in] univariate factors 767 const ExtensionInfo& info, ///< [in] information about extension 768 const CanonicalForm& eval ///< [in] evaluation point 747 769 ); 748 770 -
factory/facHensel.cc
r47dc5ea r69fdf90 449 449 450 450 CFList 451 diophantine (const CanonicalForm& F, const CFList& factors, const modpk& b) 451 diophantine (const CanonicalForm& F, const CanonicalForm& G, 452 const CFList& factors, modpk& b) 452 453 { 453 454 if (getCharacteristic() == 0) … … 497 498 { 498 499 modpk b= modpk(); 499 return diophantine (F, factors, b);500 return diophantine (F, 1, factors, b); 500 501 } 501 502 … … 724 725 void 725 726 henselLift12 (const CanonicalForm& F, CFList& factors, int l, CFArray& Pi, 726 CFList& diophant, CFMatrix& M, bool sort, const modpk& b)727 CFList& diophant, CFMatrix& M, modpk& b, bool sort) 727 728 { 728 729 if (sort) … … 730 731 Pi= CFArray (factors.length() - 1); 731 732 CFListIterator j= factors; 732 diophant= diophantine (F[0], factors, b);733 diophant= diophantine (F[0], F, factors, b); 733 734 DEBOUTLN (cerr, "diophant= " << diophant); 734 735 j++; … … 759 760 k.getItem()= bufFactors[i]; 760 761 factors.removeFirst(); 761 return; 762 } 763 764 void 765 henselLift12 (const CanonicalForm& F, CFList& factors, int l, CFArray& Pi, 766 CFList& diophant, CFMatrix& M, bool sort) 767 { 768 modpk dummy= modpk(); 769 henselLift12 (F, factors, l, Pi, diophant, M, dummy, sort); 762 770 } 763 771 -
factory/facHensel.h
r47dc5ea r69fdf90 48 48 CFList& diophant, ///< [in,out] result of diophantine() 49 49 CFMatrix& M, ///< [in,out] stores intermediate results 50 bool sort= true, ///< [in] sort factors by degree in 50 modpk& b, ///< [in] coeff bound 51 bool sort= true ///< [in] sort factors by degree in 51 52 ///< Variable(1) 52 const modpk& b= modpk ()///< [in] coeff bound 53 ); 54 55 /// Hensel lift from univariate to bivariate. 56 /// 57 /// @sa henselLiftResume12(), henselLift23(), henselLiftResume(), henselLift() 58 void 59 henselLift12 (const CanonicalForm& F, ///< [in] compressed, bivariate poly 60 CFList& factors, ///< [in, out] monic univariate factors of 61 ///< F, including leading coefficient as 62 ///< first element. Returns monic lifted 63 ///< factors without the leading 64 ///< coefficient 65 int l, ///< [in] lifting precision 66 CFArray& Pi, ///< [in,out] stores intermediate results 67 CFList& diophant, ///< [in,out] result of diophantine() 68 CFMatrix& M, ///< [in,out] stores intermediate results 69 bool sort= true ///< [in] sort factors by degree in 70 ///< Variable(1) 53 71 ); 54 72
Note: See TracChangeset
for help on using the changeset viewer.