Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 91213ddcfbe7f54821d42c2d9e091326 > files > 671

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

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>GAP (Circle) - Chapter 4: A sample computation with Circle</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta name="generator" content="GAPDoc2HTML" />
<link rel="stylesheet" type="text/css" href="manual.css" />
</head>
<body>


<div class="chlinktop"><span class="chlink1">Goto Chapter: </span><a href="chap0.html">Top</a>  <a href="chap1.html">1</a>  <a href="chap2.html">2</a>  <a href="chap3.html">3</a>  <a href="chap4.html">4</a>  <a href="chapBib.html">Bib</a>  <a href="chapInd.html">Ind</a>  </div>

<div class="chlinkprevnexttop">&nbsp;<a href="chap0.html">Top of Book</a>&nbsp;  &nbsp;<a href="chap3.html">Previous Chapter</a>&nbsp;  &nbsp;<a href="chapBib.html">Next Chapter</a>&nbsp;  </div>

<p><a id="X803553D8849F6D7A" name="X803553D8849F6D7A"></a></p>
<div class="ChapSects"><a href="chap4.html#X803553D8849F6D7A">4 <span class="Heading">A sample computation with <strong class="pkg">Circle</strong></span></a>
</div>

<h3>4 <span class="Heading">A sample computation with <strong class="pkg">Circle</strong></span></h3>

<p>Here we give an example to give the reader an idea what <strong class="pkg">Circle</strong> is able to compute.</p>

<p>It was proved in <a href="chapBib.html#biBKazarin-Soules-2004">[KS04]</a> that if R is a finite nilpotent two-generated algebra over a field of characteristic p&gt;3 whose adjoint group has at most three generators, then the dimension of R is not greater than 9. Also, an example of the 6-dimensional such algebra with the 3-generated adjoint group was given there. We will construct the algebra from this example and investigate it using <strong class="pkg">Circle</strong>. First we create two matrices that determine its generators:</p>


<table class="example">
<tr><td><pre>                                                                                          
                                                                                          
gap&gt; x:=[ [ 0, 1, 0, 0, 0, 0, 0 ],
&gt;         [ 0, 0, 0, 1, 0, 0, 0 ],
&gt;         [ 0, 0, 0, 0, 1, 0, 0 ],
&gt;         [ 0, 0, 0, 0, 0, 0, 1 ],
&gt;         [ 0, 0, 0, 0, 0, 1, 0 ],
&gt;         [ 0, 0, 0, 0, 0, 0, 0 ],
&gt;         [ 0, 0, 0, 0, 0, 0, 0 ] ];;
gap&gt; y:=[ [ 0, 0, 1, 0, 0, 0, 0 ],
&gt;         [ 0, 0, 0, 0,-1, 0, 0 ],
&gt;         [ 0, 0, 0, 1, 0, 1, 0 ],
&gt;         [ 0, 0, 0, 0, 0, 1, 0 ],
&gt;         [ 0, 0, 0, 0, 0, 0,-1 ],
&gt;         [ 0, 0, 0, 0, 0, 0, 0 ],
&gt;         [ 0, 0, 0, 0, 0, 0, 0 ] ];;
                                                                                                
</pre></td></tr></table>

<p>Now we construct this algebra in characteristic five and check its basic properties:</p>


<table class="example">
<tr><td><pre>                                                                                          
                                                                                          
gap&gt; R := Algebra( GF(5), One(GF(5))*[x,y] );
&lt;algebra over GF(5), with 2 generators&gt;
gap&gt; Dimension( R );
6
gap&gt; Size( R );
15625
gap&gt; RadicalOfAlgebra( R ) = R;
true
                                                                                                
</pre></td></tr></table>

<p>Then we compute the adjoint group of <code class="code">R</code>. During the computation a warning will be displayed. It is caused by the method for <code class="code">IsGeneratorsOfMagmaWithInverses</code> defined in the file <code class="file">gap4r4/lib/grp.gi</code> from the <strong class="pkg">GAP</strong> library, and may be safely ignored.</p>


<table class="example">
<tr><td><pre>                                                                                          
 
gap&gt; G := AdjointGroup( R );
#I  default `IsGeneratorsOfMagmaWithInverses' method returns `true' for 
[ CircleObject( [ [ 0*Z(5), Z(5), Z(5), Z(5)^3, Z(5), 0*Z(5), Z(5)^2 ],
      [ 0*Z(5), 0*Z(5), 0*Z(5), Z(5), Z(5)^3, Z(5)^3, Z(5)^3 ],
      [ 0*Z(5), 0*Z(5), 0*Z(5), Z(5), Z(5), 0*Z(5), Z(5) ],
      [ 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), Z(5), Z(5) ],
      [ 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), Z(5), Z(5)^3 ],
      [ 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5) ],
      [ 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5), 0*Z(5) ] ] ) ]
