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
3
4
This package is part of the homalg project [hpa10]. The role of the package
5
is described in the manual of the homalg package.
6
7
8
1.1 Ring Constructions for Supported External Computer Algebra Systems
9
10
Here are some of the supported ring constructions:
11
12
13
1.1-1 external GAP
14
15
 Example 
16
gap> ZZ := HomalgRingOfIntegersInExternalGAP( );
17
Z
18
gap> Display( ZZ );
19
<An external ring residing in the CAS GAP>
20
gap> F2 := HomalgRingOfIntegersInExternalGAP( 2, ZZ );
21
GF(2)
22
gap> Display( F2 );
23
<An external ring residing in the CAS GAP>
24

25
26
F2 := HomalgRingOfIntegersInExternalGAP( 2 ) would launch another GAP.
27
28
 Example 
29
gap> Z4 := HomalgRingOfIntegersInExternalGAP( 4, ZZ );
30
Z/4Z
31
gap> Display( Z4 );
32
<An external ring residing in the CAS GAP>
33
gap> Z_4 := HomalgRingOfIntegersInExternalGAP( ZZ ) / 4;
34
Z/( 4 )
35
gap> Display( Z_4 );
36
<A residue class ring>
37
gap> Q := HomalgFieldOfRationalsInExternalGAP( ZZ );
38
Q
39
gap> Display( Q );
40
<An external ring residing in the CAS GAP>
41

42
43
44
1.1-2 Singular
45
46
 Example 
47
gap> F2 := HomalgRingOfIntegersInSingular( 2 );
48
GF(2)
49
gap> Display( F2 );
50
<An external ring residing in the CAS Singular>
51
gap> F2s := HomalgRingOfIntegersInSingular( 2, "s" ,F2 );
52
GF(2)(s)
53
gap> Display( F2s );
54
<An external ring residing in the CAS Singular>
55
gap> ZZ := HomalgRingOfIntegersInSingular( F2 );
56
Z
57
gap> Display( ZZ );
58
<An external ring residing in the CAS Singular>
59
gap> Q := HomalgFieldOfRationalsInSingular( F2 );
60
Q
61
gap> Display( Q );
62
<An external ring residing in the CAS Singular>
63
gap> Qs := HomalgFieldOfRationalsInSingular( "s", F2 );
64
Q(s)
65
gap> Display( Qs );
66
<An external ring residing in the CAS Singular>
67
gap> Qi := HomalgFieldOfRationalsInSingular( "i", "i^2+1", Q );
68
Q[i]/(i^2+1)
69
gap> Display( Qi );
70
<An external ring residing in the CAS Singular>
71

72
73
Q := HomalgFieldOfRationalsInSingular( ) would launch another Singular.
74
75
 Example 
