# Singular          ### 7.7.2 Functionality and release notes of LETTERPLACE

With the present functionality it is possible to compute two-sided Groebner basis of an arbitrary two-sided ideal in a free associative algebra up to a given degree. The weights of variables are determined by the current monomial ordering.

Restrictions/conventions of the LETTERPLACE subsystem:

• Since free algebra is not Noetherian, one has to define an explicit degree (length) bound, up to which a partial Groebner basis will be computed. Note, that `freeAlgebra (letterplace)` call stores the bound in the structure of the ring it creates. Thus running `twostd (letterplace)` or `rightstd (letterplace)` in such a ring does not require the degree bound in its argument.
• The options `redSB, redTail` are effective for Groebner basis computations,
• The options `prot, mem` are effective for the whole LETTERPLACE subsystem.

Operations for polynomials in Letterplace rings are `+` (addition), `-` (subtraction), `*` (multiplication) and `^` (power).

Functions for objects from Letterplace rings are: twostd (letterplace), rightstd (letterplace), reduce (letterplace). Also, the functions bracket, maxideal and std (an alias for twostd (letterplace)) work within letterplace rings:

 ```LIB "freegb.lib"; ring r = 0,(x,y,z),dp; def R = freeAlgebra(r, 5); // degree (length) bound 5; the ordering will be degree right lex setring R; // maxideal in a letterplace ring: print(matrix(maxideal(2))); // all monomials of length 2 ==> x*x,y*x,z*x,x*y,y*y,z*y,x*z,y*z,z*z // bracket in a letterplace ring: bracket(x,y); ==> -y*x+x*y poly f = x*x + x*y - z; bracket(f,x); ==> x*y*x-x*x*y-z*x+x*z bracket(f,x,2); ==> 0 ```

Further functionality is provided in the libraries for the LETTERPACE subsystem.

In the freegb_lib one finds e.g. Letterplace arithmetics procedures, conversion tools, procedures for creating some common ideals of relations as well as the normal form procedure, providing effective ideal membership test.

The fpadim_lib contains procedures for computations with vector space basis of a factor algebra including finiteness check and dimension computation.

The fpaprops_lib contains procedures for determining important ring-theoretic properties including Gelfand-Kirillov dimension.

The fpalgebras_lib contains procedures for the generation of various algebras, including group algebras of finitely presented groups in the Letterplace ring.

The ncfactor_lib contains the procedure `ncfactor` for factorizing polynomials in the Letterplace ring.

### Misc 