Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 5e1854624d3bc613bdd0dd13d1ef9ac7 > files > 2641

gap-system-4.4.12-5mdv2010.0.i586.rpm

<html><head><title>[Polenta] 2 Methods for matrix groups</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 Methods for matrix groups</h1><p>
<P>
<H3>Sections</H3>
<oL>
<li> <A HREF="CHAP002.htm#SECT001">Polycyclic presentations of matrix groups</a>
<li> <A HREF="CHAP002.htm#SECT002">Module series</a>
<li> <A HREF="CHAP002.htm#SECT003">Subgroups</a>
<li> <A HREF="CHAP002.htm#SECT004">Examples</a>
</ol><p>
<p>
<p>
<h2><a name="SECT001">2.1 Polycyclic presentations of matrix groups</a></h2>
<p><p>
Groups defined by polycyclic presentations are called PcpGroups in
<font face="Gill Sans,Helvetica,Arial">GAP</font>.
We refer to the Polycyclic manual <a href="biblio.htm#Polycyclic"><cite>Polycyclic</cite></a> for further
background.
<p>
Suppose that a collection <var>X</var> of
matrices of <var>GL(d,R)</var> is given, where the ring <var>R</var> 
is either <var><font face="helvetica,arial">Q</font>,<font face="helvetica,arial">Z</font></var> or a finite field.  Let <var>G= &lt; X &gt;</var>. 
If the group <var>G</var> is polycyclic, then the
following functions determine a PcpGroup isomorphic to <var>G</var>.
<p>
<a name = "SSEC001.1"></a>
<li><code>PcpGroupByMatGroup( </code><var>G</var><code> )</code>
<p>
<var>G</var> is  a subgroup of <var>GL(d,R)</var> where <var>R=<font face="helvetica,arial">Q</font>,<font face="helvetica,arial">Z</font></var> or <var><font face="helvetica,arial">F</font><sub>q</sub></var>.
If <var>G</var> is polycyclic, then 
this function determines a PcpGroup isomorphic to <var>G</var>. 
If <var>G</var> is not polycyclic, then 
this function returns 'fail'. 
<p>
<a name = "SSEC001.2"></a>
<li><code>IsomorphismPcpGroup( </code><var>G</var><code> )</code>
<p>
<var>G</var> is  a subgroup of <var>GL(d,R)</var> where <var>R=<font face="helvetica,arial">Q</font>,<font face="helvetica,arial">Z</font></var> or <var><font face="helvetica,arial">F</font><sub>q</sub></var>.
If <var>G</var> is polycyclic, then 
this function determines  an isomorphism
onto a PcpGroup. 
If <var>G</var> is not polycyclic, then
this function returns 'fail'.
<p>
Note that the method <code>IsomorphismPcpGroup</code>, 
installed in this package, cannot be
applied directly to a group given by the function <code>AlmostCrystallographicGroup</code>.
Please use  <code>POL_AlmostCrystallographicGroup</code> (with the same
parameters as <code>AlmostCrystallographicGroup</code>) instead. 
<p>
<a name = "SSEC001.3"></a>
<li><code>Image( </code><var>map</var><code> )</code>
<a name = "SSEC001.3"></a>
<li><code>ImageElm( </code><var>map</var><code>, </code><var>elm</var><code> )</code>
<a name = "SSEC001.3"></a>
<li><code>ImagesSet( </code><var>map</var><code>, </code><var>elms</var><code> )</code>
<a name = "SSEC001.3"></a>
<li><code>PreImage( </code><var>map</var><code>, </code><var>pcpelm</var><code> )</code>
<p>
Here <var>map</var> is an isomorphism from a polycyclic matrix group <var>G</var>
onto a PcpGroup <var>H</var> calculated
by <code>IsomorphismPcpGroup(</code><var>G</var><code>)</code>.
These functions can be used to compute with such an isomorphism. 
If the input <var>elm</var>  is an element of <var>G</var>, then the function <code>ImageElm</code>
 can be used to compute the image of <var>elm</var> under <var>map</var>. 
