In this section we describe functions which allow the user to enumerate various sets of elements of an automatic group G.
A random word of length at most n in the generators of G.
A random word (of length at most the order of G) in the generators of G.
An element chosen from G.
Search: MonStgElt Default: "DFS"
Create the set of words, w, in G with a ≤ length(w) ≤b. If Search is set to "DFS" (depth-first search) then words are enumerated in lexicographical order. If Search is set to "BFS" (breadth-first-search) then words are enumerated in lexicographical order for each individual length (i.e. in short-lex order). Depth-first-search is marginally quicker. Since the result is a set the words may not appear in the resultant set in the search order specified (although internally they will be enumerated in this order).
Search: MonStgElt Default: "DFS"
Create the set of words that is the carrier set of G. If Search is set to "DFS" (depth-first search) then words are enumerated in lexicographical order. If Search is set to "BFS" (breadth-first-search) then words are enumerated in lexicographical order for each individual length (i.e. in short-lex order). Depth-first-search is marginally quicker. Since the result is a set the words may not appear in the resultant set in the search order specified (although internally they will be enumerated in this order).
Search: MonStgElt Default: "DFS"
Create the sequence S of words, w, in G with a ≤ length(w) ≤b. If Search is set to "DFS" (depth-first search) then words will appear in S in lexicographical order. If Search is set to "BFS" (breadth-first-search) then words will appear in S in lexicographical order for each individual length (i.e. in short-lex order). Depth-first-search is marginally quicker.
Search: MonStgElt Default: "DFS"
Create a sequence S of words from the carrier set of G. If Search is set to "DFS" (depth-first search) then words will appear in S in lexicographical order. If Search is set to "BFS" (breadth-first-search) then words will appear in S in lexicographical order for each individual length (i.e. in short-lex order). Depth-first-search is marginally quicker.
> FG<a,b,c,d,e,f> := FreeGroup(6); > F := quo< FG | a*c^-1*a^-1*d=1, b*f*b^-1*e^-1=1, > c*e*c^-1*d^-1=1, d*f^-1*d^-1*a=1, > e*b*e^-1*a^-1=1, f*c^-1*f^-1*b^-1=1 >; > f, G<a,b,c,d,e,f> := IsAutomaticGroup(F); Running Knuth-Bendix with the following parameter values MaxRelations = 200 MaxStates = 0 TidyInt = 20 MaxWdiffs = 512 HaltingFactor = 100 MinTime = 5 #System is confluent. #Halting with 41 equations. #First word-difference machine with 16 states computed. #Second word-difference machine with 17 states computed. #System is confluent, or halting factor condition holds. #Word-acceptor with 6 states computed. #General multiplier with 58 states computed. #Validity test on general multiplier succeeded. #Checking inverse and short relations. #Axiom checking succeeded. > Representative(G); Id(G) > Random(G); a*c; > Random(G, 5); a * b > Set(G); { a * d * b, a * b, a * b * e, a * c, a * d, d * b, b * e, a * b * a, a * b * d, b * a, a * c * e, Id(G), b * d, c * e, e, f, a, a * e, b, c, a * f, d } > Seq(G : Search := "BFS"); [ Id(G), a, b, c, d, e, f, a * b, a * c, a * d, a * e, a * f, b * a, b * d, b * e, c * e, d * b, a * b * a, a * b * d, a * b * e, a * c * e, a * d * b ]