# Singular

##### 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 ```