# lexModule -- compute the lex submodule with a given Hilbert sequence in a free module

## Synopsis

• Usage:
lexModule(hs,F) or lexModule M
• Inputs:
• hs, a list of integers
• F, a free module over an exterior algebra
• M, a monomial submodule of a free module
• Outputs:
• , the lex submodule of the ambient module with Hilbert sequence hs or the lex submodule of the ambient module with the same Hilbert sequence of M

## Description

Let $F$ a free module with homogeneous basis $\{g_1,g_2,\ldots,g_r\}.$ If $M$ is a graded submodule of F, as a consequence of a generalization of the Kruskal-Katona theorem, then there exists a unique lex submodule of F with the same Hilbert function as M. If M is a monomial submodule of F, we denote by $M^\mathrm{lex}$ the unique lex submodule of F with the same Hilbert function as M. $M^\mathrm{lex}$ is called the lex submodule associated to M. This construction uses the generalization of the Kruskal-Katona theorem.

Example:

 i1 : E=QQ[e_1..e_4,SkewCommutative=>true] o1 = E o1 : PolynomialRing, 4 skew commutative variables i2 : F=E^{0,0} 2 o2 = E o2 : E-module, free i3 : lexModule({2,8,3,1,0},F) o3 = image | e_3e_4 e_2e_4 e_1e_4 e_2e_3 e_1e_3 e_1e_2 0 0 0 | | 0 0 0 0 0 0 e_1e_4 e_1e_3 e_1e_2 | 2 o3 : E-module, submodule of E i4 : I_1=ideal(e_1*e_2,e_1*e_3,e_2*e_3) o4 = ideal (e e , e e , e e ) 1 2 1 3 2 3 o4 : Ideal of E i5 : I_2=ideal(e_1*e_2,e_1*e_3) o5 = ideal (e e , e e ) 1 2 1 3 o5 : Ideal of E i6 : M=createModule({I_1,I_2},F) o6 = image | e_2e_3 e_1e_3 e_1e_2 0 0 | | 0 0 0 e_1e_3 e_1e_2 | 2 o6 : E-module, submodule of E i7 : Mlex=lexModule M o7 = image | e_2e_4 e_1e_4 e_2e_3 e_1e_3 e_1e_2 0 0 0 | | 0 0 0 0 0 e_1e_3e_4 e_1e_2e_4 e_1e_2e_3 | 2 o7 : E-module, submodule of E