next | previous | forward | backward | up | top | index | toc | Macaulay2 web site
Macaulay2Doc :: truncate

truncate -- truncate the module at a specified degree

Synopsis

Description

i1 : R = ZZ/101[a..c];
i2 : truncate(2,R^1)

o2 = image | a2 ab ac b2 bc c2 |

                             1
o2 : R-module, submodule of R
i3 : truncate(2,R^1 ++ R^{-3})

o3 = image {0} | a2 ab ac b2 bc c2 0 |
           {3} | 0  0  0  0  0  0  1 |

                             2
o3 : R-module, submodule of R
i4 : truncate(2, ideal(a,b,c^3)/ideal(a^2,b^2,c^4))

o4 = subquotient (| ab ac bc c3 |, | a2 b2 c4 |)

                               1
o4 : R-module, subquotient of R
i5 : truncate(2,ideal(a,b*c,c^7))

             2                  7
o5 = ideal (a , a*b, a*c, b*c, c )

o5 : Ideal of R
The base may be ZZ, or another polynomial ring. In this case, the generators may not be minimal, but they do generate.
i6 : A = ZZ[x,y,z];
i7 : truncate(2,ideal(3*x,5*y,15))

              2                      2           2
o7 = ideal (3x , 3x*y, 3x*z, 5x*y, 5y , 5y*z, 15z )

o7 : Ideal of A
i8 : trim oo

               2                2         2
o8 = ideal (15z , 5y*z, 3x*z, 5y , x*y, 3x )

o8 : Ideal of A
i9 : truncate(2,comodule ideal(3*x,5*y,15))

o9 = subquotient (| x2 xy xz y2 yz z2 |, | 3x 5y 15 |)

                               1
o9 : A-module, subquotient of A
If i is a multi-degree, then the result is the submodule generated by all elements of degree exactly i, together with all generators of M whose first degree is higher than the first degree of i. The following includes the generator of degree 8,20.
i10 : S = ZZ/101[x,y,z,Degrees=>{{1,3},{1,4},{1,-1}}];
i11 : truncate({7,24}, S^1 ++ S^{{-8,-20}})

o11 = image {0, 0}  | x4y3 0 |
            {8, 20} | 0    1 |

                              2
o11 : S-module, submodule of S
The coefficient ring may also be a polynomial ring. In this example, the coefficient variables also have degree one. The given generators will generate the truncation over the coefficient ring.
i12 : B = R[x,y,z, Join=>false]

o12 = B

o12 : PolynomialRing
i13 : degree x

o13 = {1}

o13 : List
i14 : degree B_3

o14 = {1}

o14 : List
i15 : truncate(2, B^1)

o15 = image | x2 xy xz y2 yz z2 |

                              1
o15 : B-module, submodule of B
i16 : truncate(4, ideal(b^2*y,x^3))

              2      2 2   2      4   3    3
o16 = ideal (b x*y, b y , b y*z, x , x y, x z)

o16 : Ideal of B
If the coefficient variables have degree 0:
i17 : A1 = ZZ/101[a,b,c,Degrees=>{3:{}}]

o17 = A1

o17 : PolynomialRing
i18 : degree a

o18 = {}

o18 : List
i19 : B1 = A1[x,y]

o19 = B1

o19 : PolynomialRing
i20 : truncate(2,B1^1)

o20 = image | x2 xy y2 |

                                1
o20 : B1-module, submodule of B1
i21 : truncate(2, ideal(a^3*x, b*y^2))

              3 2   3        2
o21 = ideal (a x , a x*y, b*y )

o21 : Ideal of B1

Caveat

See also

  • basis -- basis or generating set of all or part of a ring, ideal or module
  • comodule -- submodule to quotient module

Ways to use truncate :

  • truncate(List,Ideal)
  • truncate(List,Module)
  • truncate(ZZ,Ideal)
  • truncate(ZZ,Module)