fac_util.h
Go to the documentation of this file.
1 /* emacs edit mode for this file is -*- C++ -*- */
2 
3 /**
4  * @file fac_util.h
5  *
6  * operations mod p^k and some other useful functions for factorization
7 **/
8 
9 #ifndef INCL_FAC_UTIL_H
10 #define INCL_FAC_UTIL_H
11 
12 // #include "config.h"
13 
14 #include "canonicalform.h"
15 #include "cf_eval.h"
16 
17 /*BEGINPUBLIC*/
18 
19 /**
20  * class to do operations mod p^k for int's p and k
21 **/
22 class modpk
23 {
24 private:
27  int p;
28  int k;
29 public:
30  modpk();
31  modpk( int q, int l );
32  modpk( const modpk & m );
33  modpk& operator= ( const modpk& m );
34  ~modpk() {}
35  int getp() const { return p; }
36  int getk() const { return k; }
37  CanonicalForm inverse( const CanonicalForm & f, bool symmetric = true ) const;
38  CanonicalForm getpk() const { return pk; }
39  CanonicalForm operator() ( const CanonicalForm & f, bool symmetric = true ) const;
40 };
41 
42 
44 
45 /*ENDPUBLIC*/
46 
47 bool gcd_test_one ( const CanonicalForm & f, const CanonicalForm & g, bool swap, int & d );
48 
49 void extgcd ( const CanonicalForm & a, const CanonicalForm & b, CanonicalForm & S, CanonicalForm & T, const modpk & pk );
50 
51 #endif /* ! INCL_FAC_UTIL_H */
int p
Definition: fac_util.h:27
const poly a
Definition: syzextra.cc:212
CanonicalForm replaceLc(const CanonicalForm &f, const CanonicalForm &c)
Definition: fac_util.cc:89
modpk()
Definition: fac_util.cc:21
CanonicalForm operator()(const CanonicalForm &f, bool symmetric=true) const
Definition: fac_util.cc:78
factory's main class
Definition: canonicalform.h:75
g
Definition: cfModGcd.cc:4031
modpk & operator=(const modpk &m)
Definition: fac_util.cc:46
CanonicalForm inverse(const CanonicalForm &f, bool symmetric=true) const
Definition: fac_util.cc:58
CanonicalForm pk
Definition: fac_util.h:25
int k
Definition: fac_util.h:28
void extgcd(const CanonicalForm &a, const CanonicalForm &b, CanonicalForm &S, CanonicalForm &T, const modpk &pk)
int m
Definition: cfEzgcd.cc:119
FILE * f
Definition: checklibs.c:7
int getk() const
Definition: fac_util.h:36
#define swap(_i, _j)
CanonicalForm getpk() const
Definition: fac_util.h:38
bool gcd_test_one(const CanonicalForm &f, const CanonicalForm &g, bool swap, int &d)
Coprimality Check. f and g are assumed to have the same level. If swap is true, the main variables of...
Definition: cfGcdUtil.cc:21
~modpk()
Definition: fac_util.h:34
static jList * T
Definition: janet.cc:37
const poly b
Definition: syzextra.cc:213
class to do operations mod p^k for int's p and k
Definition: fac_util.h:22
int l
Definition: cfEzgcd.cc:94
evaluate polynomials at points
int getp() const
Definition: fac_util.h:35
Header for factory's main class CanonicalForm.
CanonicalForm pkhalf
Definition: fac_util.h:26