Monword and Monbbox

Introduction

Monword and Monbbox are programs for computing with the Monster group, using the Monster C library by Parker and Wilson. Monword can be used to compute the orders of words in standard generators of the Monster, and Monbbox can interpret straight lines programs with Monster standard generators in words 1 and 2.

Example

The Monster programs run in two modes: a rigorous mode which always gives the right answers, and a somewhat faster random vector mode which has never been known to give a wrong answer! We will demonstrate the rigorous mode.

Monword

The Monword program takes strings containing the letters a, b and c. It then computes the order of the word corresponding to this string (where a and b are standard generators of the Monster and c is the inverse of b).

This program also has our checker built in. To perform the check, use the input `T'. To exit, use `X'.


[simonn@node19 mop2]$ ./monword -R
monword -- Monster group words (rigorous order checking)
Preparing standard generators...
> a
1. Word = a, Order = 2, Time = 0.1 seconds
> ab
2. Word = ab, Order = 29, Time = 4.2 seconds
> ababababacabac
3. Word = ababababacabac, Order = 5, Time = 5.0 seconds
> ababababacabacac
4. Word = ababababacabacac, Order = 78, Time = 44.9 seconds
> T
Performing self-test
Order of generator 1: (time taken = 0.1 seconds) - pass
Order of generator 2: (time taken = 0.3 seconds) - pass
Inverse of gen 2: (time taken = 0.2 seconds) - pass
Standard generators product condition: (time taken = 4.2 seconds) - pass
Element of order 50: (time taken = 21.6 seconds) - pass
Gen 1 in 2A: (time taken = 108.1 seconds) - pass
Gen 2 in 3B: (time taken = 53.8 seconds) - pass
Finished. Overall result: PASS. Total time = 188.3
> X

Monbbox

The Monbbox takes simple BBOX scripts (i.e. the instructions mu, pwr, iv and chor are recognised) and performs the results. The initial contents of group elements 1 and 2 are standard generators of the Monster. The instruction `show' gives the contents of the words computed, and `exit' exits the program.

The following shows the program running against our checker for the Monster group.


[simonn@node19 mop2]$  ./monbbox -R 
monbbox - The Monster as a black box group
Rigorous order checking
Preparing standard generators...
Ready.
> chor 1 2
true
# Time taken for 'chor': 0.1 seconds
> chor 2 3
true
# Time taken for 'chor': 0.3 seconds
> mu 1 2 3
> chor 3 29
true
# Time taken for 'chor': 4.2 seconds
> mu 3 2 4
> pwr 4 3 5
> mu 4 4 6
> mu 5 6 7
> chor 7 50
true
# Time taken for 'chor': 27.4 seconds
> pwr 25 7 8
> mu 1 8 9
> chor 9 5
true
# Time taken for 'chor': 137.0 seconds
> mu 5 4 10
> iv 10 11
> mu 1 11 12
> mu 12 2 13
> mu 13 10 14
> chor 14 34
true
# Time taken for 'chor': 61.8 seconds
> exit
1. 'a'
2. 'b'
3. 'ab'
4. 'abb'
5. 'abababab'
6. 'abbabb'
7. 'abababababbabb'
8. 'abababababbabbabababababbabbabababababbabbabababababbabbabab
abababbabbabababababbabbabababababbabbabababababbabbabababababba
bbabababababbabbabababababbabbabababababbabbabababababbabbababab
ababbabbabababababbabbabababababbabbabababababbabbabababababbabb
abababababbabbabababababbabbabababababbabbabababababbabbabababab
abbabbabababababbabbabababababbabb'
9. 'aabababababbabbabababababbabbabababababbabbabababababbabbaba
babababbabbabababababbabbabababababbabbabababababbabbabababababb
abbabababababbabbabababababbabbabababababbabbabababababbabbababa
bababbabbabababababbabbabababababbabbabababababbabbabababababbab
babababababbabbabababababbabbabababababbabbabababababbabbabababa
babbabbabababababbabbabababababbabb'
10. 'abababababb'
11. 'ccacacacaca'
12. 'accacacacaca'
13. 'accacacacacab'
14. 'accacacacacababababababb'
Total time taken = 236.7 seconds
[simonn@node19 mop2]$ 

Source code

Data files

The Parker/Wilson data files are available as a zip file (suitable for Windows), as a gzipped tar-archive (suitable for Unix/Linux) or as individual files:


Last updated 27th September 2005 Valid HTML 4.01! Valid CSS!