Goto Chapter: Top 1 2 3 Ind
Top of Book Previous Chapter Next Chapter

1 Introduction
1.1 Introduction to the HAPprime package
1.2 Required software
1.3 Installing HAPprime
1.4 Loading and testing HAPprime
1.5 Documentation
1.5-1 MakeHAPprimeDoc
1.6 Displaying progress and calculation information
1.6-1 InfoHAPprime

### 1 Introduction

#### 1.1 Introduction to the HAPprime package

HAPprime is a package for the GAP computer algebra system (http://www.gap-system.org/), and which extends the HAP `Homological Algebra Progamming' package written by Graham Ellis (http://hamilton.nuigalway.ie/Hap/www/). It provides algorithms and data structures for calculating cohomology ring presentations and resolutions of small prime-power groups. As well as new functions, HAPprime also provides some equivalents for some existing HAP functions that are much more memory-efficient and occasionally faster.

In particular, the main reasons you may want to use HAPprime are

- the calculation of resolutions of prime-power groups in HAPprime uses significantly less memory than the equivalent function in HAP, allowing resolutions (and cohomology ring presentations) of larger groups to be calculated (see Section 2.3);

- HAPprime can compute polynomial ring presentations for cohomology rings calculated using either HAP or HAPprime (see Section 2.2-1);

- we provide a method which ensures that complete and correct cohomology rings are computed. This is a an implementation of Len Evens' original proof of the finite presentation of the cohomology rings (see Section 2.2-2).

#### 1.2 Required software

The HAPprime package requires GAP version 4.4 or greater and HAP version 1.8.9 or greater. For calculating provably-correct cohomology rings, the Singular commutative algebra system (http://www.singular.uni-kl.de/) and the singular GAP package are also required.

#### 1.3 Installing HAPprime

To install the HAPprime Package, unpack the archive file into your GAP packages directory (either usually the `pkg` directory of your GAP 4 installation if you have access to it, or some local `pkg` directory that GAP can find). The HAPprime files will all be installed in a subdirectory called `happrime-0.3.2`.

#### 1.4 Loading and testing HAPprime

The HAPprime package is not loaded by default when GAP is started. To load the package, type the following at the GAP prompt:

    gap> LoadPackage( "HAPprime");

If HAPprime isn't already in memory, it is loaded and the author information is displayed. If you are a frequent user of HAPprime, you might consider putting this line in your `.gaprc` file.

The correct installation of HAPprime can be tested by using the test routine `tst/testall.g`:

    gap> ReadPackage("HAPprime", "tst/testall.g");
    + HAPprime version 0.3.2 general tests
    + GAP4stones: 371057
    + HAPprime version 0.3.2 userguide examples
    + GAP4stones: 387662
    + HAPprime version 0.3.2 datatypes reference manual examples
    + GAP4stones: 382653
    true

The number of `GAP4stones` will vary depending on your machine, but any additional lines of messages indicate problems with your installation.

The test routine calls a set of test files Reference: Test Files which can be found in the `tst` directory of the HAPprime installation. All of the routines listed in this user guide are tested, as are many of those in the datatype reference manual.

#### 1.5 Documentation

The documentation for HAPprime is in two parts. This document is the user guide, which covers the main functions provided by HAPprime and examples of their use. There is also a more technical HAPprime datatypes reference manual which gives details of the new GAP datatypes defined and used internally by HAPprime, as well as outlining the algorithms used by the package.

##### 1.5-1 MakeHAPprimeDoc

`> MakeHAPprimeDoc`( [manual-name] ) | ( function )

Returns: nothing

The two manuals supplied with HAPprime - this user guide and the datatypes reference manual - are written using the GAPDoc package and are available in PDF, HTML and text format. It should not be necessary to rebuild these files, but should you wish to do so then this can be done using the function `MakeHAPprimeDoc`.

The optional argument manual-name is a string specifying which manuals to build. It may be one of the following

- `"all"` builds both manuals. This is the default

- `"userguide"` builds just the user guide

- `"datatypes"` builds just the datatypes reference manual

- `"internal"` builds both manuals, including the otherwise undocumented internal functions

- `"testexamples"` builds neither manual, but tests all of the examples using `TestManualExamples` (GAPDoc: TestManualExamples)

As well as building the manuals, this function at the same time builds GAP test files Reference: Test Files which means that all of the testable examples in the manuals are added to the HAPprime test routines described in Section 1.4.

#### 1.6 Displaying progress and calculation information

By default, the functions in HAPprime display no output (except for returning the result). The `InfoHAPprime` info class can be used to enable the printing of progress and calculation information during processing. Since some computations with HAPprime can take several hours, setting this to a higher level can be particularly useful for monitoring the progress of computations.

##### 1.6-1 InfoHAPprime

`> InfoHAPprime` | ( info class )

The `InfoHAPprime` info class is used throughout the HAPprime package. Use `SetInfoLevel(InfoHAPprime,` level`)` to change the amount of information displayed about the progress of the computation (see `SetInfoLevel` (Reference: SetInfoLevel) in the GAP reference manual). The different distinct levels are:

- `0` print nothing (this is the default)

- `1` print some information, mainly progress information during computations that may take some time

- `2` print more detailed information, incluing details of internal calculations

Top of Book Previous Chapter Next Chapter
Goto Chapter: Top 1 2 3 Ind

generated by GAPDoc2HTML