GAP (GradedModules) - Chapter 3: GradedModules

Goto Chapter: Top 1 2 3 4 5 Bib Ind
[Top of Book] [Contents] [Previous Chapter] [Next Chapter]

[MathJax on]

3 GradedModules
3.1 GradedModules: Category and Representations
3.2 GradedModules: Constructors
3.3 GradedModules: Properties
3.4 GradedModules: Attributes
3.4-1 BettiTable
3.4-2 CastelnuovoMumfordRegularity
3.4-3 CastelnuovoMumfordRegularityOfSheafification
3.5 LISHV: Logical Implications for GradedModules
3.6 GradedModules: Operations and Functions
3.6-1 MonomialMap
3.6-2 RandomMatrix
3.6-3 GeneratorsOfHomogeneousPart
3.6-4 SubmoduleGeneratedByHomogeneousPart
3.6-5 RepresentationMapOfRingElement
3.6-6 RepresentationMatrixOfKoszulId
3.6-7 RepresentationMapOfKoszulId
3.6-8 KoszulRightAdjoint
3.6-9 HomogeneousPartOverCoefficientsRing

### 3 GradedModules

#### 3.1 GradedModules: Category and Representations

#### 3.2 GradedModules: Constructors

#### 3.3 GradedModules: Properties

For more properties see the corresponding section Modules: Modules: Properties) in the documentation of the homalg package.

#### 3.4 GradedModules: Attributes

##### 3.4-1 BettiTable

`‣ BettiTable`( M ) | ( attribute )

Returns: a homalg diagram

The Betti diagram of the homalg graded module M.

##### 3.4-2 CastelnuovoMumfordRegularity

`‣ CastelnuovoMumfordRegularity`( M ) | ( attribute )

Returns: an integer

The Castelnuovo-Mumford regularity of the homalg graded module M.

##### 3.4-3 CastelnuovoMumfordRegularityOfSheafification

`‣ CastelnuovoMumfordRegularityOfSheafification`( M ) | ( attribute )

Returns: an integer

The Castelnuovo-Mumford regularity of the sheafification of homalg graded module M.

For more attributes see the corresponding section Modules: Modules: Attributes) in the documentation of the homalg package.

#### 3.5 LISHV: Logical Implications for GradedModules

#### 3.6 GradedModules: Operations and Functions

##### 3.6-1 MonomialMap

`‣ MonomialMap`( d, M ) | ( operation )

Returns: a homalg map

The map from a free graded module onto all degree d monomial generators of the finitely generated homalg module M.

    gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;
    gap> S := GradedRing( R );;
    gap> M := HomalgMatrix( "[ x^3, y^2, z,   z, 0, 0 ]", 2, 3, S );;
    gap> M := LeftPresentationWithDegrees( M, [ -1, 0, 1 ] );
    <A graded non-torsion left module presented by 2 relations for 3 generators>
    gap> m := MonomialMap( 1, M );
    <A homomorphism of graded left modules>
    gap> Display( m );
    x^2,0,0,
    x*y,0,0,
    x*z,0,0,
    y^2,0,0,
    y*z,0,0,
    z^2,0,0,
    0,  x,0,
    0,  y,0,
    0,  z,0,
    0,  0,1

    the graded map is currently represented by the above 10 x 3 matrix

    (degrees of generators of target: [ -1, 0, 1 ])

##### 3.6-2 RandomMatrix

`‣ RandomMatrix`( S, T ) | ( operation )

Returns: a homalg matrix

A random matrix between the graded source module S and the graded target module T.

    gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "a,b,c";;
    gap> S := GradedRing( R );;
    gap> rand := RandomMatrix( S^1 + S^2, S^2 + S^3 + S^4 );
    <A 2 x 3 matrix over a graded ring>
    gap> #Display( rand );
    gap> #-3*a-b,                                                  -1,
    gap> #-a^2+a*b+2*b^2-2*a*c+2*b*c+c^2,                          -a+c,
    gap> #-2*a^3+5*a^2*b-3*b^3+3*a*b*c+3*b^2*c+2*a*c^2+2*b*c^2+c^3,-3*b^2-2*a*c-2*b*c+c^2

##### 3.6-3 GeneratorsOfHomogeneousPart

`‣ GeneratorsOfHomogeneousPart`( d, M ) | ( operation )

Returns: a homalg matrix

