Macaulay2 » Documentation
Packages » ThreadedGB :: Minimal
next | previous | forward | backward | up | index | toc

Minimal -- Option to specify whether the end Gr\"obner basis should be a minimal Gr\"obner basis

Synopsis

Description

Use Minimal=>True as an argument in the function tgb for ensure the resulting Gr\"obner basis is minimized. Lineages of non-minimal Gr\"obner basis elements that were added to the basis during the distributed computation are saved, with the corresponding entry in the table being null.

i1 : S = ZZ/101[a,b,c];
i2 : allowableThreads= 2;
i3 : T = tgb( ideal "abc+c2,ab2-b3c+ac,b2", Minimal=>true)

o3 = LineageTable{(((0, 1), 0), 0) => null}
                  ((0, 1), 0) => null
                                  2
                  ((1, 2), 0) => c
                  (0, 1) => null
                  (0, 2) => null
                  (1, 2) => a*c
                  0 => null
                  1 => null
                        2
                  2 => b

o3 : LineageTable

By default, the option is false. The basis can also be minimized after the distributed computation is finished:

i4 : T = tgb( ideal "abc+c2,ab2-b3c+ac,b2")

                                        3
o4 = LineageTable{(((0, 1), 0), 0) => -c }
                                     2
                  ((0, 1), 0) => -a*c
                                   2
                  ((1, 2), 0) => -c
                             2
                  (0, 1) => a c
                               2
                  (0, 2) => b*c
                  (1, 2) => -a*c
                                2
                  0 => a*b*c + c
                          3       2
                  1 => - b c + a*b  + a*c
                        2
                  2 => b

o4 : LineageTable
i5 : minimize T

o5 = LineageTable{(((0, 1), 0), 0) => null}
                  ((0, 1), 0) => null
                                  2
                  ((1, 2), 0) => c
                  (0, 1) => null
                  (0, 2) => null
                  (1, 2) => a*c
                  0 => null
                  1 => null
                        2
                  2 => b

o5 : LineageTable

Functions with optional argument named Minimal :

For the programmer

The object Minimal is a symbol.