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

1034946 views
1
2
14 Interfaces to other software packages
3
4
simpcomp contains various interfaces to other software packages (see Chapter
5
13 for file-related export and import formats). In this chapter, some more
6
sophisticated interfaces to other software packages are described.
7
8
Note that this chapter is subject to change and extension as it is planned
9
to expand simpcomp's functionality in this area in the course of the next
10
versions.
11
12
13
14.1 Interface to the GAP-package homalg
14
15
As of Version 1.5, simpcomp is equipped with an interface to the GAP-package
16
homalg [BR08] by Mohamed Barakat. This allows to use homalg's powerful
17
capabilities in the field of homological algebra to compute topological
18
properties of simplicial complexes.
19
20
For the time being, the only functions provided are ones allowing to compute
21
the homology and cohomology groups of simplicial complexes with arbitrary
22
coefficients. It is planned to extend the functionality in future releases
23
of simpcomp. See below for a list of functions that provide an interface to
24
homalg.
25
26
14.1-1 SCHomalgBoundaryMatrices
27
28
SCHomalgBoundaryMatrices( complex, modulus )  method
29
Returns: a list of homalg objects upon success, fail otherwise.
30
31
This function computes the boundary operator matrices for the simplicial
32
complex complex with a ring of coefficients as specified by modulus: a value
33
of 0 yields Q-matrices, a value of 1 yields Z-matrices and a value of q, q a
34
prime or a prime power, computes the F_q-matrices.
35
36
 Example 
37
 gap> SCLib.SearchByName("CP^2 (VT)");
38
 [ [ 16, "CP^2 (VT)" ] ]
39
 gap> c:=SCLib.Load(last[1][1]);;
40
 gap> SCHomalgBoundaryMatrices(c,0);
41
 [ <A 36 x 9 mutable matrix over an internal ring>, 
42
 <A 84 x 36 mutable matrix over an internal ring>, 
43
 <A 90 x 84 mutable matrix over an internal ring>, 
44
 <A 36 x 90 mutable matrix over an internal ring>, 
45
 <An unevaluated 0 x 36 zero matrix over an internal ring> ]
46
 
47

48
49
14.1-2 SCHomalgCoboundaryMatrices
50
51
SCHomalgCoboundaryMatrices( complex, modulus )  method
52
Returns: a list of homalg objects upon success, fail otherwise.
53
54
This function computes the coboundary operator matrices for the simplicial
55
complex complex with a ring of coefficients as specified by modulus: a value
56
of 0 yields Q-matrices, a value of 1 yields Z-matrices and a value of q, q a
57
prime or a prime power, computes the F_q-matrices.
58
59
 Example 
60
 gap> SCLib.SearchByName("CP^2 (VT)");
61
 [ [ 16, "CP^2 (VT)" ] ]
62
 gap> c:=SCLib.Load(last[1][1]);;
63
 gap> SCHomalgCoboundaryMatrices(c,0);
64
 [ <A 9 x 36 mutable matrix over an internal ring>, 
65
 <A 36 x 84 mutable matrix over an internal ring>, 
66
 <A 84 x 90 mutable matrix over an internal ring>, 
67
 <A 90 x 36 mutable matrix over an internal ring>, 
68
 <An unevaluated 36 x 0 zero matrix over an internal ring> ]
69
 
70

71
72
14.1-3 SCHomalgHomology
73
74
SCHomalgHomology( complex, modulus )  method
75
Returns: a list of integers upon success, fail otherwise.
76
77
This function computes the ranks of the homology groups of complex with a
78
ring of coefficients as specified by modulus: a value of 0 computes the
79
Q-homology, a value of 1 computes the Z-homology and a value of q, q a prime
80
or a prime power, computes the F_q-homology ranks.
81
82
Note that if you are interested not only in the ranks of the homology
83
groups, but rather their full structure, have a look at the function
84
SCHomalgHomologyBasis (14.1-4).
85
86
 Example 
87
 gap> SCLib.SearchByName("K3");
88
 [ [ 7648, "K3_16" ], [ 7649, "K3_17" ] ]
89
 gap> c:=SCLib.Load(last[1][1]);;
