\chapcontents {\tocstrut }{Copyright Notice}{19}
\chapcontents {1}{About the GAP Reference Manual}{20}
\seccontents {1.1}{Manual Conventions} {20}
\seccontents {1.2}{Credit} {21}
\chapcontents {2}{The Help System}{22}
\seccontents {2.1}{Invoking the Help} {22}
\seccontents {2.2}{Browsing through the Sections} {22}
\seccontents {2.3}{Changing the Help Viewer} {23}
\seccontents {2.4}{The Pager Command} {25}
\chapcontents {3}{Running GAP}{27}
\seccontents {3.1}{Command Line Options} {27}
\seccontents {3.2}{Advanced Features of GAP} {29}
\seccontents {3.3}{Running GAP under MacOS} {31}
\seccontents {3.4}{The .gaprc file} {33}
\seccontents {3.5}{Completion Files} {34}
\seccontents {3.6}{Testing for the System Architecture} {34}
\seccontents {3.7}{The Compiler} {35}
\seccontents {3.8}{Suitability for Compilation} {35}
\seccontents {3.9}{Compiling Library Code} {36}
\seccontents {3.10}{CRC Numbers} {36}
\seccontents {3.11}{Saving and Loading a Workspace} {37}
\seccontents {3.12}{Coloring the Prompt and Input} {38}
\chapcontents {4}{The Programming Language}{39}
\seccontents {4.1}{Language Overview} {39}
\seccontents {4.2}{Lexical Structure} {40}
\seccontents {4.3}{Symbols} {40}
\seccontents {4.4}{Whitespaces} {41}
\seccontents {4.5}{Keywords} {41}
\seccontents {4.6}{Identifiers} {42}
\seccontents {4.7}{Expressions} {42}
\seccontents {4.8}{Variables} {43}
\seccontents {4.9}{More About Global Variables} {44}
\seccontents {4.10}{Function Calls} {46}
\seccontents {4.11}{Comparisons} {47}
\seccontents {4.12}{Arithmetic Operators} {48}
\seccontents {4.13}{Statements} {49}
\seccontents {4.14}{Assignments} {50}
\seccontents {4.15}{Procedure Calls} {50}
\seccontents {4.16}{If} {51}
\seccontents {4.17}{While} {52}
\seccontents {4.18}{Repeat} {52}
\seccontents {4.19}{For} {53}
\seccontents {4.20}{Break} {55}
\seccontents {4.21}{Continue} {55}
\seccontents {4.22}{Function} {55}
\seccontents {4.23}{Return} {58}
\seccontents {4.24}{The Syntax in BNF} {59}
\chapcontents {5}{Functions}{61}
\seccontents {5.1}{Information about a function} {61}
\seccontents {5.2}{Calling a function with a list argument that is interpreted as several arguments} {62}
\seccontents {5.3}{Functions that do nothing} {63}
\seccontents {5.4}{Function Types} {63}
\chapcontents {6}{Main Loop and Break Loop}{64}
\seccontents {6.1}{Main Loop} {64}
\seccontents {6.2}{View and Print} {65}
\seccontents {6.3}{Break Loops} {67}
\seccontents {6.4}{Variable Access in a Break Loop} {71}
\seccontents {6.5}{Error} {72}
\seccontents {6.6}{ErrorCount} {72}
\seccontents {6.7}{Leaving GAP} {73}
\seccontents {6.8}{Line Editing} {73}
\seccontents {6.9}{Editing Files} {74}
\seccontents {6.10}{Editor Support} {75}
\seccontents {6.11}{SizeScreen} {75}
\chapcontents {7}{Debugging and Profiling Facilities}{76}
\seccontents {7.1}{Recovery from NoMethodFound-Errors} {76}
\seccontents {7.2}{ApplicableMethod} {77}
\seccontents {7.3}{Tracing Methods} {78}
\seccontents {7.4}{Info Functions} {79}
\seccontents {7.5}{Assertions} {80}
\seccontents {7.6}{Timing} {81}
\seccontents {7.7}{Profiling} {81}
\seccontents {7.8}{Information about the version used} {84}
\seccontents {7.9}{Test Files} {84}
\seccontents {7.10}{Debugging Recursion} {84}
\seccontents {7.11}{Global Memory Information} {86}
\chapcontents {8}{Options Stack}{88}
\chapcontents {9}{Files and Filenames}{90}
\seccontents {9.1}{Portability} {90}
\seccontents {9.2}{GAP Root Directory} {90}
\seccontents {9.3}{Directories} {91}
\seccontents {9.4}{Filename} {92}
\seccontents {9.5}{Special Filenames} {93}
\seccontents {9.6}{File Access} {93}
\seccontents {9.7}{File Operations} {94}
\chapcontents {10}{Streams}{97}
\seccontents {10.1}{Categories for Streams and the StreamsFamily} {97}
\seccontents {10.2}{Operations applicable to All Streams} {98}
\seccontents {10.3}{Operations for Input Streams} {99}
\seccontents {10.4}{Operations for Output Streams} {101}
\seccontents {10.5}{File Streams} {103}
\seccontents {10.6}{User Streams} {104}
\seccontents {10.7}{String Streams} {104}
\seccontents {10.8}{Input-Output Streams} {105}
\seccontents {10.9}{Dummy Streams} {106}
\seccontents {10.10}{Handling of Streams in the Background} {106}
\chapcontents {11}{Processes}{108}
\seccontents {11.1}{Process} {108}
\seccontents {11.2}{Exec} {109}
\chapcontents {12}{Objects and Elements}{110}
\seccontents {12.1}{Objects} {110}
\seccontents {12.2}{Elements as equivalence classes} {110}
\seccontents {12.3}{Sets} {111}
\seccontents {12.4}{Domains} {111}
\seccontents {12.5}{Identical Objects} {111}
\seccontents {12.6}{Mutability and Copyability} {112}
\seccontents {12.7}{Duplication of Objects} {114}
\seccontents {12.8}{Other Operations Applicable to any Object} {115}
\chapcontents {13}{Types of Objects}{116}
\seccontents {13.1}{Families} {116}
\seccontents {13.2}{Filters} {117}
\seccontents {13.3}{Categories} {118}
\seccontents {13.4}{Representation} {120}
\seccontents {13.5}{Attributes} {121}
\seccontents {13.6}{Setter and Tester for Attributes} {122}
\seccontents {13.7}{Properties} {124}
\seccontents {13.8}{Other Filters} {125}
\seccontents {13.9}{Types} {125}
\chapcontents {14}{Integers}{126}
\seccontents {14.1}{Elementary Operations for Integers} {127}
\seccontents {14.2}{Quotients and Remainders} {129}
\seccontents {14.3}{Prime Integers and Factorization} {131}
\seccontents {14.4}{Residue Class Rings} {134}
\chapcontents {15}{Number Theory}{136}
\seccontents {15.1}{Prime Residues} {136}
\seccontents {15.2}{Primitive Roots and Discrete Logarithms} {137}
\seccontents {15.3}{Roots Modulo Integers} {138}
\seccontents {15.4}{Multiplicative Arithmetic Functions} {140}
\seccontents {15.5}{Continued Fractions} {141}
\seccontents {15.6}{Miscellaneous} {142}
\chapcontents {16}{Rational Numbers}{143}
\seccontents {16.1}{Elementary Operations for Rationals} {143}
\chapcontents {17}{Combinatorics}{145}
\seccontents {17.1}{Combinatorial Numbers} {145}
\seccontents {17.2}{Combinations, Arrangements and Tuples} {147}
\seccontents {17.3}{Fibonacci and Lucas Sequences} {153}
\seccontents {17.4}{Permanent of a Matrix} {154}
\chapcontents {18}{Cyclotomic Numbers}{155}
\seccontents {18.1}{Operations for Cyclotomics} {155}
\seccontents {18.2}{Infinity} {158}
\seccontents {18.3}{Comparisons of Cyclotomics} {159}
\seccontents {18.4}{ATLAS Irrationalities} {159}
\seccontents {18.5}{Galois Conjugacy of Cyclotomics} {162}
\seccontents {18.6}{Internally Represented Cyclotomics} {164}
\chapcontents {19}{Unknowns}{165}
\chapcontents {20}{Booleans}{167}
\seccontents {20.1}{Fail} {167}
\seccontents {20.2}{Comparisons of Booleans} {167}
\seccontents {20.3}{Operations for Booleans} {168}
\chapcontents {21}{Lists}{170}
\seccontents {21.1}{List Categories} {170}
\seccontents {21.2}{Basic Operations for Lists} {172}
\seccontents {21.3}{List Elements} {172}
\seccontents {21.4}{List Assignment} {174}
\seccontents {21.5}{IsBound and Unbind for Lists} {176}
\seccontents {21.6}{Identical Lists} {176}
\seccontents {21.7}{Duplication of Lists} {178}
\seccontents {21.8}{Membership Test for Lists} {179}
\seccontents {21.9}{Enlarging Internally Represented Lists} {179}
\seccontents {21.10}{Comparisons of Lists} {180}
\seccontents {21.11}{Arithmetic for Lists} {180}
\seccontents {21.12}{Filters Controlling the Arithmetic Behaviour of Lists} {181}
\seccontents {21.13}{Additive Arithmetic for Lists} {182}
\seccontents {21.14}{Multiplicative Arithmetic for Lists} {184}
\seccontents {21.15}{Mutability Status and List Arithmetic} {186}
\seccontents {21.16}{Finding Positions in Lists} {187}
\seccontents {21.17}{Properties and Attributes for Lists} {190}
\seccontents {21.18}{Sorting Lists} {191}
\seccontents {21.19}{Sorted Lists and Sets} {193}
\seccontents {21.20}{Operations for Lists} {195}
\seccontents {21.21}{Advanced List Manipulations} {202}
\seccontents {21.22}{Ranges} {203}
\seccontents {21.23}{Enumerators} {205}
\chapcontents {22}{Boolean Lists}{206}
\seccontents {22.1}{Boolean Lists Representing Subsets} {206}
\seccontents {22.2}{Set Operations via Boolean Lists} {207}
\seccontents {22.3}{Function that Modify Boolean Lists} {208}
\seccontents {22.4}{More about Boolean Lists} {209}
\chapcontents {23}{Row Vectors}{210}
\seccontents {23.1}{Operators for Row Vectors} {210}
\seccontents {23.2}{Row Vectors over Finite Fields} {212}
\seccontents {23.3}{Coefficient List Arithmetic} {213}
\seccontents {23.4}{Shifting and Trimming Coefficient Lists} {214}
\seccontents {23.5}{Functions for Coding Theory} {215}
\seccontents {23.6}{Vectors as coefficients of polynomials} {215}
\chapcontents {24}{Matrices}{218}
\seccontents {24.1}{Categories of Matrices} {218}
\seccontents {24.2}{Operators for Matrices} {219}
\seccontents {24.3}{Properties and Attributes of Matrices} {221}
\seccontents {24.4}{Matrix Constructions} {223}
\seccontents {24.5}{Random Matrices} {225}
\seccontents {24.6}{Matrices Representing Linear Equations and the Gaussian Algorithm} {225}
\seccontents {24.7}{Eigenvectors and eigenvalues} {226}
\seccontents {24.8}{Elementary Divisors} {227}
\seccontents {24.9}{Echelonized Matrices} {227}
\seccontents {24.10}{Matrices as Basis of a Row Space} {229}
\seccontents {24.11}{Triangular Matrices} {230}
\seccontents {24.12}{Matrices as Linear Mappings} {230}
\seccontents {24.13}{Matrices over Finite Fields} {231}
\seccontents {24.14}{Special Multiplication Algorithms for Matrices over GF(2)} {234}
\seccontents {24.15}{Block Matrices} {235}
\chapcontents {25}{Integral matrices and lattices}{236}
\seccontents {25.1}{Linear equations over the integers and Integral Matrices} {236}
\seccontents {25.2}{Normal Forms over the Integers} {237}
\seccontents {25.3}{Determinant of an integer matrix} {240}
\seccontents {25.4}{Decompositions} {240}
\seccontents {25.5}{Lattice Reduction} {241}
\seccontents {25.6}{Orthogonal Embeddings} {243}
\chapcontents {26}{Strings and Characters}{245}
\seccontents {26.1}{Special Characters} {247}
\seccontents {26.2}{Internally Represented Strings} {248}
\seccontents {26.3}{Recognizing Characters} {249}
\seccontents {26.4}{Comparisons of Strings} {249}
\seccontents {26.5}{Operations to Produce or Manipulate Strings} {250}
\seccontents {26.6}{Character Conversion} {252}
\seccontents {26.7}{Operations to Evaluate Strings} {253}
\seccontents {26.8}{Calendar Arithmetic} {254}
\chapcontents {27}{Records}{257}
\seccontents {27.1}{Accessing Record Elements} {258}
\seccontents {27.2}{Record Assignment} {258}
\seccontents {27.3}{Identical Records} {259}
\seccontents {27.4}{Comparisons of Records} {260}
\seccontents {27.5}{IsBound and Unbind for Records} {261}
\seccontents {27.6}{Record Access Operations} {262}
\chapcontents {28}{Collections}{263}
\seccontents {28.1}{Collection Families} {263}
\seccontents {28.2}{Lists and Collections} {264}
\seccontents {28.3}{Attributes and Properties for Collections} {268}
\seccontents {28.4}{Operations for Collections} {270}
\seccontents {28.5}{Membership Test for Collections} {272}
\seccontents {28.6}{Random Elements} {272}
\seccontents {28.7}{Iterators} {273}
\chapcontents {29}{Orderings}{276}
\seccontents {29.1}{Building new orderings} {276}
\seccontents {29.2}{Properties and basic functionality} {277}
\seccontents {29.3}{Orderings on families of associative words} {278}
\chapcontents {30}{Domains and their Elements}{282}
\seccontents {30.1}{Operational Structure of Domains} {282}
\seccontents {30.2}{Equality and Comparison of Domains} {283}
\seccontents {30.3}{Constructing Domains} {283}
\seccontents {30.4}{Changing the Structure} {284}
\seccontents {30.5}{Changing the Representation} {285}
\seccontents {30.6}{Domain Categories} {285}
\seccontents {30.7}{Parents} {286}
\seccontents {30.8}{Constructing Subdomains} {287}
\seccontents {30.9}{Operations for Domains} {287}
\seccontents {30.10}{Attributes and Properties of Elements} {288}
\seccontents {30.11}{Comparison Operations for Elements} {291}
\seccontents {30.12}{Arithmetic Operations for Elements} {292}
\seccontents {30.13}{Relations Between Domains} {293}
\seccontents {30.14}{Useful Categories of Elements} {295}
\seccontents {30.15}{Useful Categories for all Elements of a Family} {297}
\chapcontents {31}{Mappings}{299}
\seccontents {31.1}{Creating Mappings} {300}
\seccontents {31.2}{Properties and Attributes of (General) Mappings} {301}
\seccontents {31.3}{Images under Mappings} {302}
\seccontents {31.4}{Preimages under Mappings} {303}
\seccontents {31.5}{Arithmetic Operations for General Mappings} {305}
\seccontents {31.6}{Mappings which are Compatible with Algebraic Structures} {305}
\seccontents {31.7}{Magma Homomorphisms} {305}
\seccontents {31.8}{Mappings that Respect Multiplication} {306}
\seccontents {31.9}{Mappings that Respect Addition} {307}
\seccontents {31.10}{Linear Mappings} {307}
\seccontents {31.11}{Ring Homomorphisms} {308}
\seccontents {31.12}{General Mappings} {308}
\seccontents {31.13}{Technical Matters Concerning General Mappings} {308}
\chapcontents {32}{Relations}{310}
\seccontents {32.1}{General Binary Relations} {310}
\seccontents {32.2}{Properties and Attributes of Binary Relations} {310}
\seccontents {32.3}{Binary Relations on Points} {312}
\seccontents {32.4}{Closure Operations and Other Constructors} {312}
\seccontents {32.5}{Equivalence Relations} {313}
\seccontents {32.6}{Attributes of and Operations on Equivalence Relations} {313}
\seccontents {32.7}{Equivalence Classes} {314}
\chapcontents {33}{Magmas}{315}
\seccontents {33.1}{Magma Categories} {315}
\seccontents {33.2}{Magma Generation} {316}
\seccontents {33.3}{Magmas Defined by Multiplication Tables} {317}
\seccontents {33.4}{Attributes and Properties for Magmas} {318}
\chapcontents {34}{Words}{321}
\seccontents {34.1}{Categories of Words and Nonassociative Words} {321}
\seccontents {34.2}{Comparison of Words} {323}
\seccontents {34.3}{Operations for Words} {323}
\seccontents {34.4}{Free Magmas} {324}
\seccontents {34.5}{External Representation for Nonassociative Words} {325}
\chapcontents {35}{Associative Words}{326}
\seccontents {35.1}{Categories of Associative Words} {326}
\seccontents {35.2}{Free Groups, Monoids and Semigroups} {327}
\seccontents {35.3}{Comparison of Associative Words} {329}
\seccontents {35.4}{Operations for Associative Words} {330}
\seccontents {35.5}{Operations for Associative Words by their Syllables} {331}
\seccontents {35.6}{Representations for Associative Words} {332}
\seccontents {35.7}{The External Representation for Associative Words} {334}
\seccontents {35.8}{Straight Line Programs} {334}
\seccontents {35.9}{Straight Line Program Elements} {338}
\chapcontents {36}{Rewriting Systems}{339}
\seccontents {36.1}{Operations on rewriting systems} {339}
\seccontents {36.2}{Operations on elements of the algebra} {340}
\seccontents {36.3}{Properties of rewriting systems} {341}
\seccontents {36.4}{Rewriting in Groups and Monoids} {341}
\seccontents {36.5}{Developing rewriting systems} {342}
\chapcontents {37}{Groups}{344}
\seccontents {37.1}{Group Elements} {344}
\seccontents {37.2}{Creating Groups} {344}
\seccontents {37.3}{Subgroups} {346}
\seccontents {37.4}{Closures of (Sub)groups} {348}
\seccontents {37.5}{Expressing Group Elements as Words in Generators} {348}
\seccontents {37.6}{Structure Descriptions} {349}
\seccontents {37.7}{Cosets} {351}
\seccontents {37.8}{Transversals} {352}
\seccontents {37.9}{Double Cosets} {353}
\seccontents {37.10}{Conjugacy Classes} {354}
\seccontents {37.11}{Normal Structure} {356}
\seccontents {37.12}{Specific and Parametrized Subgroups} {357}
\seccontents {37.13}{Sylow Subgroups and Hall Subgroups} {359}
\seccontents {37.14}{Subgroups characterized by prime powers} {360}
\seccontents {37.15}{Group Properties} {361}
\seccontents {37.16}{Numerical Group Attributes} {363}
\seccontents {37.17}{Subgroup Series} {364}
\seccontents {37.18}{Factor Groups} {367}
\seccontents {37.19}{Sets of Subgroups} {368}
\seccontents {37.20}{Subgroup Lattice} {369}
\seccontents {37.21}{Specific Methods for Subgroup Lattice Computations} {371}
\seccontents {37.22}{Special Generating Sets} {374}
\seccontents {37.23}{1-Cohomology} {374}
\seccontents {37.24}{Schur Covers and Multipliers} {377}
\seccontents {37.25}{Tests for the Availability of Methods} {377}
\chapcontents {38}{Group Homomorphisms}{379}
\seccontents {38.1}{Creating Group Homomorphisms} {379}
\seccontents {38.2}{Operations for Group Homomorphisms} {381}
\seccontents {38.3}{Efficiency of Homomorphisms} {382}
\seccontents {38.4}{Homomorphism for very large groups} {383}
\seccontents {38.5}{Nice Monomorphisms} {384}
\seccontents {38.6}{Group Automorphisms} {384}
\seccontents {38.7}{Groups of Automorphisms} {386}
\seccontents {38.8}{Calculating with Group Automorphisms} {387}
\seccontents {38.9}{Searching for Homomorphisms} {388}
\seccontents {38.10}{Representations for Group Homomorphisms} {390}
\chapcontents {39}{Group Actions}{391}
\seccontents {39.1}{About Group Actions} {391}
\seccontents {39.2}{Basic Actions} {392}
\seccontents {39.3}{Orbits} {394}
\seccontents {39.4}{Stabilizers} {396}
\seccontents {39.5}{Elements with Prescribed Images} {397}
\seccontents {39.6}{The Permutation Image of an Action} {397}
\seccontents {39.7}{Action of a group on itself} {399}
\seccontents {39.8}{Permutations Induced by Elements and Cycles} {400}
\seccontents {39.9}{Tests for Actions} {401}
\seccontents {39.10}{Block Systems} {402}
\seccontents {39.11}{External Sets} {403}
\chapcontents {40}{Permutations}{406}
\seccontents {40.1}{Comparison of Permutations} {407}
\seccontents {40.2}{Moved Points of Permutations} {407}
\seccontents {40.3}{Sign and Cycle Structure} {408}
\seccontents {40.4}{Creating Permutations} {409}
\chapcontents {41}{Permutation Groups}{410}
\seccontents {41.1}{The Natural Action} {410}
\seccontents {41.2}{Computing a Permutation Representation} {411}
\seccontents {41.3}{Symmetric and Alternating Groups} {411}
\seccontents {41.4}{Primitive Groups} {412}
\seccontents {41.5}{Stabilizer Chains} {413}
\seccontents {41.6}{Randomized Methods for Permutation Groups} {414}
\seccontents {41.7}{Construction of Stabilizer Chains} {416}
\seccontents {41.8}{Stabilizer Chain Records} {417}
\seccontents {41.9}{Operations for Stabilizer Chains} {418}
\seccontents {41.10}{Low Level Routines to Modify and Create Stabilizer Chains} {420}
\seccontents {41.11}{Backtrack} {421}
\seccontents {41.12}{Working with large degree permutation groups} {422}
\chapcontents {42}{Matrix Groups}{424}
\seccontents {42.1}{Attributes and Properties for Matrix Groups} {424}
\seccontents {42.2}{Actions of Matrix Groups} {425}
\seccontents {42.3}{GL and SL} {425}
\seccontents {42.4}{Invariant Forms} {426}
\seccontents {42.5}{Matrix Groups in Characteristic 0} {427}
\seccontents {42.6}{Acting OnRight and OnLeft} {429}
\chapcontents {43}{Polycyclic Groups}{430}
\seccontents {43.1}{Polycyclic Generating Systems} {430}
\seccontents {43.2}{Computing a Pcgs} {431}
\seccontents {43.3}{Defining a Pcgs Yourself} {431}
\seccontents {43.4}{Elementary Operations for a Pcgs} {432}
\seccontents {43.5}{Elementary Operations for a Pcgs and an Element} {433}
\seccontents {43.6}{Exponents of Special Products} {434}
\seccontents {43.7}{Subgroups of Polycyclic Groups - Induced Pcgs} {435}
\seccontents {43.8}{Subgroups of Polycyclic Groups - Canonical Pcgs} {436}
\seccontents {43.9}{Factor Groups of Polycyclic Groups - Modulo Pcgs} {437}
\seccontents {43.10}{Factor Groups of Polycyclic Groups in their Own Representation} {438}
\seccontents {43.11}{Pcgs and Normal Series} {439}
\seccontents {43.12}{Sum and Intersection of Pcgs} {441}
\seccontents {43.13}{Special Pcgs} {442}
\seccontents {43.14}{Action on Subfactors Defined by a Pcgs} {444}
\seccontents {43.15}{Orbit Stabilizer Methods for Polycyclic Groups} {445}
\seccontents {43.16}{Operations which have Special Methods for Groups with Pcgs} {445}
\seccontents {43.17}{Conjugacy Classes in Solvable Groups} {445}
\chapcontents {44}{Pc Groups}{447}
\seccontents {44.1}{The family pcgs} {448}
\seccontents {44.2}{Elements of pc groups} {448}
\seccontents {44.3}{Pc groups versus fp groups} {449}
\seccontents {44.4}{Constructing Pc Groups} {449}
\seccontents {44.5}{Computing Pc Groups} {451}
\seccontents {44.6}{Saving a Pc Group} {452}
\seccontents {44.7}{Operations for Pc Groups} {452}
\seccontents {44.8}{2-Cohomology and Extensions} {453}
\seccontents {44.9}{Coding a Pc Presentation} {456}
\seccontents {44.10}{Random Isomorphism Testing} {456}
\chapcontents {45}{Finitely Presented Groups}{457}
\seccontents {45.1}{Creating Finitely Presented Groups} {458}
\seccontents {45.2}{Comparison of Elements of Finitely Presented Groups} {459}
\seccontents {45.3}{Preimages in the Free Group} {459}
\seccontents {45.4}{Operations for Finitely Presented Groups} {460}
\seccontents {45.5}{Coset Tables and Coset Enumeration} {461}
\seccontents {45.6}{Standardization of coset tables} {464}
\seccontents {45.7}{Coset tables for subgroups in the whole group} {465}
\seccontents {45.8}{Augmented Coset Tables and Rewriting} {465}
\seccontents {45.9}{Low Index Subgroups} {466}
\seccontents {45.10}{Converting Groups to Finitely Presented Groups} {467}
\seccontents {45.11}{New Presentations and Presentations for Subgroups} {469}
\seccontents {45.12}{Preimages under Homomorphisms from an FpGroup} {470}
\seccontents {45.13}{Quotient Methods} {471}
\seccontents {45.14}{Abelian Invariants for Subgroups} {472}
\seccontents {45.15}{Testing Finiteness of Finitely Presented Groups} {473}
\chapcontents {46}{Presentations and Tietze Transformations}{475}
\seccontents {46.1}{Creating Presentations} {475}
\seccontents {46.2}{SimplifiedFpGroup} {477}
\seccontents {46.3}{Subgroup Presentations} {478}
\seccontents {46.4}{Relators in a Presentation} {481}
\seccontents {46.5}{Printing Presentations} {481}
\seccontents {46.6}{Changing Presentations} {483}
\seccontents {46.7}{Tietze Transformations} {483}
\seccontents {46.8}{Elementary Tietze Transformations} {486}
\seccontents {46.9}{Tietze Transformations that introduce new Generators} {488}
\seccontents {46.10}{Tracing generator images through Tietze transformations} {491}
\seccontents {46.11}{DecodeTree} {493}
\seccontents {46.12}{Tietze Options} {496}
\chapcontents {47}{Group Products}{498}
\seccontents {47.1}{Direct Products} {498}
\seccontents {47.2}{Semidirect Products} {499}
\seccontents {47.3}{Subdirect Products} {500}
\seccontents {47.4}{Wreath Products} {501}
\seccontents {47.5}{Embeddings and Projections for Group Products} {502}
\chapcontents {48}{Group Libraries}{503}
\seccontents {48.1}{Basic Groups} {503}
\seccontents {48.2}{Classical Groups} {505}
\seccontents {48.3}{Conjugacy Classes in Classical Groups} {509}
\seccontents {48.4}{Constructors for Basic Groups} {509}
\seccontents {48.5}{Selection Functions} {510}
\seccontents {48.6}{Transitive Permutation Groups} {511}
\seccontents {48.7}{Small Groups} {512}
\seccontents {48.8}{Finite Perfect Groups} {515}
\seccontents {48.9}{Primitive Permutation Groups} {519}
\seccontents {48.10}{Index numbers of primitive groups} {521}
\seccontents {48.11}{Irreducible Solvable Matrix Groups} {522}
\seccontents {48.12}{Irreducible Maximal Finite Integral Matrix Groups} {523}
\chapcontents {49}{Semigroups}{531}
\seccontents {49.1}{Making transformation semigroups} {533}
\seccontents {49.2}{Ideals of semigroups} {533}
\seccontents {49.3}{Congruences for semigroups} {534}
\seccontents {49.4}{Quotients} {534}
\seccontents {49.5}{Green's Relations} {534}
\seccontents {49.6}{Rees Matrix Semigroups} {536}
\chapcontents {50}{Monoids}{538}
\chapcontents {51}{Finitely Presented Semigroups and Monoids}{540}
\seccontents {51.1}{Creating Finitely Presented Semigroups} {542}
\seccontents {51.2}{Comparison of Elements of Finitely Presented Semigroups} {543}
\seccontents {51.3}{Preimages in the Free Semigroup} {543}
\seccontents {51.4}{Finitely presented monoids} {544}
\seccontents {51.5}{Rewriting Systems and the Knuth-Bendix Procedure} {545}
\seccontents {51.6}{Todd-Coxeter Procedure} {546}
\chapcontents {52}{Transformations}{547}
\chapcontents {53}{Additive Magmas (preliminary)}{550}
\seccontents {53.1}{(Near-)Additive Magma Categories} {550}
\seccontents {53.2}{(Near-)Additive Magma Generation} {551}
\seccontents {53.3}{Attributes and Properties for (Near-)Additive Magmas} {552}
\seccontents {53.4}{Operations for (Near-)Additive Magmas} {553}
\chapcontents {54}{Rings}{554}
\seccontents {54.1}{Generating Rings} {554}
\seccontents {54.2}{Ideals in Rings} {556}
\seccontents {54.3}{Rings With One} {558}
\seccontents {54.4}{Properties of Rings} {559}
\seccontents {54.5}{Units and Factorizations} {560}
\seccontents {54.6}{Euclidean Rings} {562}
\seccontents {54.7}{Gcd and Lcm} {563}
\chapcontents {55}{Modules (preliminary)}{566}
\seccontents {55.1}{Generating modules} {566}
\seccontents {55.2}{Submodules} {567}
\seccontents {55.3}{Free Modules} {568}
\chapcontents {56}{Fields and Division Rings}{570}
\seccontents {56.1}{Generating Fields} {570}
\seccontents {56.2}{Subfields of Fields} {572}
\seccontents {56.3}{Galois Action} {572}
\chapcontents {57}{Finite Fields}{576}
\seccontents {57.1}{Finite Field Elements} {576}
\seccontents {57.2}{Operations for Finite Field Elements} {577}
\seccontents {57.3}{Creating Finite Fields} {579}
\seccontents {57.4}{FrobeniusAutomorphism} {580}
\seccontents {57.5}{Conway Polynomials} {580}
\chapcontents {58}{Abelian Number Fields}{582}
\seccontents {58.1}{Construction of Abelian Number Fields} {582}
\seccontents {58.2}{Operations for Abelian Number Fields} {583}
\seccontents {58.3}{Integral Bases of Abelian Number Fields} {585}
\seccontents {58.4}{Galois Groups of Abelian Number Fields} {587}
\seccontents {58.5}{Gaussians} {588}
\chapcontents {59}{Vector Spaces}{589}
\seccontents {59.1}{Constructing Vector Spaces} {589}
\seccontents {59.2}{Operations and Attributes for Vector Spaces} {590}
\seccontents {59.3}{Domains of Subspaces of Vector Spaces} {591}
\seccontents {59.4}{Bases of Vector Spaces} {591}
\seccontents {59.5}{Operations for Vector Space Bases} {593}
\seccontents {59.6}{Operations for Special Kinds of Bases} {595}
\seccontents {59.7}{Mutable Bases} {596}
\seccontents {59.8}{Row and Matrix Spaces} {597}
\seccontents {59.9}{Vector Space Homomorphisms} {600}
\seccontents {59.10}{Vector Spaces Handled By Nice Bases} {602}
\seccontents {59.11}{How to Implement New Kinds of Vector Spaces} {603}
\chapcontents {60}{Algebras}{605}
\seccontents {60.1}{Constructing Algebras by Generators} {605}
\seccontents {60.2}{Constructing Algebras as Free Algebras} {606}
\seccontents {60.3}{Constructing Algebras by Structure Constants} {607}
\seccontents {60.4}{Some Special Algebras} {609}
\seccontents {60.5}{Subalgebras} {610}
\seccontents {60.6}{Ideals} {611}
\seccontents {60.7}{Categories and Properties of Algebras} {612}
\seccontents {60.8}{Attributes and Operations for Algebras} {613}
\seccontents {60.9}{Homomorphisms of Algebras} {619}
\seccontents {60.10}{Representations of Algebras} {622}
\chapcontents {61}{Lie Algebras}{630}
\seccontents {61.1}{Lie objects} {630}
\seccontents {61.2}{Constructing Lie algebras} {631}
\seccontents {61.3}{Distinguished Subalgebras} {633}
\seccontents {61.4}{Series of Ideals} {634}
\seccontents {61.5}{Properties of a Lie Algebra} {635}
\seccontents {61.6}{Direct Sum Decompositions} {636}
\seccontents {61.7}{Semisimple Lie Algebras and Root Systems} {636}
\seccontents {61.8}{Restricted Lie algebras} {640}
\seccontents {61.9}{The Adjoint Representation} {642}
\seccontents {61.10}{Universal Enveloping Algebras} {643}
\seccontents {61.11}{Finitely Presented Lie Algebras} {643}
\seccontents {61.12}{Modules over Lie Algebras and Their Cohomology} {645}
\seccontents {61.13}{Modules over Semisimple Lie Algebras} {647}
\seccontents {61.14}{Tensor Products and Exterior and Symmetric Powers} {650}
\chapcontents {62}{Finitely Presented Algebras}{652}
\chapcontents {63}{Magma Rings}{653}
\seccontents {63.1}{Free Magma Rings} {654}
\seccontents {63.2}{Elements of Free Magma Rings} {655}
\seccontents {63.3}{Natural Embeddings related to Magma Rings} {655}
\seccontents {63.4}{Magma Rings modulo Relations} {656}
\seccontents {63.5}{Magma Rings modulo the Span of a Zero Element} {657}
\seccontents {63.6}{Technical Details about the Implementation of Magma Rings} {657}
\chapcontents {64}{Polynomials and Rational Functions}{659}
\seccontents {64.1}{Indeterminates} {659}
\seccontents {64.2}{Operations for Rational Functions} {661}
\seccontents {64.3}{Comparison of Rational Functions} {661}
\seccontents {64.4}{Properties and Attributes of Rational Functions} {662}
\seccontents {64.5}{Univariate Polynomials} {664}
\seccontents {64.6}{Polynomials as Univariate Polynomials in one Indeterminate} {665}
\seccontents {64.7}{Multivariate Polynomials} {666}
\seccontents {64.8}{Minimal Polynomials} {667}
\seccontents {64.9}{Cyclotomic Polynomials} {667}
\seccontents {64.10}{Polynomial Factorization} {667}
\seccontents {64.11}{Polynomials over the Rationals} {668}
\seccontents {64.12}{Laurent Polynomials} {669}
\seccontents {64.13}{Univariate Rational Functions} {670}
\seccontents {64.14}{Polynomial Rings} {670}
\seccontents {64.15}{Univariate Polynomial Rings} {672}
\seccontents {64.16}{Monomial Orderings} {673}
\seccontents {64.17}{Groebner Bases} {676}
\seccontents {64.18}{Rational Function Families} {677}
\seccontents {64.19}{The Representations of Rational Functions} {678}
\seccontents {64.20}{The Defining Attributes of Rational Functions} {678}
\seccontents {64.21}{Creation of Rational Functions} {679}
\seccontents {64.22}{Arithmetic for External Representations of Polynomials} {680}
\seccontents {64.23}{Cancellation Tests for Rational Functions} {681}
\chapcontents {65}{Algebraic extensions of fields}{682}
\seccontents {65.1}{Creation of Algebraic Extensions} {682}
\seccontents {65.2}{Elements in Algebraic Extensions} {682}
\chapcontents {66}{p-adic Numbers (preliminary)}{684}
\seccontents {66.1}{Pure p-adic Numbers} {684}
\seccontents {66.2}{Extensions of the p-adic Numbers} {685}
\chapcontents {67}{The MeatAxe}{687}
\seccontents {67.1}{MeatAxe Modules} {687}
\seccontents {67.2}{Module Constructions} {687}
\seccontents {67.3}{Selecting a Different MeatAxe} {688}
\seccontents {67.4}{Accessing a Module} {688}
\seccontents {67.5}{Irreducibility Tests} {688}
\seccontents {67.6}{Finding Submodules} {688}
\seccontents {67.7}{Induced Actions} {689}
\seccontents {67.8}{Module Homomorphisms} {690}
\seccontents {67.9}{Invariant Forms} {690}
\seccontents {67.10}{The Smash MeatAxe} {691}
\seccontents {67.11}{Smash MeatAxe Flags} {692}
\chapcontents {68}{Tables of Marks}{693}
\seccontents {68.1}{More about Tables of Marks} {693}
\seccontents {68.2}{Table of Marks Objects in GAP} {694}
\seccontents {68.3}{Constructing Tables of Marks} {694}
\seccontents {68.4}{Printing Tables of Marks} {696}
\seccontents {68.5}{Sorting Tables of Marks} {697}
\seccontents {68.6}{Technical Details about Tables of Marks} {698}
\seccontents {68.7}{Attributes of Tables of Marks} {699}
\seccontents {68.8}{Properties of Tables of Marks} {702}
\seccontents {68.9}{Other Operations for Tables of Marks} {703}
\seccontents {68.10}{Standard Generators of Groups} {706}
\seccontents {68.11}{Accessing Subgroups via Tables of Marks} {709}
\seccontents {68.12}{The Interface between Tables of Marks and Character Tables} {711}
\seccontents {68.13}{Generic Construction of Tables of Marks} {713}
\seccontents {68.14}{The Library of Tables of Marks} {714}
\chapcontents {69}{Character Tables}{715}
\seccontents {69.1}{Some Remarks about Character Theory in GAP} {715}
\seccontents {69.2}{History of Character Theory Stuff in GAP} {716}
\seccontents {69.3}{Creating Character Tables} {717}
\seccontents {69.4}{Character Table Categories} {720}
\seccontents {69.5}{Conventions for Character Tables} {721}
\seccontents {69.6}{The Interface between Character Tables and Groups} {721}
\seccontents {69.7}{Operators for Character Tables} {724}
\seccontents {69.8}{Attributes and Properties of Character Tables} {724}
\seccontents {69.9}{Operations Concerning Blocks} {731}
\seccontents {69.10}{Other Operations for Character Tables} {734}
\seccontents {69.11}{Printing Character Tables} {737}
\seccontents {69.12}{Computing the Irreducible Characters of a Group} {740}
\seccontents {69.13}{Representations given by modules} {742}
\seccontents {69.14}{The Dixon-Schneider Algorithm} {743}
\seccontents {69.15}{Advanced Methods for Dixon-Schneider Calculations} {743}
\seccontents {69.16}{Components of a Dixon Record} {744}
\seccontents {69.17}{An Example of Advanced Dixon-Schneider Calculations} {745}
\seccontents {69.18}{Constructing Character Tables from Others} {746}
\seccontents {69.19}{Sorted Character Tables} {749}
\seccontents {69.20}{Automorphisms and Equivalence of Character Tables} {752}
\seccontents {69.21}{Storing Normal Subgroup Information} {754}
\chapcontents {70}{Class Functions}{756}
\seccontents {70.1}{Why Class Functions?} {756}
\seccontents {70.2}{Basic Operations for Class Functions} {758}
\seccontents {70.3}{Comparison of Class Functions} {759}
\seccontents {70.4}{Arithmetic Operations for Class Functions} {760}
\seccontents {70.5}{Printing Class Functions} {762}
\seccontents {70.6}{Creating Class Functions from Values Lists} {763}
\seccontents {70.7}{Creating Class Functions using Groups} {764}
\seccontents {70.8}{Operations for Class Functions} {765}
\seccontents {70.9}{Restricted and Induced Class Functions} {769}
\seccontents {70.10}{Reducing Virtual Characters} {771}
\seccontents {70.11}{Symmetrizations of Class Functions} {777}
\seccontents {70.12}{Molien Series} {779}
\seccontents {70.13}{Possible Permutation Characters} {781}
\seccontents {70.14}{Computing Possible Permutation Characters} {784}
\seccontents {70.15}{Operations for Brauer Characters} {788}
\seccontents {70.16}{Domains Generated by Class Functions} {789}
\chapcontents {71}{Maps Concerning Character Tables}{790}
\seccontents {71.1}{Power Maps} {790}
\seccontents {71.2}{Class Fusions between Character Tables} {794}
\seccontents {71.3}{Parametrized Maps} {799}
\seccontents {71.4}{Subroutines for the Construction of Power Maps} {807}
\seccontents {71.5}{Subroutines for the Construction of Class Fusions} {809}
\chapcontents {72}{Monomiality Questions}{812}
\seccontents {72.1}{Character Degrees and Derived Length} {813}
\seccontents {72.2}{Primitivity of Characters} {813}
\seccontents {72.3}{Testing Monomiality} {815}
\seccontents {72.4}{Minimal Nonmonomial Groups} {818}
\chapcontents {73}{Installing GAP}{819}
\seccontents {73.1}{Installation Overview} {819}
\seccontents {73.2}{Get the Archives} {820}
\seccontents {73.3}{Unpacking} {820}
\seccontents {73.4}{Compilation} {821}
\seccontents {73.5}{Test of the installation} {822}
\seccontents {73.6}{Packages} {823}
\seccontents {73.7}{Finish Installation and Cleanup} {823}
\seccontents {73.8}{The Documentation} {824}
\seccontents {73.9}{If Things Go Wrong} {825}
\seccontents {73.10}{Known Problems of the Configure Process} {826}
\seccontents {73.11}{Problems on Particular Systems} {827}
\seccontents {73.12}{Optimization and Compiler Options} {827}
\seccontents {73.13}{Porting GAP} {828}
\seccontents {73.14}{GAP for Macintosh OS X} {829}
\seccontents {73.15}{GAP for MacOS} {830}
\seccontents {73.16}{Installation of GAP for MacOS} {830}
\seccontents {73.17}{Expert Windows installation} {832}
\seccontents {73.18}{Copyrights} {833}
\chapcontents {74}{GAP Packages}{834}
\seccontents {74.1}{Installing a GAP Package} {834}
\seccontents {74.2}{Loading a GAP Package} {834}
\seccontents {74.3}{Functions for GAP Packages} {835}
\chapcontents {75}{Replaced and Removed Command Names}{838}
\seccontents {75.1}{Group Actions - Name Changes} {838}
\seccontents {75.2}{Package Interface - Obsolete Functions and Name Changes} {838}
\seccontents {75.3}{Normal Forms of Integer Matrices - Name Changes} {839}
\seccontents {75.4}{Miscellaneous Name Changes or Removed Names} {839}
\chapcontents {}{Bibliography}{841}
\chapcontents {}{Index}{848}
