My Project
Loading...
Searching...
No Matches
cf_defs.h
Go to the documentation of this file.
1/* emacs edit mode for this file is -*- C++ -*- */
2
3/**
4 * @file cf_defs.h
5 *
6 * factory switches.
7**/
8
9#ifndef INCL_CF_DEFS_H
10#define INCL_CF_DEFS_H
11
12#include "globaldefs.h"
13// #include "config.h"
14
15
16#define UndefinedDomain 32000
17#define PrimePowerDomain 5
18#define GaloisFieldDomain 4
19#define FiniteFieldDomain 3
20#define RationalDomain 2
21#define IntegerDomain 1
22
23/*BEGINPUBLIC*/
24
25#define LEVELBASE -1000000
26#define LEVELTRANS -500000
27#define LEVELQUOT 1000000
28#define LEVELEXPR 1000001
29
30/// set to 1 for computations over Q
31static const int SW_RATIONAL = 0;
32/// set to 1 for symmetric representation over F_q
33static const int SW_SYMMETRIC_FF = 1;
34/// set to 1 to use EZGCD over Z
35static const int SW_USE_EZGCD = 2;
36/// set to 1 to use EZGCD over F_q
37static const int SW_USE_EZGCD_P = 3;
38/// set to 1 to sort factors in a factorization
39static const int SW_USE_NTL_SORT=4;
40/// set to 1 to use modular gcd over Z
41static const int SW_USE_CHINREM_GCD=5;
42/// set to 1 to use Encarnacion GCD over Q(a)
43static const int SW_USE_QGCD=6;
44/// set to 1 to use modular GCD over F_q
45static const int SW_USE_FF_MOD_GCD=7;
46/// set to 1 to use Flints gcd over F_p
47static const int SW_USE_FL_GCD_P=8;
48/// set to 1 to use Flints gcd over Q/Z
49static const int SW_USE_FL_GCD_0=9;
50/// set to 1 to use Factorys Berlekamp alg.
51static const int SW_BERLEKAMP=10;
52
53static const int SW_FAC_QUADRATICLIFT=11;
54/// set to 1 to prefer flints multivariate factorization over Z/p
55static const int SW_USE_FL_FAC_P=12;
56/// set to 1 to prefer flints multivariate factorization over Z/p
57static const int SW_USE_FL_FAC_0=13;
58/// set to 1 to prefer flints multivariate factorization over Z/p(a)
59static const int SW_USE_FL_FAC_0A=14;
60/*ENDPUBLIC*/
61
62#ifdef HAVE_OMALLOC
63#include "omalloc/omalloc.h"
64#define NEW_ARRAY(T,N) (T*)omAlloc((N)*sizeof(T))
65#define DELETE_ARRAY(P) omFree(P)
66#else
67#define NEW_ARRAY(T,N) new T[N]
68#define DELETE_ARRAY(P) delete[] P
69#endif
70#endif /* ! INCL_CF_DEFS_H */
static const int SW_USE_QGCD
set to 1 to use Encarnacion GCD over Q(a)
Definition: cf_defs.h:43
static const int SW_USE_CHINREM_GCD
set to 1 to use modular gcd over Z
Definition: cf_defs.h:41
static const int SW_USE_FL_GCD_P
set to 1 to use Flints gcd over F_p
Definition: cf_defs.h:47
static const int SW_USE_EZGCD_P
set to 1 to use EZGCD over F_q
Definition: cf_defs.h:37
static const int SW_RATIONAL
set to 1 for computations over Q
Definition: cf_defs.h:31
static const int SW_USE_NTL_SORT
set to 1 to sort factors in a factorization
Definition: cf_defs.h:39
static const int SW_USE_FL_FAC_0
set to 1 to prefer flints multivariate factorization over Z/p
Definition: cf_defs.h:57
static const int SW_USE_FF_MOD_GCD
set to 1 to use modular GCD over F_q
Definition: cf_defs.h:45
static const int SW_USE_EZGCD
set to 1 to use EZGCD over Z
Definition: cf_defs.h:35
static const int SW_SYMMETRIC_FF
set to 1 for symmetric representation over F_q
Definition: cf_defs.h:33
static const int SW_FAC_QUADRATICLIFT
Definition: cf_defs.h:53
static const int SW_USE_FL_GCD_0
set to 1 to use Flints gcd over Q/Z
Definition: cf_defs.h:49
static const int SW_USE_FL_FAC_0A
set to 1 to prefer flints multivariate factorization over Z/p(a)
Definition: cf_defs.h:59
static const int SW_USE_FL_FAC_P
set to 1 to prefer flints multivariate factorization over Z/p
Definition: cf_defs.h:55
static const int SW_BERLEKAMP
set to 1 to use Factorys Berlekamp alg.
Definition: cf_defs.h:51