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

# getSchreyerMap -- get the Schreyer map of a free OI-module if it exists

- Usage:
    `getSchreyerMap H`
- Inputs:
  - H, an instance of the type FreeOIModule,
- Outputs:
  - an instance of the type FreeOIModuleMap,

## Description

Let $G'$ be a non-empty Gröbner basis for the syzygy module of a finitely generated submodule $\mathbf{M}$ of a free OI-module $\mathbf{F}$ computed using oiSyz. Let H be the free OI-module obtained by applying getFreeOIModule to any element of $G'$. This method returns the canonical surjective map from H to $\mathbf{M}$.

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

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

    i3 : installGeneratorsInWidth(F, 2);

    i4 : b = x_(1,2)*x_(1,1)*e_(2,{2},1)+x_(2,2)*x_(2,1)*e_(2,{1},2);

    i5 : G = oiGB {b}

    o5 = {x   x   e        + x   x   e       , x   x   x   e        -
           1,2 1,1 2,{2},1    2,2 2,1 2,{1},2   2,3 2,2 1,1 3,{2},2
         ------------------------------------------------------------------------
         x   x   x   e       }
          2,3 2,1 1,2 3,{1},2

    o5 : List

    i6 : G' = oiSyz(G, d)

    o6 = {x   d           - x   d           + 1d             , x   d
           1,2 3,{1, 3},1    1,1 3,{2, 3},1     3,{1, 2, 3},2   1,2 4,{1, 3, 4},2
         ------------------------------------------------------------------------
         - x   d              - x   d             , x   d              -
            1,1 4,{2, 3, 4},2    1,3 4,{1, 2, 4},2   2,4 4,{1, 2, 3},2
         ------------------------------------------------------------------------
         x   d             }
          2,3 4,{1, 2, 4},2

    o6 : List

    i7 : H = getFreeOIModule G'#0

    o7 = Basis symbol: d
         Basis element widths: {2, 3}
         Degree shifts: {-2, -3}
         Polynomial OI-algebra: (2, x, QQ, RowUpColUp)
         Monomial order: Schreyer

    o7 : FreeOIModule

    i8 : getSchreyerMap H

    o8 = Source: (d, {2, 3}, {-2, -3}) Target: (e, {1, 1}, {0, 0})

    o8 : FreeOIModuleMap

## Caveat

If $G'$ is empty or if H does not have a Schreyer order, this method will throw an error.

## Ways to use getSchreyerMap:

- `getSchreyerMap(FreeOIModule)`

## For the programmer

The object getSchreyerMap is a method function.

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