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

563574 views
1
2
1 Introduction
3
4
5
1.1 What is the role of the MatricesForHomalg package in the homalg project?
6
7
8
1.1-1 MatricesForHomalg provides ...
9
10
The package MatricesForHomalg provides:
11
12
 rings
13
14
 ring elements
15
16
 ring maps
17
18
 matrices
19
20
21
1.1-2 homalg delegates ...
22
23
The package homalg delegates all matrix operations as it treats matrices and
24
their rings as black boxes. homalg comes with a single predefined class of
25
rings and a single predefined class of matrices over these rings -- the
26
so-called internal matrices (--> 5.1-2) over so-called internal rings (-->
27
3.1-4). An internal matrix (resp. ring) is simply a wrapper containing a
28
GAP-builtin matrix (resp. ring). homalg allows other packages to define
29
further classes or extend existing classes of rings and matrices together
30
with their operations. For example:
31
32
 The homalg subpackage ResidueClassRingForHomalg (--> Appendix D)
33
defines the classes of residue class rings, residue class ring
34
elements, and matrices over residue class rings. Such a matrix is
35
defined by a matrix over the ambient ring which is nevertheless
36
interpreted modulo the ring relations, i.e. modulo the generators of
37
the defining ideal.
38
39
 The package GaussForHomalg extends the class of internal matrices
40
enabling it to wrap sparse matrices provided by the package Gauss.
41
GaussForHomalg delegates the essential part of the matrix creation and
42
all matrix operations to Gauss.
43
44
 The package HomalgToCAS defines the classes of so-called external
45
rings and matrices and the package RingsForHomalg delegates the
46
essential part of the matrix creation and all matrix operations to
47
external computer algebra systems like Singular, Macaulay2, Sage,
48
Macaulay2, MAGMA, Maple, ... . The package homalg accesses external
49
matrices via pointers. The pointer of an external matrix is simply its
50
name in the external system. HomalgToCAS chooses these names.
51
52
 The package LocalizeRingForHomalg defines the classes of local(ized)
53
rings, local ring elements, and local matrices. A homalg local matrix
54
contains a homalg matrix as a numerator and an element of the global
55
ring as a denominator.
56
57
The matrix operations are divided into two classes called Tools and Basic.
58
The Tools operations include addition, subtraction, multiplication,
59
extracting certain rows or columns, stacking, and augmenting matrices (-->
60
Appendix B). The Basic operations include the two basic operations in linear
61
algebra needed to solve an inhomogeneous linear system XA=B with
62
coefficients in a not necessarily commutative ring R (--> Appendix A):
63
64
 Effectively reducing B modulo A, i.e. effectively deciding if a row
65
(or a set of rows) B lies in the R-span of the rows of the matrix A.
66
67
 Computing an R-generating set of row syzygies (=R-relations among the
68
rows) of A, i.e. computing an R-generating set of the left kernel of
69
A. This generating set is then given as the rows of a matrix Y and
70
YA=0.
71
72
The first operation is nothing but deciding the solvability of the
73
inhomogeneous system XA=B and if solvable to compute a particular solution
74
X, while the second is to compute an R-generating set for the homogeneous
75
solution space, i.e. the solution space of the homogeneous system YA=0. The
76
above is of course also valid for the column convention.
77
78
79
1.1-3 The black box concept
80
81
Now we address the following concerns: Wouldn't the idea of using algorithms
82
like the Gröbnerbasis algorithm(s) as a black box (--> 1.1-2) contradict the
83
following facts?
84
85
 It is known that an efficient Gröbnerbasis algorithm depends on the
86
ring R under consideration. For example the implementation of the
87
algorithm depends on the ground ring (or field) k.
88
89
 Often enough highly specialized implementations are used to address
90
specific types of linear systems of equations (occuring in specific
91
homological problems) in order to increase the speed or reduce the
92
space needed for the computations.
93
94
The following should clarify the above concerns.
95
96
 Since each ring comes with its own black box, the first point is
97
automatically resolved.
98
99
 Allow the black box coming with each ring to contain the different
100
available implementations and make them accessible to homalg via
101
standarized names, independent of the computer algebra system used to
102
perform computations.
103
104
105
1.2 This manual
106
107
Chapter 2 describes the installation of this package. The remaining chapters
108
are each devoted to one of the MatricesForHomalg objects (--> 1.1-1) with
109
its constructors, properties, attributes, and operations.
110
111
112