1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
|
-- -*- coding: utf-8 -*-
--- status: Draft
--- author(s): MES
--- notes:
document {
Key => syz,
Headline => "the syzygy matrix"
}
document {
Key => (syz, GroebnerBasis),
Headline => "retrieve the syzygy matrix",
Usage => "syz G",
Inputs => {
"G" => {"the Gröbner basis of a matrix ", TT "h"}
},
Outputs => {
{"the matrix of syzygies among the columns of ", TT "h"}
},
PARA{
"Warning: the result may be zero if syzygies were not to be retained
during the calculation, or if the computation was not continued to a
high enough degree."
},
PARA {
"The matrix of syzygies is returned without removing non-minimal syzygies.",
},
EXAMPLE lines ///
R = QQ[a..g];
I = ideal"ab2-c3,abc-def,ade-bfg"
G = gb(I, Syzygies=>true);
syz G
///,
"There appear to be 4 syzygies, but the last one is a combination of the first three:",
EXAMPLE lines ///
syz gens I
mingens image syz G
///,
SeeAlso => {gb,mingens}
}
document {
Key => {(syz,Matrix),
[syz,Algorithm],
[syz,BasisElementLimit],
[syz,DegreeLimit],
[syz,GBDegrees],
[syz,HardDegreeLimit],
[syz,PairLimit],
[syz,StopBeforeComputation],
[syz,Strategy],[syz,MaxReductionCount],
[syz,SyzygyLimit],
[syz,SyzygyRows]},
Headline => "compute the syzygy matrix",
Usage => "syz h",
Inputs => {
"h" => {"a matrix"},
Algorithm => {"see ", TO [gb,Algorithm]},
BasisElementLimit => {"see ", TO [gb,BasisElementLimit]},
DegreeLimit => {"see ", TO [gb,DegreeLimit]},
GBDegrees => {"see ", TO [gb,GBDegrees]},
HardDegreeLimit => {"see ", TO [gb,HardDegreeLimit]},
MaxReductionCount => ZZ => {
"the maximum number of reductions of an S-pair done before requeueing it, if the
", TT "Inhomogeneous", " algorithm is in use"
},
PairLimit => {"see ", TO [gb,PairLimit]},
StopBeforeComputation => {"see ", TO [gb,StopBeforeComputation]},
Strategy => {"see ", TO [gb,Strategy]},
SyzygyLimit => {"see ", TO [gb,SyzygyLimit]},
SyzygyRows => {"see ", TO [gb,SyzygyRows]}
},
Outputs => {
Matrix => {"the matrix of minimal or trimmed generators for the syzygies among the columns of ", TT "h"}
},
EXAMPLE lines ///
R = QQ[a..g];
I = ideal"ab2-c3,abc-cef,ade-cfg"
syz gens I
///,
SeeAlso => {gb}
}
|