Goto Chapter: Top 1 2 3 4 5 6 7 A Bib Ind

### 7 Examples

#### 7.1 Betti Diagrams

##### 7.1-1 DE-2.2
gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x0,x1,x2";;
gap> S := GradedRing( R );;
gap> mat := HomalgMatrix( "[ x0^2, x1^2, x2^2 ]", 1, 3, S );
<A 1 x 3 matrix over a graded ring>
gap> M := RightPresentationWithDegrees( mat, S );
<A graded cyclic right module on a cyclic generator satisfying 3 relations>
gap> M := RightPresentationWithDegrees( mat );
<A graded cyclic right module on a cyclic generator satisfying 3 relations>
gap> d := Resolution( M );
<A right acyclic complex containing
3 morphisms of graded right modules at degrees [ 0 .. 3 ]>
gap> betti := BettiTable( d );
<A Betti diagram of <A right acyclic complex containing
3 morphisms of graded right modules at degrees [ 0 .. 3 ]>>
gap> Display( betti );
total:  1 3 3 1
----------------
0:  1 . . .
1:  . 3 . .
2:  . . 3 .
3:  . . . 1
----------------
degree:  0 1 2 3
gap> ## we are still below the Castelnuovo-Mumford regularity, which is 3:
gap> M2 := SubmoduleGeneratedByHomogeneousPart( 2, M );
<A graded torsion right submodule given by 3 generators>
gap> d2 := Resolution( M2 );
<A right acyclic complex containing
3 morphisms of graded right modules at degrees [ 0 .. 3 ]>
gap> betti2 := BettiTable( d2 );
<A Betti diagram of <A right acyclic complex containing
3 morphisms of graded right modules at degrees [ 0 .. 3 ]>>
gap> Display( betti2 );
total:  3 8 6 1
----------------
2:  3 8 6 .
3:  . . . 1
----------------
degree:  0 1 2 3


##### 7.1-2 DE-Code
gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x0,x1,x2";;
gap> S := GradedRing( R );;
gap> mat := HomalgMatrix( "[ x0^2, x1^2 ]", 1, 2, S );
<A 1 x 2 matrix over a graded ring>
gap> M := RightPresentationWithDegrees( mat, S );
<A graded cyclic right module on a cyclic generator satisfying 2 relations>
gap> d := Resolution( M );
<A right acyclic complex containing
2 morphisms of graded right modules at degrees [ 0 .. 2 ]>
gap> betti := BettiTable( d );
<A Betti diagram of <A right acyclic complex containing
2 morphisms of graded right modules at degrees [ 0 .. 2 ]>>
gap> Display( betti );
total:  1 2 1
--------------
0:  1 . .
1:  . 2 .
2:  . . 1
--------------
degree:  0 1 2
gap> m := SubmoduleGeneratedByHomogeneousPart( 2, M );
<A graded torsion right submodule given by 4 generators>
gap> d2 := Resolution( m );
<A right acyclic complex containing
2 morphisms of graded right modules at degrees [ 0 .. 2 ]>
gap> betti2 := BettiTable( d2 );
<A Betti diagram of <A right acyclic complex containing
2 morphisms of graded right modules at degrees [ 0 .. 2 ]>>
gap> Display( betti2 );
2:  4 8 4
--------------
degree:  0 1 2


##### 7.1-3 Schenck-3.2

This is an example from Section 3.2 in [Sch03].

gap> Qxyz := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;
gap> mmat := HomalgMatrix( "[ x, x^3 + y^3 + z^3 ]", 1, 2, Qxyz );
<A 1 x 2 matrix over an external ring>
gap> S := GradedRing( Qxyz );;
gap> M := RightPresentationWithDegrees( mmat, S );
<A graded cyclic right module on a cyclic generator satisfying 2 relations>
gap> Mr := Resolution( M );
<A right acyclic complex containing
2 morphisms of graded right modules at degrees [ 0 .. 2 ]>
gap> bettiM := BettiTable( Mr );
<A Betti diagram of <A right acyclic complex containing
2 morphisms of graded right modules at degrees [ 0 .. 2 ]>>
gap> Display( bettiM );
total:  1 2 1
--------------
0:  1 1 .
1:  . . .
2:  . 1 1
--------------
degree:  0 1 2
gap> R := GradedRing( CoefficientsRing( S ) * "x,y,z,w" );;
gap> nmat := HomalgMatrix( "[ z^2 - y*w, y*z - x*w, y^2 - x*z ]", 1, 3, R );
<A 1 x 3 matrix over a graded ring>
gap> N := RightPresentationWithDegrees( nmat );
<A graded cyclic right module on a cyclic generator satisfying 3 relations>
gap> Nr := Resolution( N );
<A right acyclic complex containing
2 morphisms of graded right modules at degrees [ 0 .. 2 ]>
gap> bettiN := BettiTable( Nr );
<A Betti diagram of <A right acyclic complex containing
2 morphisms of graded right modules at degrees [ 0 .. 2 ]>>
gap> Display( bettiN );
total:  1 3 2
--------------
0:  1 . .
1:  . 3 2
--------------
degree:  0 1 2