If <var>elm</var> is not contained in <var>G</var>
then the function <code>ImageElm</code> returns 'fail'. 
The input <var>pcpelm</var> is an element
of <var>H</var>. 
<p>
<a name = "SSEC001.4"></a>
<li><code>IsSolvableGroup( </code><var>G</var><code> )</code>
<p>
<var>G</var> is  a subgroup of <var>GL(d,R)</var> where <var>R=<font face="helvetica,arial">Q</font>,<font face="helvetica,arial">Z</font></var> or <var><font face="helvetica,arial">F</font><sub>q</sub></var>.
This function tests if <var>G</var> is
solvable and returns 'true' or 'false'. 
<p>
<a name = "SSEC001.5"></a>
<li><code>IsTriangularizableMatGroup( </code><var>G</var><code> )</code>
<p>
<var>G</var> is  a subgroup of <var>GL(d,<font face="helvetica,arial">Q</font>)</var>.
 This function tests if <var>G</var> is triangularizable 
and returns 'true' or 'false'. 
<p>
<a name = "SSEC001.6"></a>
<li><code>IsPolycyclicMatGroup( </code><var>G</var><code> )</code>
<p>
<var>G</var> is  a subgroup of <var>GL(d,R)</var> where <var>R=<font face="helvetica,arial">Q</font>,<font face="helvetica,arial">Z</font></var> or <var><font face="helvetica,arial">F</font><sub>q</sub></var>.
This function tests if <var>G</var> is
polycyclic and returns 'true' or 'false'.
<p>
<p>
<h2><a name="SECT002">2.2 Module series</a></h2>
<p><p>
Let <var>G</var> be a finitely generated solvable subgroup of <var>GL(d,<font face="helvetica,arial">Q</font>)</var>. The vector
space <var><font face="helvetica,arial">Q</font><sup>d</sup></var> is a module for the algebra <var><font face="helvetica,arial">Q</font>[G]</var>. The following
functions provide the possibility to compute certain module series of
<var><font face="helvetica,arial">Q</font><sup>d</sup></var>. Recall that the radical <var>Rad<sub>G</sub>(<font face="helvetica,arial">Q</font><sup>d</sup>)</var> is defined to be the
intersection of maximal <var><font face="helvetica,arial">Q</font>[G]</var>-submodules of <var><font face="helvetica,arial">Q</font><sup>d</sup></var>. Also recall that the
radical series 
<p><var>
0=R<sub>n</sub> &lt; R<sub>n-1</sub> &lt; ...&lt; R<sub>1</sub> &lt; R<sub>0</sub>=<font face="helvetica,arial">Q</font><sup>d</sup> 
<p></var>
is defined by <var>R<sub>i+1</sub>:= Rad<sub>G</sub>(R<sub>i</sub>)</var>. 
<p>
<a name = "SSEC002.1"></a>
<li><code>RadicalSeriesSolvableMatGroup( </code><var>G</var><code> )</code>
<p>
This function returns a 
radical series for the <var><font face="helvetica,arial">Q</font>[G]</var>-module <var><font face="helvetica,arial">Q</font><sup>d</sup></var>, where <var>G</var> is a
solvable subgroup of <var>GL(d,<font face="helvetica,arial">Q</font>)</var>.
<p>
A radical series of <var><font face="helvetica,arial">Q</font><sup>d</sup></var> can be refined to a homogeneous series.
<p>
<a name = "SSEC002.2"></a>
<li><code>HomogeneousSeriesAbelianMatGroup( </code><var>G</var><code> )</code>
<p>
A module is said to be homogeneous if it is the direct sum of pairwise
irreducible isomorphic submodules. A homogeneous series of a module 
is a submodule series such that the factors are homogeneous.
This function returns a 
homogeneous series for the <var><font face="helvetica,arial">Q</font>[G]</var>-module <var><font face="helvetica,arial">Q</font><sup>d</sup></var>, where <var>G</var> is an
abelian subgroup of <var>GL(d,<font face="helvetica,arial">Q</font>)</var>.  
<p>
<a name = "SSEC002.3"></a>
<li><code>HomogeneousSeriesTriangularizableMatGroup( </code><var>G</var><code> )</code>
<p>
A module is said to be homogeneous if it is the direct sum of pairwise
irreducible isomorphic submodules. A homogeneous series of a module 
is a submodule series such that the factors are homogeneous.
This function returns a 
homogeneous series for the <var><font face="helvetica,arial">Q</font>[G]</var>-module <var><font face="helvetica,arial">Q</font><sup>d</sup></var>, where <var>G</var> is a
triangularizable subgroup of <var>GL(d,<font face="helvetica,arial">Q</font>)</var>.  
<p>
A homogeneous series can be refined to a composition series.
<p>
<a name = "SSEC002.4"></a>
<li><code>CompositionSeriesAbelianMatGroup( </code><var>G</var><code> )</code>
<p>
A composition series of a module is a submodule series such that 
the factors are irreducible. This function returns a 
composition series for the <var><font face="helvetica,arial">Q</font>[G]</var>-module <var><font face="helvetica,arial">Q</font><sup>d</sup></var>, where <var>G</var> is an
abelian subgroup of <var>GL(d,<font face="helvetica,arial">Q</font>)</var>.
<p>
<a name = "SSEC002.5"></a>
<li><code>CompositionSeriesTriangularizableMatGroup( </code><var>G</var><code> )</code>
<p>
A composition series of a module is a submodule series such that 
the factors are irreducible. This function returns a 
composition series for the <var><font face="helvetica,arial">Q</font>[G]</var>-module <var><font face="helvetica,arial">Q</font><sup>d</sup></var>, where <var>G</var> is a
triangularizable subgroup of <var>GL(d,<font face="helvetica,arial">Q</font>)</var>.
<p>
<p>
<h2><a name="SECT003">2.3 Subgroups</a></h2>
<p><p>
<a name = "SSEC003.1"></a>
<li><code>SubgroupsUnipotentByAbelianByFinite( </code><var>G</var><code> )</code>
<p>
<var>G</var> is  a subgroup of <var>GL(d,R)</var> where <var>R=<font face="helvetica,arial">Q</font></var> or <var><font face="helvetica,arial">Z</font></var>.
If <var>G</var> is polycyclic, then 
this function returns a record containing two normal subgroups 
<var>T</var> and <var>U</var> of <var>G</var>.
The group <var>T</var> is unipotent-by-abelian 
(and thus triangularizable) and 
of finite index in <var>G</var>. 
The group <var>U</var> is unipotent and is such that <var>T/U</var> is abelian.  
If <var>G</var> is not polycyclic, 
then the algorithm returns 'fail'. 
<p>
<p>
<h2><a name="SECT004">2.4 Examples</a></h2>
<p><p>
<a name = "SSEC004.1"></a>
<li><code>PolExamples( </code><var>l</var><code> )</code>
<p>
Returns some examples for polycyclic rational matrix groups, where <var>l</var> 
is an integer
between 1 and 24. 
These can be used to test the functions in this package. 
Some of the
properties of the examples are summarised in the following table.
<p>
<pre>
PolExamples      number generators      subgroup of      Hirsch length
          1                      3           GL(4,Z)                 6 
          2                      2           GL(5,Z)                 6 
          3                      2           GL(4,Q)                 4 
          4                      2           GL(5,Q)                 6 
          5                      9          GL(16,Z)                 3 
          6                      6           GL(4,Z)                 3
          7                      6           GL(4,Z)                 3
          8                      7           GL(4,Z)                 3 
          9                      5           GL(4,Q)                 3
         10                      4           GL(4,Q)                 3 
         11                      5           GL(4,Q)                 3
         12                      5           GL(4,Q)                 3 
         13                      5           GL(5,Q)                 4
         14                      6           GL(5,Q)                 4 
         15                      6           GL(5,Q)                 4 
         16                      5           GL(5,Q)                 4
         17                      5           GL(5,Q)                 4 
         18                      5           GL(5,Q)                 4
         19                      5           GL(5,Q)                 4 
         20                      7          GL(16,Z)                 3 
         21                      5          GL(16,Q)                 3 
         22                      4          GL(16,Q)                 3
         23                      5          GL(16,Q)                 3 
         24                      5          GL(16,Q)                 3 

</pre>
<p>
<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>Polenta manual<br>June 2007
</address></body></html>