Section 16.3.3 discusses why the NCProcess commands used algorithms for creating small sets X from a partial GB Y such that the ideal generated by X equals the ideal generated by Y . The options of the NCProcess commands are
A complete list of options together with indications of their speed can be found at the end of the chapter. If two overlapping options are set to True, like RR and RRByCat, then only one of them is actually run. The amount of time that it takes to run NCProcess depends on which options are set.
The defaults for NCProcess are: SBByCat and RR are set to True while SmallBasis and SBFlatOrder are set to False.
If SBFlatOrder → True the small basis algorithm will be performed under the length lexicographic monomial order. Relations which have a leading term with only one indeterminate, also known as singletons, are not included in the input to the small basis algorithm since the user typically does not want them removed. The singletons do however appear in the output of NCProcess when SBFlatOrder → True. The default is SBFlatOrder → False, however SBFlatOrder → True is probably significantly faster.
Beginners should skip this part of Appendix 19 and rely on the NCProcess defaults. The reducing algorithms SmallBasis and SmallBasisByCategory call NCMakeGB (§9.3). These calls to NCMakeGB can be very time consuming and so it can be beneficial to direct NCMakeGB. The NCProcess options DegreeCapSB and DegreeSumCapSB are used when NCProcess calls SmallBasis or SmallBasisByCategory. Thus DegreeCaps are valuable in limiting the time they consume. In particular,
NCProcess[polys, iters, "filename", DegreeCapSB -> j1,
DegreeSumCapSB -> j2, OtherOptions] |
NCMakeGB[polys, iters, DegreeCap -> j1, DegreeSumCap -> j2, OtherOptions]
|
inside SmallBasis or SmallBasisByCategory (§More appears on this in the long document describing the commands SmallBasis and SmallBasisByCategory.
The defaults at the moment inside of NCProcess are