CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.

| Download

GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it

Views: 418346
1
/****************************************************************************
2
**
3
*A storage_fixed.h ANUPQ source Eamonn O'Brien
4
**
5
*Y Copyright 1995-2001, Lehrstuhl D fuer Mathematik, RWTH Aachen, Germany
6
*Y Copyright 1995-2001, School of Mathematical Sciences, ANU, Australia
7
**
8
*/
9
10
/* the default values of SC1 and SC2 may be altered
11
provided SC1 + SC2 + MAXCLASS = WORD_LENGTH */
12
13
/* largest number of defining generators = 2^SC1 - 1 */
14
#define SC1 9
15
#define MAXGENS ((1 << SC1) - 1)
16
17
/* largest number of pc generators = 2^SC2 - 1 */
18
#define SC2 16
19
#define MAXPC ((1 << SC2) - 1)
20
21
#define SC3 (SC1 + SC2)
22
23
/* largest class = 2^(WORD_LENGTH - (SC1 + SC2)) - 1 */
24
#define MAXCLASS ((1 << (WORD_LENGTH - SC3)) - 1)
25
26
#define MASK1 ((1U << SC1) - 1)
27
#define MASK2 ((1U << SC2) - 1)
28
29
#define INSWT(i) ((i) << SC3)
30
#define WT(i) ((i) >> SC3)
31
32
#define PACK2(i, j) (((i)<<SC2) + (j))
33
#define FIELD1(i) ((i) >> SC2)
34
#define FIELD2(i) ((i) & MASK2)
35
36
#define PACK3(i, j, k) (((((i) << SC2) + (j)) << SC1) + (k))
37
#define PART2(i) (((i) >> SC1) & MASK2)
38
#define PART3(i) ((i) & MASK1)
39
40
41