Goto Chapter: Top 1 2 3 4 A B Bib Ind

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.

Operations within MatricesForHomalg that take matrices as input and produce a matrix as an output produce homogeneous output for homogeneous input in the following cases: the graded ring in question is either a polynomial ring or the exterior algebra residing in Singular, and the called operation is one of the following listed below:

• SyzygiesGeneratorsOfRows

• SyzygiesGeneratorsOfColumns

• ReducedSyzygiesGeneratorsOfRows

• ReducedSyzygiesGeneratorsOfColumns

• BasisOfRowModule

• BasisOfColumnModule

• ReducedBasisOfRowModule

• ReducedBasisOfColumnModule

• DecideZeroRows

• DecideZeroColumns

• LeftDivide

• RightDivide

These operation trigger Gröbner bases computations in Singular, which are always forced to be performed with a tail reduction by homalg. In particular, the resulting elements of the Gröbner bases have to be homogeneous.

#### 3.1 Graded Rings: Category and Representations

 ‣ IsHomalgGradedRingRep( R ) ( representation )

Returns: true or false

The representation of homalg graded rings.

(It is a subrepresentation of the GAP representation
IsHomalgRingOrFinitelyPresentedModuleRep.)

[ "ring" ] );

 ‣ IsHomalgGradedRingElementRep( r ) ( representation )

Returns: true or false

The representation of elements of homalg graded rings.

(It is a representation of the GAP category IsHomalgRingElement.)

[ ] );

 ‣ HomalgGradedRingElement( numer, denom, R ) ( function )
 ‣ HomalgGradedRingElement( numer, R ) ( function )

Creates the graded ring element $$\textit{numer}/\textit{denom}$$ or in the second case $$\textit{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.

#### 3.3 Graded Rings: Attributes and Properties

##### 3.3-1 DegreeGroup
 ‣ DegreeGroup( S ) ( attribute )

Returns: a left ℤ-module

The degree Abelian group of the commutative graded ring S.

##### 3.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!

##### 3.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.

##### 3.3-4 IsHomogeneousRingElement
 ‣ IsHomogeneousRingElement( r ) ( operation )

Returns: true or false

returns whether the graded ring element r is homogeneous or not.

#### 3.4 Graded Rings: Operations and Functions

 ‣ UnderlyingNonGradedRing( R ) ( operation )

Returns: a homalg ring

Internally there is a ring, in which computations take place.

 ‣ UnderlyingNonGradedRing( r ) ( operation )

Returns: a homalg ring

Internally there is a ring, in which computations take place.

##### 3.4-3 Name
 ‣ Name( r ) ( operation )

Returns: a string

The name of the graded ring element r.

##### 3.4-4 HomogeneousPartOfRingElement
 ‣ HomogeneousPartOfRingElement( r, degree ) ( operation )