  
  [1X3 Examples[0X
  
  
  [1X3.1 Spectral Filtrations[0X
  
  
  [1X3.1-1 ExtExt[0X
  
  This is Example B.2 in [Bar].
  
  [4X---------------------------  Example  ----------------------------[0X
    [4Xgap> Qxyz := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;[0X
    [4Xgap> wmat := HomalgMatrix( "[ \[0X
    [4X> x*y,  y*z,    z,        0,         0,    \[0X
    [4X> x^3*z,x^2*z^2,0,        x*z^2,     -z^2, \[0X
    [4X> x^4,  x^3*z,  0,        x^2*z,     -x*z, \[0X
    [4X> 0,    0,      x*y,      -y^2,      x^2-1,\[0X
    [4X> 0,    0,      x^2*z,    -x*y*z,    y*z,  \[0X
    [4X> 0,    0,      x^2*y-x^2,-x*y^2+x*y,y^2-y \[0X
    [4X> ]", 6, 5, Qxyz );[0X
    [4X<A homalg external 6 by 5 matrix>[0X
    [4Xgap> W := LeftPresentation( wmat );[0X
    [4X<A left module presented by 6 relations for 5 generators>[0X
    [4Xgap> Y := Hom( Qxyz, W );[0X
    [4X<A right module on 5 generators satisfying yet unknown relations>[0X
    [4Xgap> F := InsertObjectInMultiFunctor( Functor_Hom, 2, Y, "TensorY" );[0X
    [4X<The functor TensorY>[0X
    [4Xgap> G := LeftDualizingFunctor( Qxyz );;[0X
    [4Xgap> II_E := GrothendieckSpectralSequence( F, G, W );[0X
    [4X<A stable homological spectral sequence with sheets at levels [0X
    [4X[ 0 .. 4 ] each consisting of left modules at bidegrees [ -3 .. 0 ]x[0X
    [4X[ 0 .. 3 ]>[0X
    [4Xgap> Display( II_E );[0X
    [4XThe associated transposed spectral sequence:[0X
    [4X[0X
    [4Xa homological spectral sequence at bidegrees[0X
    [4X[ [ 0 .. 3 ], [ -3 .. 0 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . * *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * * *[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X s s s s[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X[0X
    [4XNow the spectral sequence of the bicomplex:[0X
    [4X[0X
    [4Xa homological spectral sequence at bidegrees[0X
    [4X[ [ -3 .. 0 ], [ 0 .. 3 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . * *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X * * s s[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 3:[0X
    [4X[0X
    [4X * s s s[0X
    [4X * s s s[0X
    [4X . . s *[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 4:[0X
    [4X[0X
    [4X s s s s[0X
    [4X . s s s[0X
    [4X . . s s[0X
    [4X . . . s[0X
    [4Xgap> filt := FiltrationBySpectralSequence( II_E, 0 );[0X
    [4X<An ascending filtration with degrees [ -3 .. 0 ] and graded parts:[0X
    [4X   0:	<A non-zero left module presented by 33 relations for 23 generators>[0X
    [4X  -1:	<A non-zero left module presented by 37 relations for 22 generators>[0X
    [4X  -2:	<A non-zero left module presented by 20 relations for 8 generators>[0X
    [4X  -3:	<A non-zero left module presented by 29 relations for 4 generators>[0X
    [4Xof[0X
    [4X<A non-zero left module presented by 111 relations for 37 generators>>[0X
    [4Xgap> ByASmallerPresentation( filt );[0X
    [4X<An ascending filtration with degrees [ -3 .. 0 ] and graded parts:[0X
    [4X   0:	<A non-zero left module presented by 25 relations for 16 generators>[0X
    [4X  -1:	<A non-zero left module presented by 30 relations for 14 generators>[0X
    [4X  -2:	<A non-zero left module presented by 18 relations for 7 generators>[0X
    [4X  -3:	<A non-zero left module presented by 12 relations for 4 generators>[0X
    [4Xof[0X
    [4X<A non-zero left module presented by 48 relations for 20 generators>>[0X
    [4Xgap> m := IsomorphismOfFiltration( filt );[0X
    [4X<An isomorphism of left modules>[0X
  [4X------------------------------------------------------------------[0X
  
  
  [1X3.1-2 Purity[0X
  
  This is Example B.3 in [Bar].
  
  [4X---------------------------  Example  ----------------------------[0X
    [4Xgap> Qxyz := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;[0X
    [4Xgap> wmat := HomalgMatrix( "[ \[0X
    [4X> x*y,  y*z,    z,        0,         0,    \[0X
    [4X> x^3*z,x^2*z^2,0,        x*z^2,     -z^2, \[0X
    [4X> x^4,  x^3*z,  0,        x^2*z,     -x*z, \[0X
    [4X> 0,    0,      x*y,      -y^2,      x^2-1,\[0X
    [4X> 0,    0,      x^2*z,    -x*y*z,    y*z,  \[0X
    [4X> 0,    0,      x^2*y-x^2,-x*y^2+x*y,y^2-y \[0X
    [4X> ]", 6, 5, Qxyz );[0X
    [4X<A homalg external 6 by 5 matrix>[0X
    [4Xgap> W := LeftPresentation( wmat );[0X
    [4X<A left module presented by 6 relations for 5 generators>[0X
    [4Xgap> filt := PurityFiltration( W );[0X
    [4X<The ascending purity filtration with degrees [ -3 .. 0 ] and graded parts:[0X
    [4X   0:	<A codegree-[ 1, 1 ]-pure rank 2 left module presented by[0X
    [4X3 relations for 4 generators>[0X
    [4X  -1:	<A codegree-1-pure codim 1 left module presented by 4 relations for[0X
    [4X3 generators>[0X
    [4X  -2:	<A cyclic reflexively pure codim 2 left module presented by[0X
    [4X2 relations for a cyclic generator>[0X
    [4X  -3:	<A cyclic reflexively pure codim 3 left module presented by[0X
    [4X3 relations for a cyclic generator>[0X
    [4Xof[0X
    [4X<A non-pure rank 2 left module presented by 6 relations for 5 generators>>[0X
    [4Xgap> W;[0X
    [4X<A non-pure rank 2 left module presented by 6 relations for 5 generators>[0X
    [4Xgap> II_E := SpectralSequence( filt );[0X
    [4X<A stable homological spectral sequence with sheets at levels[0X
    [4X[ 0 .. 4 ] each consisting of left modules at bidegrees [ -3 .. 0 ]x[0X
    [4X[ 0 .. 3 ]>[0X
    [4Xgap> Display( II_E );[0X
    [4XThe associated transposed spectral sequence:[0X
    [4X[0X
    [4Xa homological spectral sequence at bidegrees[0X
    [4X[ [ 0 .. 3 ], [ -3 .. 0 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . * *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * * *[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X s . . .[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X[0X
    [4XNow the spectral sequence of the bicomplex:[0X
    [4X[0X
    [4Xa homological spectral sequence at bidegrees[0X
    [4X[ [ -3 .. 0 ], [ 0 .. 3 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . * *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X s . . .[0X
    [4X * s . .[0X
    [4X . * * .[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 3:[0X
    [4X[0X
    [4X s . . .[0X
    [4X * s . .[0X
    [4X . . s .[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 4:[0X
    [4X[0X
    [4X s . . .[0X
    [4X . s . .[0X
    [4X . . s .[0X
    [4X . . . s[0X
    [4X[0X
    [4Xgap> m := IsomorphismOfFiltration( filt );[0X
    [4X<An isomorphism of left modules>[0X
    [4Xgap> IsIdenticalObj( Range( m ), W );[0X
    [4Xtrue[0X
    [4Xgap> Source( m );[0X
    [4X<A left module presented by 12 relations for 9 generators (locked)>[0X
    [4X gap> Display( last );[0X
    [4X 0,  0,   x, -y,0,1, 0,    0,  0,[0X
    [4X x*y,-y*z,-z,0, 0,0, 0,    0,  0,[0X
    [4X x^2,-x*z,0, -z,1,0, 0,    0,  0,[0X
    [4X 0,  0,   0, 0, y,-z,0,    0,  0,[0X
    [4X 0,  0,   0, 0, x,0, -z,   0,  1,[0X
    [4X 0,  0,   0, 0, 0,x, -y,   -1, 0,[0X
    [4X 0,  0,   0, 0, 0,-y,x^2-1,0,  0,[0X
    [4X 0,  0,   0, 0, 0,0, 0,    z,  0,[0X
    [4X 0,  0,   0, 0, 0,0, 0,    y-1,0,[0X
    [4X 0,  0,   0, 0, 0,0, 0,    0,  z,[0X
    [4X 0,  0,   0, 0, 0,0, 0,    0,  y,[0X
    [4X 0,  0,   0, 0, 0,0, 0,    0,  x [0X
    [4X [0X
    [4X Cokernel of the map[0X
    [4X [0X
    [4X Q[x,y,z]^(1x12) --> Q[x,y,z]^(1x9),[0X
    [4X [0X
    [4X currently represented by the above matrix[0X
    [4X gap> Display( filt );[0X
    [4X Degree 0:[0X
    [4X [0X
    [4X 0,  0,   x, -y,[0X
    [4X x*y,-y*z,-z,0, [0X
    [4X x^2,-x*z,0, -z [0X
    [4X [0X
    [4X Cokernel of the map[0X
    [4X [0X
    [4X Q[x,y,z]^(1x3) --> Q[x,y,z]^(1x4),[0X
    [4X [0X
    [4X currently represented by the above matrix[0X
    [4X ----------[0X
    [4X Degree -1:[0X
    [4X [0X
    [4X y,-z,0,   [0X
    [4X x,0, -z,  [0X
    [4X 0,x, -y,  [0X
    [4X 0,-y,x^2-1[0X
    [4X [0X
    [4X Cokernel of the map[0X
    [4X [0X
    [4X Q[x,y,z]^(1x4) --> Q[x,y,z]^(1x3),[0X
    [4X [0X
    [4X currently represented by the above matrix[0X
    [4X ----------[0X
    [4X Degree -2:[0X
    [4X [0X
    [4X Q[x,y,z]/< z, y-1 >[0X
    [4X ----------[0X
    [4X Degree -3:[0X
    [4X [0X
    [4X Q[x,y,z]/< z, y, x >[0X
    [4X gap> Display( m );[0X
    [4X 1,   0,    0,  0,   0, [0X
    [4X 0,   -1,   0,  0,   0, [0X
    [4X 0,   0,    -1, 0,   0, [0X
    [4X 0,   0,    0,  -1,  0, [0X
    [4X -x^2,-x*z, 0,  -z,  0, [0X
    [4X 0,   0,    x,  -y,  0, [0X
    [4X 0,   0,    0,  0,   -1,[0X
    [4X 0,   0,    x^2,-x*y,y, [0X
    [4X x^3, x^2*z,0,  x*z, -z [0X
    [4X [0X
    [4X the map is currently represented by the above 9 x 5 matrix[0X
  [4X------------------------------------------------------------------[0X
  
  
  [1X3.1-3 A3_Purity[0X
  
  This is Example B.4 in [Bar].
  
  [4X---------------------------  Example  ----------------------------[0X
    [4Xgap> Qxyz := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;[0X
    [4Xgap> A3 := RingOfDerivations( Qxyz, "Dx,Dy,Dz" );;[0X
    [4Xgap> nmat := HomalgMatrix( "[ \[0X
    [4X> 3*Dy*Dz-Dz^2+Dx+3*Dy-Dz,           3*Dy*Dz-Dz^2,     \[0X
    [4X> Dx*Dz+Dz^2+Dz,                     Dx*Dz+Dz^2,       \[0X
    [4X> Dx*Dy,                             0,                \[0X
    [4X> Dz^2-Dx+Dz,                        3*Dx*Dy+Dz^2,     \[0X
    [4X> Dx^2,                              0,                \[0X
    [4X> -Dz^2+Dx-Dz,                       3*Dx^2-Dz^2,      \[0X
    [4X> Dz^3-Dx*Dz+Dz^2,                   Dz^3,             \[0X
    [4X> 2*x*Dz^2-2*x*Dx+2*x*Dz+3*Dx+3*Dz+3,2*x*Dz^2+3*Dx+3*Dz\[0X
    [4X> ]", 8, 2, A3 );[0X
    [4X<A homalg external 8 by 2 matrix>[0X
    [4Xgap> N := LeftPresentation( nmat );[0X
    [4X<A left module presented by 8 relations for 2 generators>[0X
    [4Xgap> filt := PurityFiltration( N );[0X
    [4X<The ascending purity filtration with degrees [ -3 .. 0 ] and graded parts:[0X
    [4X   0:	<A zero left module>[0X
    [4X  -1:	<A cyclic reflexively pure codim 1 left module presented by [0X
    [4X1 relation for a cyclic generator>[0X
    [4X  -2:	<A cyclic reflexively pure codim 2 left module presented by [0X
    [4X2 relations for a cyclic generator>[0X
    [4X  -3:	<A cyclic reflexively pure codim 3 left module presented by [0X
    [4X3 relations for a cyclic generator>[0X
    [4Xof[0X
    [4X<A non-pure codim 1 left module presented by 8 relations for 2 generators>>[0X
    [4Xgap> II_E := SpectralSequence( filt );[0X
    [4X<A stable homological spectral sequence with sheets at levels [0X
    [4X[ 0 .. 2 ] each consisting of left modules at bidegrees [ -3 .. 0 ]x[0X
    [4X[ 0 .. 4 ]>[0X
    [4Xgap> Display( II_E );[0X
    [4XThe associated transposed spectral sequence:[0X
    [4X[0X
    [4Xa homological spectral sequence at bidegrees[0X
    [4X[ [ 0 .. 4 ], [ -3 .. 0 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * * * *[0X
    [4X . * * * *[0X
    [4X . . * * *[0X
    [4X . . . * *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * * * *[0X
    [4X . . . . .[0X
    [4X . . . . .[0X
    [4X . . . . .[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X s . . . .[0X
    [4X . . . . .[0X
    [4X . . . . .[0X
    [4X . . . . .[0X
    [4X[0X
    [4XNow the spectral sequence of the bicomplex:[0X
    [4X[0X
    [4Xa homological spectral sequence at bidegrees[0X
    [4X[ [ -3 .. 0 ], [ 0 .. 4 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . * *[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X . . * *[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . * *[0X
    [4X . . . .[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X . . . .[0X
    [4X s . . .[0X
    [4X . s . .[0X
    [4X . . s .[0X
    [4X . . . .[0X
    [4Xgap> m := IsomorphismOfFiltration( filt );[0X
    [4X<An isomorphism of left modules>[0X
    [4Xgap> IsIdenticalObj( Range( m ), N );[0X
    [4Xtrue[0X
    [4Xgap> Source( m );[0X
    [4X<A left module presented by 6 relations for 3 generators (locked)>[0X
    [4X gap> Display( last );[0X
    [4X Dx,-1/3,-2/9*x,[0X
    [4X 0, Dy,  -1/3,  [0X
    [4X 0, Dx,  1,     [0X
    [4X 0, 0,   Dz,    [0X
    [4X 0, 0,   Dy,    [0X
    [4X 0, 0,   Dx     [0X
    [4X [0X
    [4X Cokernel of the map[0X
    [4X [0X
    [4X R^(1x6) --> R^(1x3), ( for R := Q[x,y,z]<Dx,Dy,Dz> )[0X
    [4X [0X
    [4X currently represented by the above matrix[0X
    [4X gap> Display( filt );[0X
    [4X Degree 0:[0X
    [4X [0X
    [4X 0[0X
    [4X ----------[0X
    [4X Degree -1:[0X
    [4X [0X
    [4X Q[x,y,z]<Dx,Dy,Dz>/< Dx > [0X
    [4X ----------[0X
    [4X Degree -2:[0X
    [4X [0X
    [4X Q[x,y,z]<Dx,Dy,Dz>/< Dy, Dx >[0X
    [4X ----------[0X
    [4X Degree -3:[0X
    [4X [0X
    [4X Q[x,y,z]<Dx,Dy,Dz>/< Dz, Dy, Dx >[0X
    [4X gap> Display( m );[0X
    [4X 1,                1,     [0X
    [4X -3*Dz-3,          -3*Dz, [0X
    [4X -3*Dz^2+3*Dx-3*Dz,-3*Dz^2[0X
    [4X [0X
    [4X the map is currently represented by the above 3 x 2 matrix[0X
  [4X------------------------------------------------------------------[0X
  
  
  [1X3.1-4 TorExt-Grothendieck[0X
  
  This is Example B.5 in [Bar].
  
  [4X---------------------------  Example  ----------------------------[0X
    [4Xgap> Qxyz := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;[0X
    [4Xgap> wmat := HomalgMatrix( "[ \[0X
    [4X> x*y,  y*z,    z,        0,         0,    \[0X
    [4X> x^3*z,x^2*z^2,0,        x*z^2,     -z^2, \[0X
    [4X> x^4,  x^3*z,  0,        x^2*z,     -x*z, \[0X
    [4X> 0,    0,      x*y,      -y^2,      x^2-1,\[0X
    [4X> 0,    0,      x^2*z,    -x*y*z,    y*z,  \[0X
    [4X> 0,    0,      x^2*y-x^2,-x*y^2+x*y,y^2-y \[0X
    [4X> ]", 6, 5, Qxyz );[0X
    [4X<A homalg external 6 by 5 matrix>[0X
    [4Xgap> W := LeftPresentation( wmat );[0X
    [4X<A left module presented by 6 relations for 5 generators>[0X
    [4Xgap> F := InsertObjectInMultiFunctor( Functor_TensorProduct, 2, W, "TensorW" );[0X
    [4X<The functor TensorW>[0X
    [4Xgap> G := LeftDualizingFunctor( Qxyz );;[0X
    [4Xgap> II_E := GrothendieckSpectralSequence( F, G, W );[0X
    [4X<A stable cohomological spectral sequence with sheets at levels[0X
    [4X[ 0 .. 4 ] each consisting of left modules at bidegrees [ -3 .. 0 ]x[0X
    [4X[ 0 .. 3 ]>[0X
    [4Xgap> Display( II_E );[0X
    [4XThe associated transposed spectral sequence:[0X
    [4X[0X
    [4Xa cohomological spectral sequence at bidegrees[0X
    [4X[ [ 0 .. 3 ], [ -3 .. 0 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . * *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * * *[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X s s s s[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X[0X
    [4XNow the spectral sequence of the bicomplex:[0X
    [4X[0X
    [4Xa cohomological spectral sequence at bidegrees[0X
    [4X[ [ -3 .. 0 ], [ 0 .. 3 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . * *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X * * s s[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 3:[0X
    [4X[0X
    [4X * s s s[0X
    [4X . s s s[0X
    [4X . . s *[0X
    [4X . . . s[0X
    [4X---------[0X
    [4XLevel 4:[0X
    [4X[0X
    [4X s s s s[0X
    [4X . s s s[0X
    [4X . . s s[0X
    [4X . . . s[0X
    [4Xgap> filt := FiltrationBySpectralSequence( II_E, 0 );[0X
    [4X<A descending filtration with degrees [ -3 .. 0 ] and graded parts:[0X
    [4X  -3:	<A non-zero cyclic left module presented by [0X
    [4X3 relations for a cyclic generator>[0X
    [4X  -2:	<A non-zero left module presented by 17 relations for 6 generators>[0X
    [4X  -1:	<A non-zero left module presented by 19 relations for 9 generators>[0X
    [4X   0:	<A non-zero left module presented by 13 relations for 10 generators>[0X
    [4Xof[0X
    [4X<A left module presented by yet unknown relations for 41 generators>>[0X
    [4Xgap> ByASmallerPresentation( filt );[0X
    [4X<A descending filtration with degrees [ -3 .. 0 ] and graded parts:[0X
    [4X  -3:	<A non-zero cyclic left module presented by [0X
    [4X3 relations for a cyclic generator>[0X
    [4X  -2:	<A non-zero left module presented by 12 relations for 4 generators>[0X
    [4X  -1:	<A non-zero left module presented by 18 relations for 8 generators>[0X
    [4X   0:	<A non-zero left module presented by 11 relations for 10 generators>[0X
    [4Xof[0X
    [4X<A left module presented by 21 relations for 12 generators>>[0X
    [4Xgap> m := IsomorphismOfFiltration( filt );[0X
    [4X<An isomorphism of left modules>[0X
  [4X------------------------------------------------------------------[0X
  
  
  [1X3.1-5 TorExt[0X
  
  This is Example B.6 in [Bar].
  
  [4X---------------------------  Example  ----------------------------[0X
    [4Xgap> Qxyz := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;[0X
    [4Xgap> wmat := HomalgMatrix( "[ \[0X
    [4X> x*y,  y*z,    z,        0,         0,    \[0X
    [4X> x^3*z,x^2*z^2,0,        x*z^2,     -z^2, \[0X
    [4X> x^4,  x^3*z,  0,        x^2*z,     -x*z, \[0X
    [4X> 0,    0,      x*y,      -y^2,      x^2-1,\[0X
    [4X> 0,    0,      x^2*z,    -x*y*z,    y*z,  \[0X
    [4X> 0,    0,      x^2*y-x^2,-x*y^2+x*y,y^2-y \[0X
    [4X> ]", 6, 5, Qxyz );[0X
    [4X<A homalg external 6 by 5 matrix>[0X
    [4Xgap> W := LeftPresentation( wmat );[0X
    [4X<A left module presented by 6 relations for 5 generators>[0X
    [4Xgap> P := Resolution( W );[0X
    [4X<A right acyclic complex containing 3 morphisms of left modules at degrees [0X
    [4X[ 0 .. 3 ]>[0X
    [4Xgap> GP := Hom( P );[0X
    [4X<A cocomplex containing 3 morphisms of right modules at degrees [ 0 .. 3 ]>[0X
    [4Xgap> FGP := GP * P;[0X
    [4X<A cocomplex containing 3 morphisms of left complexes at degrees [ 0 .. 3 ]>[0X
    [4Xgap> BC := HomalgBicomplex( FGP );[0X
    [4X<A bicocomplex containing left modules at bidegrees [ 0 .. 3 ]x[ -3 .. 0 ]>[0X
    [4Xgap> p_degrees := ObjectDegreesOfBicomplex( BC )[1];[0X
    [4X[ 0 .. 3 ][0X
    [4Xgap> II_E := SecondSpectralSequenceWithFiltration( BC, p_degrees );[0X
    [4X<A stable cohomological spectral sequence with sheets at levels [0X
    [4X[ 0 .. 4 ] each consisting of left modules at bidegrees [ -3 .. 0 ]x[0X
    [4X[ 0 .. 3 ]>[0X
    [4Xgap> Display( II_E );[0X
    [4XThe associated transposed spectral sequence:[0X
    [4X[0X
    [4Xa cohomological spectral sequence at bidegrees[0X
    [4X[ [ 0 .. 3 ], [ -3 .. 0 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * * *[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X s s s s[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X[0X
    [4XNow the spectral sequence of the bicomplex:[0X
    [4X[0X
    [4Xa cohomological spectral sequence at bidegrees[0X
    [4X[ [ -3 .. 0 ], [ 0 .. 3 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X * * s s[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 3:[0X
    [4X[0X
    [4X * s s s[0X
    [4X . s s s[0X
    [4X . . s *[0X
    [4X . . . s[0X
    [4X---------[0X
    [4XLevel 4:[0X
    [4X[0X
    [4X s s s s[0X
    [4X . s s s[0X
    [4X . . s s[0X
    [4X . . . s[0X
    [4Xgap> filt := FiltrationBySpectralSequence( II_E, 0 );[0X
    [4X<A descending filtration with degrees [ -3 .. 0 ] and graded parts:[0X
    [4X  -3:	<A non-zero cyclic left module presented by [0X
    [4X3 relations for a cyclic generator>[0X
    [4X  -2:	<A non-zero left module presented by 17 relations for 7 generators>[0X
    [4X  -1:	<A non-zero left module presented by 25 relations for 12 generators>[0X
    [4X   0:	<A non-zero left module presented by 13 relations for 10 generators>[0X
    [4Xof[0X
    [4X<A left module presented by yet unknown relations for 24 generators>>[0X
    [4Xgap> ByASmallerPresentation( filt );[0X
    [4X<A descending filtration with degrees [ -3 .. 0 ] and graded parts:[0X
    [4X  -3:	<A non-zero cyclic left module presented by [0X
    [4X3 relations for a cyclic generator>[0X
    [4X  -2:	<A non-zero left module presented by 12 relations for 4 generators>[0X
    [4X  -1:	<A non-zero left module presented by 21 relations for 8 generators>[0X
    [4X   0:	<A non-zero left module presented by 11 relations for 10 generators>[0X
    [4Xof[0X
    [4X<A left module presented by 23 relations for 12 generators>>[0X
    [4Xgap> m := IsomorphismOfFiltration( filt );[0X
    [4X<An isomorphism of left modules>[0X
  [4X------------------------------------------------------------------[0X
  
  
  [1X3.1-6 CodegreeOfPurity[0X
  
  This is Example B.7 in [Bar].
  
  [4X---------------------------  Example  ----------------------------[0X
    [4Xgap> Qxyz := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;[0X
    [4Xgap> vmat := HomalgMatrix( "[ \[0X
    [4X> 0,  0,  x,-z, \[0X
    [4X> x*z,z^2,y,0,  \[0X
    [4X> x^2,x*z,0,y   \[0X
    [4X> ]", 3, 4, Qxyz );[0X
    [4X<A homalg external 3 by 4 matrix>[0X
    [4Xgap> V := LeftPresentation( vmat );[0X
    [4X<A non-torsion left module presented by 3 relations for 4 generators>[0X
    [4Xgap> wmat := HomalgMatrix( "[ \[0X
    [4X> 0,  0,  x,-y, \[0X
    [4X> x*y,y*z,z,0,  \[0X
    [4X> x^2,x*z,0,z   \[0X
    [4X> ]", 3, 4, Qxyz );[0X
    [4X<A homalg external 3 by 4 matrix>[0X
    [4Xgap> W := LeftPresentation( wmat );[0X
    [4X<A non-torsion left module presented by 3 relations for 4 generators>[0X
    [4Xgap> Rank( V );[0X
    [4X2[0X
    [4Xgap> Rank( W );[0X
    [4X2[0X
    [4Xgap> ProjectiveDimension( V );[0X
    [4X2[0X
    [4Xgap> ProjectiveDimension( W );[0X
    [4X2[0X
    [4Xgap> DegreeOfTorsionFreeness( V );[0X
    [4X1[0X
    [4Xgap> DegreeOfTorsionFreeness( W );[0X
    [4X1[0X
    [4Xgap> CodegreeOfPurity( V );[0X
    [4X[ 2 ][0X
    [4Xgap> CodegreeOfPurity( W );[0X
    [4X[ 1, 1 ][0X
    [4Xgap> filtV := PurityFiltration( V );[0X
    [4X<The ascending purity filtration with degrees [ -2 .. 0 ] and graded parts:[0X
    [4X   0:	<A codegree-[ 2 ]-pure rank 2 left module presented by 3 relations for [0X
    [4X4 generators>[0X
    [4X  -1:	<A zero left module>[0X
    [4X  -2:	<A zero left module>[0X
    [4Xof[0X
    [4X<A codegree-[ 2 ]-pure rank 2 left module presented by 3 relations for [0X
    [4X4 generators>>[0X
    [4Xgap> filtW := PurityFiltration( W );[0X
    [4X<The ascending purity filtration with degrees [ -2 .. 0 ] and graded parts:[0X
    [4X   0:	<A codegree-[ 1, 1 ]-pure rank 2 left module presented by [0X
    [4X3 relations for 4 generators>[0X
    [4X  -1:	<A zero left module>[0X
    [4X  -2:	<A zero left module>[0X
    [4Xof[0X
    [4X<A codegree-[ 1, 1 ]-pure rank 2 left module presented by 3 relations for [0X
    [4X4 generators>>[0X
    [4Xgap> II_EV := SpectralSequence( filtV );[0X
    [4X<A stable homological spectral sequence with sheets at levels [0X
    [4X[ 0 .. 4 ] each consisting of left modules at bidegrees [ -3 .. 0 ]x[0X
    [4X[ 0 .. 2 ]>[0X
    [4Xgap> Display( II_EV );[0X
    [4XThe associated transposed spectral sequence:[0X
    [4X[0X
    [4Xa homological spectral sequence at bidegrees[0X
    [4X[ [ 0 .. 2 ], [ -3 .. 0 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * *[0X
    [4X * * *[0X
    [4X * * *[0X
    [4X . * *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * *[0X
    [4X . . .[0X
    [4X . . .[0X
    [4X . . .[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X s . .[0X
    [4X . . .[0X
    [4X . . .[0X
    [4X . . .[0X
    [4X[0X
    [4XNow the spectral sequence of the bicomplex:[0X
    [4X[0X
    [4Xa homological spectral sequence at bidegrees[0X
    [4X[ [ -3 .. 0 ], [ 0 .. 2 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * * *[0X
    [4X * * * *[0X
    [4X . . * *[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X * . . .[0X
    [4X * . . .[0X
    [4X . . * *[0X
    [4X---------[0X
    [4XLevel 3:[0X
    [4X[0X
    [4X * . . .[0X
    [4X . . . .[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 4:[0X
    [4X[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X . . . s[0X
    [4Xgap> II_EW := SpectralSequence( filtW );[0X
    [4X<A stable homological spectral sequence with sheets at levels [0X
    [4X[ 0 .. 4 ] each consisting of left modules at bidegrees [ -3 .. 0 ]x[0X
    [4X[ 0 .. 2 ]>[0X
    [4Xgap> Display( II_EW );                  [0X
    [4XThe associated transposed spectral sequence:[0X
    [4X[0X
    [4Xa homological spectral sequence at bidegrees[0X
    [4X[ [ 0 .. 2 ], [ -3 .. 0 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * *[0X
    [4X * * *[0X
    [4X . * *[0X
    [4X . . *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * *[0X
    [4X . . .[0X
    [4X . . .[0X
    [4X . . .[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X s . .[0X
    [4X . . .[0X
    [4X . . .[0X
    [4X . . .[0X
    [4X[0X
    [4XNow the spectral sequence of the bicomplex:[0X
    [4X[0X
    [4Xa homological spectral sequence at bidegrees[0X
    [4X[ [ -3 .. 0 ], [ 0 .. 2 ] ][0X
    [4X---------[0X
    [4XLevel 0:[0X
    [4X[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . * *[0X
    [4X---------[0X
    [4XLevel 1:[0X
    [4X[0X
    [4X * * * *[0X
    [4X . * * *[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 2:[0X
    [4X[0X
    [4X * . . .[0X
    [4X . * . .[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 3:[0X
    [4X[0X
    [4X * . . .[0X
    [4X . . . .[0X
    [4X . . . *[0X
    [4X---------[0X
    [4XLevel 4:[0X
    [4X[0X
    [4X . . . .[0X
    [4X . . . .[0X
    [4X . . . s[0X
  [4X------------------------------------------------------------------[0X
  
  
  [1X3.1-7 HomHom[0X
  
  This corresponds to the example of Section 2 in [BR06].
  
  [4X---------------------------  Example  ----------------------------[0X
    [4Xgap> R := HomalgRingOfIntegersInExternalGAP( ) / 2^8;[0X
    [4X<A homalg residue class ring>[0X
    [4Xgap> Display( R );[0X
    [4XZ/( 256 )[0X
    [4Xgap> M := LeftPresentation( [ 2^5 ], R );[0X
    [4X<A cyclic left module presented by an unknown number of relations for a cyclic\[0X
    [4X generator>[0X
    [4Xgap> Display( M );[0X
    [4XZ/( 256 )/< |[ 32 ]| >[0X
    [4Xgap> M;[0X
    [4X<A cyclic left module presented by 1 relation for a cyclic generator>[0X
    [4Xgap> _M := LeftPresentation( [ 2^3 ], R );[0X
    [4X<A cyclic left module presented by an unknown number of relations for a cyclic\[0X
    [4X generator>[0X
    [4Xgap> Display( _M );[0X
    [4XZ/( 256 )/< |[ 8 ]| >[0X
    [4Xgap> _M;[0X
    [4X<A cyclic left module presented by 1 relation for a cyclic generator>[0X
    [4Xgap> alpha2 := HomalgMap( [ 1 ], M, _M );[0X
    [4X<A "homomorphism" of left modules>[0X
    [4Xgap> IsMorphism( alpha2 );[0X
    [4Xtrue[0X
    [4Xgap> alpha2;[0X
    [4X<A homomorphism of left modules>[0X
    [4X gap> Display( alpha2 );[0X
    [4X [ [  1 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4Xgap> M_ := Kernel( alpha2 );[0X
    [4X<A cyclic left module presented by yet unknown relations for a cyclic generato\[0X
    [4Xr>[0X
    [4Xgap> alpha1 := KernelEmb( alpha2 );[0X
    [4X<A monomorphism of left modules>[0X
    [4Xgap> seq := HomalgComplex( alpha2 );[0X
    [4X<An acyclic complex containing a single morphism of left modules at degrees [0X
    [4X[ 0 .. 1 ]>[0X
    [4Xgap> Add( seq, alpha1 );[0X
    [4Xgap> seq;[0X
    [4X<A sequence containing 2 morphisms of left modules at degrees [ 0 .. 2 ]>[0X
    [4Xgap> IsShortExactSequence( seq );[0X
    [4Xtrue[0X
    [4Xgap> seq;[0X
    [4X<A short exact sequence containing 2 morphisms of left modules at degrees [0X
    [4X[ 0 .. 2 ]>[0X
    [4X gap> Display( seq );[0X
    [4X -------------------------[0X
    [4X at homology degree: 2[0X
    [4X Z/( 256 )/< |[ 4 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  24 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 1[0X
    [4X Z/( 256 )/< |[ 32 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  1 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 0[0X
    [4X Z/( 256 )/< |[ 8 ]| > [0X
    [4X -------------------------[0X
    [4Xgap> K := LeftPresentation( [ 2^7 ], R );[0X
    [4X<A cyclic left module presented by an unknown number of relations for a cyclic\[0X
    [4X generator>[0X
    [4Xgap> L := RightPresentation( [ 2^4 ], R );[0X
    [4X<A cyclic right module on a cyclic generator satisfying an unknown number of r\[0X
    [4Xelations>[0X
    [4Xgap> triangle := LHomHom( 4, seq, K, L, "t" );[0X
    [4X<An exact triangle containing 3 morphisms of left complexes at degrees [0X
    [4X[ 1, 2, 3, 1 ]>[0X
    [4Xgap> lehs := LongSequence( triangle );[0X
    [4X<A sequence containing 14 morphisms of left modules at degrees [ 0 .. 14 ]>[0X
    [4Xgap> ByASmallerPresentation( lehs );[0X
    [4X<A non-zero sequence containing 14 morphisms of left modules at degrees [0X
    [4X[ 0 .. 14 ]>[0X
    [4Xgap> IsExactSequence( lehs );[0X
    [4Xfalse[0X
    [4Xgap> lehs;[0X
    [4X<A non-zero left acyclic complex containing [0X
    [4X14 morphisms of left modules at degrees [ 0 .. 14 ]>[0X
    [4Xgap> Assert( 0, IsLeftAcyclic( lehs ) );[0X
    [4X gap> Display( lehs );[0X
    [4X -------------------------[0X
    [4X at homology degree: 14[0X
    [4X Z/( 256 )/< |[ 4 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  4 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 13[0X
    [4X Z/( 256 )/< |[ 8 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  6 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 12[0X
    [4X Z/( 256 )/< |[ 8 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  2 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 11[0X
    [4X Z/( 256 )/< |[ 4 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  4 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 10[0X
    [4X Z/( 256 )/< |[ 8 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  6 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 9[0X
    [4X Z/( 256 )/< |[ 8 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  2 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 8[0X
    [4X Z/( 256 )/< |[ 4 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  4 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 7[0X
    [4X Z/( 256 )/< |[ 8 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  6 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 6[0X
    [4X Z/( 256 )/< |[ 8 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  2 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 5[0X
    [4X Z/( 256 )/< |[ 4 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  4 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 4[0X
    [4X Z/( 256 )/< |[ 8 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  6 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 3[0X
    [4X Z/( 256 )/< |[ 8 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  2 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 2[0X
    [4X Z/( 256 )/< |[ 4 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  8 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 1[0X
    [4X Z/( 256 )/< |[ 16 ]| > [0X
    [4X -------------------------[0X
    [4X [ [  1 ] ][0X
    [4X [0X
    [4X modulo [ 256 ][0X
    [4X [0X
    [4X the map is currently represented by the above 1 x 1 matrix[0X
    [4X ------------v------------[0X
    [4X at homology degree: 0[0X
    [4X Z/( 256 )/< |[ 8 ]| > [0X
    [4X -------------------------[0X
  [4X------------------------------------------------------------------[0X
  
  
  [1X3.2 Betti Diagrams[0X
  
  
  [1X3.2-1 Schenck-3.2[0X
  
  This is an example from Section 3.2 in [Sch03].
  
  [4X---------------------------  Example  ----------------------------[0X
    [4Xgap> Qxyz := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;[0X
    [4Xgap> mmat := HomalgMatrix( "[ x, x^3 + y^3 + z^3 ]", 1, 2, Qxyz );[0X
    [4X<A homalg external 1 by 2 matrix>[0X
    [4Xgap> M := RightPresentationWithDegrees( mmat );[0X
    [4X<A graded cyclic right module on a cyclic generator satisfying 2 relations>[0X
    [4Xgap> Mr := Resolution( M );[0X
    [4X<A right acyclic complex containing 2 morphisms of right modules at degrees[0X
    [4X[ 0 .. 2 ]>[0X
    [4Xgap> bettiM := BettiDiagram( Mr );[0X
    [4X<A Betti diagram of <A right acyclic complex containing[0X
    [4X2 morphisms of right modules at degrees [ 0 .. 2 ]>>[0X
    [4Xgap> Display( bettiM );[0X
    [4X total:  1 2 1[0X
    [4X--------------[0X
    [4X     0:  1 1 .[0X
    [4X     1:  . . .[0X
    [4X     2:  . 1 1[0X
    [4X--------------[0X
    [4Xdegree:  0 1 2[0X
    [4Xgap> R := CoefficientsRing( Qxyz ) * "x,y,z,w";;[0X
    [4Xgap> nmat := HomalgMatrix( "[ z^2 - y*w, y*z - x*w, y^2 - x*z ]", 1, 3, R );[0X
    [4X<A homalg external 1 by 3 matrix>[0X
    [4Xgap> N := RightPresentationWithDegrees( nmat );[0X
    [4X<A graded cyclic right module on a cyclic generator satisfying 3 relations>[0X
    [4Xgap> Nr := Resolution( N );[0X
    [4X<A right acyclic complex containing 2 morphisms of right modules at degrees[0X
    [4X[ 0 .. 2 ]>[0X
    [4Xgap> bettiN := BettiDiagram( Nr );[0X
    [4X<A Betti diagram of <A right acyclic complex containing[0X
    [4X2 morphisms of right modules at degrees [ 0 .. 2 ]>>[0X
    [4Xgap> Display( bettiN );           [0X
    [4X total:  1 3 2[0X
    [4X--------------[0X
    [4X     0:  1 . .[0X
    [4X     1:  . 3 2[0X
    [4X--------------[0X
    [4Xdegree:  0 1 2[0X
  [4X------------------------------------------------------------------[0X
  
  
  [1X3.2-2 Schenck-8.3[0X
  
  This is an example from Section 8.3 in [Sch03].
  
  [4X---------------------------  Example  ----------------------------[0X
    [4Xgap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z,w";;[0X
    [4Xgap> jmat := HomalgMatrix( "[ z*w, x*w, y*z, x*y, x^3*z - x*z^3 ]", 1, 5, R );[0X
    [4X<A homalg external 1 by 5 matrix>[0X
    [4Xgap> J := RightPresentationWithDegrees( jmat );[0X
    [4X<A graded cyclic right module on a cyclic generator satisfying 5 relations>[0X
    [4Xgap> Jr := Resolution( J );[0X
    [4X<A right acyclic complex containing 3 morphisms of right modules at degrees[0X
    [4X[ 0 .. 3 ]>[0X
    [4Xgap> betti := BettiDiagram( Jr );[0X
    [4X<A Betti diagram of <A right acyclic complex containing[0X
    [4X3 morphisms of right modules at degrees [ 0 .. 3 ]>>[0X
    [4Xgap> Display( betti );[0X
    [4X total:  1 5 6 2[0X
    [4X----------------[0X
    [4X     0:  1 . . .[0X
    [4X     1:  . 4 4 1[0X
    [4X     2:  . . . .[0X
    [4X     3:  . 1 2 1[0X
    [4X----------------[0X
    [4Xdegree:  0 1 2 3[0X
  [4X------------------------------------------------------------------[0X
  
  
  [1X3.2-3 Schenck-8.3.3[0X
  
  This is Exercise 8.3.3 in [Sch03].
  
  [4X---------------------------  Example  ----------------------------[0X
    [4Xgap> Qxyz := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;[0X
    [4Xgap> mat := HomalgMatrix( "[ x*y*z, x*y^2, x^2*z, x^2*y, x^3 ]", 1, 5, Qxyz );[0X
    [4X<A homalg external 1 by 5 matrix>[0X
    [4Xgap> M := RightPresentationWithDegrees( mat );[0X
    [4X<A graded cyclic right module on a cyclic generator satisfying 5 relations>[0X
    [4Xgap> Mr := Resolution( M );[0X
    [4X<A right acyclic complex containing 3 morphisms of right modules at degrees[0X
    [4X[ 0 .. 3 ]>[0X
    [4Xgap> betti := BettiDiagram( Mr );[0X
    [4X<A Betti diagram of <A right acyclic complex containing[0X
    [4X3 morphisms of right modules at degrees [ 0 .. 3 ]>>[0X
    [4Xgap> Display( betti );[0X
    [4X total:  1 5 6 2[0X
    [4X----------------[0X
    [4X     0:  1 . . .[0X
    [4X     1:  . . . .[0X
    [4X     2:  . 5 6 2[0X
    [4X----------------[0X
    [4Xdegree:  0 1 2 3[0X
  [4X------------------------------------------------------------------[0X
  
  
  [1X3.3 Commutative Algebra[0X
  
  
  [1X3.3-1 Saturate[0X
  
  [4X---------------------------  Example  ----------------------------[0X
    [4Xgap> R := HomalgFieldOfRationalsInDefaultCAS( ) * "x,y,z";;[0X
    [4X<A graded (left) ideal given by 3 generators>[0X
    [4Xgap> m := GradedLeftSubmodule( "x,y,z", R );[0X
    [4X<A graded (left) ideal given by 3 generators>[0X
    [4Xgap> J := Intersect( m^3, GradedLeftSubmodule( "x", R ) );[0X
    [4X<A graded (left) ideal given by 6 generators>[0X
    [4Xgap> Jm := SubmoduleQuotient( J, m );[0X
    [4X<A graded (left) ideal given by 3 generators>[0X
    [4Xgap> J_m := Saturate( J, m );[0X
    [4X<A graded principal (left) ideal given by a cyclic generator>[0X
    [4Xgap> Js := Saturate( J );[0X
    [4X<A graded principal (left) ideal given by a cyclic generator>[0X
    [4Xgap> Assert( 0, Js = J_m );[0X
  [4X------------------------------------------------------------------[0X
  
