Macaulay2 » Documentation
Packages » OIGroebnerBases » DegreeShifts
next | previous | forward | backward | up | index | toc

# DegreeShifts -- grading shifts for free OI-modules

## Description

Used as an optional argument in makeFreeOIModule to specify shifts of grading.

Permissible values:

- DegreeShifts => null for no shift of grading
- DegreeShifts => List for a shift of grading indicated by a list of integers

## Example 1: no shifts

The free OI-module $\mathbf{F}^{\text{OI},1}\oplus\mathbf{F}^{\text{OI},2}$ has its basis elements in degree zero.

    i1 : P = makePolynomialOIAlgebra(1, x, QQ);

    i2 : F = makeFreeOIModule(e, {1,2}, P)

    o2 = Basis symbol: e
         Basis element widths: {1, 2}
         Degree shifts: {0, 0}
         Polynomial OI-algebra: (1, x, QQ, RowUpColUp)
         Monomial order: Lex

    o2 : FreeOIModule

    i3 : apply(getBasisElements F, degree)

    o3 = {0, 0}

    o3 : List

## Example 2: nontrivial shifts

The free OI-module $\mathbf{F}^{\text{OI},1}(-3)\oplus\mathbf{F}^{\text{OI},2}(-4)$ has its basis elements in degrees $3$ and $4$.

    i4 : F = makeFreeOIModule(e, {1,2}, P, DegreeShifts => {-3,-4})

    o4 = Basis symbol: e
         Basis element widths: {1, 2}
         Degree shifts: {-3, -4}
         Polynomial OI-algebra: (1, x, QQ, RowUpColUp)
         Monomial order: Lex

    o4 : FreeOIModule

    i5 : apply(getBasisElements F, degree)

    o5 = {3, 4}

    o5 : List

## Functions with optional argument named DegreeShifts:

- `makeFreeOIModule(...,DegreeShifts=>...)` -- see makeFreeOIModule -- make a FreeOIModule object

## For the programmer

The object DegreeShifts is a symbol.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/OIGroebnerBases.m2:1674:0.