Home Online Manual
Top
Back: freegb_lib
Forward: letplaceGBasis
FastBack:
FastForward:
Up: freegb_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document
7.7.9.0. makeLetterplaceRing
Procedure from library freegb.lib (see freegb_lib).

Usage:
makeLetterplaceRing(d [,h]); d an integer, h an optional integer

Return:
ring

Purpose:
creates a ring with the ordering, used in letterplace computations

Note:
h = 0 (default) : Dp ordering will be used
h = 2 : weights 1 used for all the variables, a tie breaker is a list of block of original ring h = 1 : the pure homogeneous letterplace block ordering (applicable in the situation of homogeneous input ideals) will be used.

Example:
 
LIB "freegb.lib";
ring r = 0,(x,y,z),(dp(1),dp(2));
def A = makeLetterplaceRing(2);
setring A;  A;
==> // coefficients: QQ
==> // number of vars : 6
==> //        block   1 : ordering a
==> //                  : names    x(1) y(1) z(1) x(2) y(2) z(2)
==> //                  : weights     1    1    1    1    1    1
==> //        block   2 : ordering lp
==> //                  : names    x(1)
==> //        block   3 : ordering dp
==> //                  : names    y(1) z(1)
==> //        block   4 : ordering lp
==> //                  : names    x(2)
==> //        block   5 : ordering dp
==> //                  : names    y(2) z(2)
==> //        block   6 : ordering C
attrib(A,"isLetterplaceRing");
==> 1
attrib(A,"uptodeg");  // degree bound
==> 2
attrib(A,"lV"); // number of variables in the main block
==> 3
setring r; def B = makeLetterplaceRing(2,1); // to compare:
setring B;  B;
==> // coefficients: QQ
==> // number of vars : 6
==> //        block   1 : ordering lp
==> //                  : names    x(1)
==> //        block   2 : ordering dp
==> //                  : names    y(1) z(1)
==> //        block   3 : ordering lp
==> //                  : names    x(2)
==> //        block   4 : ordering dp
==> //                  : names    y(2) z(2)
==> //        block   5 : ordering C