##### 7.1-4 Schenck-8.3

This is an example from Section 8.3 in [Sch03].

gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z,w";;
gap> S := GradedRing( R );;
gap> jmat := HomalgMatrix( "[ z*w, x*w, y*z, x*y, x^3*z - x*z^3 ]", 1, 5, S );
<A 1 x 5 matrix over a graded ring>
gap> J := RightPresentationWithDegrees( jmat );
<A graded cyclic right module on a cyclic generator satisfying 5 relations>
gap> Jr := Resolution( J );
<A right acyclic complex containing
3 morphisms of graded right modules at degrees [ 0 .. 3 ]>
gap> betti := BettiTable( Jr );
<A Betti diagram of <A right acyclic complex containing
3 morphisms of graded right modules at degrees [ 0 .. 3 ]>>
gap> Display( betti );
total:  1 5 6 2
----------------
0:  1 . . .
1:  . 4 4 1
2:  . . . .
3:  . 1 2 1
----------------
degree:  0 1 2 3


##### 7.1-5 Schenck-8.3.3

This is Exercise 8.3.3 in [Sch03].

gap> Qxyz := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;
gap> S := GradedRing( Qxyz );;
gap> mat := HomalgMatrix( "[ x*y*z, x*y^2, x^2*z, x^2*y, x^3 ]", 1, 5, S );
<A 1 x 5 matrix over a graded ring>
gap> M := RightPresentationWithDegrees( mat, S );
<A graded cyclic right module on a cyclic generator satisfying 5 relations>
gap> Mr := Resolution( M );
<A right acyclic complex containing
3 morphisms of graded right modules at degrees [ 0 .. 3 ]>
gap> betti := BettiTable( Mr );
<A Betti diagram of <A right acyclic complex containing
3 morphisms of graded right modules at degrees [ 0 .. 3 ]>>
gap> Display( betti );
total:  1 5 6 2
----------------
0:  1 . . .
1:  . . . .
2:  . 5 6 2
----------------
degree:  0 1 2 3


#### 7.2 Commutative Algebra

##### 7.2-1 Saturate
gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;
gap> S := GradedRing( R );;
gap> m := GradedLeftSubmodule( "x,y,z", S );
<A graded torsion-free (left) ideal given by 3 generators>
gap> I := Intersect( m^3, GradedLeftSubmodule( "x", S ) );
<A graded torsion-free (left) ideal given by 6 generators>
gap> NrRelations( I );
8
gap> Im := SubobjectQuotient( I, m );
<A graded torsion-free rank 1 (left) ideal given by 3 generators>
gap> I_m := Saturate( I, m );
<A graded principal (left) ideal of rank 1 on a free generator>
gap> Is := Saturate( I );
<A graded principal (left) ideal of rank 1 on a free generator>
gap> Assert( 0, Is = I_m );


#### 7.3 Global Section Modules of the Induced Sheaves

##### 7.3-1 Examples of the ModuleOfGlobalSections Functor and Purity Filtrations
gap> LoadPackage( "GradedRingForHomalg" );;
gap> Qxyzt := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z,t";;
gap> S := GradedRing( Qxyzt );;
gap>
gap> wmat := HomalgMatrix( "[ \
> x*y,  y*z,    z*t,        0,           0,          0,\
> x^3*z,x^2*z^2,0,          x*z^2*t,     -z^2*t^2,   0,\
> x^4,  x^3*z,  0,          x^2*z*t,     -x*z*t^2,   0,\
> 0,    0,      x*y,        -y^2,        x^2-t^2,    0,\
> 0,    0,      x^2*z,      -x*y*z,      y*z*t,      0,\
> 0,    0,      x^2*y-x^2*t,-x*y^2+x*y*t,y^2*t-y*t^2,0,\
> 0,    0,      0,          0,           -1,         1 \
> ]", 7, 6, Qxyzt );;
gap>
gap> wmor := GradedMap( wmat, "free", "free", "left", S );;
gap> IsMorphism( wmor );;
gap> W := LeftPresentationWithDegrees( wmat, S );;
gap> HW := ModuleOfGlobalSections( W );
<A graded left module presented by yet unknown relations for 6 generators>
gap> LinearStrandOfTateResolution( W, 0,4 );
<A cocomplex containing 4 morphisms of graded left modules at degrees
[ 0 .. 4 ]>
gap> purity_iso := IsomorphismOfFiltration( PurityFiltration( W ) );
<A non-zero isomorphism of graded left modules>
gap> Hpurity_iso := ModuleOfGlobalSections( purity_iso );
<An isomorphism of graded left modules>
gap> ModuleOfGlobalSections( wmor );
<A homomorphism of graded left modules>
gap> NaturalMapToModuleOfGlobalSections( W );
<A homomorphism of graded left modules>