The resulting homalg matrix consists of a generating set (over R) of the d-th homogeneous part of the finitely generated homalg S-module M, where R is the coefficients ring of the graded ring S with S_0=R.

    gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;
    gap> S := GradedRing( R );;
    gap> M := HomalgMatrix( "[ x^3, y^2, z,   z, 0, 0 ]", 2, 3, S );;
    gap> M := LeftPresentationWithDegrees( M, [ -1, 0, 1 ] );
    <A graded non-torsion left module presented by 2 relations for 3 generators>
    gap> m := GeneratorsOfHomogeneousPart( 1, M );
    <An unevaluated non-zero 7 x 3 matrix over a graded ring>
    gap> Display( m );
    x^2,0,0,
    x*y,0,0,
    y^2,0,0,
    0,  x,0,
    0,  y,0,
    0,  z,0,
    0,  0,1
    (over a graded ring)

Compare with `MonomialMap` (3.6-1).

##### 3.6-4 SubmoduleGeneratedByHomogeneousPart

`‣ SubmoduleGeneratedByHomogeneousPart`( d, M ) | ( operation )

Returns: a homalg module

The submodule of the homalg module M generated by the image of the d-th monomial map (--> `MonomialMap` (3.6-1)), or equivalently, by the generating set of the d-th homogeneous part of M.

    gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;
    gap> S := GradedRing( R );;
    gap> M := HomalgMatrix( "[ x^3, y^2, z,   z, 0, 0 ]", 2, 3, S );;
    gap> M := LeftPresentationWithDegrees( M, [ -1, 0, 1 ] );
    <A graded non-torsion left module presented by 2 relations for 3 generators>
    gap> n := SubmoduleGeneratedByHomogeneousPart( 1, M );
    <A graded left submodule given by 7 generators>
    gap> Display( M );
    z,  0,    0,
    0,  y^2*z,z^2,
    x^3,y^2,  z

    Cokernel of the map

    Q[x,y,z]^(1x3) --> Q[x,y,z]^(1x3),

    currently represented by the above matrix
    (graded, degrees of generators: [ -1, 0, 1 ])
    gap> Display( n );
    x^2,0,0,
    x*y,0,0,
    y^2,0,0,
    0,  x,0,
    0,  y,0,
    0,  z,0,
    0,  0,1

    A left submodule generated by the 7 rows of the above matrix

    (graded, degrees of generators: [ 1, 1, 1, 1, 1, 1, 1 ])
    gap> N := UnderlyingObject( n );
    <A graded left module presented by yet unknown relations for 7 generators>
    gap> Display( N );
    0, 0, z,0, 0,  0,0,
    0, z, 0,0, 0,  0,0,
    z, 0, 0,0, 0,  0,0,
    0, 0, 0,0, -z, y,0,
    0, 0, 0,-z,0,  x,0,
    0, 0, 0,-y,x,  0,0,
    0, -y,x,0, 0,  0,0,
    -y,x, 0,0, 0,  0,0,
    x, 0, 0,0, y,  0,z,
    0, 0, 0,0, y*z,0,z^2

    Cokernel of the map

    Q[x,y,z]^(1x10) --> Q[x,y,z]^(1x7),

    currently represented by the above matrix

    (graded, degrees of generators: [ 1, 1, 1, 1, 1, 1, 1 ])
    gap> gens := GeneratorsOfModule( N );
    <A set of 7 generators of a homalg left module>
    gap> Display( gens );
    x^2,0,0,
    x*y,0,0,
    y^2,0,0,
    0,  x,0,
    0,  y,0,
    0,  z,0,
    0,  0,1

    a set of 7 generators given by the rows of the above matrix

##### 3.6-5 RepresentationMapOfRingElement

`‣ RepresentationMapOfRingElement`( r, M, d ) | ( operation )

Returns: a homalg matrix

The graded map induced by the homogeneous degree 1 ring element r (of the underlying homalg graded ring S) regarded as a R-linear map between the d-th and the (d+1)-st homogeneous part of the graded finitely generated homalg S-module M, where R is the coefficients ring of the graded ring S with S_0=R. The generating set of both modules is given by `GeneratorsOfHomogeneousPart` (3.6-3). The entries of the matrix presenting the map lie in the coefficients ring R.

    gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;
    gap> S := GradedRing( R );;
    gap> x := Indeterminate( S, 1 );
    x
    gap> M := HomalgMatrix( "[ x^3, y^2, z,   z, 0, 0 ]", 2, 3, S );;
    gap> M := LeftPresentationWithDegrees( M, [ -1, 0, 1 ] );
    <A graded non-torsion left module presented by 2 relations for 3 generators>
    gap> m := RepresentationMapOfRingElement( x, M, 0 );
    <A "homomorphism" of graded left modules>
    gap> Display( m );
    1,0,0,0,0,0,0,
    0,1,0,0,0,0,0,
    0,0,0,1,0,0,0

    the graded map is currently represented by the above 3 x 7 matrix

    (degrees of generators of target: [ 1, 1, 1, 1, 1, 1, 1 ])

