B Overview of the GradedRingForHomalg Package Source Code This appendix is included in the documentation to shine some light on the mathematical backgrounds of this Package. Neither is it needed to work with this package nor should the methods presented here be called directly. The functions documented here are entries of the so called ring table and not to be called directly. There are higher level methods in declared and installed in MatricesForHomalg, which call this functions (--> ?MatricesForHomalg:The Basic Matrix Operations). B.1 The generic Methods We will present some methods as an example, to show the idea: B.1-1 BasisOfRowModule BasisOfRowModule( M )  function Returns: a distinguished basis (i.e. a distinguished generating set) of the module generated by M  Code  BasisOfRowModule :=  function( M )  return MatrixOverGradedRing(  BasisOfRowModule( UnderlyingMatrixOverNonGradedRing( M ) ),  HomalgRing( M ) );  end,  B.1-2 DecideZeroRows DecideZeroRows( A, B )  function Returns: a reduced form of A with respect to B  Code  DecideZeroRows :=  function( A, B )  return MatrixOverGradedRing(  DecideZeroRows( UnderlyingMatrixOverNonGradedRing( A ),  UnderlyingMatrixOverNonGradedRing( B ) ),  HomalgRing( A ) );  end,  B.1-3 SyzygiesGeneratorsOfRows SyzygiesGeneratorsOfRows( M )  function Returns: a distinguished basis of the syzygies of the argument  Code  SyzygiesGeneratorsOfRows :=  function( M )  return MatrixOverGradedRing(  SyzygiesGeneratorsOfRows( UnderlyingMatrixOverNonGradedRing( M ) ),  HomalgRing( M ) );  end,  B.2 Tools The package GradedRingForHomalg also implements tool functions. These are referred to from MatricesForHomalg automatically. We list the implemented methods here are and refer to the MatricesForHomalg documentation (--> ?MatricesForHomalg: The Matrix Tool Operations and ?MatricesForHomalg:RingElement) for details. All tools functions from MatricesForHomalg not listed here are also supported by fallback tools.  IsZero  IsOne  Minus  DivideByUnit  IsUnit  Sum  Product  ShallowCopy  ZeroMatrix  IdentityMatrix  AreEqualMatrices  Involution  CertainRows  CertainColumns  UnionOfRows  UnionOfColumns  DiagMat  KroneckerMat  MulMat  AddMat  SubMat  Compose  NrRows  NrColumns  IsZeroMatrix  IsDiagonalMatrix  ZeroRows  ZeroColumns