##### 7.3-2 Horrocks Mumford bundle

This example computes the global sections module of the Horrocks-Mumford bundle.

gap> LoadPackage( "GradedRingForHomalg" );;
gap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x0..x4";;
gap> S := GradedRing( R );;
gap> A := KoszulDualRing( S, "e0..e4" );;
gap> mat := HomalgMatrix( "[ \
> e1*e4, e2*e0, e3*e1, e4*e2, e0*e3, \
> e2*e3, e3*e4, e4*e0, e0*e1, e1*e2  \
> ]",
> 2, 5, A );
<A 2 x 5 matrix over a graded ring>
gap> phi := GradedMap( mat, "free", "free", "left", A );;
gap> IsMorphism( phi );
true
gap> M := GuessModuleOfGlobalSectionsFromATateMap( 2, phi );
#I  GuessModuleOfGlobalSectionsFromATateMap uses a heuristic for efficiency;
please check the correctness of the following result

<A graded left module presented by yet unknown relations for 19 generators>
gap> IsPure( M );
true
gap> Rank( M );
2
gap> Display( BettiTable( Resolution( M ) ) );
total:  19 35 20  2
--------------------
3:   4  .  .  .
4:  15 35 20  .
5:   .  .  .  2
--------------------
degree:   0  1  2  3
gap> Display( BettiTable( TateResolution( M, -5, 5 ) ) );
total:  100  37  14  10   5   2   5  10  14  37 100   ?   ?   ?   ?
----------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
4:  100  35   4   .   .   .   .   .   .   .   .   0   0   0   0
3:    *   .   2  10  10   5   .   .   .   .   .   .   0   0   0
2:    *   *   .   .   .   .   .   2   .   .   .   .   .   0   0
1:    *   *   *   .   .   .   .   .   .   5  10  10   2   .   0
0:    *   *   *   *   .   .   .   .   .   .   .   .   4  35 100
----------|---|---|---|---|---|---|---|---|---|---|---|---|---|---S
twist:   -9  -8  -7  -6  -5  -4  -3  -2  -1   0   1   2   3   4   5
-------------------------------------------------------------------
Euler:  100  35   2 -10 -10  -5   0   2   0  -5 -10 -10   2  35 100
gap> M;
<A graded reflexive non-projective rank 2 left module presented by 94 \
relations for 19 generators>
gap> P := ElementOfGrothendieckGroup( M );
( 2*O_{P^4} - 1*O_{P^3} - 4*O_{P^2} - 2*O_{P^1} ) -> P^4
gap> P!.DisplayTwistedCoefficients := true;
true
gap> P;
( 2*O(-3) - 10*O(-2) + 15*O(-1) - 5*O(0) ) -> P^4
gap> chi := HilbertPolynomial( M );
1/12*t^4+2/3*t^3-1/12*t^2-17/3*t-5
gap> c := ChernPolynomial( M );
( 2 | 1-h+4*h^2 ) -> P^4
gap> ChernPolynomial( M * S^3 );
( 2 | 1+5*h+10*h^2 ) -> P^4
gap> ch := ChernCharacter( M );
[ 2-u-7*u^2/2!+11*u^3/3!+17*u^4/4! ] -> P^4
gap> HilbertPolynomial( ch );
1/12*t^4+2/3*t^3-1/12*t^2-17/3*t-5
gap> List( [ -8 .. 7 ], i -> Value( chi, i ) );
[ 35, 2, -10, -10, -5, 0, 2, 0, -5, -10, -10, 2, 35, 100, 210, 380 ]
gap> HF := HilbertFunction( M );
function( t ) ... end
gap> List( [ 0 .. 7 ], HF );
[ 0, 0, 0, 4, 35, 100, 210, 380 ]
gap> IndexOfRegularity( M );
4
gap> DataOfHilbertFunction( M );
[ [ [ 4 ], [ 3 ] ], 1/12*t^4+2/3*t^3-1/12*t^2-17/3*t-5 ]

Goto Chapter: Top 1 2 3 4 5 6 7 A Bib Ind

generated by GAPDoc2HTML