PLASMA 2.3.1

/home/mathieu/ICL/Plasma/svn/trunk/tools/plasma_2.4.0/control/primes.h

00001 
00019 #ifndef PRIMES_H
00020 #define PRIMES_H
00021 
00022 #define IMBALANCE_THRESHOLD 10
00023 #define PWR_MAXSIZE   32
00024 #define PRIME_MAXSIZE 10
00025 #define SIZE_MG       1024
00026 #define SIZE_LEADERS  1023
00027 
00028 #ifndef min
00029 #define min(a,b) ((a<b)?a:b)
00030 #endif
00031 
00032 #ifndef max
00033 #define max(a,b) ((a>b)?a:b)
00034 #endif
00035 
00036 struct primedec
00037 {
00038   int p;
00039   int e;
00040   int pe;
00041 };
00042 
00043 typedef struct primedec primedec_t;
00044 
00045 int lcm(int a, int b);
00046 int gcd(int a, int b);
00047 int modpow(int x, int n, int m);
00048 void factor(int n, primedec_t *pr, int *nf);
00049 
00050 int     minloc(int n, int *T);
00051 int64_t maxval(int n, int *T);
00052 int64_t sum   (int n, int *T);
00053 
00054 #endif /* PRIMES_H */
 All Data Structures