&lt;group of size 15625 with 3 generators&gt;
                                                                                                
</pre></td></tr></table>

<p>Now we can find the generating set of minimal possible order for the group <code class="code">G</code>, and check that <code class="code">G</code> it is 3-generated. To do this, first we need to convert it to the isomorphic PcGroup:</p>


<table class="example">
<tr><td><pre>                                                                                          
 
gap&gt; f := IsomorphismPcGroup( G );;
gap&gt; H := Image( f );
Group([ f1, f2, f3, f4, f5, f6 ])
gap&gt; gens := MinimalGeneratingSet( H );
[ f1, f2, f5 ]
gap&gt; gens:=List( gens, x -&gt; UnderlyingRingElement(PreImage(f,x)));;
gap&gt; Perform(gens,Display);                                        
 . 3 3 4 4 . 1
 . . . 3 2 1 4
 . . . 3 3 2 4
 . . . . . 3 3
 . . . . . 3 2
 . . . . . . .
 . . . . . . .
 . 3 1 1 . . .
 . . . 3 4 . 1
 . . . 1 3 2 .
 . . . . . 1 3
 . . . . . 3 4
 . . . . . . .
 . . . . . . .
 . 2 2 3 2 . 4
 . . . 2 3 3 3
 . . . 2 2 . 2
 . . . . . 2 2
 . . . . . 2 3
 . . . . . . .
 . . . . . . .
                                                                                                
</pre></td></tr></table>

<p>It appears that the adjoint group of the algebra from example will be 3-generated in characteristic three as well:</p>


<table class="example">
<tr><td><pre>                                                                                          

gap&gt; R := Algebra( GF(3), One(GF(3))*[x,y] );
&lt;algebra over GF(3), with 2 generators&gt;
gap&gt; G := AdjointGroup( R );
#I  default `IsGeneratorsOfMagmaWithInverses' method returns `true' for 
[ CircleObject( [ [ 0*Z(3), 0*Z(3), Z(3)^0, Z(3)^0, Z(3), Z(3), 0*Z(3) ],
      [ 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), Z(3), Z(3)^0, Z(3)^0 ],
      [ 0*Z(3), 0*Z(3), 0*Z(3), Z(3)^0, 0*Z(3), Z(3), Z(3) ],
      [ 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), Z(3)^0, 0*Z(3) ],
      [ 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), Z(3) ],
      [ 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3) ],
      [ 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3), 0*Z(3) ] ] ) ]
&lt;group of size 729 with 3 generators&gt;
gap&gt; H := Image( IsomorphismPcGroup( G ) );
Group([ f1, f2, f3, f4, f5, f6 ])
gap&gt; MinimalGeneratingSet( H );
[ f1, f2, f4 ]
                                                                                                
</pre></td></tr></table>

<p>But this is not the case in characteristic two, where the adjoint group is 4-generated:</p>


<table class="example">
<tr><td><pre>                                                                                          

gap&gt; R := Algebra( GF(2), One(GF(2))*[x,y] );
&lt;algebra over GF(2), with 2 generators&gt;
gap&gt; G := AdjointGroup( R );                   
#I  default `IsGeneratorsOfMagmaWithInverses' method returns `true' for 
[ CircleObject( [ [ 0*Z(2), Z(2)^0, Z(2)^0, 0*Z(2), Z(2)^0, 0*Z(2), 0*Z(2) ],
      [ 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0, Z(2)^0, 0*Z(2) ],
      [ 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0 ],
      [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0 ],
      [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), Z(2)^0, Z(2)^0 ],
      [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ],
      [ 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2), 0*Z(2) ] ] ) ]
&lt;group of size 64 with 4 generators&gt;
gap&gt; H := Image( IsomorphismPcGroup( G ) );
Group([ f1, f2, f3, f4, f5, f6 ])
gap&gt; MinimalGeneratingSet( H );
[ f1, f2, f4, f5 ]
                                                                                                
</pre></td></tr></table>


<div class="chlinkprevnextbot">&nbsp;<a href="chap0.html">Top of Book</a>&nbsp;  &nbsp;<a href="chap3.html">Previous Chapter</a>&nbsp;  &nbsp;<a href="chapBib.html">Next Chapter</a>&nbsp;  </div>


<div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a href="chap0.html">Top</a>  <a href="chap1.html">1</a>  <a href="chap2.html">2</a>  <a href="chap3.html">3</a>  <a href="chap4.html">4</a>  <a href="chapBib.html">Bib</a>  <a href="chapInd.html">Ind</a>  </div>

<hr />
<p class="foot">generated by <a href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc">GAPDoc2HTML</a></p>
</body>
</html>