76
gap> F2xyz := F2 * "x,y,z";
77
GF(2)[x,y,z]
78
gap> Display( F2xyz );
79
<An external ring residing in the CAS Singular>
80
gap> F2sxyz := F2s * "x,y,z";
81
GF(2)(s)[x,y,z]
82
gap> Display( F2sxyz );
83
<An external ring residing in the CAS Singular>
84
gap> F2xyzw := F2xyz * "w";
85
GF(2)[x,y,z][w]
86
gap> Display( F2xyzw );
87
<An external ring residing in the CAS Singular>
88
gap> F2sxyzw := F2sxyz * "w";
89
GF(2)(s)[x,y,z][w]
90
gap> Display( F2sxyzw );
91
<An external ring residing in the CAS Singular>
92
gap> ZZxyz := ZZ * "x,y,z";
93
Z[x,y,z]
94
gap> Display( ZZxyz );
95
<An external ring residing in the CAS Singular>
96
gap> ZZxyzw := ZZxyz * "w";
97
Z[x,y,z][w]
98
gap> Display( ZZxyzw );
99
<An external ring residing in the CAS Singular>
100
gap> Qxyz := Q * "x,y,z";
101
Q[x,y,z]
102
gap> Display( Qxyz );
103
<An external ring residing in the CAS Singular>
104
gap> Qsxyz := Qs * "x,y,z";
105
Q(s)[x,y,z]
106
gap> Display( Qsxyz );
107
<An external ring residing in the CAS Singular>
108
gap> Qixyz := Qi * "x,y,z";
109
(Q[i]/(i^2+1))[x,y,z]
110
gap> Display( Qixyz );
111
<An external ring residing in the CAS Singular>
112
gap> Qxyzw := Qxyz * "w";
113
Q[x,y,z][w]
114
gap> Display( Qxyzw );
115
<An external ring residing in the CAS Singular>
116
gap> Qsxyzw := Qsxyz * "w";
117
Q(s)[x,y,z][w]
118
gap> Display( Qsxyzw );
119
<An external ring residing in the CAS Singular>
120
gap> Dxyz := RingOfDerivations( Qxyz, "Dx,Dy,Dz" );
121
Q[x,y,z]<Dx,Dy,Dz>
122
gap> Display( Dxyz );
123
<An external ring residing in the CAS Singular>
124
gap> Exyz := ExteriorRing( Qxyz, "e,f,g" );
125
Q{e,f,g}
126
gap> Display( Exyz );
127
<An external ring residing in the CAS Singular>
128
gap> Dsxyz := RingOfDerivations( Qsxyz, "Dx,Dy,Dz" );
129
Q(s)[x,y,z]<Dx,Dy,Dz>
130
gap> Display( Dsxyz );
131
<An external ring residing in the CAS Singular>
132
gap> Esxyz := ExteriorRing( Qsxyz, "e,f,g" );
133
Q(s){e,f,g}
134
gap> Display( Esxyz );
135
<An external ring residing in the CAS Singular>
136
gap> Dixyz := RingOfDerivations( Qixyz, "Dx,Dy,Dz" );
137
(Q[i]/(i^2+1))[x,y,z]<Dx,Dy,Dz>
138
gap> Display( Dixyz );
139
<An external ring residing in the CAS Singular>
140
gap> Eixyz := ExteriorRing( Qixyz, "e,f,g" );
141
(Q[i]/(i^2+1)){e,f,g}
142
gap> Display( Eixyz );
143
<An external ring residing in the CAS Singular>
144

145
146
147
1.1-3 MAGMA
148
149
 Example 
150
gap> ZZ := HomalgRingOfIntegersInMAGMA( );
151
Z
152
gap> Display( ZZ );
153
<An external ring residing in the CAS MAGMA>
154
gap> F2 := HomalgRingOfIntegersInMAGMA( 2, ZZ );
155
GF(2)
156
gap> Display( F2 );
157
<An external ring residing in the CAS MAGMA>
158

159
160
F2 := HomalgRingOfIntegersInMAGMA( 2 ) would launch another MAGMA.
161
162
 Example 
163
gap> Z_4 := HomalgRingOfIntegersInMAGMA( ZZ ) / 4;
164
Z/( 4 )
165
gap> Display( Z_4 );
166
<A residue class ring>
167
gap> Q := HomalgFieldOfRationalsInMAGMA( ZZ );
168
Q
169
gap> Display( Q );
170
<An external ring residing in the CAS MAGMA>
171
gap> F2xyz := F2 * "x,y,z";
172
GF(2)[x,y,z]
173
gap> Display( F2xyz );
174
<An external ring residing in the CAS MAGMA>
175
gap> Qxyz := Q * "x,y,z";
176
Q[x,y,z]
177
gap> Display( Qxyz );
178
<An external ring residing in the CAS MAGMA>
179
gap> Exyz := ExteriorRing( Qxyz, "e,f,g" );
180
Q{e,f,g}
181
gap> Display( Exyz );
182
<An external ring residing in the CAS MAGMA>
183

184
185
186
1.1-4 Macaulay2
187
188
 Example 
189
gap> ZZ := HomalgRingOfIntegersInMacaulay2( );
190
Z
191
gap> Display( ZZ );
192
<An external ring residing in the CAS Macaulay2>
193
gap> F2 := HomalgRingOfIntegersInMacaulay2( 2, ZZ );
194
GF(2)
195
gap> Display( F2 );
196
<An external ring residing in the CAS Macaulay2>
197

198
199
F2 := HomalgRingOfIntegersInMacaulay2( 2 ) would launch another Macaulay2.
200
201
 Example 
