This section describes functions for accessing information about properties of a braid group or an element of a braid group.
Given a braid group B, return the number of Artin generators of B. Note the returned value is one less than the number of strings used in the braid group constructor BraidGroup.
Given an element u of a braid group B, return the parent group of u, that is B.
Given an element of a braid group, represented as word u in the Artin generators, return the length of the representative u.
Given an element of a braid group, represented as word u in the Artin generators, return a list of integers corresponding to the generator indices in u. That is, if the representative of u is a_(i_1)^(e_1)...a_(i_k)^(e_k) where 0 < i_j < n and e_(i_j) in {-1, + 1}, return the sequence [ e_(i_1) a_(i_1), ..., e_(i_n) a_(i_n) ].
Given an element u of a braid group B on n strings, return the parameters describing the normal form of u as outlined in Section Normal Form for Elements of a Braid Group.The function returns a tuple containing an integer d and a sequence [ pi_1, ..., pi_r] of permutations of degree n, which are products of parallel descending cycles, such that u = delta^d .a_(pi_1) ... a_(pi_r) and delta^d .a_(pi_1) ... a_(pi_r) is in normal form.
Given an element u of a braid group B, return the normal form word in the Artin generators representing u.This function computes the same data as the function NormalForm, but returns the product delta^d .a_(pi_1) ... a_(pi_r) as a word in the Artin generators. Note that this normal form word may be much longer than the original representative of u and that the distinguished structure of the normal form in general will be much better reflected by the information returned by the function NormalForm.
> u; e * a^-1 * b * a * d * a * e * b^-1 > Parent(u); GrpBrd : B on 6 stringsThe length of the word in the Artin generators representing the element u is 8.
> #u; 8We now compute the normal form of u as described in Section Normal Form for Elements of a Braid Group and the normal form word v in the Artin generators for u, and compare the length of v to the length of u.
> NormalForm(u);
<-1, [
(2, 6, 5, 4, 3),
(1, 3)(4, 6, 5),
(1, 3)(5, 6)
]>
> v := NormalFormWord(u);
> #v;
10
> v;
a^-1 * e * d * b * a * b^-1 * e * b * a * b^-1