NTLconvert.h
Go to the documentation of this file.
1 /**
2  * @file NTLconvert.h
3  *
4  * Conversion to and from NTL
5 **/
6 
7 #ifndef INCL_NTLCONVERT_H
8 #define INCL_NTLCONVERT_H
9 
10 #ifdef HAVE_NTL
11 
12 // #include <factory/cf_gmp.h>
13 
14 #include "cf_defs.h"
15 #include "canonicalform.h"
16 #include "cf_iter.h"
17 #include "fac_sqrfree.h"
18 #include "cf_algorithm.h"
19 
20 #include <NTL/config.h>
21 
22 #ifdef NTL_STD_CXX
23 #ifdef NOSTREAMIO
24 # ifdef HAVE_IOSTREAM
25 # include <iostream>
26 # define OSTREAM std::ostream
27 # define ISTREAM std::istream
28 # elif defined(HAVE_IOSTREAM_H)
29 # include <iostream.h>
30 # define OSTREAM ostream
31 # define ISTREAM istream
32 # endif
33 #endif /* ! NOSTREAMIO */
34 #endif
35 
36 
37 #include <NTL/ZZXFactoring.h>
38 #include <NTL/ZZ_pXFactoring.h>
39 #include <NTL/lzz_pXFactoring.h>
40 #include <NTL/GF2XFactoring.h>
41 #include <NTL/ZZ_pEXFactoring.h>
42 #include <NTL/lzz_pEXFactoring.h>
43 #include <NTL/GF2EXFactoring.h>
44 #include <NTL/mat_ZZ.h>
45 #include <NTL/mat_lzz_p.h>
46 #include <NTL/mat_lzz_pE.h>
47 
48 #ifdef NTL_CLIENT // in <NTL/tools.h>: using of name space NTL
49 NTL_CLIENT
50 #endif
51 
52 
53 
54 
55 #include "int_int.h"
56 #include "cf_assert.h"
57 
58 
59 ZZ_pX convertFacCF2NTLZZpX(const CanonicalForm & f);
60 zz_pX convertFacCF2NTLzzpX(const CanonicalForm & f);
62 CanonicalForm convertNTLZZpX2CF(const ZZ_pX & poly,const Variable & x);
63 CanonicalForm convertNTLzzpX2CF(const zz_pX & poly,const Variable & x);
64 CanonicalForm convertNTLGF2X2CF(const GF2X & poly,const Variable & x);
65 CanonicalForm convertNTLZZX2CF(const ZZX & polynom,const Variable & x);
66 CFFList convertNTLvec_pair_ZZpX_long2FacCFFList(const vec_pair_ZZ_pX_long& e,const ZZ_p & multi,const Variable & x);
67 CFFList convertNTLvec_pair_zzpX_long2FacCFFList(const vec_pair_zz_pX_long& e,const zz_p multi,const Variable & x);
68 
69 CFFList convertNTLvec_pair_GF2X_long2FacCFFList(const vec_pair_GF2X_long& e,const GF2 multi,const Variable & x);
70 CanonicalForm convertZZ2CF(const ZZ & coefficient);
73 CFFList convertNTLvec_pair_ZZX_long2FacCFFList(const vec_pair_ZZX_long& e,const ZZ & multi,const Variable & x);
74 CanonicalForm convertNTLZZpE2CF(const ZZ_pE & coefficient,const Variable & x);
75 CFFList convertNTLvec_pair_ZZpEX_long2FacCFFList(const vec_pair_ZZ_pEX_long & e,const ZZ_pE & multi,const Variable & x,const Variable & alpha);
76 CanonicalForm convertNTLGF2E2CF(const GF2E & coefficient,const Variable & x);
77 CFFList convertNTLvec_pair_GF2EX_long2FacCFFList(const vec_pair_GF2EX_long& e,const GF2E & multi,const Variable & x,const Variable & alpha);
78 GF2EX convertFacCF2NTLGF2EX(const CanonicalForm & f,const GF2X & mipo);
79 ZZ_pEX convertFacCF2NTLZZ_pEX(const CanonicalForm & f,const ZZ_pX & mipo);
80 zz_pEX convertFacCF2NTLzz_pEX(const CanonicalForm & f,const zz_pX & mipo);
81 CanonicalForm convertNTLzzpE2CF(const zz_pE & f, const Variable & x);
82 CFFList convertNTLvec_pair_zzpEX_long2FacCFFList(const vec_pair_zz_pEX_long & e,const zz_pE & multi,const Variable & x,const Variable & alpha);
83 CanonicalForm convertNTLzz_pEX2CF(const zz_pEX & f, const Variable & x, const Variable & alpha);
84 CanonicalForm convertNTLZZ_pEX2CF(const ZZ_pEX & f, const Variable & x, const Variable & alpha);
85 
88 mat_zz_p* convertFacCFMatrix2NTLmat_zz_p(const CFMatrix &m);
89 CFMatrix* convertNTLmat_zz_p2FacCFMatrix(const mat_zz_p &m);
90 mat_zz_pE* convertFacCFMatrix2NTLmat_zz_pE(const CFMatrix &m);
91 CFMatrix* convertNTLmat_zz_pE2FacCFMatrix(const mat_zz_pE &m, const Variable & alpha);
92 
93 extern long fac_NTL_char;
94 #endif
95 #endif
GF2X convertFacCF2NTLGF2X(const CanonicalForm &f)
NAME: convertFacCF2NTLGF2X.
Definition: NTLconvert.cc:180
CanonicalForm convertNTLzzpX2CF(const zz_pX &poly, const Variable &x)
Definition: NTLconvert.cc:251
CFFList convertNTLvec_pair_GF2X_long2FacCFFList(const vec_pair_GF2X_long &e, const GF2 multi, const Variable &x)
NAME: convertNTLvec_pair_GF2X_long2FacCFFList.
Definition: NTLconvert.cc:442
factory&#39;s class for variables
Definition: variable.h:32
CanonicalForm convertNTLZZX2CF(const ZZX &polynom, const Variable &x)
Definition: NTLconvert.cc:281
CFFList convertNTLvec_pair_ZZpEX_long2FacCFFList(const vec_pair_ZZ_pEX_long &e, const ZZ_pE &multi, const Variable &x, const Variable &alpha)
NAME: convertNTLvec_pair_ZZpEX_long2FacCFFList.
Definition: NTLconvert.cc:822
factory&#39;s main class
Definition: canonicalform.h:75
assertions for Factory
CanonicalForm convertNTLZZpX2CF(const ZZ_pX &poly, const Variable &x)
NAME: convertNTLZZpX2CF.
Definition: NTLconvert.cc:246
Variable alpha
Definition: facAbsBiFact.cc:52
CanonicalForm convertNTLZZ_pEX2CF(const ZZ_pEX &f, const Variable &x, const Variable &alpha)
Definition: NTLconvert.cc:1116
CFFList convertNTLvec_pair_ZZX_long2FacCFFList(const vec_pair_ZZX_long &e, const ZZ &multi, const Variable &x)
NAME: convertNTLvec_pair_ZZX_long2FacCFFList.
Definition: NTLconvert.cc:749
CFMatrix * convertNTLmat_zz_p2FacCFMatrix(const mat_zz_p &m)
Definition: NTLconvert.cc:1184
GF2EX convertFacCF2NTLGF2EX(const CanonicalForm &f, const GF2X &mipo)
CanonicalForm in Z_2(a)[X] to NTL GF2EX.
Definition: NTLconvert.cc:1008
ZZ_pEX convertFacCF2NTLZZ_pEX(const CanonicalForm &f, const ZZ_pX &mipo)
CanonicalForm in Z_p(a)[X] to NTL ZZ_pEX.
Definition: NTLconvert.cc:1038
zz_pX convertFacCF2NTLzzpX(const CanonicalForm &f)
Definition: NTLconvert.cc:103
CFFList convertNTLvec_pair_zzpEX_long2FacCFFList(const vec_pair_zz_pEX_long &e, const zz_pE &multi, const Variable &x, const Variable &alpha)
Definition: NTLconvert.cc:867
CFMatrix * convertNTLmat_ZZ2FacCFMatrix(const mat_ZZ &m)
Definition: NTLconvert.cc:1154
CanonicalForm convertNTLGF2X2CF(const GF2X &poly, const Variable &x)
NAME: convertNTLGF2X2CF.
Definition: NTLconvert.cc:318
mat_zz_p * convertFacCFMatrix2NTLmat_zz_p(const CFMatrix &m)
Definition: NTLconvert.cc:1168
ZZX convertFacCF2NTLZZX(const CanonicalForm &f)
Definition: NTLconvert.cc:687
CanonicalForm convertNTLzzpE2CF(const zz_pE &f, const Variable &x)
Definition: NTLconvert.cc:796
CanonicalForm convertZZ2CF(const ZZ &coefficient)
NAME: convertZZ2CF.
Definition: NTLconvert.cc:492
CanonicalForm convertNTLzz_pEX2CF(const zz_pEX &f, const Variable &x, const Variable &alpha)
Definition: NTLconvert.cc:1093
int m
Definition: cfEzgcd.cc:119
Iterators for CanonicalForm&#39;s.
FILE * f
Definition: checklibs.c:7
zz_pEX convertFacCF2NTLzz_pEX(const CanonicalForm &f, const zz_pX &mipo)
Definition: NTLconvert.cc:1065
CanonicalForm convertNTLZZpE2CF(const ZZ_pE &coefficient, const Variable &x)
NAME: convertNTLZZpX2CF.
Definition: NTLconvert.cc:792
factory switches.
declarations of higher level algorithms.
CFFList convertNTLvec_pair_zzpX_long2FacCFFList(const vec_pair_zz_pX_long &e, const zz_p multi, const Variable &x)
Definition: NTLconvert.cc:395
mat_zz_pE * convertFacCFMatrix2NTLmat_zz_pE(const CFMatrix &m)
Definition: NTLconvert.cc:1197
CanonicalForm convertNTLGF2E2CF(const GF2E &coefficient, const Variable &x)
NAME: convertNTLGF2E2CF.
Definition: NTLconvert.cc:929
CFFList convertNTLvec_pair_ZZpX_long2FacCFFList(const vec_pair_ZZ_pX_long &e, const ZZ_p &multi, const Variable &x)
NAME: convertNTLvec_pair_ZZpX_long2FacCFFList.
Definition: NTLconvert.cc:370
long fac_NTL_char
Definition: NTLconvert.cc:44
Variable x
Definition: cfModGcd.cc:4023
CFMatrix * convertNTLmat_zz_pE2FacCFMatrix(const mat_zz_pE &m, const Variable &alpha)
Definition: NTLconvert.cc:1213
mat_ZZ * convertFacCFMatrix2NTLmat_ZZ(const CFMatrix &m)
Definition: NTLconvert.cc:1139
polyrec * poly
Definition: hilb.h:10
CFFList convertNTLvec_pair_GF2EX_long2FacCFFList(const vec_pair_GF2EX_long &e, const GF2E &multi, const Variable &x, const Variable &alpha)
NAME: convertNTLvec_pair_GF2EX_long2FacCFFList.
Definition: NTLconvert.cc:956
ZZ_pX convertFacCF2NTLZZpX(const CanonicalForm &f)
NAME: convertFacCF2NTLZZpX.
Definition: NTLconvert.cc:62
squarefree part and factorization over Q, Q(a)
Header for factory&#39;s main class CanonicalForm.
Factory&#39;s internal integers.
ZZ convertFacCF2NTLZZ(const CanonicalForm &f)
NAME: convertFacCF2NTLZZX.
Definition: NTLconvert.cc:666