[Next] [Prev] [Right] [Left] [Up] [Index] [Root]
Specification of a Word

Specification of a Word

Suppose A is an fp-algebra for which generators have already been defined. A word is defined inductively as follows:

An element (word) of S may be constructed as an expression in the generators as outlined below.
Subsections
A ! e : AlgFP, MonFPElt -> AlgFPElt
If the underlying monoid has an identity algorithm, construct the element e * ( Id)(M), where e is an element of the coefficient ring R and M is the monoid.

Elementary Operators for Elements

The word operations defined here may be applied either to the words of a free algebra or the words of a algebra with non-trivial relations.

u + v : AlgFPElt, AlgFPElt -> AlgFPElt
Given words u and v belonging to the same fp-algebra A, return the sum of u and v.
u - v : AlgFPElt, AlgFPElt -> AlgFPElt
Given words u and v belonging to the same fp-algebra A, return the difference of u and v.
u * v : AlgFPElt, AlgFPElt -> AlgFPElt
Given words u and v belonging to the same fp-algebra A, return the product of u and v.
u ^ n : AlgFPElt, RngIntElt -> AlgFPElt
The n-th power of the word u, where n is a positive integer.

Boolean Operators for Elements

The words of an fp-algebra A are ordered first by length and then lexicographically. The lexicographic ordering is determined by the ordering on the coefficient ring and the monoid. Here, u and v are words belonging to some common fp-algebra.

u eq v : AlgFPElt, AlgFPElt -> BoolElt
True if the words u and v are identical (as elements of the appropriate free algebra), false otherwise.
u ne v : AlgFPElt, AlgFPElt -> BoolElt
True if the words u and v are not identical (as elements of the appropriate free algebra), false otherwise.
u lt v : AlgFPElt, AlgFPElt -> BoolElt
True if the word u precedes the word v, with respect to the ordering defined above for elements of an fp-algebra, false otherwise.
u le v : AlgFPElt, AlgFPElt -> BoolElt
True if the word u either precedes, or is equal to, the word v, with respect to the ordering defined above for elements of an fp-algebra, false otherwise.
u ge v : AlgFPElt, AlgFPElt -> BoolElt
True if the word u either follows, or is equal to, the word v, with respect to the ordering defined above for elements of an fp-algebra, false otherwise.
u gt v : AlgFPElt, AlgFPElt -> BoolElt
True if the word u follows the word v, with respect to the ordering defined above for elements of an fp-algebra.
IsZero(u) : AlgFPElt -> BoolElt
True if u is zero (the empty word), false otherwise.
IsScalar(u) : AlgFPElt -> BoolElt
True if u is a scalar, that is, an element of the underlying ring, false otherwise.

Elementary Functions for Elements

# u : AlgFPElt -> RngIntElt
The length of the word u.
Support(u) : AlgFPElt -> [ MonElt ]
Returns the sequence of words whose coefficients in u are non-zero.
LeadingCoefficient(u) : AlgFPElt -> RngElt
Returns the coefficient of the highest occurring power of the most principal monoid generator (where M.i is more principal than M.j if and only if i>j).
MonomialCoefficient(u, m) : AlgFPElt, MonElt -> RngElt
Returns the coefficient of the monoid element m in u.
[Next] [Prev] [Right] [Left] [Up] [Index] [Root]