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

## Synopsis

• Usage:
getSchreyerMap H
• Inputs:
• Outputs:

## 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 - x d , 1,2 4,{1, 3, 4},2 1,1 4,{2, 3, 4},2 1,3 4,{1, 2, 4},2 ------------------------------------------------------------------------ x d - x d + 1d , x d 1,2 3,{1, 3},1 1,1 3,{2, 3},1 3,{1, 2, 3},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 .