22.4 Operations for Words

w1 * w2

The operator * evaluates to the product of the two words w1 and w2. Note that words do not belong to a specific group, thus any two words can be multiplied. Multiplication of words is done by concatenating the words and removing adjacent pairs of an abstract generator and its inverse.

w1 / w2

The operator / evaluates to the quotient w1*w2^{-1} of the two words w1 and w2. Inversion of a word is done by reversing the order of its letters and replacing each abstract generator with its inverse.

w1 ^ w2

The operator ^ evaluates to the conjugate w2^{-1}* w1* w2 of the word w1 under the word w2.

w1 ^ i

The powering operator ^ returns the i-th power of the word w1, where i must be an integer. If i is zero, the value is IdWord.

list * w1
w1 * list

In this form the operator * returns a new list where each entry is the product of w1 and the corresponding entry of list. Of course multiplication must be defined between w1 and each entry of list.

list / w1

In this form the operator / returns a new list where each entry is the quotient of w1 and the corresponding entry of list. Of course division must be defined between w1 and each entry of list.

Comm( w1, w2 )

Comm returns the commutator w1^{-1}* w2^{-1}* w1* w2 of two words w1 and w2.

LeftQuotient( w1, w2 )

LeftQuotient returns the left quotient w1^{-1}* w2 of two words w1 and w2.

Previous Up Top Next
Index

GAP 3.4.4
April 1997