My Project  debian-1:4.1.1-p2+ds-4build2
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 */
f
FILE * f
Definition: checklibs.c:9
canonicalform.h
gcd_test_one
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
cf_eval.h
modpk::operator=
modpk & operator=(const modpk &m)
Definition: fac_util.cc:46
modpk::operator()
CanonicalForm operator()(const CanonicalForm &f, bool symmetric=true) const
Definition: fac_util.cc:78
modpk::k
int k
Definition: fac_util.h:28
g
g
Definition: cfModGcd.cc:4031
replaceLc
CanonicalForm replaceLc(const CanonicalForm &f, const CanonicalForm &c)
Definition: fac_util.cc:89
b
CanonicalForm b
Definition: cfModGcd.cc:4044
CanonicalForm
factory's main class
Definition: canonicalform.h:77
modpk::pkhalf
CanonicalForm pkhalf
Definition: fac_util.h:26
modpk::modpk
modpk()
Definition: fac_util.cc:21
T
static jList * T
Definition: janet.cc:31
modpk::p
int p
Definition: fac_util.h:27
modpk::getpk
CanonicalForm getpk() const
Definition: fac_util.h:38
modpk
class to do operations mod p^k for int's p and k
Definition: fac_util.h:22
modpk::getk
int getk() const
Definition: fac_util.h:36
m
int m
Definition: cfEzgcd.cc:121
modpk::inverse
CanonicalForm inverse(const CanonicalForm &f, bool symmetric=true) const
Definition: fac_util.cc:58
l
int l
Definition: cfEzgcd.cc:93
modpk::~modpk
~modpk()
Definition: fac_util.h:34
extgcd
void extgcd(const CanonicalForm &a, const CanonicalForm &b, CanonicalForm &S, CanonicalForm &T, const modpk &pk)
swap
#define swap(_i, _j)
modpk::getp
int getp() const
Definition: fac_util.h:35
modpk::pk
CanonicalForm pk
Definition: fac_util.h:25