<html><head><title>[FORMAT] 2 Formations in GAP</title></head>
<body text="#000000" bgcolor="#ffffff">
[<a href = "chapters.htm">Up</a>] [<a href ="CHAP001.htm">Previous</a>] [<a href ="CHAP003.htm">Next</a>] [<a href = "theindex.htm">Index</a>]
<h1>2 Formations in GAP</h1><p>
<p>
A <strong>formation</strong> is a class <b>F</b> of groups closed under taking epimorphic
images and subdirect products. Closure under subdirect products is equivalent to the property that each finite group <i>G</i> has a unique
smallest normal subgroup <i>G</i><sup><b>F</b></sup> with factor group <i>G</i> / <i>G</i><sup><b>F</b></sup> in <b>F</b>.
The subgroup <i>G</i><sup><b>F</b></sup> is called the <strong><b>F</b>-residual</strong> subgroup of <i>G</i>. Thus,
for example, the derived subgroup of <i>G</i> is its residual for the formation
of abelian groups, and the residual for the formation of nilpotent groups
is the last term of the descending central series.
<p>
In <font face="Gill Sans,Helvetica,Arial">FORMAT</font> a formation is described by a function that computes <i>G</i><sup><b>F</b></sup>
for each (finite solvable) group <i>G</i>, and from that perspective <b>F</b>
consists of the groups <i>G</i> for which <i>G</i><sup><b>F</b></sup> is trivial. To define a
formation that is not one of the standard examples provided (see below),
one must give <font face="Gill Sans,Helvetica,Arial">GAP</font> an identifier for the formation and also some method
for computing residual subgroups.
<p>
Some of the most interesting formations can also be described by ``local definition.'' For each prime <i>p</i>
let <b>F</b>(<i>p</i>) be a formation or the empty class, and let <b>F</b> be the class
of all finite solvable groups <i>G</i> such that for each prime <i>p</i> and each <i>p</i>-chief factor <i>H</i>/<i>K</i> of <i>G</i> the group of automorphisms that <i>G</i>
induces on <i>H</i>/<i>K</i> by conjugation belongs to <b>F</b>(<i>p</i>). Then <b>F</b> is a
formation, with <strong>local definition</strong> the set of <b>F</b>(<i>p</i>)s.
The set of primes <i>p</i> for which <b>F</b>(<i>p</i>) is not empty is called the
<strong>support</strong> of <b>F</b>. A <i>p</i>-chief factor is <strong><b>F</b>-central</strong> in case <i>G</i>
induces an <b>F</b>(<i>p</i>)-group on it or, equivalently, in case <i>G</i><sup><b>F</b>(<i>p</i>)</sup>
centralizes it. It is possible to define a formation in <font face="Gill Sans,Helvetica,Arial">FORMAT</font> by
giving such a local definition. Indeed one can define a kind of
generalized formation by giving what is called a normal subgroup function
or <strong>screen</strong>, which specifies arbitrary normal subgroups, not necessarily
of form <i>G</i><sup><b>F</b>(<i>p</i>)</sup>, to test ``centrality.''Section <a href="CHAP007.htm">Other Applications</a> describes one such usage of general screens. Most applications of formation
theory to solvable groups require local definition, as do the <font face="Gill Sans,Helvetica,Arial">GAP</font>
functions for computing <b>F</b>-normalizers and <b>F</b>-covering subgroups.
<p>
<a name = ""></a>
<li><code>Formation( </code><var>rec</var><code> ) O</code>
<a name = ""></a>
<li><code>Formation( </code><var>str</var><code> [, </code><var>primes</var><code> ] ) O</code>
<p>
The definition of a formation in <font face="Gill Sans,Helvetica,Arial">FORMAT</font> begins with the creation of a
record <code>rec</code>, which must contain a <code>name</code> component and at least one of
the components <code>fResidual</code> or <code>fScreen</code>. The component <code>name</code> is a string,
<code>fResidual</code> is a function that computes a normal subgroup of each group,
and <code>fScreen</code> is a function of two variables, a group and a prime, that
returns a normal subgroup of the input group.
<p>
In the second form the function <code>Formation</code> can be used to obtain a
formation from the supplied library of formations. The formations
provided are:
<p>
<p>
<dl compact>
<dt><code>Formation( "Nilpotent" )</code> <dd> The formation of nilpotent groups,
<p>
<dt><code>Formation( "Supersolvable" )</code> <dd> The formation of supersolvable groups,
<p>
<dt><code>Formation( "Abelian" )</code> <dd> The formation of abelian groups,
<p>
<dt><code>Formation( "ElementaryAbelianProduct" )</code> <dd> The formation of direct products of elementary abelian groups,
<p>
<dt><code>Formation( "PNilpotent", prime )</code> <dd> The formation of <i>p</i>-nilpotent groups
for <i>p</i> = <code>prime</code>,
<p>
<dt><code>Formation( "PiGroups", primes )</code> <dd> The formation of π-groups for
π = the set <code>primes</code>,
<p>
<dt><code>Formation( "PLengthOne", prime )</code> <dd> The formation of groups of <i>p</i>-length 1
for <i>p</i> = <code>prime</code>.
</dl>
<p>
<a name = ""></a>
<li><code>IsFormation( </code><var>F</var><code> ) C</code>
<a name = ""></a>
<li><code>NameOfFormation( </code><var>F</var><code> ) A</code>
<a name = ""></a>
<li><code>ResidualFunctionOfFormation( </code><var>F</var><code> ) A</code>
<p>
<code>IsFormation</code> returns <code>true</code> if and only if <var>F</var> is a <font face="Gill Sans,Helvetica,Arial">GAP</font> formation.
<code>NameOfFormation</code> returns the name of a formation and <code>ResidualFunctionOfFormation</code>
returns the residual function of a formation.
<p>
<a name = ""></a>
<li><code>ScreenOfFormation( </code><var>F</var><code> ) A</code>
<p>
If <var>F</var> is locally defined by some screen of <b>F</b>(<i>p</i>)s,
then <code>HasScreenOfFormation( </code><var>F</var><code> )</code> is <code>true</code>, <code>ScreenOfFormation( </code><var>F</var><code> )</code> is a function of two variables, <var>group</var> and <var>prime</var>, and
<code>ScreenOfFormation( </code><var>F</var><code> )( </code><var>G</var><code>, </code><var>p</var><code> )</code> returns <i>G</i><sup><i>F</i>(<i>p</i>)</sup> if <var>p</var> is
in the support of <var>F</var> and gives the empty list otherwise.
<p>
<a name = ""></a>
<li><code>SupportOfFormation( </code><var>F</var><code> ) A</code>
<p>
The attribute <code>SupportOfFormation</code> is optional. It may be bound by
<code>SetSupportOfFormation</code>. If <code>SupportOfFormation</code> is not bound, then the support
of the formation is taken to be the set of all primes. In case the support of
<var>F</var> is a finite set of primes, then <code>SupportOfFormation( </code><var>F</var><code> )</code> is a list of
those primes, and <code>HasSupportOfFormation( </code><var>F</var><code> )</code> returns true. In case the
support of <var>F</var> is an infinite set but not the set of all primes, then the user
will need to make sure, perhaps with <code>ChangedSupport</code> or
<code>SetSupportOfFormation</code>, that all primes dividing the orders of relevant groups
are considered.
<p>
<a name = ""></a>
<li><code>ChangedSupport( </code><var>F</var><code>, </code><var>primes</var><code> ) O</code>
<p>
This function may be used to change the support of a formation. Let <var>F</var>
be a formation and <var>primes</var> a list of primes. Then <code>ChangedSupport</code>
returns a formation with a new name whose support is the intersection
of the support of <var>F</var> and <var>primes</var>.
<p>
<a name = ""></a>
<li><code>IsIntegrated( </code><var>F</var><code> ) P</code>
<p>
The local definition is called <strong>integrated</strong> in case <b>F</b>(<i>p</i>) is contained in
<b>F</b> for each prime <i>p</i>. The optional property <code>IsIntegrated</code> makes sense only if <code>HasScreenOfFormation( </code><var>F</var><code> )</code> is <code>true</code>. Notice that
some of the functions described below will require that all of the attributes <code>HasScreenOfFormation(
</code><var>F</var><code> )</code>, <code>HasIsIntegrated( </code><var>F</var><code> )</code> and <code>IsIntegrated( </code><var>F</var><code> )</code> are <code>true</code>. If
unbound, this property can be bound with <code>SetIsIntegrated</code>, but it is up to the
user to determine whether such a setting is appropriate. Section <a href="CHAP006.htm">Formation Examples</a> contains an example of such usage.
<p>
<a name = ""></a>
<li><code>Integrated( </code><var>F</var><code> ) O</code>
<p>
A local definition of a formation may always be replaced by an
integrated one without changing the formation itself, though the meaning
of <b>F</b>-central may change. Let <var>F</var> be a locally defined <font face="Gill Sans,Helvetica,Arial">GAP</font> formation with
name <code></code><var>name</var><code></code>. If <var>F</var> is already integrated, then <code>Integrated( </code><var>F</var><code> )</code>
yields <var>F</var> itself. Otherwise, it yields a formation <code></code><var>name</var><code>Int</code> that is
abstractly the same as <var>F</var> but has integrated local definition.
<p>
<a name = ""></a>
<li><code></code><var>F1</var><code> = </code><var>F2</var><code></code>
<a name = ""></a>
<li><code></code><var>F1</var><code> < </code><var>F2</var><code></code>
<p>
Two <font face="Gill Sans,Helvetica,Arial">GAP</font> formations <var>F1</var> and <var>F2</var> are considered to be equal in case they
have the same name. The natural ordering on strings gives an ordering
on formations. This ordering is useful for organizing key-dependent
lists but has no mathematical significance.
<p>
<a name = ""></a>
<li><code>Intersection( </code><var>F1</var><code>, </code><var>F2</var><code> ) O</code>
<p>
The intersection of two <font face="Gill Sans,Helvetica,Arial">GAP</font> formations <var>F1</var> and
<var>F2</var> is again a formation. <code>Intersection</code> produces the new formation
<code>(</code><var>name1</var><code>And</code><var>name2</var><code>)</code>, which has attribute <code>ResidualFunctionOfFormation</code> if
either <var>F1</var> or <var>F2</var> does, has <code>FScreen</code> whenever both formations have <code>FScreen</code>, and is
integrated if both are.
<p>
<a name = ""></a>
<li><code>ProductOfFormations( </code><var>F1</var><code>, </code><var>F2</var><code> ) O</code>
<p>
The product of two formations <var>F1</var> and <var>F2</var> is the formation <var>F</var>
such that a finite group <i>G</i> is a member of <var>F</var> if and only if
<i>G</i><sup><i>F</i>2</sup> is in <var>F1</var>. (Notice that the product of <var>F1</var> by <var>F2</var> is
not necessarily equal to the product of <var>F2</var> by <var>F1</var>, and unless <var>F1</var> is normal subgroup-closed the product need not contain all extensions of a group in <var>F1</var> by a group in <var>F2</var>.) The function
<code>ProductOfFormations( </code><var>F1</var><code>, </code><var>F2</var><code> )</code> yields the product <code>(</code><var>name1</var><code>By</code><var>name2</var><code>)</code> of the two
formations. The product has the attribute <code>ResidualFunctionOfFormation</code> and has
the attribute <code>ScreenOfFormation</code> whenever both <var>F1</var> and <var>F2</var> have this entry
or whenever both <code>HasScreenOfFormation( </code><var>F2</var><code> )</code> and <code>not HasSupportOfFormation(
</code><var>F1</var><code> )</code> are <code>true</code>. In these cases the property <code>IsIntegrated</code> will be inherited
if possible.
<p>
[<a href = "chapters.htm">Up</a>] [<a href ="CHAP001.htm">Previous</a>] [<a href ="CHAP003.htm">Next</a>] [<a href = "theindex.htm">Index</a>]
<P>
<address>FORMAT manual<br>January 2024
</address></body></html>
¤ Dauer der Verarbeitung: 0.13 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.