permgp1 http://www.openmath.org/cd/permgrp.ocd 2004-06-01 2 0 experimental A CD of functions for permutation groups First version written by A. Solomon 1998-11-19. Modified by David Carlisle 1999-04-28. Rebuilt by Arjeh M. Cohen 2002-12-16. group This symbol represents an n-ary function. The first argument is a group operation (usually, left_compose or right_compose), the other n-1 arguments represent permutations. When evaluated on such arguments, the function represents the permutation group generated by the last n-1 arguments. The permutation group generated by (1,5,4)(2,6) and (1,4,5)(3,6) 154 26 36 145 support This represents a unary function whose argument should be a permutation group. When evaluated at a permutation group G, it is the set of points which are moved a member of G. The following expression evaluates to the set {1,2,3,4,5,6}. 154 26 36 145 generators This is a function with one argument, which should be a permutation group. When evaluated with argument G it returns the list of permutations which occur in the definition of G. The following expression evaluates to the list of permutations [(1,5,4)(2,6),(3,6)(1,4,5)]. 154 26 36 145 2 orbit The binary function whose first argument should be a permutation group G. If the second argument is an element of the support of G, the value is the orbit of the second argument under the action of G. Otherwise, it is the singleton consisting of the second argument. The following expression evaluates to the set {2,3,6}. 154 26 36 145 2 stabilizer This is an n-ary function with n at least 2. The first argument is a permutation group G, the other arguments are elements x_2,x_3,...,x_n upon which G acts. The value is the subgroup of G consisting of all permutations which stabilize each of x_2,x_3,...,x_n. The following expression stands for the stabilizer of 1 and 2 in the permutation group generated by the permutations (1,5,4)(2,6) and (3,6)(1,4,5). 154 26 36 145 1 2 is_transitive This is a Boolean function with one argument, which should be a permutation group. When evaluated at a permutation group G, it returns the value true if and only if the permutation group argument acts transitively on the support of G. The following boolean value is false. 154 26 36 145 orbits This is a function with one argument, which should be a permutation group. When evaluated at a permutation group G, it returns the set of all orbits of G on elements from the support of G. The following expression evaluates to the list of sets [{2,3,6},{1,4,5}]. 154 26 36 145 is_primitive The unary function with one argument, which should be a permutation group. Its value is true if and only if G acts primitively on the support of G. This means that there is no proper subset B of the support of G with more than one element such that the image of B under an element of G meets B in a proper nonempty subset of B. The following expression evaluates to the boolean true. 1543 26 36 1452 schreier_tree This is a function with two arguments. The first argument should be a permutation group G, the second argument a point x permuted by G. When evaluated at G and x, it returns a list of three lists X,V,B. The first list, X, enumerates the points of the G-orbit of x. The second list and the third list both have the same length as X, say n. The second list represents a map V from [1,...,n] to {-m,...,-1,0,1,...,m}, where m is the number of generators of G, and the third list represents a map B from [1,...,n] to X. These maps satisfy the following properties: X(1) = B(1) = x. Moreover, V(i) = 0 if and only if i = 1. For each index i distinct from 1, the value B(i) is equal to X(j) for some index j smaller than i. If V(i) is positive, then X(i) is the image of B(i) under the V(i)-th generator of G. If V(i) is negative, then B(i) is the image of X(i) under the (-V(i))-th generator of G. The following expression represents a Schreier tree. 1543 26 36 1452 4 base This is a function with one argument, which should be a permutation group. When evaluated with argument G it returns a list of points permuted by G such that the stabilizer of all elements of the list in G is trivial. Besides, the list is minimal with respect to the latter property (in the sense that the stabilizer in G of the elements of no proper subset is trivial). The following expression represents a base. 154 26 36 145 order This is a function with one argument, which should be a permutation group. When evaluated with argument G it returns the size of the group G. The following expression evaluates to 18. 154 26 36 145 is_in This is a Boolean function with two arguments. The first argument should be a permutation, the second a permutation group. When evaluated with first argument x and second argument G, it returns true if and only if x belongs to G. The following expression evaluates to the boolean false. 12 154 26 36 145 is_subgroup This is a Boolean function with two arguments, both of which are permutation groups. When evaluated with first argument H and second argument G it returns true if and only if H is a subgroup of G. The following expression evaluates to the boolean false. 154 26 36 145 1543 26 362 145 stabilizer_chain This function takes one argument which should be a permutation group. When applied to the permutation group G, its value is a list consisting of two lists B, H of equal length. The first list B is a base for G, whereas the i-th entry H[i] of the second list is the stabilizer in G of the elements B[1], ..., B[i]. The following expression represents a stabilizer chain. 154 26 36 145