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
1 Introduction to the AtlasRep Package
3
4
The aim of the GAP 4 package AtlasRep is to provide a link between GAP and
5
the ATLAS of Group Representations [ATLAS], a database that comprises
6
generating permutations and matrices for many almost simple groups, and
7
information about their maximal subgroups. This database is available
8
independent of GAP at
9
10
http://brauer.maths.qmul.ac.uk/Atlas
11
12
The AtlasRep package consists of this database (see Section 1.1) and a GAP
13
interface (see Section 1.2); the latter is extended by further information
14
available via the internet (see Section 4.4).
15
16
This package manual has the following parts.
17
18
A tutorial
19
gives an overview how the functions of the package can be used, see
20
Chapter 2.
21
22
User interface functions
23
are described in Chapter 3.
24
25
Customizations of the package
26
are described in Chapter 4.
27
28
Information how to extend the database
29
can be found in Chapter 5.
30
31
More technical information
32
can be found in the chapters 6 (concerning GAP objects that are
33
introduced by the package) and 7 (concerning global variables and
34
sanity checks).
35
36
37
1.1 The ATLAS of Group Representations
38
39
The ATLAS of Group Representations consists of matrices over various rings,
40
permutations, and shell scripts encoding so-called black box programs (see
41
[Nic06] and Section 6.2). Many of these scripts are straight line programs
42
(see [BSWW01], [SWW00], and 'Reference: Straight Line Programs') and
43
straight line decisions (see Section 6.1). These programs can be used to
44
compute certain elements in a group G from its standard generators
45
(see [Wil96] and Section 3.3) for example generators of maximal subgroups of
46
G or representatives of conjugacy classes of G.
47
48
The ATLAS of Group Representations has been prepared by Robert Wilson, Peter
49
Walsh, Jonathan Tripp, Ibrahim Suleiman, Richard Parker, Simon Norton, Simon
50
Nickerson, Steve Linton, John Bray, and Rachel Abbott (in reverse
51
alphabetical order).
52
53
The information was computed and composed using computer algebra systems
54
such as MeatAxe (see [Rin]), Magma (see [CP96]), and GAP (in reverse
55
alphabetical order). Part of the constructions have been documented in the
56
literature on almost simple groups, or the results have been used in such
57
publications, see for example the references in [CCNPW85] and [BN95].
58
59
If you use the ATLAS of Group Representations to solve a problem then please
60
send a short email to mailto:[email protected] about it. The ATLAS of
61
Group Representations database should be referenced with the entry [ATLAS]
62
in the bibliography of this manual.
63
64
If your work made use of functions of the GAP interface (see Section 1.2)
65
then you should also reference this interface, as follows.
66
67