##### 3.6-6 RepresentationMatrixOfKoszulId

`‣ RepresentationMatrixOfKoszulId`( d, M ) | ( operation )

Returns: a homalg matrix

It is assumed that all indeterminates of the underlying homalg graded ring S are of degree 1. The output is the homalg matrix of the multiplication map Hom( A, M_d ) -> Hom( A, M_d+1 ), where A is the Koszul dual ring of S, defined using the operation `KoszulDualRing`.

    gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;
    gap> S := GradedRing( R );;
    gap> A := KoszulDualRing( S, "a,b,c" );;
    gap> M := HomalgMatrix( "[ x^3, y^2, z,   z, 0, 0 ]", 2, 3, S );;
    gap> M := LeftPresentationWithDegrees( M, [ -1, 0, 1 ] );
    <A graded non-torsion left module presented by 2 relations for 3 generators>
    gap> m := RepresentationMatrixOfKoszulId( 0, M );
    <An unevaluated 3 x 7 matrix over a graded ring>
    gap> Display( m );
    a,b,0,0,0,0,0,
    0,a,b,0,0,0,0,
    0,0,0,a,b,c,0
    (over a graded ring)

##### 3.6-7 RepresentationMapOfKoszulId

`‣ RepresentationMapOfKoszulId`( d, M ) | ( operation )

Returns: a homalg map

It is assumed that all indeterminates of the underlying homalg graded ring S are of degree 1. The output is the the multiplication map Hom( A, M_d ) -> Hom( A, M_d+1 ), where A is the Koszul dual ring of S, defined using the operation `KoszulDualRing`.

    gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;
    gap> S := GradedRing( R );;
    gap> A := KoszulDualRing( S, "a,b,c" );;
    gap> M := HomalgMatrix( "[ x^3, y^2, z,   z, 0, 0 ]", 2, 3, S );;
    gap> M := LeftPresentationWithDegrees( M, [ -1, 0, 1 ] );
    <A graded non-torsion left module presented by 2 relations for 3 generators>
    gap> m := RepresentationMapOfKoszulId( 0, M );
    <A homomorphism of graded left modules>
    gap> Display( m );
    a,b,0,0,0,0,0,
    0,a,b,0,0,0,0,
    0,0,0,a,b,c,0

    the graded map is currently represented by the above 3 x 7 matrix

    (degrees of generators of target: [ 4, 4, 4, 4, 4, 4, 4 ])

##### 3.6-8 KoszulRightAdjoint

`‣ KoszulRightAdjoint`( M, degree_lowest, degree_highest ) | ( operation )

Returns: a homalg cocomplex