90
 gap> SCHomalgHomology(c,0);
91
 #I SCHomalgHomologyOp: Q-homology ranks: [ 1, 0, 22, 0, 1 ]
92
 [ 1, 0, 22, 0, 1 ]
93
 
94

95
96
14.1-4 SCHomalgHomologyBasis
97
98
SCHomalgHomologyBasis( complex, modulus )  method
99
Returns: a homalg object upon success, fail otherwise.
100
101
This function computes the homology groups (including explicit bases of the
102
modules involved) of complex with a ring of coefficients as specified by
103
modulus: a value of 0 computes the Q-homology, a value of 1 computes the
104
Z-homology and a value of q, q a prime or a prime power, computes the
105
F_q-homology groups.
106
107
The k-th homology group hk can be obtained by calling
108
hk:=CertainObject(homology,k);, where homology is the homalg object returned
109
by this function. The generators of hk can then be obtained via
110
GeneratorsOfModule(hk);.
111
112
Note that if you are only interested in the ranks of the homology groups,
113
then it is better to use the funtion SCHomalgHomology (14.1-3) which is way
114
faster.
115
116
 Example 
117
 gap> SCLib.SearchByName("K3");
118
 [ [ 7648, "K3_16" ], [ 7649, "K3_17" ] ]
119
 gap> c:=SCLib.Load(last[1][1]);;
120
 gap> SCHomalgHomologyBasis(c,0);
121
 #I SCHomalgHomologyBasisOp: constructed Q-homology groups.
122
 <A graded homology object consisting of 5 left modules at degrees [ 0 .. 4 ]>
123
 
124

125
126
14.1-5 SCHomalgCohomology
127
128
SCHomalgCohomology( complex, modulus )  method
129
Returns: a list of integers upon success, fail otherwise.
130
131
This function computes the ranks of the cohomology groups of complex with a
132
ring of coefficients as specified by modulus: a value of 0 computes the
133
Q-cohomology, a value of 1 computes the Z-cohomology and a value of q, q a
134
prime or a prime power, computes the F_q-cohomology ranks.
135
136
Note that if you are interested not only in the ranks of the cohomology
137
groups, but rather their full structure, have a look at the function
138
SCHomalgCohomologyBasis (14.1-6).
139
140
 Example 
141
 gap> SCLib.SearchByName("K3");
142
 [ [ 7648, "K3_16" ], [ 7649, "K3_17" ] ]
143
 gap> c:=SCLib.Load(last[1][1]);;
144
 gap> SCHomalgCohomology(c,0);
145
 #I SCHomalgCohomologyOp: Q-cohomology ranks: [ 1, 0, 22, 0, 1 ]
146
 [ 1, 0, 22, 0, 1 ]
147
 
148

149
150
14.1-6 SCHomalgCohomologyBasis
151
152
SCHomalgCohomologyBasis( complex, modulus )  method
153
Returns: a homalg object upon success, fail otherwise.
154
155
This function computes the cohomology groups (including explicit bases of
156
the modules involved) of complex with a ring of coefficients as specified by
157
modulus: a value of 0 computes the Q-cohomology, a value of 1 computes the
158
Z-cohomology and a value of q, q a prime or a prime power, computes the
159
F_q-homology groups.
160
161
The k-th cohomology group ck can be obtained by calling
162
ck:=CertainObject(cohomology,k);, where cohomology is the homalg object
163
returned by this function. The generators of ck can then be obtained via
164
GeneratorsOfModule(ck);.
165
166
Note that if you are only interested in the ranks of the cohomology groups,
167
then it is better to use the funtion SCHomalgCohomology (14.1-5) which is
168
way faster.
169
170
 Example 
171
 gap> SCLib.SearchByName("K3");
172
 [ [ 7648, "K3_16" ], [ 7649, "K3_17" ] ]
173
 gap> c:=SCLib.Load(last[1][1]);;
174
 gap> SCHomalgCohomologyBasis(c,0);
175
 #I SCHomalgCohomologyBasisOp: constructed Q-cohomology groups.
176
 <A graded cohomology object consisting of 5 left modules at degrees 
177
 [ 1 .. 5 ]>
178
 
179

180
181
182