68
@misc{ AtlasRep1.5.1,
69
 author = {Wilson, R. A. and Parker, R. A. and Nickerson, S. and
70
 Bray, J. N. and Breuer, T.},
71
 title = {{AtlasRep}, A \textsf{GAP} Interface to the Atlas of
72
 Group Representations,
73
 {V}ersion 1.5.1},
74
 month = {March},
75
 year = {2016},
76
 note = {\textsf{GAP} package},
77
 howpublished = {http://www.math.rwth-aachen.de/\~{}Thomas.Breuer/atlasrep}
78
}
79

80
81
For referencing the GAP system in general, use the entry [GAP] in the
82
bibliography of this manual, see also
83
84
http://www.gap-system.org.
85
86
87
1.2 The GAP Interface to the ATLAS of Group Representations
88
89
The GAP interface to the ATLAS of Group Representations consists of
90
essentially two parts.
91
92
 First, there is the user interface which allows the user to get an
93
overview of the contents of the database, and to access the data in
94
GAP format; this is described in Chapter 3. Advanced users may add
95
their own data to the database, this is described in Chapter 5.
96
97
 Second, there is administrational information, which covers also the
98
declaration of GAP objects such as straight line decisions and black
99
box programs. This is important mainly for users interested in the
100
actual implementation (e. g., for modifying the package) or in using
101
it together with the C-MeatAxe standalone (see [Rin]); this is
102
described in Chapter 7.
103
104
Information concerning the C-MeatAxe, including the manual [Rin], can be
105
found at
106
107
http://www.math.rwth-aachen.de/LDFM/homes/MTX
108
109
The interface and this manual have been provided by Thomas Breuer, except
110
for the interpreter for black box programs (see Section 6.2), which is due
111
to Simon Nickerson. Comments, bug reports, and hints for improving the
112
interface can be sent to mailto:[email protected].
113
114
115
1.3 What's New in AtlasRep, Compared to Older Versions?
116
117
118
1.3-1 What's New in Version 1.5.1? (March 2016)
119
120
 The paths of the directories where downloaded data files get stored
121
are now customizable, see Section 4.3-9. Up to now, the data were
122
stored in subdirectories of the package directory, which might cause
123
problems with write permissions, depending on the installation of the
124
package. (Note that choosing other data directories can be useful also
125
in order to keep existing local data files when a new version of GAP
126
or of the AtlasRep package gets installed.) Thanks to Bill Allombert
127
for pointing out this problem.
128
129
 The information about data files from the ATLAS of Group
130
Representations has been extended by CrcFile (Reference: CrcFile)
131
values. These values are checked whenever data from such a file are
132
read, and an error is signalled if the checksum does not fit to the
133
expected one. Note that several users may access the same data files,
134
and a user should not suffer from perhaps corrupted files that have
135
been downloaded by other users. Thanks to Frank Lübeck for the idea to
136
introduce this consistency test.
137
138
 Whenever StringFile (GAPDoc: StringFile) is called by functions of the
139
package, this happens in the wrapper function AGR.StringFile, in order
140
to replace occasional line breaks of the form "\r\n" by "\n".
141
Apparently it may happen that the "\r" is silently smuggled in when
142
data files get copied to the local computer. Thanks to Marek Mitros
143
for help with detecting and fixing this problem.
144
145
 The function FFMatOrPermCMtxBinary (7.3-5) can now read also
146
permutations stored in binary files that have been created with
147
version 2.4 of the C-MeatAxe; note that this format is different from
148
the one that is written by version 2.3. Conversely,
149
CMtxBinaryFFMatOrPerm (7.3-4) has been generalized such that both
150
formats can be written. The reference to the C-MeatAxe documentation
151
now points to that of version 2.4. Thanks to Jürgen Müller for
152
pointing out this problem.
153
154
 The function MeatAxeString (7.3-2) can now encode permutation matrices
155
in different ways. The mode (the first header entry) can be either 2
156
(then the positions of the nonzero entries are listed) or 1 or 6 (then
157
all entries of the matrix are listed). In previous versions, the
158
function produced a matrix of mode 2 whenever this was possible, but
159
this behaviour is not useful if the result is not processed by the
160
C-MeatAxe. Thanks to Klaus Lux for pointing out this problem.
161
162
 Depending on the terminal capabilities and the value of
163
AtlasOfGroupRepresentationsInfo.displayFunction, some non-ASCII
164
characters may appear in the output shown by DisplayAtlasInfo (3.5-1).
165
166
167
1.3-2 What's New in Version 1.5? (July 2011)
168
169
 The function AtlasSubgroup (3.5-8) now admits also the return value of
170
OneAtlasGeneratingSetInfo (3.5-5) or the return value of AtlasGroup
171
(3.5-7) as its first argument. The latter is implemented via the new
172
attribute AtlasRepInfoRecord (3.5-9), which is set in the groups
173
constructed by AtlasGroup (3.5-7).
174
175
 Information about transitivity, rank, primitivity, and point
176
stabilizers of many permutation representations is now available. If
177
applicable then this information appears in the records returned by
178
OneAtlasGeneratingSetInfo (3.5-5), it is part of the overview shown by
179
DisplayAtlasInfo (3.5-1), and it is shown also in the data overview in
180
the web, see Section 4.4.
181
182
Two new manual sections about point stabilizers have been added, see
183
the sections 2.4-6 and 2.4-7.
184
185
 Information about the characters afforded by many matrix and
186
permutation representations is now available. If applicable then this
187
information appears in the records returned by
188
OneAtlasGeneratingSetInfo (3.5-5), for matrix representations it is
189
part of the overview shown by DisplayAtlasInfo (3.5-1), and it is
190
shown also in the data overview in the web, see Section 4.4.
191
192
 The functions Character (Reference: Character (for a character table
193
and a list)), Identifier (Reference: Identifier (for character
194
tables)), IsPrimitive (Reference: IsPrimitive), IsTransitive
195
(Reference: IsTransitive), Transitivity (Reference: Transitivity), and
196
RankAction (Reference: RankAction) are now supported as input
197
conditions in DisplayAtlasInfo (3.5-1), OneAtlasGeneratingSetInfo
198
(3.5-5), etc..
199
200
 It is now possible to restrict the data shown by DisplayAtlasInfo
201
(3.5-1) to private or non-private data. Also the data returned by
202
OneAtlasGeneratingSetInfo (3.5-5) can be restricted to private or
203
non-private data.
204
205
 A tutorial for beginners was added to the manual, see Chapter 2, and
206
the manual was restructured.
207
208
 In the overview shown by DisplayAtlasInfo (3.5-1) and in the data
209
overview in the web (see Section 4.4), the ordering of groups was
210
improved such that, e.g., "A9" precedes "A10".
211
212
 The function AtlasClassNames (3.4-2) now admits also a Brauer table as
213
its argument, and works also for character tables of bicyclic
214
extensions of simple groups.
215
216
 The group names that are entered in DisplayAtlasInfo (3.5-1),
217
OneAtlasGeneratingSetInfo (3.5-5), etc., are now case insensitive, and
218
if the package CTblLib is available then the admissible group names
219
for the GAP character table of the group in question can be used in
220
these functions.
221
222
 In order to reduce the number of global variables, several functions
223
have been turned into components of the new global variable AGR
224
(7.1-5). A few of these functions had been documented in the previous
225
version, the old values are still available if the package file
226
gap/obsolete.g has been read. This file is read automatically when the
227
package gets loaded if GAPInfo.UserPreferences.ReadObsolete is true,
228
see 'Reference: The gap.ini file'.
229
230
 A few nicer characters are used by DisplayAtlasInfo (3.5-1) if
231
GAPInfo.TermEncoding has the value "UTF-8" and if
232
AtlasOfGroupRepresentationsInfo.displayFunction is different from
233
Print (Reference: Print), see Section 4.3-5.
234
235
 A bug in the function ReloadAtlasTableOfContents (4.2-1) was fixed.
236
Thanks to Jack Schmidt for reporting this bug.
237
238
239
1.3-3 What's New in Version 1.4? (June 2008)
240
241
 In addition to the group orders that were added in version 1.3 (see
242
Section 1.3-5), also many orders of maximal subgroups are now
243
available. These values occur in the records returned by AtlasProgram
244
(3.5-3) (for the case of "maxes" type programs) and of the three
245
argument version of AtlasGenerators (3.5-2); now a size component may
246
be bound. In these cases, the groups returned by AtlasSubgroup (3.5-8)
247
have the Size (Reference: Size) attribute set.
248
249
 The information about the number of maximal subgroups, if available,
250
is now used in DisplayAtlasInfo (3.5-1).
251
252
 In many cases, straight line programs for computing generators of
253
maximal subgroups of a group G, say, can in fact be used to compute
254
also generators of maximal subgroups of downward extensions of G; if
255
not then it may suffice to extend the given straight line programs by
256
additional generators.
257
258
Currently this yields more than 200 new possibilities to compute
259
maximal subgroups, this means a growth by about 25 percent. For
260
example, all maximal subgroups of 12.M_22 and 2.Fi_22 can now be
261
accessed via AtlasGenerators (3.5-2).
262
263
(Of course this extension means only that one can access the straight
264
line programs in question automatically via the GAP interface. In
265
principle one could have used them already before, by explicitly
266
applying a straight line program for a factor group to generators of a
267
group, and perhaps adding some element in the kernel of the natural
268
epimorphism.)
269
270
For this feature, information about the compatibility of standard
271
generators of groups and their factor groups was added.
272
273
 The bibliographies contained in the ATLAS of Finite Groups [CCNPW85]
274
and in the ATLAS of Brauer Characters [JLPW95] are now available, see
275
BrowseBibliographySporadicSimple (3.6-2).
276
277
 If the GAP package Browse (see [BL14]) is loaded then the new
278
functions BrowseMinimalDegrees (3.6-1) and
279
BrowseBibliographySporadicSimple (3.6-2) are available; these
280
functions can be called also by choosing the corresponding menu
281
entries of the Browse application BrowseGapData (Browse:
282
BrowseGapData).
283
284
 The function AtlasGroup (3.5-7) now admits also the return value of
285
OneAtlasGeneratingSetInfo (3.5-5) as its argument.
286
287
288
1.3-4 What's New in Version 1.3.1? (October 2007)
289
290
This version was mainly released in order to fix a few problems. Now one
291
does not get warnings about unbound variables when the package is loaded and
292
the GAP package IO [Neu14] is not available, and pathological situations in
293
FFMatOrPermCMtxBinary (7.3-5) (concerning extremely short corrupted data
294
files and different byte orderings in binary files) are handled more
295
carefully.
296
297
Besides this, the two functions AtlasGroup (3.5-7) and AtlasSubgroup (3.5-8)
298
were introduced, and the extended function QuaternionAlgebra (Reference:
299
QuaternionAlgebra) of GAP 4.4.10 can now be used for describing base rings
300
in OneAtlasGeneratingSetInfo (3.5-5) and AllAtlasGeneratingSetInfos (3.5-6).
301
(This is the reason why this version of the package requires at least
302
version 4.4.10 of GAP.)
303
304
305
1.3-5 What's New in Version 1.3? (June 2007)
306
307
 The database was extended, see Section 4.3-4 for the number and size
308
of files.
309
310
 New data types and corresponding GAP objects have been introduced, for
311
representing semi-presentations, presentations, and programs for
312
finding standard generators. For details, see AtlasProgram (3.5-3),
313
Chapter 6, and Section 7.6.
314
315
 The records returned by the functions AtlasGenerators (3.5-2),
316
OneAtlasGeneratingSetInfo (3.5-5), and AllAtlasGeneratingSetInfos
317
(3.5-6) now contain the name and (if known) the order of the group in
318
question, and also components describing the degree in the case of
319
permutation representations or the dimension and the base ring of the
320
natural module in the case of matrix representations.
321
322
 For many of the groups, information about the minimal degree of
323
faithful permutation representations and the minimal dimensions of
324
faithful matrix representations in various characteristics is
325
available for DisplayAtlasInfo (3.5-1), OneAtlasGeneratingSetInfo
326
(3.5-5), and AllAtlasGeneratingSetInfos (3.5-6), see also Section 6.3.
327
For these functions, also properties such as IsPrimeInt (Reference:
328
IsPrimeInt) can be used to describe the intended restriction of the
329
output.
330
331
 One can now use Pager (Reference: Pager) functionality in
332
DisplayAtlasInfo (3.5-1), see Section 4.3-5.
333
334
An interactive alternative to DisplayAtlasInfo (3.5-1) is provided by
335
the function BrowseAtlasInfo (Browse: BrowseAtlasInfo) from the new
336
(recommended) GAP package Browse [BL14].
337
338
 The functions OneAtlasGeneratingSetInfo (3.5-5) and
339
AllAtlasGeneratingSetInfos (3.5-6) now admit also a list of group
340
names as the first argument.
341
342
 The functions for actually accessing the data are more flexible now,
343
see Section 4.3-6.
344
345
 For transferring remote data, the GAP package IO [Neu14] can now be
346
used (and is recommended) as an alternative to wget, see
347
Section 4.3-3.
348
349
 The address of the data server has changed. Since the access to the
350
server is no longer possible via ftp, the mechanim used up to version
351
1.2, which was based on ftp, had to be rewritten.
352
353
The main consequence of this change is that information about updates
354
of the table of contents is now provided at the package's homepage.
355
This means that on the one hand, now package users cannot compute the
356
table of contents directly from the server data, but on the other hand
357
the update information can be downloaded without the necessity to
358
install perl.
359
360
Another consequence is that the system program ls is no longer needed,
361
see Section 1.3-7.
362
363
 The package manual has been restructured, extended and improved. It is
364
now based on the package GAPDoc [LN12].
365
366
367
1.3-6 What's New in Version 1.2? (November 2003)
368
369
Not much.
370
371
The release of Version 1.2 became necessary first of all in order to provide
372
a package version that is compatible with GAP 4.4, since some
373
cross-references into the GAP Reference Manual were broken due to changes of
374
section names. Additionally, several web addresses concerning the package
375
itself were changed and thus had to be adjusted.
376
377
This opportunity was used
378
379
 to upgrade the administrational part for loading the package to the
380
mechanism that is recommended for GAP 4.4,
381
382
 to extend the test suite, which now covers more consistency checks
383
using the GAP Character Table Library [Bre13],
384
385
 to make the function ScanMeatAxeFile (7.3-1) more robust, due to the
386
fact that the GAP function PermList (Reference: PermList) now returns
387
fail instead of raising an error,
388
389
 to change the way how representations with prescribed properties are
390
accessed (the new function OneAtlasGeneratingSetInfo (3.5-5) is now
391
preferred to the former OneAtlasGeneratingSet, and
392
AllAtlasGeneratingSetInfos (3.5-6) has been added in order to provide
393
programmatic access in parallel to the human readable descriptions
394
printed by DisplayAtlasInfo (3.5-1)),
395
396
 and last but not least to include the current table of contents of the
397
underlying database.
398
399
For AtlasRep users, the new feature of GAP 4.4 is particularly interesting
400
that due to better kernel support, reading large matrices over finite fields
401
is now faster than it was in GAP 4.3.
402
403
404
1.3-7 What's New in Version 1.1? (October 2002)
405
406
The biggest change w.r.t. Version 1.1 is the addition of private extensions
407
(see Chapter 5). It includes a new free format for straight line programs
408
(see Section 5.2). Unfortunately, this feature requires the system program
409
ls, so it may be not available for example under MS Windows operating
410
systems. [But see Section 1.3-5.]
411
412
In order to admit the addition of other types of data, the implementation of
413
several functions has been changed. Data types are described in Section 7.5.
414
An example of a new data type are quaternionic representations (see
415
Section 7.6). The user interface itself (see Chapter 3) remained the same.
416
417
As an alternative to perl, one can use wget now for transferring data files
418
(see 4.3).
419
420
Data files can be read much more efficiently in GAP 4.3 than in GAP 4.2. In
421
Version 1.1 of the AtlasRep package, this feature is used for reading
422
matrices and permutations in MeatAxe text format with ScanMeatAxeFile
423
(7.3-1). As a consequence, (at least) GAP 4.3 is required for AtlasRep
424
Version 1.1.
425
426
The new compress component of the global variable
427
AtlasOfGroupRepresentationsInfo (7.1-6) allows one to store data files
428
automatically in gzipped form.
429
430
For matrix representations in characteristic zero, invariant forms and
431
generators for the centralizer algebra are now accessible in GAP if they are
432
contained in the source files --this information had been ignored in
433
Version 1.0 (see AtlasOfGroupRepresentationsTestTableOfContentsRemoteUpdates
434
(4.2-4) for necessary updates).
435
436
Additional information is now available via the internet (see 4.4).
437
438
The update facilities have been extended (see 4.2).
439
440
The manual is now distributed also in pdf and HTML format; on the other
441
hand, the PostScript format manual is no longer contained in the archives.
442
443
Apart from these changes, a few minor bugs in the handling of MeatAxe files
444
have been fixed, typos in the documentation have been corrected, and the
445
syntax checks for ATLAS straight line programs (see 7.4) have been improved.
446
447
448
1.4 Acknowledgements
449
450
 Frank Lübeck and Max Neunhöffer kindly provided the perl script that
451
had been used for fetching remote data until version 1.2. Thanks also
452
to Greg Gamble and Alexander Hulpke for technical hints concerning
453
standard perl.
454
455
 Ulrich Kaiser helped with preparing the package for MS Windows.
456
457
 Klaus Lux had the idea to support private extensions of the package,
458
see Chapter 5 and helped to fix several bugs.
459
460
 Frank Lübeck contributed the functions CMtxBinaryFFMatOrPerm (7.3-4)
461
and FFMatOrPermCMtxBinary (7.3-5).
462
463
 Frank Lübeck and Max Neunhöffer wrote the GAPDoc package [LN12], which
464
is used for processing the documentation of the AtlasRep package and
465
for processing the bibliographies included in this package (see
466
BrowseBibliographySporadicSimple (3.6-2)),
467
468
 Max Neunhöffer wrote the GAP package IO [Neu14], which is recommended
469
for transferring data.
470
471
 Max has also suggested the generalization of the data access described
472
in Section 7.2, and the admissibility of the function Character
473
(Reference: Character (for a character table and a list)) as a filter
474
in DisplayAtlasInfo (3.5-1), OneAtlasGeneratingSetInfo (3.5-5), and
475
AllAtlasGeneratingSetInfos (3.5-6).
476
477
 Gunter Malle suggested to make the information about representations
478
of minimal degree accessible, see Section 6.3.
479
480
 Andries Brouwer suggested to add a tutorial (see Chapter 2), Klaus Lux
481
suggested several improvements of this chapter.
482
483
484