Description
Given a matrix $m : F --> G$, the Schreyer order on the monomials of F is given by: If $a e_i$ and $b e_j$ are monomials of $F$, i.e. $a$ and $b$ are monomials in the ring, and $e_i$ and $e_j$ are unit column vectors of $F$, then $a e_i > b e_j$ if and only if either $leadterm(m)(a e_i) > leadterm(m)(b e_j)$ or they are scalar multiples of the same monomial in $G$, and $i > j$.
If the base ring is a quotient ring, we think of
leadterm(m) as a matrix over the ambient polynomial ring for the purpose of this definition.
In the example below, the source of
f is endowed with a Schreyer order.
i1 : R = ZZ/101[a..d];
|
i2 : m = matrix{{a,b,c,d}};
1 4
o2 : Matrix R <--- R
|
i3 : f = schreyerOrder m
o3 = | a b c d |
1 4
o3 : Matrix R <--- R
|
i4 : g = syz f
o4 = {1} | -b 0 -c 0 0 -d |
{1} | a -c 0 0 -d 0 |
{1} | 0 b a -d 0 0 |
{1} | 0 0 0 c b a |
4 6
o4 : Matrix R <--- R
|
i5 : leadTerm g
o5 = {1} | 0 0 0 0 0 0 |
{1} | a 0 0 0 0 0 |
{1} | 0 b a 0 0 0 |
{1} | 0 0 0 c b a |
4 6
o5 : Matrix R <--- R
|
i6 : hf = map(source f, 1, {{d},{c},{b},{a}})
o6 = {1} | d |
{1} | c |
{1} | b |
{1} | a |
4 1
o6 : Matrix R <--- R
|
i7 : hm = map(source m, 1, {{d},{c},{b},{a}})
o7 = {1} | d |
{1} | c |
{1} | b |
{1} | a |
4 1
o7 : Matrix R <--- R
|
i8 : leadTerm hf
o8 = {1} | 0 |
{1} | 0 |
{1} | b |
{1} | 0 |
4 1
o8 : Matrix R <--- R
|
i9 : leadTerm hm
o9 = {1} | 0 |
{1} | 0 |
{1} | 0 |
{1} | a |
4 1
o9 : Matrix R <--- R
|
Use
schreyerOrder(Module) to see if a free module is endowed with a Schreyer order.
i10 : schreyerOrder source m
o10 = 0
4
o10 : Matrix 0 <--- R
|
i11 : schreyerOrder source f
o11 = | a 0 0 0 |
| 0 b 0 0 |
| 0 0 c 0 |
| 0 0 0 d |
4 4
o11 : Matrix R <--- R
|