202
gap> Z_4 := HomalgRingOfIntegersInMacaulay2( ZZ ) / 4;
203
Z/( 4 )
204
gap> Display( Z_4 );
205
<A residue class ring>
206
gap> Q := HomalgFieldOfRationalsInMacaulay2( ZZ );
207
Q
208
gap> Display( Q );
209
<An external ring residing in the CAS Macaulay2>
210
gap> F2xyz := F2 * "x,y,z";
211
GF(2)[x,y,z]
212
gap> Display( F2xyz );
213
<An external ring residing in the CAS Macaulay2>
214
gap> Qxyz := Q * "x,y,z";
215
Q[x,y,z]
216
gap> Display( Qxyz );
217
<An external ring residing in the CAS Macaulay2>
218
gap> Dxyz := RingOfDerivations( Qxyz, "Dx,Dy,Dz" );
219
Q[x,y,z]<Dx,Dy,Dz>
220
gap> Display( Dxyz );
221
<An external ring residing in the CAS Macaulay2>
222
gap> Exyz := ExteriorRing( Qxyz, "e,f,g" );
223
Q{e,f,g}
224
gap> Display( Exyz );
225
<An external ring residing in the CAS Macaulay2>
226

227
228
229
1.1-5 Sage
230
231
 Example 
232
gap> ZZ := HomalgRingOfIntegersInSage( );
233
Z
234
gap> Display( ZZ );
235
<An external ring residing in the CAS Sage>
236
gap> F2 := HomalgRingOfIntegersInSage( 2, ZZ );
237
GF(2)
238
gap> Display( F2 );
239
<An external ring residing in the CAS Sage>
240

241
242
F2 := HomalgRingOfIntegersInSage( 2 ) would launch another Sage.
243
244
 Example 
245
gap> Z_4 := HomalgRingOfIntegersInSage( ZZ ) / 4;
246
Z/( 4 )
247
gap> Display( Z_4 );
248
<A residue class ring>
249
gap> Q := HomalgFieldOfRationalsInSage( ZZ );
250
Q
251
gap> Display( Q );
252
<An external ring residing in the CAS Sage>
253
gap> F2x := F2 * "x";
254
GF(2)[x]
255
gap> Display( F2x );
256
<An external ring residing in the CAS Sage>
257
gap> Qx := Q * "x";
258
Q[x]
259
gap> Display( Qx );
260
<An external ring residing in the CAS Sage>
261

262
263
264
1.1-6 Maple
265
266
 Example 
267
gap> ZZ := HomalgRingOfIntegersInMaple( );
268
Z
269
gap> Display( ZZ );
270
<An external ring residing in the CAS Maple>
271
gap> F2 := HomalgRingOfIntegersInMaple( 2, ZZ );
272
GF(2)
273
gap> Display( F2 );
274
<An external ring residing in the CAS Maple>
275

276
277
F2 := HomalgRingOfIntegersInMaple( 2 ) would launch another Maple.
278
279
 Example 
280
gap> Z4 := HomalgRingOfIntegersInMaple( 4, ZZ );
281
Z/4Z
282
gap> Display( Z4 );
283
<An external ring residing in the CAS Maple>
284
gap> Z_4 := HomalgRingOfIntegersInMaple( ZZ ) / 4;
285
Z/( 4 )
286
gap> Display( Z_4 );
287
<A residue class ring>
288
gap> Q := HomalgFieldOfRationalsInMaple( ZZ );
289
Q
290
gap> Display( Q );
291
<An external ring residing in the CAS Maple>
292
gap> F2xyz := F2 * "x,y,z";
293
GF(2)[x,y,z]
294
gap> Display( F2xyz );
295
<An external ring residing in the CAS Maple>
296
gap> Qxyz := Q * "x,y,z";
297
Q[x,y,z]
298
gap> Display( Qxyz );
299
<An external ring residing in the CAS Maple>
300
gap> Dxyz := RingOfDerivations( Qxyz, "Dx,Dy,Dz" );
301
Q[x,y,z]<Dx,Dy,Dz>
302
gap> Display( Dxyz );
303
<An external ring residing in the CAS Maple>
304
gap> Exyz := ExteriorRing( Qxyz, "e,f,g" );
305
Q{e,f,g}
306
gap> Display( Exyz );
307
<An external ring residing in the CAS Maple>
308

309
310
311