Instructions for the group data file maker applications There are seven separate applications whose special purpose is to create group data files for use by Group Analyzer. They are: Perm group - which creates groups of permutations of {1, 2, ... , n} where n = 2, ... , 12. Products - which forms the group data file for G X H where G and H are the groups for already existing group data files. SemiDirProduct - which forms the group data file for the semidirect product of an abelian group G (whose group data file already exists) and Z/2mZ where m = 1, ... ,200. Matrix group maker - which forms the group data file for certain 2 x 2 matrix groups over Z/mZ where m = 2, ... , 20. Cyclic group maker - which forms the group data file for Z/mZ, m = 1, ... , 400. Unit group - which forms the group data file for the multiplicative group of units of Z/mZ, m = 2, ... , 1000. Mystery Group maker - which simply changes the element names in an existing group data file to generic names x1, x2, etc. These instructions supplement the ones contained in the programs themselves. ================ Perm group When you start the application, you'll first see an "About..." screen. Press "return" or click the "OK" box to continue. You'll then see a display with a message area in the upper left and a series of smaller boxes on the right. Step 1: Choose n by clicking the box which says "n = ?". Respond to the dialog prompting you to input n. The generators which will be used to generate a group appear just below the message area. The identity permutation is always the first one. Step 2: You need to input the permutation or permutations which will be used to generate the group. It's a two-step process: first you define a permutation, then you add it to the existing list of generators. Click the box which says "Define". Respond to the dialog prompting you to input a permutation. The format for input is as follows. Suppose f is the permutation. Input f by typing its values separated by commas like this: f(1), f(2), f(3), . . . , f(n) For example, if n = 3 and f(1)=2, f(2) = 1 and f(3) = 3, then you would input 2, 1, 3 then press return. The program checks that your input is syntactically correct and actually a permutation. If there is something wrong with it, you'll get a message. Then you can try again. To add the permutation to the list of existing generators, click the box which says "Add". The program will add the permutation to the list of generators provided it doesn't already appear there and will display it in the list of generators just below the message area. You may repeat this "Define"/"Add" cycle. Step 3: Click on the "Generate" box. The program will now start to calculate the elements in the group generated by the permutations you gave it. The message area will flash some numbers, the first of which indicates the current size of the subgroup. The generating method is straight-forward: the program calculates all possible products of elements of the existing set of permutations. Whenever a new permutation appears as a product, it is adjoined to the list. The generating process ends if: (1) It has found that no new permutations result from multiplying existing ones. (2) The size of the list exceeds 400. (3) You click the "Cancel" box. At this point you have several options if the size doesn't exceed 400. Option 1: Add another permutation (Define/Add as above) then click "Generate" again. Option 2: Click the "Save" box. Respond to the dialog prompting you for a file name and a location. Click the "Save" button in the dialog and the program will attempt to create a group data file for the permutations generated. If the permutations generated do not form a group then the file creation process will stop and you'll get a message that the "group" is incomplete. In this case, you can continue by clicking the "generate" box again so that the program can calculate the missing permutations. Option 3: Abandon the group being generated and start all over by clicking the "n=?" box. Note: The time it takes to generate a group and check fully for closure under multiplication increases rapidly with n and the size of the group. Thus, during the generation process, if the size of the generated set seems to stabilize then it's a good strategy to stop the generation process (click "cancel") and attempt to create the group data file by clicking "save". If it turns out that you stopped the generation process too soon, you can resume it by clicking on "generate" again. For each new group, click the "n = ?" box again. Do this even if the group you want to generate has the same index n as the previous one. ================ Products Start the application and click away the "About . . ." box. The program creates the data file for G X H where we'll call G the "left" factor and H the "right" factor. Input the factors: click the boxes labeled "left factor" and "right factor" and respond to the dialogs asking you to identify the group data file for the groups you want to play the roles of G and H. Once you have done so, the box will display the group's name and size. Click on the "Save" button. The program will check that the product of the orders of G and H does not exceed 400. If that requirement is met, you'll be prompted for a file name and location. After you fill in that information and click the "Save" button, the data file will be created. If you want to change either of the factors, simply click on the appropriate box and repeat that step. ================ SemiDirProduct This program creates the group data file of a semi-direct product of a special type. Suppose G is an abelian group. Given m, one has a homomorphism f : Z/2mZ ----> Aut(G) defined by f(i)(x) = x if i is even and f(i)(x) = -x if i is odd. One may then form the semi-direct product G * Z/2mZ with respect to this action of Z/2mZ on G. Start the application and click away the "About . . ." box. You have to choose m and the group data file for the abelian group G. Do so by clicking the corresponding boxes and responding to the dialogs. The program will check that the size of Z/2mZ X G does not exceed 400, and that G is abelian. The program will reject a non-abelian choice of G. Click the "Save" box to complete the process. You may repeat the steps above to create more files. ================ Matrix group maker This program creates the data file for a group of invertible 2 x 2 matrices over Z/nZ. Start the application and click away the "About . . ." box. You now have to make two choices. Step 1: Choose a modulus n between 2 and 30 by clicking the box called "Click here to select a modulus" and responding to the dialog. Step 2: Select a type of matrix by clicking the box called "Click here to select a matrix type" and responding to the dialog. You have six choices. Assuming the rows of the matrix are (a b) and (c d), the types are: 1. ad - bc ­ 0 mod n. 2. ad - bc congruent to 1 mod n. 3. ad - bc congruent to ± 1 mod n. 4. ad - bc ­ 0 mod n and c = 0, a and d invertible mod n. 5. ad - bc ­ 0 mod n and c = 0, a=1 and d invertible mod n. 6. a=d and b=-c mod n. 7. a+c=1 mod n, b+d=1 mod n and ad - bc ­ 0 mod n. Step 3: Click the "Generate" box. The program will calculate the size of the group. If the group's size does not exceed 400, then you may create the group data file by clicking "save" and responding to the dialog. Note: At the time the program determines the group's size, it has not yet calculated the multiplication table. Creating the table itself (which only occurs when you click "save") may take a good deal longer, depending on the size of the group. ================ Cyclic group maker This program creates the data file for Z/mZ, m = 2, É ,400. To run it, you need only click the box called "Click here to select the modulus" then click the "Save" box and respond to the usual dialog asking for the name of the file and a location. ================ Unit group This program creates the data file for the group of units in the ring Z/mZ, where m = 2, É , 1000. Click the box labeled "Click here to select the modulus". The program will determine the size of the group (shown in a message at the bottom of the window) and change the label of the box to show the modulus. If the group's order doesn't exceed 400, then you can create the data file by clicking the "Save" box and responding to the usual dialog asking for the name of the file and a location. ================ Mystery Group maker The only purpose of this application is to create a copy of an existing group data file in which the elements' names are converted to generic names: x1 (the identity element), x2, x3, etc. Click the "Save" button. You'll be prompted to select an existing group data file, then to select a new name and location. Note: Group Analyzer itself can accomplish what this program does. To use Group Analyzer this way, load in a group data file, choose the "Generic names" command in the EDIT menu of Group Analyzer then choose the "Save ambient group" command in the SAVE menu.