The subpackage &ResidueClassRingForHomalg; as a sample ring package

For an example see .

The Mandatory Basic Operations
<#Include Label="BasisOfRowModule:ResidueClassRing"> <#Include Label="BasisOfColumnModule:ResidueClassRing"> <#Include Label="DecideZeroRows:ResidueClassRing"> <#Include Label="DecideZeroColumns:ResidueClassRing"> <#Include Label="SyzygiesGeneratorsOfRows:ResidueClassRing"> <#Include Label="SyzygiesGeneratorsOfColumns:ResidueClassRing"> <#Include Label="BasisOfRowsCoeff:ResidueClassRing"> <#Include Label="BasisOfColumnsCoeff:ResidueClassRing"> <#Include Label="DecideZeroRowsEffectively:ResidueClassRing"> <#Include Label="DecideZeroColumnsEffectively:ResidueClassRing"> <#Include Label="RelativeSyzygiesGeneratorsOfRows:ResidueClassRing"> <#Include Label="RelativeSyzygiesGeneratorsOfColumns:ResidueClassRing">

The Mandatory Tool Operations

Here we list those matrix operations for which &homalg; provides no fallback method.

<#Include Label="ZeroMatrix:ResidueClassRing"> <#Include Label="IdentityMatrix:ResidueClassRing">

<#Include Label="Involution:ResidueClassRing"> <#Include Label="CertainRows:ResidueClassRing"> <#Include Label="CertainColumns:ResidueClassRing"> <#Include Label="UnionOfRows:ResidueClassRing"> <#Include Label="UnionOfColumns:ResidueClassRing"> <#Include Label="DiagMat:ResidueClassRing"> <#Include Label="KroneckerMat:ResidueClassRing"> <#Include Label="MulMat:ResidueClassRing"> <#Include Label="AddMat:ResidueClassRing"> <#Include Label="SubMat:ResidueClassRing"> <#Include Label="Compose:ResidueClassRing">

<#Include Label="IsZeroMatrix:ResidueClassRing"> <#Include Label="NrRows:ResidueClassRing"> <#Include Label="NrColumns:ResidueClassRing"> <#Include Label="Determinant:ResidueClassRing">

Some of the Recommended Tool Operations

Here we list those matrix operations for which &homalg; does provide a fallback method. But specifying the below homalgTable functions increases the performance by replacing the fallback method.

<#Include Label="AreEqualMatrices:ResidueClassRing"> <#Include Label="IsIdentityMatrix:ResidueClassRing"> <#Include Label="IsDiagonalMatrix:ResidueClassRing">

<#Include Label="ZeroRows:ResidueClassRing"> <#Include Label="ZeroColumns:ResidueClassRing">