Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download

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

562574 views
1
2
2 Accessing and Manipulating Resolutions
3
4
5
2.1 Representation-Independent Access Methods
6
7
All methods listed below take a HapResolution in any representation. If the
8
other arguments are compatible with the representation of the resolution,
9
the returned value will be in the form defined by this representation. If
10
the other arguments are in a different representation, GAPs method selection
11
is used via TryNextMethod() to find an applicable method (a suitable
12
representation).
13
14
The idea behind this is that the results of computations have the same form
15
as the input. And as all representations are sub-representations of the
16
HapResolutionRep representation, input which is compatible with the
17
HapResolutionRep representation is always valid.
18
19
Every new representation must support the functions of this section.
20
21
2.1-1 StrongestValidRepresentationForLetter
22
23
> StrongestValidRepresentationForLetter( resolution, term, letter ) __method
24
Returns: filter
25
26
Finds the sub-representation of HapResolutionRep for which letter is a valid
27
letter of the termth module of resolution. Note that resolution
28
automatically is in some sub-representation of HapResolutionRep.This is
29
mainly meant for debugging.
30
31
2.1-2 StrongestValidRepresentationForWord
32
33
> StrongestValidRepresentationForWord( resolution, term, word ) ______method
34
Returns: filter
35
36
Finds the sub-representation of HapResolutionRep for which word is a valid
37
word of the termth module of resolution. Note that resolution automatically
38
is in some sub-representation of HapResolutionRep. This is mainly meant for
39
debugging.
40
41
2.1-3 PositionInGroupOfResolution
42
43
> PositionInGroupOfResolution( resolution, g ) _______________________method
44
> PositionInGroupOfResolutionNC( resolution, g ) _____________________method
45
Returns: positive integer
46
47
This returns the position of the group element g in the enumeration of the
48
group of resolution. The NC version does not check if g really is an element
49
of the group of resolution.
50
51
2.1-4 IsValidGroupInt
52
53
> IsValidGroupInt( resolution, n ) ___________________________________method
54
Returns: boolean
55
56
Returns true if the nth element of the group of resolution is known.
57
58
2.1-5 GroupElementFromPosition
59
60
> GroupElementFromPosition( resolution, n ) __________________________method
61
Returns: group element or fail
62
63
Returns nth element of the group of resolution. If the nth element is not
64
known, fail is returned.
65
66
2.1-6 MultiplyGroupElts
67
68
> MultiplyGroupElts( resolution, x, y ) ______________________________method
69
Returns: positive integer or group element, depending on the type of x and
70
y
71
72
If x and y are given in standard representation (i.e. as integers), this
73
returns the position of the product of the group elements represented by the
74
positive integers x and x.
75
76
If x and y are given in any other representation, the returned group element
77
will also be represented in this way.
78
79
2.1-7 MultiplyFreeZGLetterWithGroupElt
80
81
> MultiplyFreeZGLetterWithGroupElt( resolution, letter, g ) __________method
82
Returns: A letter
83
84
Multiplies the letter letter with the group element g and returns the
85
result. If resolution is in standard representation, g has to be an integer
86
and letter has to be a pair of integer. If resolution is in any other
87
representation, letter and g can be in a form compatible with that
88
representation or in the standard form (in the latter case, the returned
89
value will also have standard form).
90
91
2.1-8 MultiplyFreeZGWordWithGroupElt
92
93
> MultiplyFreeZGWordWithGroupElt( resolution, word, g ) ______________method
94
Returns: A word
95
96
Multiplies the word word with the group element g and returns the result. If
97
resolution is in standard representation, g has to be an integer and word
98
has to be a list of pairs of integers. If resolution is in any other
99
representation, word and g can be in a form compatible with that
100
representation or in the standard form (in the latter case, the returned
101
value will also have standard form).
102
103
2.1-9 BoundaryOfFreeZGLetter
104
105
> BoundaryOfFreeZGLetter( resolution, term, letter ) _________________method
106
Returns: free ZG word (in the same representation as letter)
107
108
Calculates the boundary of the letter (word of length 1) letter of the
109
termth module of resolution.
110
111
The returned value is a word of the term-1st module and comes in the same
112
representation as letter.
113
114
2.1-10 BoundaryOfFreeZGWord
115
116
> BoundaryOfFreeZGWord( resolution, term, word ) _____________________method
117
Returns: free ZG word (in the same representation as letter)
118
119
Calculates the boundary of the word word of the termth module of resolution.
120
121
The returned value is a word of the term-1st module and comes in the same
122
representation as word.
123
124
125
2.2 Converting Between Representations
126
127
Four methods are provided to convert letters and words from standard
128
representation to any other representation and back again.
129
130
2.2-1 ConvertStandardLetter
131
132
> ConvertStandardLetter( resolution, term, letter ) __________________method
133
> ConvertStandardLetterNC( resolution, term, letter ) ________________method
134
Returns: letter in the representation of resolution
135
136
Converts the letter letter in standard representation to the representation
137
of resolution. The NC version does not check whether letter really is a
138
letter in standard representation.
139
140
2.2-2 ConvertStandardWord
141
142
> ConvertStandardWord( resolution, term, word ) ______________________method
143
> ConvertStandardWordNC( resolution, term, word ) ____________________method
144
Returns: word in the representation of resolution
145
146
Converts the word word in standard representation to the representation of
147
resolution. The NC version does not check whether word is a valid word in
148
standard representation.
149
150
2.2-3 ConvertLetterToStandardRep
151
152
> ConvertLetterToStandardRep( resolution, term, letter ) _____________method
153
> ConvertLetterToStandardRepNC( resolution, term, letter ) ___________method
154
Returns: letter in standard representation
155
156
Converts the letter letter in the representation of resolution to the
157
standard representation. The NC version does not check whether letter is a
158
valid letter of resolution.
159
160
2.2-4 ConvertWordToStandardRep
161
162
> ConvertWordToStandardRep( resolution, term, word ) _________________method
163
> ConvertWordToStandardRepNC( resolution, term, word ) _______________method
164
Returns: word in standard representation
165
166
Converts the word word in the representation of resolution to the standard
167
representation. The NC version does not check whether word is a valid word
168
of resolution.
169
170
171
2.3 Special Methods for HapResolutionRep
172
173
Some methods explicitely require the input to be in the standard
174
representation (HapResolutionRep). Two of these test if a word/letter is
175
really in standard representation, the other ones are non-check versions of
176
the universal methods.
177
178
2.3-1 IsFreeZGLetter
179
180
> IsFreeZGLetter( resolution, term, letter ) _________________________method
181
Returns: boolean
182
183
Checks if letter is an valid letter (word of length 1) in standard
184
representation of the termth module of resolution.
185
186
2.3-2 IsFreeZGWord
187
188
> IsFreeZGWord( resolution, term, word ) _____________________________method
189
Returns: boolean
190
191
Check if word is a valid word in large standard representation of the termth
192
module in resolution.
193
194
2.3-3 MultiplyGroupEltsNC
195
196
> MultiplyGroupEltsNC( resolution, x, y ) ____________________________method
197
Returns: positive integer
198
199
Given positive integers x and y, this returns the position of the product of
200
the group elements represented by the positive integers x and x. This
201
assumes that all input is in standard representation and does not check the
202
input.
203
204
2.3-4 MultiplyFreeZGLetterWithGroupEltNC
205
206
> MultiplyFreeZGLetterWithGroupEltNC( resolution, letter, g ) ________method
207
Returns: A letter in standard representation
208
209
Multiplies the letter letter with the group element represented by the
210
positive integer g and returns the result. The input is assumed to be in
211
HapResolutionRep and is not checked.
212
213
2.3-5 MultiplyFreeZGWordWithGroupEltNC
214
215
> MultiplyFreeZGWordWithGroupEltNC( resolution, word, g ) ____________method
216
Returns: A letter in standard representation
217
218
Multiplies the word word with the group element represented by the positive
219
integer g and returns the result. The input is assumed to be in
220
HapResolutionRep and is not checked.
221
222
2.3-6 BoundaryOfFreeZGLetterNC
223
224
> BoundaryOfFreeZGLetterNC( resolution, term, letter ) _______________method
225
Returns: free ZG word in standard representation
226
227
Calculates the boundary of the letter (word of length 1) letter of the
228
termth module of resolution. The input is assumed to be in standard
229
representation and not checked.
230
231
2.3-7 BoundaryOfFreeZGWordNC
232
233
> BoundaryOfFreeZGWordNC( resolution, term, word ) ___________________method
234
Returns: free ZG word in standard representation
235
236
Calculates the boundary of the word word of the termth module of resolution.
237
The input is assumed to be in standard representation and not checked.
238
239
240
2.4 The HapLargeGroupResolutionRep Representation
241
242
The large group representation has one additional component called
243
groupring. Elements of the modules in a resolution are represented by lists
244
of group ring elements. The length of the list corresponds to the dimension
245
of the free module.
246
247
All methods for the generic representation do also work for the large group
248
representation. Some of them are wrappers for special methods which do only
249
work for this representation. The following list only contains the methods
250
which are not already present in the generic representation.
251
252
Note that the input or the output of these functions does not comply with
253
the standard representation.
254
255
2.4-1 GroupRingOfResolution
256
257
> GroupRingOfResolution( resolution ) ________________________________method
258
Returns: group ring
259
260
This returns the group ring of resolution. Note that by the way that group
261
rings are handled in GAP, this is not equal to
262
GroupRing(R,GroupOfResolution(resolution)) where R is the ring of the
263
resolution.
264
265
2.4-2 MultiplyGroupElts_LargeGroupRep
266
267
> MultiplyGroupElts_LargeGroupRep( resolution, x, y ) ________________method
268
> MultiplyGroupEltsNC_LargeGroupRep( resolution, x, y ) ______________method
269
Returns: group element
270
271
Returns the product of x and y. The NC version does not check whether x and
272
y are actually elements of the group of resolution.
273
274
2.4-3 IsFreeZGLetterNoTermCheck_LargeGroupRep
275
276
> IsFreeZGLetterNoTermCheck_LargeGroupRep( resolution, letter ) ______method
277
Returns: boolean
278
279
Returns true if letter has the form of a letter (a module element with
280
exactly one non-zero entry which has exactly one non-zero coefficient) a
281
module of resolution in the HapLargeGroupResolution representation. Note
282
that it is not tested if letter actually is a letter in any term of
283
resolution
284
285
2.4-4 IsFreeZGWordNoTermCheck_LargeGroupRep
286
287
> IsFreeZGWordNoTermCheck_LargeGroupRep( resolution, word ) __________method
288
Returns: boolean
289
290
Returns true if word has the form of a word of a module of resolution in the
291
HapLargeGroupResolution representation. Note that it is not tested if word
292
actually is a word in any term of resolution.
293
294
2.4-5 IsFreeZGLetter_LargeGroupRep
295
296
> IsFreeZGLetter_LargeGroupRep( resolution, term, letter ) ___________method
297
Returns: boolean
298
299
Returns true if and only if letter is a letter (a word of length 1) of the
300
termth module of resolution in the hapLargeGroupResolution representation.
301
I.e. it tests if letter is a module element with exactly one non-zero entry
302
which has exactly one non-zero coefficient.
303
304
2.4-6 IsFreeZGWord_LargeGroupRep
305
306
> IsFreeZGWord_LargeGroupRep( resolution, term, word ) _______________method
307
Returns: boolean
308
309
Tests if word is an element of the termth module of resoultion.
310
311
2.4-7 MultiplyFreeZGLetterWithGroupElt_LargeGroupRep
312
313
> MultiplyFreeZGLetterWithGroupElt_LargeGroupRep( resolution, letter, g ) method
314
> MultiplyFreeZGLetterWithGroupEltNC_LargeGroupRep( resolution, letter, g ) method
315
Returns: free ZG letter in large group representation
316
317
Multiplies the letter letter with the group element g and returns the
318
result. The NC version does not check whether g is an element of the group
319
of resolution and letter can be a letter.
320
321
2.4-8 MultiplyFreeZGWordWithGroupElt_LargeGroupRep
322
323
> MultiplyFreeZGWordWithGroupElt_LargeGroupRep( resolution, word, g ) method
324
> MultiplyFreeZGWordWithGroupEltNC_LargeGroupRep( resolution, word, g ) method
325
Returns: free ZG word in large group representation
326
327
Multiplies the word word with the group element g and returns the result.
328
The NC version does not check whether g is an element of the group of
329
resolution and word can be a word.
330
331
2.4-9 GeneratorsOfModuleOfResolution_LargeGroupRep
332
333
> GeneratorsOfModuleOfResolution_LargeGroupRep( resolution, term ) ___method
334
Returns: list of letters/words in large group representation
335
336
Returns a set of generators for the termth module of resolution. The
337
returned value is a list of vectors of group ring elements.
338
339
2.4-10 BoundaryOfGenerator_LargeGroupRep
340
341
> BoundaryOfGenerator_LargeGroupRep( resolution, term, n ) ___________method
342
> BoundaryOfGeneratorNC_LargeGroupRep( resolution, term, n ) _________method
343
Returns: free ZG word in the large group representation
344
345
Returns the boundary of the nth generator of the termth module of resolution
346
as a word in the n-1st module (in large group representation). The NC
347
version does not check whether there is a termth module and if it has at
348
least n generators.
349
350
2.4-11 BoundaryOfFreeZGLetterNC_LargeGroupRep
351
352
> BoundaryOfFreeZGLetterNC_LargeGroupRep( resolution, term, letter ) _method
353
> BoundaryOfFreeZGLetter_LargeGroupRep( resolution, term, letter ) ___method
354
Returns: free ZG word in large group representation
355
356
Calculates the boundary of the letter letter of the termth module of
357
resolution in large group representation. The NC version does not check
358
whether letter actually is a letter in the termth module.
359
360
2.4-12 BoundaryOfFreeZGWord_LargeGroupRep
361
362
> BoundaryOfFreeZGWord_LargeGroupRep( resolution, term, word ) _______method
363
Returns: free ZG word in large group representation
364
365
Calculates the boundary of the element word of the termth module of
366
resolution in large group representation. The NC version does not check
367
whether word actually is a word in the termth module.
368
369
370