4 Graded Rings The package GradedRingForHomalg defines the classes of graded rings, ring elements and matrices over such rings. These three objects can be used as data structures defined in MatricesForHomalg on which the homalg project can rely to do homological computations over graded rings. The graded rings most prominently can be used with methods known from general homalg rings. The methods for doing the computations are presented in the appendix (B), 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 MatricesForHomalg, 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 Graded Rings: Category and Representations 4.1-1 IsHomalgGradedRingRep IsHomalgGradedRingRep( R )  Representation Returns: true or false The representation of homalg graded rings. (It is a subrepresentation of the GAP representation IsHomalgRingOrFinitelyPresentedModuleRep.)  Code  DeclareRepresentation( "IsHomalgGradedRingRep",  IsHomalgGradedRing and  IsHomalgGradedRingOrGradedModuleRep,  [ "ring" ] );  4.1-2 IsHomalgGradedRingElementRep IsHomalgGradedRingElementRep( r )  Representation Returns: true or false The representation of elements of homalg graded rings. (It is a representation of the GAP category IsHomalgRingElement.)  Code  DeclareRepresentation( "IsHomalgGradedRingElementRep",  IsHomalgGradedRingElement,  [ ] );  4.2 Graded Rings: Constructors 4.2-1 HomalgGradedRingElement HomalgGradedRingElement( numer, denom, R )  function HomalgGradedRingElement( numer, R )  function Returns: a graded ring element Creates the graded ring element numer/denom or in the second case numer/1 for the graded 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 Graded Rings: Attributes 4.3-1 DegreeGroup DegreeGroup( S )  attribute Returns: a left ℤ-module The degree Abelian group of the commutative graded ring S. 4.3-2 CommonNonTrivialWeightOfIndeterminates CommonNonTrivialWeightOfIndeterminates( S )  attribute Returns: a degree The common nontrivial weight of the indeterminates of the graded ring S if it exists. Otherwise an error is issued. WARNING: Since the DegreeGroup and WeightsOfIndeterminates are in some cases bound together, you MUST not set the DegreeGroup by hand and let the algorithm create the weights. Set both by hand, set only weights or use the method WeightsOfIndeterminates to set both. Never set the DegreeGroup without the WeightsOfIndeterminates, because it simply wont work! 4.3-3 WeightsOfIndeterminates WeightsOfIndeterminates( S )  attribute Returns: a list or listlist of integers The list of degrees of the indeterminates of the graded ring S. 4.3-4 MatrixOfWeightsOfIndeterminates MatrixOfWeightsOfIndeterminates( S )  attribute Returns: a homalg matrix A homalg matrix where the list (or listlist) of degrees of the indeterminates of the graded ring S is stored. 4.4 Graded Rings: Operations and Functions 4.4-1 UnderlyingNonGradedRing UnderlyingNonGradedRing( R )  operation Returns: a homalg ring Internally there is a ring, in which computations take place. 4.4-2 UnderlyingNonGradedRing UnderlyingNonGradedRing( r )  operation Returns: a homalg ring Internally there is a ring, in which computations take place. 4.4-3 Name Name( r )  operation Returns: a string The name of the graded ring element r.