|
|
|
|
Quelle chapB.html
Sprache: HTML
|
|
| products/Sources/formale Sprachen/GAP/pkg/fining/doc/chapB.html |
 |
<?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 (FinInG) - Appendix B: The finite classical groups in FinInG </ 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" />
< script src= "manual.js" type= "text/javascript"></ script>
< script type= "text/javascript">overwriteStyle();</ script>
</ head>
< body class= "chapB" onload= "jscontent()">
< 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="chap5.html">5</a> <a href="chap6.html">6</a> <a href="chap7.html">7</a> <a href="chap8.html">8</a> <a href="chap9.html">9</a> <a href="chap10.html">10</a> <a href="chap11.html">11</a> <a href="chap12.html">12</a> <a href="chap13.html">13</a> <a href="chap14.html">14</a> <a href="chapA.html">A</a> <a href="chapB.html">B</a> <a href="chapC.html">C</a> <a href="chapBib.html">Bib</a> <a href="chapInd.html">Ind</a> </div>
<div class="chlinkprevnexttop"> <a href="chap0.html">[Top of Book]</a> <a href="chap0.html#contents">[Contents]</a> <a href="chapA.html">[Previous Chapter]</a> <a href="chapC.html">[Next Chapter]</a> </div>
<p id="mathjaxlink" class="pcenter"><a href="chapB_mj.html">[MathJax on]</a></p>
<p><a id="X866C644987E43DF8" name="X866C644987E43DF8"></a></p>
<div class="ChapSects"><a href="chapB.html#X866C644987E43DF8">B <span class="Heading">The finite classical groups in <strong class="pkg">FinInG</strong> </span></a>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chapB.html#X7F297E2B7D98DC76">B.1 <span class="Heading">Standard forms used to produce the finite classical groups.</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X80010BA38266701F">B.1-1 CanonicalGramMatrix</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X83A532A17828B887">B.1-2 CanonicalQuadraticForm</a></span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chapB.html#X7D9E27E986AEB973">B.2 <span class="Heading">Direct commands to construct the projective classical groups in <strong class="pkg">FinInG</strong></span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X7DB7788C7E3DE820">B.2-1 SOdesargues</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X7C5583F87F904567">B.2-2 GOdesargues</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X7EBFB99E853F378D">B.2-3 SUdesargues</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X7F5D42EA84929ACA">B.2-4 GUdesargues</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X80DD252A82E848C9">B.2-5 Spdesargues</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X7E1CDB2B87448665">B.2-6 GeneralSymplecticGroup</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X7BDD39DC823F7E33">B.2-7 GSpdesargues</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X793B43C58481EDCF">B.2-8 GammaSp</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X7D2C49FD7D15988C">B.2-9 DeltaOminus</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X82DF70F5873432C7">B.2-10 DeltaOplus</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X8364267E800EF6E5">B.2-11 GammaOminus</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X7A9C29DB84B4A97E">B.2-12 GammaO</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X7A5C03CD7A2F5CAE">B.2-13 GammaOplus</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X854A064C7E907B61">B.2-14 GammaU</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X7A171F11786F771C">B.2-15 G2fining</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X82BE951780CFFBFB">B.2-16 3D4fining</a></span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chapB.html#X7F1343937C036C7A">B.3 <span class="Heading">Basis of the collineation groups</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss"> </span><a href="chapB.html#X814A0FEE7B677BF7">B.3-1 FindBasePointCandidates</a></span>
</div></div>
</div>
<h3>B <span class="Heading">The finite classical groups in <strong class="pkg">FinInG</strong> </span></h3>
<p><a id="X7F297E2B7D98DC76" name="X7F297E2B7D98DC76"></a></p>
<h4>B.1 <span class="Heading">Standard forms used to produce the finite classical groups.</span></h4>
<p>An overview of operations is given that produce gram matrices to construct standard forms. The notion <em>standard form</em> is explained in Section <a href="chap7.html#X850CD32686B0656B"><span class="RefLink">7.2</span></a>, in the context of canonical and standard polar spaces.</p>
<p><a id="X80010BA38266701F" name="X80010BA38266701F"></a></p>
<h5>B.1-1 CanonicalGramMatrix</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; CanonicalGramMatrix</code>( <var class="Arg">type</var>, <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: a Gram matrix usable as input to construct a sesquilinear form</p>
<p>The arguments <var class="Arg">d</var> and <var class="Arg">f</var> are the vector dimension and the finite field respectively. The argument <var class="Arg">type</var> is either "symplectic", "hermitian", "hyperbolic", "elliptic" or "parabolic".</p>
<p>If <var class="Arg">type</var> equals "symplectic", the Gram matrix is</p>
<p><!-- matrix expression begin --> <table style="color:#000"><tr> <td><table border=0 cellpadding=0 cellspacing=0px style="border-left:1px solid #000; border-right:1px solid #000; color:#000"><tr> <td style ="border-top:1px solid #000; border-bottom:1px solid #000;"> </td><td><table border=0 cellpadding=0 cellspacing=0 style="color:#000;"> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>1</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>-1</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>1</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>-1</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30><sup><big>·</big></sup>·<sub><big>·</big></sub></td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>1</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>-1</td> <td align="center" valign="center" width=30>0</td> </tr> </table></td><td style ="border-top:1px solid #000; border-bottom:1px solid #000;"> </td></tr></table></td> </tr></table></p>
<p>If <var class="Arg">type</var> equals "hermitian", the Gram matrix is the identity matrix of dimension <var class="Arg">d</var> over the field <span class="SimpleMath">f=GF(q)</span></p>
<p>If <var class="Arg">type</var> equals "hyperbolic", the Gram matrix is</p>
<p><!-- matrix expression begin --> <table style="color:#000"><tr> <td><table border=0 cellpadding=0 cellspacing=0px style="border-left:1px solid #000; border-right:1px solid #000; color:#000"><tr> <td style ="border-top:1px solid #000; border-bottom:1px solid #000;"> </td><td><table border=0 cellpadding=0 cellspacing=0 style="color:#000;"> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>a</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>a</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>a</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>a</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30><sup><big>·</big></sup>·<sub><big>·</big></sub></td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>a</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>a</td> <td align="center" valign="center" width=30>0</td> </tr> </table></td><td style ="border-top:1px solid #000; border-bottom:1px solid #000;"> </td></tr></table></td> </tr></table> with a=(p+1)/2 if p+1 = 0 mod 4, q=p<sup>h</sup> and <span class="SimpleMath">a=1</span> otherwise.</p>
<p>If <var class="Arg">type</var> equals "elliptic", the Gram matrix is</p>
<p><!-- matrix expression begin --> <table style="color:#000"><tr> <td><table border=0 cellpadding=0 cellspacing=0px style="border-left:1px solid #000; border-right:1px solid #000; color:#000"><tr> <td style ="border-top:1px solid #000; border-bottom:1px solid #000;"> </td><td><table border=0 cellpadding=0 cellspacing=0 style="color:#000;"> <tr> <td align="center" valign="center" width=30>1</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>t</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>a</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>a</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30><sup><big>·</big></sup>·<sub><big>·</big></sub></td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>a</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>a</td> <td align="center" valign="center" width=30>0</td> </tr> </table></td><td style ="border-top:1px solid #000; border-bottom:1px solid #000;"> </td></tr></table></td> </tr></table> with <span class="SimpleMath">t</span> the primitive root of <span class="SimpleMath">GF(q)</span> if q = 1 mod 4 or q = 2 mod 4 , and <span class="SimpleMath">t=1</span> otherwise; and a=(p+1)/2 if p+1 = 0 mod 4, q=p<sup>h</sup> and <span class="SimpleMath">a=1</span> otherwise.</p>
<p>If <var class="Arg">type</var> equals "parabolic", the Gram matrix is</p>
<p><!-- matrix expression begin --> <table style="color:#000"><tr> <td><table border=0 cellpadding=0 cellspacing=0px style="border-left:1px solid #000; border-right:1px solid #000; color:#000"><tr> <td style ="border-top:1px solid #000; border-bottom:1px solid #000;"> </td><td><table border=0 cellpadding=0 cellspacing=0 style="color:#000;"> <tr> <td align="center" valign="center" width=30>t</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>a</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>a</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> </tr> <tr> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30><sup><big>·</big></sup>·<sub><big>·</big></sub></td> <td align="center" valign="center" width=30>:</td> <td align="center" valign="center" width=30>:</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>a</td> </tr> <tr> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>0</td> <td align="center" valign="center" width=30>...</td> <td align="center" valign="center" width=30>a</td> <td align="center" valign="center" width=30>0</td> </tr> </table></td><td style ="border-top:1px solid #000; border-bottom:1px solid #000;"> </td></tr></table></td> </tr></table> with <span class="SimpleMath">t</span> the primitive root of <span class="SimpleMath">GF(p)</span> and a=t(p+1)/2 if q = 5 mod 8 or q = 7 mod 8 , and <span class="SimpleMath">t=a=1</span> otherwise.</p>
<p>There is no error message when asking for a hyperbolic, elliptic or parabolic type if the characteristic of the field <span class="SimpleMath">f</span> is even. In such a case, a matrix is returned, which is of course not suitable to create a bilinear form that corresponds with an orthogonal polar space. For this reason, <code class="file">CanonicalGramMatrix</code> is not a operation designed for the user.</p>
<p><a id="X83A532A17828B887" name="X83A532A17828B887"></a></p>
<h5>B.1-2 CanonicalQuadraticForm</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; CanonicalQuadraticForm</code>( <var class="Arg">type</var>, <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: a Gram matrix usable as input to construct a quadratic form</p>
<p>The arguments <var class="Arg">d</var> and <var class="Arg">f</var> are the vector dimension and the finite field respectively. The argument <var class="Arg">type</var> is either "hyperbolic", "elliptic" or "parabolic". The matrix returned can be used to construct a quadratic form.</p>
<p>If <var class="Arg">type</var> equals "hyperbolic", the Gram matrix returned will result in the quadratic form x<sub>1</sub>x<sub>2</sub>+...+ x<sub>d-1</sub>x<sub>d</sub></p>
<p>If <var class="Arg">type</var> equals "elliptic", the Gram matrix returned will result in the quadratic form x<sub>1</sub><sup>2</sup>+x<sub>1</sub>x<sub>2</sub>+νx<sub>2</sub><sup>2</sup> ...+ x<sub>d-1</sub>x<sub>d</sub>with ν=α<sup>i</sup>, with α the primitive element of the multiplicative group of <span class="SimpleMath">GF(q)</span>, which is in GAP <code class="file">Z(q)</code>, and <span class="SimpleMath">i</span> the first number in <span class="SimpleMath">[0,1,...,q-2]</span> for which x<sup>2</sup>+x+ν is irreducible over <span class="SimpleMath">GF(q)</span>.</p>
<p>If <var class="Arg">type</var> equals "parabolic", the Gram matrix returned will result in the quadratic form x<sub>1</sub><sup>2</sup>+x<sub>2</sub>x<sub>3</sub>+... + x<sub>d-1</sub>x<sub>d</sub></p>
<p>This function is intended to be used only when the characteristic of <var class="Arg">f</var> is two, but there is no error message is this is not the case. For this reason, <code class="file">CanonicalQuadraticForm</code> is not an operation designed for the user.</p>
<p><a id="X7D9E27E986AEB973" name="X7D9E27E986AEB973"></a></p>
<h4>B.2 <span class="Heading">Direct commands to construct the projective classical groups in <strong class="pkg">FinInG</strong></span></h4>
<p>As explained in Chapter <a href="chap7.html#X7F96B1327C022A28"><span class="RefLink">7</span></a>, Section <a href="chap7.html#X7988AF9978E75E37"><span class="RefLink">7.7</span></a>, we have assumed that the user asks for the projective classical groups in an indirect way, i.e. as a (subgroup) of the collineation group of a classical polar space. However, shortcuts to these groups exist. More information on the notations can be found in Section <a href="chap7.html#X7988AF9978E75E37"><span class="RefLink">7.7</span></a>.</p>
<p><a id="X7DB7788C7E3DE820" name="X7DB7788C7E3DE820"></a></p>
<h5>B.2-1 SOdesargues</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; SOdesargues</code>( <var class="Arg">e</var>, <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the special isometry group of a canonical orthogonal polar space</p>
<p>The argument <var class="Arg">e</var> determines the type of the orthogonal polar space, i.e. -1,0,1 for an elliptic, hyperbolic, parabolic orthogonal space, respectively. The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">SO</code>, a GAP command returning the appropriate matrix group. Internally, the invariant form is asked, and the base change to our canonical form is obtained using the package <strong class="pkg">form</strong></p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">SOdesargues(-1,6,GF(9));</span>
PSO(-1,6,9)
<span class="GAPprompt">gap></span> <span class="GAPinput">SOdesargues(0,7,GF(11));</span>
PSO(0,7,11)
<span class="GAPprompt">gap></span> <span class="GAPinput">SOdesargues(1,8,GF(16));</span>
PSO(1,8,16)
</pre></div>
<p><a id="X7C5583F87F904567" name="X7C5583F87F904567"></a></p>
<h5>B.2-2 GOdesargues</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; GOdesargues</code>( <var class="Arg">e</var>, <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the isometry group of a canonical orthogonal polar space</p>
<p>The argument <var class="Arg">e</var> determines the type of the orthogonal polar space, i.e. -1,0,1 for an elliptic, hyperbolic, parabolic orthogonal space, respectively. The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">GO</code>, a GAP command returning the appropriate matrix group. Internally, the invariant form is asked, and the base change to our canonical form is obtained using the package <strong class="pkg">form</strong></p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">GOdesargues(-1,6,GF(9));</span>
PGO(-1,6,9)
<span class="GAPprompt">gap></span> <span class="GAPinput">GOdesargues(0,7,GF(11));</span>
PGO(0,7,11)
<span class="GAPprompt">gap></span> <span class="GAPinput">GOdesargues(1,8,GF(16));</span>
PGO(1,8,16)
</pre></div>
<p><a id="X7EBFB99E853F378D" name="X7EBFB99E853F378D"></a></p>
<h5>B.2-3 SUdesargues</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; SUdesargues</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the special isometry group of a canonical hermitian polar space</p>
<p>The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">SU</code>, a GAP command returning the appropriate matrix group. Internally, the invariant form is asked, and the base change to our canonical form is obtained using the package <strong class="pkg">form</strong></p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">SUdesargues(4,GF(9));</span>
PSU(4,3^2)
</pre></div>
<p><a id="X7F5D42EA84929ACA" name="X7F5D42EA84929ACA"></a></p>
<h5>B.2-4 GUdesargues</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; GUdesargues</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the isometry/similarity group of a canonical hermitian polar space</p>
<p>The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">GU</code>, a GAP command returning the appropriate matrix group. Internally, the invariant form is asked, and the base change to our canonical form is obtained using the package <strong class="pkg">form</strong></p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">GUdesargues(4,GF(9));</span>
PGU(4,3^2)
</pre></div>
<p><a id="X80DD252A82E848C9" name="X80DD252A82E848C9"></a></p>
<h5>B.2-5 Spdesargues</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; Spdesargues</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the (special) isometry group of a canonical symplectic polar space</p>
<p>The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">Sp</code>, a GAP command returning the appropriate matrix group. Internally, the invariant form is asked, and the base change to our canonical form is obtained using the package <strong class="pkg">form</strong></p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">Spdesargues(6,GF(11));</span>
PSp(6,11)
</pre></div>
<p><a id="X7E1CDB2B87448665" name="X7E1CDB2B87448665"></a></p>
<h5>B.2-6 GeneralSymplecticGroup</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; GeneralSymplecticGroup</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the isometry group of a canonical symplectic form</p>
<p>The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. Internally, the invariant form is asked, and the base change to our canonical form is obtained using the package <strong class="pkg">form</strong></p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">GeneralSymplecticGroup(6,GF(7));</span>
GSp(6,7)
</pre></div>
<p><a id="X7BDD39DC823F7E33" name="X7BDD39DC823F7E33"></a></p>
<h5>B.2-7 GSpdesargues</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; GSpdesargues</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the similarity group of a canonical symplectic polar space</p>
<p>The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">Sp</code>, a GAP command returning the appropriate matrix group. Internally, the invariant form is asked, and the base change to our canonical form is obtained using the package <strong class="pkg">form</strong></p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">GSpdesargues(4,GF(9));</span>
PGSp(4,9)
</pre></div>
<p><a id="X793B43C58481EDCF" name="X793B43C58481EDCF"></a></p>
<h5>B.2-8 GammaSp</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; GammaSp</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the collineation group of a canonical symplectic polar space</p>
<p>The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">GeneralSymplecticGroup</code>, and adds the frobenius automorphism.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">GammaSp(4,GF(9));</span>
PGammaSp(4,9)
</pre></div>
<p><a id="X7D2C49FD7D15988C" name="X7D2C49FD7D15988C"></a></p>
<h5>B.2-9 DeltaOminus</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; DeltaOminus</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the similarity group of a canonical elliptic orthogonal polar space</p>
<p>The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">GOdesargues</code>, and computes the generators to be added.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">DeltaOminus(6,GF(7));</span>
PDeltaO-(6,7)
</pre></div>
<p><a id="X82DF70F5873432C7" name="X82DF70F5873432C7"></a></p>
<h5>B.2-10 DeltaOplus</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; DeltaOplus</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the similarity group of a canonical hyperbolic orthogonal polar space</p>
<p>The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">GOdesargues</code>, and computes the generators to be added.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">DeltaOplus(8,GF(7));</span>
PDeltaO+(8,7)
</pre></div>
<p><a id="X8364267E800EF6E5" name="X8364267E800EF6E5"></a></p>
<h5>B.2-11 GammaOminus</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; GammaOminus</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the collineation group of a canonical elliptic orthogonal polar space</p>
<p>The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">DeltaOminus</code>, and computes the generators to be added.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">GammaOminus(4,GF(25));</span>
PGammaO-(4,25)
</pre></div>
<p><a id="X7A9C29DB84B4A97E" name="X7A9C29DB84B4A97E"></a></p>
<h5>B.2-12 GammaO</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; GammaO</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the collineation group of a canonical parabolic orthogonal polar space</p>
<p>The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">GO</code>, a GAP command returning the appropriate matrix group. Internally, the invariant form is asked, and the base change to our canonical form is obtained using the package <strong class="pkg">form</strong>. Furthermore, the generators to be added are computed.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">GammaO(5,GF(49));</span>
PGammaO(5,49)
</pre></div>
<p><a id="X7A5C03CD7A2F5CAE" name="X7A5C03CD7A2F5CAE"></a></p>
<h5>B.2-13 GammaOplus</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; GammaOplus</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the collineation group of a canonical hyperbolic orthogonal polar space</p>
<p>The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">DeltaOplus</code>, and computes the generators to be added.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">GammaOplus(6,GF(64));</span>
PGammaO+(6,64)
</pre></div>
<p><a id="X854A064C7E907B61" name="X854A064C7E907B61"></a></p>
<h5>B.2-14 GammaU</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; GammaU</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the collineation group of a canonical hermitian variety</p>
<p>The argument <var class="Arg">d</var> is the dimension of the underlying vector space, <var class="Arg">f</var> is the finite field. The method relies on <code class="file">GU</code>, a GAP command returning the appropriate matrix group. Internally, the invariant form is asked, and the base change to our canonical form is obtained using the package <strong class="pkg">form</strong>. Furthermore, the generators to be added are computed.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">GammaU(4,GF(81));</span>
PGammaU(4,9^2)
</pre></div>
<p><a id="X7A171F11786F771C" name="X7A171F11786F771C"></a></p>
<h5>B.2-15 G2fining</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; G2fining</code>( <var class="Arg">d</var>, <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the Chevalley group G_2(q)</p>
<p>This group is the group of projectivities stabilising the split Cayley hexagon embedded in the parabolic quadric <span class="SimpleMath">Q(6,q):</span> X<sub>0</sub>X<sub>4</sub>+X<sub>1</sub>X<sub>5</sub>+X<sub>2</sub>X<sub>6</sub>=X<sub>3</sub><sup>2</sup>. <var class="Arg">f</var> must be a finite field and <var class="Arg">d</var> must be 5 or 6. When <var class="Arg">d</var> is 5, <var class="Arg">F</var> must be a field of even order, and then the returned group consists of projectivities of <span class="SimpleMath">W(5,q)</span>. The generators of this group are described explicitly in <a href="chapBib.html#biBHVM">[VM98]</a>, Appendix D. A correction can be found in <a href="chapBib.html#biBPhDOffer">[Off00]</a>. However, also this source contains a mistake.</p>
<p><a id="X82BE951780CFFBFB" name="X82BE951780CFFBFB"></a></p>
<h5>B.2-16 3D4fining</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; 3D4fining</code>( <var class="Arg">f</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the Chevalley group 3D4(q)</p>
<p>The argument <var class="Arg">f</var> must be a field of order q<sup>3</sup> This group is the group of collineations stabilising the twisted triality hexagon embedded in the hyperbolic quadric Q<sup>+</sup>(7,q): X<sub>0</sub>X<sub>4</sub>+X<sub>1</sub>X<sub>5</sub>+X<sub>2</sub>X<sub>6</sub>+X<sub>3</sub>X<sub>7</sub> The generators of this group are described explicitly in <a href="chapBib.html#biBHVM">[VM98]</a>, Appendix D.</p>
<p><a id="X7F1343937C036C7A" name="X7F1343937C036C7A"></a></p>
<h4>B.3 <span class="Heading">Basis of the collineation groups</span></h4>
<p>The <strong class="pkg">GenSS</strong> uses a function <code class="file">FindBasePointCandidates</code> taking a group as one of the arguments. From a geometrical point of view, it is straightforward to construct a basis for a collineation group for the action on projective points.</p>
<p><a id="X814A0FEE7B677BF7" name="X814A0FEE7B677BF7"></a></p>
<h5>B.3-1 FindBasePointCandidates</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; FindBasePointCandidates</code>( <var class="Arg">g</var>, <var class="Arg">opt</var>, <var class="Arg">i</var>, <var class="Arg">parentS</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: a record</p>
<p>The returned record contains the base points for the action, and some other fields. The information in the other fields is determined from the arguments <var class="Arg">opt</var> and <var class="Arg">i</var>. More information on these details can be found in the manual of <strong class="pkg">GenSS</strong>.</p>
<p>Variations on this version of <code class="file">BasePointCandidates</code> are found in <strong class="pkg">FinInG</strong> used in previous versions of <strong class="pkg">GenSS</strong>. These variations are already or will become obsolete in the (near) future.</p>
<div class="chlinkprevnextbot"> <a href="chap0.html">[Top of Book]</a> <a href="chap0.html#contents">[Contents]</a> <a href="chapA.html">[Previous Chapter]</a> <a href="chapC.html">[Next Chapter]</a> </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="chap5.html">5</a> <a href="chap6.html">6</a> <a href="chap7.html">7</a> <a href="chap8.html">8</a> <a href="chap9.html">9</a> <a href="chap10.html">10</a> <a href="chap11.html">11</a> <a href="chap12.html">12</a> <a href="chap13.html">13</a> <a href="chap14.html">14</a> <a href="chapA.html">A</a> <a href="chapB.html">B</a> <a href="chapC.html">C</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>
¤ Dauer der Verarbeitung: 0.27 Sekunden
¤
*© Formatika GbR, Deutschland
|
|
2026-11-01
|
|
|
|
|
Neuigkeiten |
| Aktuelles |
| Motto des Tages |
|
Open Source Software |
|
|
|
Jenseits des Üblichen ....
|
|
Besucherstatistik |
|
|
| Statistik |
| #Sources=1104857 |
| #Domains=417840 |
|
|