4 Localize Rings The package LocalizeRingForHomalg defines the classes of local(ized) rings, local ring elements and local matrices. These three objects can be used as data structures defined in MatricesForHomalg on which the homalg project can rely to do homological computations over localized rings. A homalg local ring element contains two homalg ring elements, a numerator (--> Numerator (4.3-4)) and a denominator (--> Denominator (4.3-6)). A homalg local matrix contains a global homalg matrix as a numerator (--> Numerator (4.3-5)) and a ring element as a denominator (--> Denominator (4.3-7)). New constructors for ring elements and matrices are HomalgLocalRingElement (4.3-17) and HomalgLocalMatrix (4.3-18) in addition to the standard contructors introduced in other packages of the homalg project. The local rings most prominently can be used with methods known from general homalg rings. The methods for doing the computations are presented in the appendix (A), since they are not for external use. The new attributes and operations are documented here. Since the objects inplemented here are representations from objects elsewhere in the homalg project (i.e. MatricesForHomalg), we want to stress that there are many other operations in homalg, which can be used in connection with the ones presented here. A few of them can be found in the examples and the appendix of this documentation. 4.1 Category and Representations 4.1-1 IsHomalgLocalRingRep IsHomalgLocalRingRep( R )  Representation Returns: true or false The representation of homalg local rings. (It is a subrepresentation of the GAP representation IsHomalgRingOrFinitelyPresentedModuleRep.)  Code  DeclareRepresentation( "IsHomalgLocalRingRep",  IsHomalgRing  and IsHomalgRingOrFinitelyPresentedModuleRep,  [ "ring" ] );  4.1-2 IsHomalgLocalRingElementRep IsHomalgLocalRingElementRep( r )  Representation Returns: true or false The representation of elements of homalg local rings. (It is a representation of the GAP category IsHomalgRingElement.)  Code  DeclareRepresentation( "IsHomalgLocalRingElementRep",  IsHomalgRingElement,  [ "pointer" ] );  4.1-3 IsHomalgLocalMatrixRep IsHomalgLocalMatrixRep( A )  Representation Returns: true or false The representation of homalg matrices with entries in a homalg local ring. (It is a representation of the GAP category IsHomalgMatrix.)  Code  DeclareRepresentation( "IsHomalgLocalMatrixRep",  IsHomalgMatrix,  [ ] );  4.2 Rings: Attributes 4.2-1 GeneratorsOfMaximalLeftIdeal GeneratorsOfMaximalLeftIdeal( R )  attribute Returns: a homalg matrix Returns the generators of the maximal ideal, at which R was created. The generators are given as a column over the associated global ring. 4.2-2 GeneratorsOfMaximalRightIdeal GeneratorsOfMaximalRightIdeal( R )  attribute Returns: a homalg matrix Returns the generators of the maximal ideal, at which R was created. The generators are given as a row over the associated global ring. 4.3 Operations and Functions 4.3-1 AssociatedGlobalRing AssociatedGlobalRing( R )  operation Returns: a (global) homalg ring The global homalg ring, from which the local ring R was created. 4.3-2 AssociatedGlobalRing AssociatedGlobalRing( r )  operation Returns: a (global) homalg ring The global homalg ring, from which the local ring element r was created. 4.3-3 AssociatedGlobalRing AssociatedGlobalRing( mat )  operation Returns: a (global) homalg ring The global homalg ring, from which the local matrix mat was created. 4.3-4 Numerator Numerator( r )  operation Returns: a (global) homalg ring element The numerator from a local ring element r, which is a homalg ring element from the computation ring. 4.3-5 Numerator Numerator( mat )  operation Returns: a (global) homalg matrix The numerator from a local matrix mat, which is a homalg matrix from the computation ring. 4.3-6 Denominator Denominator( r )  operation Returns: a (global) homalg ring element The denominator from a local ring element r, which is a homalg ring element from the computation ring. 4.3-7 Denominator Denominator( mat )  operation Returns: a (global) homalg ring element The denominator from a local matrix mat, which is a homalg matrix from the computation ring. 4.3-8 Name Name( r )  operation Returns: a string The name of the local ring element r. 4.3-9 SetMatElm SetMatElm( mat, i, j, r, R )  operation Changes the entry (i,j) of the local matrix mat to the value r. Here R is the (local) homalg ring involved in these computations. 4.3-10 AddToMatElm AddToMatElm( mat, i, j, r, R )  operation Changes the entry (i,j) of the local matrix mat by adding the value r to it. Here R is the (local) homalg ring involved in these computations. 4.3-11 MatElmAsString MatElmAsString( mat, i, j, R )  operation Returns: a string Returns the entry (i,j) of the local matrix mat as a string. Here R is the (local) homalg ring involved in these computations. 4.3-12 MatElm MatElm( mat, i, j, R )  operation Returns: a local ring element Returns the entry (i,j) of the local matrix mat. Here R is the (local) homalg ring involved in these computations. 4.3-13 Cancel Cancel( a, b )  operation Returns: two ring elements For a=a'*c and b=b'*c return a' and b'. The exact form of c depends on whether a procedure for gcd computation is included in the ring package. 4.3-14 LocalizeAt LocalizeAt( R, l )  operation Returns: a local ring If l is a list of elements of the global ring R generating a maximal ideal, the method creates the corresponding localization of R at the complement of the maximal ideal. 4.3-15 LocalizeAtZero LocalizeAtZero( R )  operation Returns: a local ring This method creates the corresponding localization of R at the complement of the maximal ideal generated by the indeterminates ("at zero"). 4.3-16 LocalizePolynomialRingAtZeroWithMora LocalizePolynomialRingAtZeroWithMora( R )  operation Returns: a local ring This method localizes the ring R at zero and this localized ring is returned. The ring table uses Mora's algorithm as implemented Singular for low level computations. 4.3-17 HomalgLocalRingElement HomalgLocalRingElement( numer, denom, R )  function HomalgLocalRingElement( numer, R )  function Returns: a local ring element Creates the local ring element numer/denom or in the second case numer/1 for the local ring R. Both numer and denom may either be a string describing a valid global ring element or from the global ring or computation ring. 4.3-18 HomalgLocalMatrix HomalgLocalMatrix( numer, denom, R )  function HomalgLocalMatrix( numer, R )  function Returns: a local matrix Creates the local matrix numer/denom or in the second case numer/1 for the local ring R. Both numer and denom may either be from the global ring or the computation ring.