facAlgFuncUtil.h
Go to the documentation of this file.
1 /*****************************************************************************\
2  * Computer Algebra System SINGULAR
3 \*****************************************************************************/
4 /** @file facAlgFuncUtil.h
5  *
6  * Utility functions for factorization over algebraic function fields
7  *
8  * @note some of the code is code from libfac or derived from code from libfac.
9  * Libfac is written by M. Messollen. See also COPYING for license information
10  * and README for general information on characteristic sets.
11  *
12  * @author Martin Lee
13  *
14  **/
15 /*****************************************************************************/
16 
17 
18 #ifndef FAC_ALG_FUNC_UTIL_H
19 #define FAC_ALG_FUNC_UTIL_H
20 
21 CFFList
22 append (const CFFList & Inputlist, const CFFactor & TheFactor);
23 
24 CFFList
25 merge (const CFFList & Inputlist1, const CFFList & Inputlist2);
26 
27 Varlist
28 varsInAs (const Varlist & uord, const CFList & As);
29 
30 int hasVar (const CanonicalForm &f, const Variable &v);
31 
32 int hasAlgVar(const CanonicalForm &f);
33 
35 generateMipo (int degOfExt);
36 
38 
39 CanonicalForm alg_LC (const CanonicalForm& f, int lev);
40 
41 void deflateDegree (const CanonicalForm & F, int & pExp, int n);
42 
43 CanonicalForm deflatePoly (const CanonicalForm & F, int exps, int n);
44 
45 CanonicalForm inflatePoly (const CanonicalForm & F, int exps, int n);
46 
47 void
48 multiplicity (CFFList& factors, const CanonicalForm& F, const CFList& as);
49 
51 backSubst (const CanonicalForm& F, const CFList& a, const CFList& b);
52 
54 subst (const CanonicalForm& f, const CFList& a, const CFList& b,
55  const CanonicalForm& Rstar, bool isFunctionField);
56 
58 divide (const CanonicalForm & ff, const CanonicalForm & f, const CFList & as);
59 
62  const Variable& x);
63 
65 evaluate (const CanonicalForm& f, const CanonicalForm& g,
66  const CanonicalForm& h, const CanonicalForm& powH,
67  const Variable& v);
68 
69 int
70 getDegOfExt (IntList & degreelist, int n);
71 
72 bool
73 isInseparable (const CFList & Astar);
74 
75 #endif
76 
const poly a
Definition: syzextra.cc:212
CanonicalForm divide(const CanonicalForm &ff, const CanonicalForm &f, const CFList &as)
factory's class for variables
Definition: variable.h:32
CanonicalForm deflatePoly(const CanonicalForm &F, int exps, int n)
CanonicalForm backSubst(const CanonicalForm &F, const CFList &a, const CFList &b)
factory's main class
Definition: canonicalform.h:75
CanonicalForm subst(const CanonicalForm &f, const CFList &a, const CFList &b, const CanonicalForm &Rstar, bool isFunctionField)
g
Definition: cfModGcd.cc:4031
CFFList append(const CFFList &Inputlist, const CFFactor &TheFactor)
CanonicalForm inflatePoly(const CanonicalForm &F, int exps, int n)
Varlist varsInAs(const Varlist &uord, const CFList &As)
CanonicalForm alg_lc(const CanonicalForm &f)
CanonicalForm QuasiInverse(const CanonicalForm &f, const CanonicalForm &g, const Variable &x)
int getDegOfExt(IntList &degreelist, int n)
FILE * f
Definition: checklibs.c:7
int hasVar(const CanonicalForm &f, const Variable &v)
CanonicalForm evaluate(const CanonicalForm &f, const CanonicalForm &g, const CanonicalForm &h, const CanonicalForm &powH, const Variable &v)
evaluate f at g/h at v such that powH*f is integral i.e. powH is assumed to be h^degree(f,v)
const Variable & v
< [in] a sqrfree bivariate poly
Definition: facBivar.h:37
bool isInseparable(const CFList &Astar)
CanonicalForm generateMipo(int degOfExt)
CanonicalForm alg_LC(const CanonicalForm &f, int lev)
void deflateDegree(const CanonicalForm &F, int &pExp, int n)
Variable x
Definition: cfModGcd.cc:4023
CFFList merge(const CFFList &Inputlist1, const CFFList &Inputlist2)
void multiplicity(CFFList &factors, const CanonicalForm &F, const CFList &as)
int hasAlgVar(const CanonicalForm &f)
static Poly * h
Definition: janet.cc:978
const poly b
Definition: syzextra.cc:213