RectangularMatrixCategory(m, n, R, Row, Col)¶
matcat.spad line 706 [edit on github]
R: Join(SemiRng, AbelianMonoid)
Row: DirectProductCategory(n, R)
Col: DirectProductCategory(m, R)
RectangularMatrixCategory is a category of matrices of fixed dimensions. The dimensions of the matrix will be parameters of the domain. Domains in this category will be R
-modules and will be non-mutable.
- 0: %
from AbelianMonoid
- #: % -> NonNegativeInteger
from Aggregate
- *: (%, R) -> %
from RightModule R
- *: (Integer, %) -> % if R has AbelianGroup
from AbelianGroup
- *: (NonNegativeInteger, %) -> %
from AbelianMonoid
- *: (PositiveInteger, %) -> %
from AbelianSemiGroup
- *: (R, %) -> %
from LeftModule R
- +: (%, %) -> %
from AbelianSemiGroup
- -: % -> % if R has AbelianGroup
from AbelianGroup
- -: (%, %) -> % if R has AbelianGroup
from AbelianGroup
- /: (%, R) -> % if R has Field
m/r
divides the elements ofm
byr
. Error: ifr = 0
.
- antisymmetric?: % -> Boolean
antisymmetric?(m)
returnstrue
if the matrixm
is square and antisymmetric (i.e.m[i, j] = -m[j, i]
for alli
andj
) andfalse
otherwise.
- any?: (R -> Boolean, %) -> Boolean
from HomogeneousAggregate R
- coerce: % -> OutputForm
from CoercibleTo OutputForm
- column: (%, Integer) -> Col
column(m, j)
returns thej
th column of the matrixm
. Error: if the index outside the proper range.
- columnSpace: % -> List Col if R has EuclideanDomain
columnSpace(m)
returns a sublist of columns of the matrixm
forming a basis of its column space.
- convert: % -> InputForm if R has Finite
from ConvertibleTo InputForm
- count: (R -> Boolean, %) -> NonNegativeInteger
from HomogeneousAggregate R
- count: (R, %) -> NonNegativeInteger
from HomogeneousAggregate R
- diagonal?: % -> Boolean
diagonal?(m)
returnstrue
if the matrixm
is square and diagonal (i.e. all entries ofm
not on the diagonal are zero) andfalse
otherwise.
- elt: (%, Integer, Integer) -> R
elt(m, i, j)
returns the element in thei
th row andj
th column of the matrixm
. Error: if indices are outside the proper ranges.
- elt: (%, Integer, Integer, R) -> R
elt(m, i, j, r)
returns the element in thei
th row andj
th column of the matrixm
, ifm
has ani
th row and aj
th column, and returnsr
otherwise.
- eval: (%, Equation R) -> % if R has Evalable R
from Evalable R
- eval: (%, List Equation R) -> % if R has Evalable R
from Evalable R
- eval: (%, List R, List R) -> % if R has Evalable R
from InnerEvalable(R, R)
- eval: (%, R, R) -> % if R has Evalable R
from InnerEvalable(R, R)
- every?: (R -> Boolean, %) -> Boolean
from HomogeneousAggregate R
- exquo: (%, R) -> Union(%, failed) if R has IntegralDomain
exquo(m, r)
computes the exact quotient of the elements ofm
byr
, returning"failed"
if this is not possible.
- hash: % -> SingleInteger if R has Finite
from Hashable
- hashUpdate!: (HashState, %) -> HashState if R has Finite
from Hashable
- index: PositiveInteger -> % if R has Finite
from Finite
- latex: % -> String
from SetCategory
- less?: (%, NonNegativeInteger) -> Boolean
from Aggregate
- lookup: % -> PositiveInteger if R has Finite
from Finite
- map!: (R -> R, %) -> % if % has shallowlyMutable
from HomogeneousAggregate R
- map: ((R, R) -> R, %, %) -> %
map(f, a, b)
returnsc
, wherec
is such thatc(i, j) = f(a(i, j), b(i, j))
for alli
,j
.
- map: (R -> R, %) -> %
map(f, a)
returnsb
, whereb(i, j) = a(i, j)
for alli
,j
.
- matrix: List List R -> %
matrix(l)
converts the list of listsl
to a matrix, where the list of lists is viewed as a list of the rows of the matrix.
- max: % -> R if R has OrderedSet
from HomogeneousAggregate R
- max: ((R, R) -> Boolean, %) -> R
from HomogeneousAggregate R
- maxColIndex: % -> Integer
maxColIndex(m)
returns the index of the ‘last’ column of the matrixm
.
- maxRowIndex: % -> Integer
maxRowIndex(m)
returns the index of the ‘last’ row of the matrixm
.
- member?: (R, %) -> Boolean
from HomogeneousAggregate R
- members: % -> List R
from HomogeneousAggregate R
- min: % -> R if R has OrderedSet
from HomogeneousAggregate R
- minColIndex: % -> Integer
minColIndex(m)
returns the index of the ‘first’ column of the matrixm
.
- minRowIndex: % -> Integer
minRowIndex(m)
returns the index of the ‘first’ row of the matrixm
.
- more?: (%, NonNegativeInteger) -> Boolean
from Aggregate
- ncols: % -> NonNegativeInteger
ncols(m)
returns the number of columns in the matrixm
.
- nrows: % -> NonNegativeInteger
nrows(m)
returns the number of rows in the matrixm
.
- nullity: % -> NonNegativeInteger if R has IntegralDomain
nullity(m)
returns the nullity of the matrixm
. This is the dimension of the null space of the matrixm
.
- nullSpace: % -> List Col if R has IntegralDomain
nullSpace(m)
+ returns a basis for the null space of the matrixm
.
- opposite?: (%, %) -> Boolean
from AbelianMonoid
- parts: % -> List R
from HomogeneousAggregate R
- qelt: (%, Integer, Integer) -> R
qelt(m, i, j)
returns the element in thei
th row andj
th column of the matrixm
. Note: there is NO error check to determine if indices are in the proper ranges.
- rank: % -> NonNegativeInteger if R has IntegralDomain
rank(m)
returns the rank of the matrixm
.
- row: (%, Integer) -> Row
row(m, i)
returns thei
th row of the matrixm
. Error: if the index is outside the proper range.
- rowEchelon: % -> % if R has EuclideanDomain
rowEchelon(m)
returns the row echelon form of the matrixm
.
- sample: %
from AbelianMonoid
- size?: (%, NonNegativeInteger) -> Boolean
from Aggregate
- size: () -> NonNegativeInteger if R has Finite
from Finite
- smaller?: (%, %) -> Boolean if R has Finite
from Comparable
- square?: % -> Boolean
square?(m)
returnstrue
ifm
is a square matrix (i.e. ifm
has the same number of rows as columns) andfalse
otherwise.
- subtractIfCan: (%, %) -> Union(%, failed) if R has AbelianGroup
- symmetric?: % -> Boolean
symmetric?(m)
returnstrue
if the matrixm
is square and symmetric (i.e.m[i, j] = m[j, i]
for alli
andj
) andfalse
otherwise.
- zero?: % -> Boolean
from AbelianMonoid
AbelianGroup if R has AbelianGroup
BiModule(R, R)
CancellationAbelianMonoid if R has AbelianGroup
Comparable if R has Finite
ConvertibleTo InputForm if R has Finite
Evalable R if R has Evalable R
InnerEvalable(R, R) if R has Evalable R
Module R if R has CommutativeRing