4.1 Domain Records

Domains are represented by records (see Records), which are called domain records in the following. Which components need to be present, which may, and what those components hold, differs from category to category, and, to a smaller extent, from domain to domain. It is generally possible though to distinguish four types of components.

Each domain record has the component isDomain, which has the value true. Furthermore, most domains also have a component that specifies which category this domain belongs to. For example, each group has the component isGroup, holding the value true. Those components are called the category components of the domain record. A domain that only has the component isDomain is a member only of the category Domains and only the functions described in this chapter are applicable to such a domain.

Every domain record also contains enough information to identify uniquely the domain in the so called identification components. For example, for a group the domain record, called group record in this case, has a component called generators containing a system of generators (and also a component identity holding the identity element of the group, needed if the generator list is empty, as is the case for the trivial group).

Next the domain record holds all the knowledge GAP has about the domain, for example the size of the domain, in the so called knowledge components. Of course, the knowledge about a certain domain will usually increase as time goes by. For example, a group record may initially hold only the knowledge that the group is finite, but may end holding all kinds of knowledge, for example the derived series, the Sylow subgroups, etc.

Finally each domain record has a component, which is called its operations record (because it is the component with the name operations and it holds a record), that tells functions like Size how to compute this information for this domain. The exact mechanism is described later (see Dispatchers).

Up Top Next
Index

GAP 3.4.4
April 1997