It is assumed that all indeterminates of the underlying homalg graded ring S are of degree 1. Compute the homalg A-cocomplex C of Koszul maps of the homalg S-module M (--> `RepresentationMapOfKoszulId` (3.6-7)) in the [ degree_lowest .. degree_highest ]. The Castelnuovo-Mumford regularity of M is characterized as the highest degree d, such that C is not exact at d. A is the Koszul dual ring of S, defined using the operation `KoszulDualRing`.

    gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;
    gap> S := GradedRing( R );;
    gap> A := KoszulDualRing( S, "a,b,c" );;
    gap> M := HomalgMatrix( "[ x^3, y^2, z,   z, 0, 0 ]", 2, 3, S );;
    gap> M := LeftPresentationWithDegrees( M, [ -1, 0, 1 ], S );
    <A graded non-torsion left module presented by 2 relations for 3 generators>
    gap> CastelnuovoMumfordRegularity( M );
    1
    gap> R := KoszulRightAdjoint( M, -5, 5 );
    <A cocomplex containing 10 morphisms of graded left modules at degrees
    [ -5 .. 5 ]>
    gap> R := KoszulRightAdjoint( M, 1, 5 );
    <An acyclic cocomplex containing
    4 morphisms of graded left modules at degrees [ 1 .. 5 ]>
    gap> R := KoszulRightAdjoint( M, 0, 5 );
    <A cocomplex containing 5 morphisms of graded left modules at degrees
    [ 0 .. 5 ]>
    gap> R := KoszulRightAdjoint( M, -5, 5 );
    <A cocomplex containing 10 morphisms of graded left modules at degrees
    [ -5 .. 5 ]>
    gap> H := Cohomology( R );
    <A graded cohomology object consisting of 11 graded left modules at degrees
    [ -5 .. 5 ]>
    gap> ByASmallerPresentation( H );
    <A non-zero graded cohomology object consisting of
    11 graded left modules at degrees [ -5 .. 5 ]>
    gap> Cohomology( R, -2 );
    <A graded zero left module>
    gap> Cohomology( R, -3 );
    <A graded zero left module>
    gap> Cohomology( R, -1 );
    <A graded cyclic torsion-free non-free left module presented by 2 relations fo\
    r a cyclic generator>
    gap> Cohomology( R, 0 );
    <A graded non-zero cyclic left module presented by 3 relations for a cyclic ge\
    nerator>
    gap> Cohomology( R, 1 );
    <A graded non-zero cyclic left module presented by 2 relations for a cyclic ge\
    nerator>
    gap> Cohomology( R, 2 );
    <A graded zero left module>
    gap> Cohomology( R, 3 );
    <A graded zero left module>
    gap> Cohomology( R, 4 );
    <A graded zero left module>
    gap> Display( Cohomology( R, -1 ) );
    Q{a,b,c}/< b, a >

    (graded, degree of generator: 0)
    gap> Display( Cohomology( R, 0 ) );
    Q{a,b,c}/< c, b, a >

    (graded, degree of generator: 0)
    gap> Display( Cohomology( R, 1 ) );
    Q{a,b,c}/< b, a >

    (graded, degree of generator: 2)

##### 3.6-9 HomogeneousPartOverCoefficientsRing

`‣ HomogeneousPartOverCoefficientsRing`( d, M ) | ( operation )

Returns: a homalg module

The degree d homogeneous part of the graded R-module M as a module over the coefficient ring or field of R.

    gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;
    gap> S := GradedRing( R );;
    gap> M := HomalgMatrix( "[ x, y^2, z^3 ]", 3, 1, S );;
    gap> M := Subobject( M, ( 1 * S )^0 );
    <A graded torsion-free (left) ideal given by 3 generators>
    gap> CastelnuovoMumfordRegularity( M );
    4
    gap> M1 := HomogeneousPartOverCoefficientsRing( 1, M );
    <A graded left vector space of dimension 1 on a free generator>
    gap> gen1 := GeneratorsOfModule( M1 );
    <A set consisting of a single generator of a homalg left module>
    gap> Display( M1 );
    Q^(1 x 1)

    (graded, degree of generator: 1)
    gap> M2 := HomogeneousPartOverCoefficientsRing( 2, M );
    <A graded left vector space of dimension 4 on free generators>
    gap> Display( M2 );
    Q^(1 x 4)

    (graded, degrees of generators: [ 2, 2, 2, 2 ])
    gap> gen2 := GeneratorsOfModule( M2 );
    <A set of 4 generators of a homalg left module>
    gap> M3 := HomogeneousPartOverCoefficientsRing( 3, M );
    <A graded left vector space of dimension 9 on free generators>
    gap> Display( M3 );
    Q^(1 x 9)

    (graded, degrees of generators: [ 3, 3, 3, 3, 3, 3, 3, 3, 3 ])
    gap> gen3 := GeneratorsOfModule( M3 );
    <A set of 9 generators of a homalg left module>
    gap> Display( gen1 );
    x

    a set consisting of a single generator given by (the row of) the above matrix
    gap> Display( gen2 );
    x^2,
    x*y,
    x*z,
    y^2

    a set of 4 generators given by the rows of the above matrix
    gap> Display( gen3 );
    x^3,
    x^2*y,
    x^2*z,
    x*y*z,
    x*z^2,
    x*y^2,
    y^3,
    y^2*z,
    z^3

    a set of 9 generators given by the rows of the above matrix

[Top of Book] [Contents] [Previous Chapter] [Next Chapter]
Goto Chapter: Top 1 2 3 4 5 Bib Ind

generated by GAPDoc2HTML