Home Online Manual
Top
Back: Functions (letterplace)
Forward: reduce (letterplace)
FastBack:
FastForward:
Up: Singular Manual
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

7.8.1 freeAlgebra (letterplace)

Syntax:

freeAlgebra( ring_expression r, int_expression d )
Type:
ring
Purpose:
Creates a free (letterplace) ring with the variables of the ring r up to the degree (length) bound d, with the monomial ordering, determined by those on the ring r.
Note:
A letterplace ring has an attribute called isLetterplaceRing, which is zero for non-letterplace rings and contains the number of variables of the free algebra it encodes, otherwise.
Example:
 
LIB "freegb.lib";
ring r = 0,(x,y,z),dp;
def R = freeAlgebra(r, 7); // this ordering is degree right lex
R;
==> // coefficients: QQ
==> // number of vars : 21
==> //        block   1 : ordering dp
==> //                  : names    x y z x y z x y z x y z x y z x y z x y z
==> //        block   2 : ordering C
==> // letterplace ring (block size 3)
attrib(R,"isLetterplaceRing");
==> 3
ring r2 = 0,(x,y,z),lp;
def R2 = freeAlgebra(r2, 5); // note, that this ordering is NOT left or right lex
R2;
==> // coefficients: QQ
==> // number of vars : 15
==> //        block   1 : ordering a
==> //                  : names    x y z x y z x y z x y z x y z
==> //                  : weights  1 0 0 1 0 0 1 0 0 1 0 0 1 0 0
==> //        block   2 : ordering a
==> //                  : names    x y z x y z x y z x y z x y z
==> //                  : weights  0 1 0 0 1 0 0 1 0 0 1 0 0 1 0
==> //        block   3 : ordering a
==> //                  : names    x y z x y z x y z x y z x y z
==> //                  : weights  0 0 1 0 0 1 0 0 1 0 0 1 0 0 1
==> //        block   4 : ordering lp
==> //                  : names    x y z x y z x y z x y z x y z
==> //        block   5 : ordering C
==> // letterplace ring (block size 3)
attrib(R2,"isLetterplaceRing");
==> 3
See Monomial orderings on free algebras.