![]() |
My Project
|
#include "config.h"
#include "timing.h"
#include "debug.h"
#include "facAbsBiFact.h"
#include "facAbsFact.h"
#include "facFqFactorize.h"
#include "facFqFactorizeUtil.h"
#include "facHensel.h"
#include "facSparseHensel.h"
#include "facFactorize.h"
#include "cf_reval.h"
#include "cf_primes.h"
#include "cf_algorithm.h"
#include "cfModResultant.h"
#include "cfUnivarGcd.h"
#include "FLINTconvert.h"
Go to the source code of this file.
Functions | |
TIMING_DEFINE_PRINT (abs_fac_bi_factorizer) TIMING_DEFINE_PRINT(abs_fac_hensel_lift) TIMING_DEFINE_PRINT(abs_fac_factor_recombination) TIMING_DEFINE_PRINT(abs_fac_shift_to_zero) TIMING_DEFINE_PRINT(abs_fac_precompute_leadcoeff) TIMING_DEFINE_PRINT(abs_fac_evaluation) TIMING_DEFINE_PRINT(abs_fac_recover_factors) TIMING_DEFINE_PRINT(abs_fac_bifactor_total) TIMING_DEFINE_PRINT(abs_fac_luckswang) TIMING_DEFINE_PRINT(abs_fac_lcheuristic) TIMING_DEFINE_PRINT(abs_fac_cleardenom) TIMING_DEFINE_PRINT(abs_fac_compress) CFAFList RothsteinTragerResultant(const CanonicalForm &F | |
steps 4)-8) of Algorithm B.7.8. from Greuel, Pfister "A Singular
Introduction to Commutative Algebra" | |
for (CFIterator i=w;i.hasTerms();i++) terms.append(i.coeff()) | |
for (int i=terms.length();i >=1;i--, iter++) g+ | |
for (int i=F.level();i >=2;iter++, i--) | |
if (degree(Feval, x) >=8||degree(H, x) >=8) res | |
while (degree(sqrfPartRes) !=s) | |
return | CFAFList (CFAFactor(factor, getMipo(beta), 1)) |
CFAFList | RothsteinTrager (const CanonicalForm &F, const CFList &factors, const Variable &alpha, const CFList &evaluation) |
Algorithm B.7.8 from Greuel, Pfister "A Singular Introduction to Commutative
Algebra". | |
CFList | evalPoints4AbsFact (const CanonicalForm &F, CFList &eval, Evaluation &E, int &intervalSize) |
CFAFList | absFactorize (const CanonicalForm &G) |
absolute factorization of a multivariate poly over Q | |
CFAFList | absFactorizeMain (const CanonicalForm &G) |
main absolute factorization routine, expects poly which is irreducible over Q | |
Variables | |
const CanonicalForm & | w |
const CanonicalForm int | s |
const CanonicalForm int const CFList & | evaluation |
const CanonicalForm int const CFList const Variable & | y |
Variable | x = Variable (1) |
CanonicalForm | derivF = deriv (F, x) |
CanonicalForm | g = 0 |
CanonicalForm | geval = g |
CanonicalForm | derivFeval = derivF |
CanonicalForm | Feval = F |
CanonicalForm | H = y*derivFeval-geval |
CanonicalForm | res = resultant (Feval, H, x) |
CanonicalForm | sqrfPartRes = sqrfPart (res) |
CFListIterator | iter = terms |
REvaluation | E (1, terms.length(), IntRandom(25)) |
do | |
Variable | beta = rootOf (sqrfPartRes) |
CanonicalForm | factor = gcd (F, beta*derivF-g) |
Definition in file facAbsFact.cc.
CFAFList absFactorize | ( | const CanonicalForm & | G | ) |
absolute factorization of a multivariate poly over Q
[in] | G | poly over Q |
Definition at line 262 of file facAbsFact.cc.
CFAFList absFactorizeMain | ( | const CanonicalForm & | F | ) |
main absolute factorization routine, expects poly which is irreducible over Q
[in] | G | irred poly over Q |
Definition at line 303 of file facAbsFact.cc.
CFList evalPoints4AbsFact | ( | const CanonicalForm & | F, |
CFList & | eval, | ||
Evaluation & | E, | ||
int & | intervalSize | ||
) |
Definition at line 132 of file facAbsFact.cc.
for | ( | CFIterator | i = w;i.hasTerms();i++ | ) |
Definition at line 77 of file facAbsFact.cc.
for | ( | int | i = terms.length();i >=1;i-- , |
iter++ | |||
) |
CFAFList RothsteinTrager | ( | const CanonicalForm & | F, |
const CFList & | factors, | ||
const Variable & | alpha, | ||
const CFList & | evaluation | ||
) |
Algorithm B.7.8 from Greuel, Pfister "A Singular Introduction to Commutative Algebra".
Definition at line 105 of file facAbsFact.cc.
TIMING_DEFINE_PRINT | ( | abs_fac_bi_factorizer | ) | const & |
steps 4)-8) of Algorithm B.7.8. from Greuel, Pfister "A Singular Introduction to Commutative Algebra"
while | ( | degree(sqrfPartRes) ! | = s | ) |
Variable beta = rootOf (sqrfPartRes) |
Definition at line 95 of file facAbsFact.cc.
CanonicalForm derivF = deriv (F, x) |
Definition at line 59 of file facAbsFact.cc.
derivFeval = derivF |
Definition at line 60 of file facAbsFact.cc.
do |
Definition at line 65 of file facAbsFact.cc.
REvaluation E(1, terms.length(), IntRandom(25)) | ( | 1 | , |
terms. | length(), | ||
IntRandom(25) | |||
) |
const CanonicalForm int const CFList& evaluation |
Definition at line 52 of file facAbsFact.cc.
CanonicalForm factor = gcd (F, beta*derivF-g) |
Definition at line 97 of file facAbsFact.cc.
Feval = F |
Definition at line 60 of file facAbsFact.cc.
g = 0 |
Definition at line 60 of file facAbsFact.cc.
geval = g |
Definition at line 60 of file facAbsFact.cc.
H = y*derivFeval-geval |
Definition at line 60 of file facAbsFact.cc.
iter = terms |
Definition at line 61 of file facAbsFact.cc.
Definition at line 51 of file facAbsFact.cc.
Definition at line 60 of file facAbsFact.cc.
Definition at line 51 of file facAbsFact.cc.
Definition at line 58 of file facAbsFact.cc.