  
  
                               [1X[5XMatricesForHomalg[0m[1X[0m
  
  
                  [1XA [5XGAP4[0m[1X Meta-Package for Homological Algebra[0m
  
  
                               Version 2010.03.19
  
  
                                   March 2010
  
  
                                Mohamed Barakat
  
  
  
            ([13Xthis manual is still under construction[0m)
            This  manual  is  best  viewed  as an [12XHTML[0m document. The
            latest version is available [12Xonline[0m at:
            [7Xhttp://homalg.math.rwth-aachen.de/~barakat/MatricesForHomalg/chap0.html[0m
            An   [12Xoffline[0m   version   should   be   included  in  the
            documentation  subfolder of the package. This package is
            part of the [5Xhomalg[0m-project:
            [7Xhttp://homalg.math.rwth-aachen.de/index.php/core-packages/matricesforhomalg[0m
  
  
  
  Mohamed Barakat
      Email:    [7Xmailto:barakat@mathematik.uni-kl.de[0m
      Homepage: [7Xhttp://wwwb.math.rwth-aachen.de/~barakat/[0m
      Address:  Department of Mathematics,
                University of Kaiserslautern,
                67653 Kaiserslautern,
                Germany
  
  
  
  -------------------------------------------------------
  [1XCopyright[0m
  © 2007-2010 by Mohamed Barakat
  
  This  package  may  be distributed under the terms and conditions of the GNU
  Public License Version 2.
  
  
  -------------------------------------------------------
  
  
  [1XContents (MatricesForHomalg)[0X
  
  1 Introduction
    1.1 What is the role of the [5XMatricesForHomalg[0m package in the [5Xhomalg[0m
    project?
      1.1-1 [5XMatricesForHomalg[0m provides ...
      1.1-2 [5Xhomalg[0m delegates ...
      1.1-3 The black box concept
    1.2 This manual
  2 Installation of the [5XMatricesForHomalg[0m Package
  3 Rings
    3.1 Rings: Category and Representations
      3.1-1 IsHomalgRing
      3.1-2 IsPreHomalgRing
      3.1-3 IsHomalgRingElement
      3.1-4 IsHomalgInternalRingRep
    3.2 Rings: Constructors
      3.2-1 HomalgRingOfIntegers
      3.2-2 HomalgFieldOfRationals
      3.2-3 \/
    3.3 Rings: Properties
      3.3-1 ContainsAField
      3.3-2 IsRationalsForHomalg
      3.3-3 IsFieldForHomalg
      3.3-4 IsDivisionRingForHomalg
      3.3-5 IsIntegersForHomalg
      3.3-6 IsResidueClassRingOfTheIntegers
      3.3-7 IsBezoutRing
      3.3-8 IsIntegrallyClosedDomain
      3.3-9 IsUniqueFactorizationDomain
      3.3-10 IsKaplanskyHermite
      3.3-11 IsDedekindDomain
      3.3-12 IsDiscreteValuationRing
      3.3-13 IsFreePolynomialRing
      3.3-14 IsWeylRing
      3.3-15 IsGlobalDimensionFinite
      3.3-16 IsLeftGlobalDimensionFinite
      3.3-17 IsRightGlobalDimensionFinite
      3.3-18 HasInvariantBasisProperty
      3.3-19 HasLeftInvariantBasisProperty
      3.3-20 HasRightInvariantBasisProperty
      3.3-21 IsLocalRing
      3.3-22 IsSemiLocalRing
      3.3-23 IsIntegralDomain
      3.3-24 IsHereditary
      3.3-25 IsLeftHereditary
      3.3-26 IsRightHereditary
      3.3-27 IsHermite
      3.3-28 IsLeftHermite
      3.3-29 IsRightHermite
      3.3-30 IsNoetherian
      3.3-31 IsLeftNoetherian
      3.3-32 IsRightNoetherian
      3.3-33 IsArtinian
      3.3-34 IsLeftArtinian
      3.3-35 IsRightArtinian
      3.3-36 IsOreDomain
      3.3-37 IsLeftOreDomain
      3.3-38 IsRightOreDomain
      3.3-39 IsPrincipalIdealRing
      3.3-40 IsLeftPrincipalIdealRing
      3.3-41 IsRightPrincipalIdealRing
      3.3-42 IsRegular
      3.3-43 IsFiniteFreePresentationRing
      3.3-44 IsLeftFiniteFreePresentationRing
      3.3-45 IsRightFiniteFreePresentationRing
      3.3-46 IsSimpleRing
      3.3-47 IsSemiSimpleRing
      3.3-48 BasisAlgorithmRespectsPrincipalIdeals
      3.3-49 IsMinusOne
    3.4 Rings: Attributes
      3.4-1 Zero
      3.4-2 One
      3.4-3 homalgTable
      3.4-4 RingElementConstructor
      3.4-5 TypeOfHomalgMatrix
      3.4-6 ConstructorForHomalgMatrices
      3.4-7 Zero
      3.4-8 One
      3.4-9 MinusOne
      3.4-10 RationalParameters
      3.4-11 IndeterminatesOfPolynomialRing
      3.4-12 IndeterminateCoordinatesOfRingOfDerivations
      3.4-13 IndeterminateDerivationsOfRingOfDerivations
      3.4-14 IndeterminateAntiCommutingVariablesOfExteriorRing
      3.4-15 IndeterminatesOfExteriorRing
      3.4-16 WeightsOfIndeterminates
      3.4-17 MatrixOfWeightsOfIndeterminates
      3.4-18 CoefficientsRing
      3.4-19 KrullDimension
      3.4-20 LeftGlobalDimension
      3.4-21 RightGlobalDimension
      3.4-22 GlobalDimension
      3.4-23 GeneralLinearRank
      3.4-24 ElementaryRank
      3.4-25 StableRank
    3.5 Rings: Operations and Functions
  4 Ring Maps
    4.1 Ring Maps: Category and Representations
      4.1-1 IsHomalgRingMap
      4.1-2 IsHomalgRingSelfMap
      4.1-3 IsHomalgRingMapRep
    4.2 Ring Maps: Constructors
      4.2-1 RingMap
    4.3 Ring Maps: Properties
      4.3-1 IsMorphism
      4.3-2 IsIdentityMorphism
      4.3-3 IsMonomorphism
      4.3-4 IsEpimorphism
      4.3-5 IsIsomorphism
      4.3-6 IsAutomorphism
    4.4 Ring Maps: Attributes
      4.4-1 Source
      4.4-2 Range
      4.4-3 DegreeOfMorphism
      4.4-4 CoordinateRingOfGraph
    4.5 Ring Maps: Operations and Functions
  5 Matrices
    5.1 Matrices: Category and Representations
      5.1-1 IsHomalgMatrix
      5.1-2 IsHomalgInternalMatrixRep
    5.2 Matrices: Constructors
      5.2-1 HomalgInitialMatrix
      5.2-2 HomalgInitialIdentityMatrix
      5.2-3 HomalgZeroMatrix
      5.2-4 HomalgIdentityMatrix
      5.2-5 HomalgVoidMatrix
      5.2-6 HomalgMatrix
      5.2-7 HomalgDiagonalMatrix
      5.2-8 \*
    5.3 Matrices: Properties
      5.3-1 IsZero
      5.3-2 IsOne
      5.3-3 IsPermutationMatrix
      5.3-4 IsSpecialSubidentityMatrix
      5.3-5 IsSubidentityMatrix
      5.3-6 IsLeftRegularMatrix
      5.3-7 IsRightRegularMatrix
      5.3-8 IsInvertibleMatrix
      5.3-9 IsLeftInvertibleMatrix
      5.3-10 IsRightInvertibleMatrix
      5.3-11 IsEmptyMatrix
      5.3-12 IsDiagonalMatrix
      5.3-13 IsScalarlMatrix
      5.3-14 IsUpperTriangularMatrix
      5.3-15 IsLowerTriangularMatrix
      5.3-16 IsStrictUpperTriangularMatrix
      5.3-17 IsStrictLowerTriangularMatrix
      5.3-18 IsUpperStairCaseMatrix
      5.3-19 IsLowerStairCaseMatrix
      5.3-20 IsTriangularMatrix
      5.3-21 IsBasisOfRowsMatrix
      5.3-22 IsBasisOfColumnsMatrix
      5.3-23 IsReducedBasisOfRowsMatrix
      5.3-24 IsReducedBasisOfColumnsMatrix
      5.3-25 IsMutableMatrix
      5.3-26 IsInitialMatrix
      5.3-27 IsInitialIdentityMatrix
      5.3-28 IsVoidMatrix
    5.4 Matrices: Attributes
      5.4-1 NrRows
      5.4-2 NrColumns
      5.4-3 DeterminantMat
      5.4-4 ZeroRows
      5.4-5 ZeroColumns
      5.4-6 NonZeroRows
      5.4-7 NonZeroColumns
      5.4-8 PositionOfFirstNonZeroEntryPerRow
      5.4-9 PositionOfFirstNonZeroEntryPerColumn
      5.4-10 DegreesOfEntries
      5.4-11 RowRankOfMatrix
      5.4-12 ColumnRankOfMatrix
      5.4-13 LeftInverse
      5.4-14 RightInverse
    5.5 Matrices: Operations and Functions
      5.5-1 HomalgRing
      5.5-2 Involution
      5.5-3 CertainRows
      5.5-4 CertainColumns
      5.5-5 UnionOfRows
      5.5-6 UnionOfColumns
      5.5-7 DiagMat
      5.5-8 KroneckerMat
      5.5-9 \*
      5.5-10 \+
      5.5-11 \-
      5.5-12 \*
      5.5-13 \=
      5.5-14 GetColumnIndependentUnitPositions
      5.5-15 GetRowIndependentUnitPositions
      5.5-16 GetUnitPosition
      5.5-17 BasisOfRowModule
      5.5-18 BasisOfColumnModule
      5.5-19 DecideZeroRows
      5.5-20 DecideZeroColumns
      5.5-21 SyzygiesGeneratorsOfRows
      5.5-22 SyzygiesGeneratorsOfColumns
      5.5-23 SyzygiesGeneratorsOfRows
      5.5-24 SyzygiesGeneratorsOfColumns
      5.5-25 ReducedBasisOfRowModule
      5.5-26 ReducedBasisOfColumnModule
      5.5-27 ReducedSyzygiesGeneratorsOfRows
      5.5-28 ReducedSyzygiesGeneratorsOfColumns
      5.5-29 BasisOfRowsCoeff
      5.5-30 BasisOfColumnsCoeff
      5.5-31 DecideZeroRowsEffectively
      5.5-32 DecideZeroColumnsEffectively
      5.5-33 BasisOfRows
      5.5-34 BasisOfColumns
      5.5-35 DecideZero
      5.5-36 SyzygiesOfRows
      5.5-37 SyzygiesOfColumns
      5.5-38 ReducedSyzygiesOfRows
      5.5-39 ReducedSyzygiesOfColumns
      5.5-40 RightDivide
      5.5-41 LeftDivide
      5.5-42 RightDivide
      5.5-43 LeftDivide
      5.5-44 GenerateSameRowModule
      5.5-45 GenerateSameColumnModule
  6 Ring Relations
    6.1 Ring Relations: Categories and Representations
      6.1-1 IsHomalgRingRelations
      6.1-2 IsHomalgRingRelationsAsGeneratorsOfLeftIdeal
      6.1-3 IsHomalgRingRelationsAsGeneratorsOfRightIdeal
      6.1-4 IsRingRelationsRep
    6.2 Ring Relations: Constructors
    6.3 Ring Relations: Properties
      6.3-1 CanBeUsedToDecideZero
      6.3-2 IsInjectivePresentation
    6.4 Ring Relations: Attributes
    6.5 Ring Relations: Operations and Functions
  A The Basic Matrix Operations
    A.1 Main
    A.2 Effective
    A.3 Relative
    A.4 Reduced
  B The Matrix Tool Operations
    B.1 The Tool Operations [13Xwithout[0m a Fallback Method
      B.1-1 InitialMatrix
      B.1-2 InitialIdentityMatrix
      B.1-3 ZeroMatrix
      B.1-4 IdentityMatrix
      B.1-5 Involution
      B.1-6 CertainRows
      B.1-7 CertainColumns
      B.1-8 UnionOfRows
      B.1-9 UnionOfColumns
      B.1-10 DiagMat
      B.1-11 KroneckerMat
      B.1-12 MulMat
      B.1-13 AddMat
      B.1-14 SubMat
      B.1-15 Compose
      B.1-16 IsZeroMatrix
      B.1-17 NrRows
      B.1-18 NrColumns
      B.1-19 Determinant
    B.2 The Tool Operations with a Fallback Method
      B.2-1 AreEqualMatrices
      B.2-2 IsIdentityMatrix
      B.2-3 IsDiagonalMatrix
      B.2-4 ZeroRows
      B.2-5 ZeroColumns
      B.2-6 GetColumnIndependentUnitPositions
      B.2-7 GetRowIndependentUnitPositions
      B.2-8 GetUnitPosition
      B.2-9 DegreesOfEntries
  C Logic Subpackages
    C.1 [5XLIRNG[0m: Logical Implications for Rings
    C.2 [5XLIMAP[0m: Logical Implications for Ring Maps
    C.3 [5XLIMAT[0m: Logical Implications for Matrices
    C.4 [5XCOLEM[0m: Clever Operations for Lazy Evaluated Matrices
      C.4-1 Eval
      C.4-2 Eval
      C.4-3 Eval
      C.4-4 Eval
      C.4-5 Eval
      C.4-6 Eval
      C.4-7 Eval
      C.4-8 Eval
      C.4-9 Eval
      C.4-10 Eval
      C.4-11 Eval
      C.4-12 Eval
      C.4-13 Eval
      C.4-14 Eval
      C.4-15 Eval
      C.4-16 Eval
      C.4-17 Eval
  D The subpackage [5XResidueClassRingForHomalg[0m as a sample ring package
    D.1 The Mandatory Basic Operations
      D.1-1 BasisOfRowModule
      D.1-2 BasisOfColumnModule
      D.1-3 DecideZeroRows
      D.1-4 DecideZeroColumns
      D.1-5 SyzygiesGeneratorsOfRows
      D.1-6 SyzygiesGeneratorsOfColumns
      D.1-7 BasisOfRowsCoeff
      D.1-8 BasisOfColumnsCoeff
      D.1-9 DecideZeroRowsEffectively
      D.1-10 DecideZeroColumnsEffectively
      D.1-11 RelativeSyzygiesGeneratorsOfRows
      D.1-12 RelativeSyzygiesGeneratorsOfColumns
    D.2 The Mandatory Tool Operations
      D.2-1 InitialMatrix
      D.2-2 InitialIdentityMatrix
      D.2-3 ZeroMatrix
      D.2-4 IdentityMatrix
      D.2-5 Involution
      D.2-6 CertainRows
      D.2-7 CertainColumns
      D.2-8 UnionOfRows
      D.2-9 UnionOfColumns
      D.2-10 DiagMat
      D.2-11 KroneckerMat
      D.2-12 MulMat
      D.2-13 AddMat
      D.2-14 SubMat
      D.2-15 Compose
      D.2-16 IsZeroMatrix
      D.2-17 NrRows
      D.2-18 NrColumns
      D.2-19 Determinant
    D.3 Some of the Recommended Tool Operations
      D.3-1 AreEqualMatrices
      D.3-2 IsOne
      D.3-3 IsDiagonalMatrix
      D.3-4 ZeroRows
      D.3-5 ZeroColumns
  E Debugging [5XMatricesForHomalg[0m
    E.1 Increase the assertion level
    E.2 [10XUsing homalgMode[0m
      E.2-1 homalgMode
  F Overview of the [5XMatricesForHomalg[0m Package Source Code
    F.1 Rings, Ring Maps, Matrices, Ring Relations
    F.2 The Low Level Algorithms
    F.3 Logical Implications for [5XMatricesForHomalg[0m Objects
    F.4 The subpackage [5XResidueClassRingForHomalg[0m
    F.5 The homalgTable for [5XGAP4[0m built-in rings
  
  
  -------------------------------------------------------
