|
|
|
|
Quelle chap4.html
Sprache: HTML
|
|
| products/Sources/formale Sprachen/GAP/pkg/repndecomp/doc/chap4.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 (RepnDecomp) - Chapter 4: Miscellaneous useful functions</ 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= "chap4" 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="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="chap3.html">[Previous Chapter]</a> <a href="chap5.html">[Next Chapter]</a> </div>
<p id="mathjaxlink" class="pcenter"><a href="chap4_mj.html">[MathJax on]</a></p>
<p><a id="X8346542B8387968B" name="X8346542B8387968B"></a></p>
<div class="ChapSects"><a href="chap4.html#X8346542B8387968B">4 <span class="Heading">Miscellaneous useful functions</span></a>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap4.html#X87196FDB78749ECA">4.1 <span class="Heading">Predicates for representations</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X8631A1417C3C1D88">4.1-1 IsFiniteGroupLinearRepresentation</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X826D5ADF7FA87782">4.1-2 IsFiniteGroupPermutationRepresentation</a></span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap4.html#X8271F7A386CFEA63">4.2 <span class="Heading">Efficient summing over groups</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X85E8A5FC844DC09A">4.2-1 GroupSumBSGS</a></span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap4.html#X86F42D257CFB192D">4.3 <span class="Heading">Space-efficient representation of tensors of matrices</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X84335C447DE377B0">4.3-1 IsTensorProductOfMatricesObj</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X868B9CB1873C93AC">4.3-2 IsTensorProductPairRep</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X85AD76DB7D5F8B12">4.3-3 IsTensorProductKroneckerRep</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X86671AD582FF77E2">4.3-4 TensorProductOfMatrices</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X79D0379D79F5DF9B">4.3-5 CharacterOfTensorProductOfRepresentations</a></span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap4.html#X83F160967ED7EE14">4.4 <span class="Heading">Matrices and homomorphisms</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7D17785482F143B0">4.4-1 ComposeHomFunction</a></span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap4.html#X7C3EDA5E7A24196C">4.5 <span class="Heading">Representation theoretic functions</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X841424DF824E258B">4.5-1 TensorProductRepLists</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X84EAE3DB7FA8102C">4.5-2 DirectSumOfRepresentations</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X85147CF97B912CC3">4.5-3 DegreeOfRepresentation</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7B14287E7BFC548D">4.5-4 PermToLinearRep</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7E67A4817A5E4879">4.5-5 IsOrthonormalSet</a></span>
</div></div>
</div>
<h3>4 <span class="Heading">Miscellaneous useful functions</span></h3>
<p><a id="X87196FDB78749ECA" name="X87196FDB78749ECA"></a></p>
<h4>4.1 <span class="Heading">Predicates for representations</span></h4>
<p><a id="X8631A1417C3C1D88" name="X8631A1417C3C1D88"></a></p>
<h5>4.1-1 IsFiniteGroupLinearRepresentation</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; IsFiniteGroupLinearRepresentation</code>( <var class="Arg">rho</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: true or false</p>
<p>Tells you if <var class="Arg">rho</var> is a linear representation of a finite group. The algorithms implemented in this package work on these homomorphisms only.</p>
<p><a id="X826D5ADF7FA87782" name="X826D5ADF7FA87782"></a></p>
<h5>4.1-2 IsFiniteGroupPermutationRepresentation</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; IsFiniteGroupPermutationRepresentation</code>( <var class="Arg">rho</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: true or false</p>
<p>Tells you if <var class="Arg">rho</var> is a homomorphism from a finite group to a permutation group.</p>
<p><a id="X8271F7A386CFEA63" name="X8271F7A386CFEA63"></a></p>
<h4>4.2 <span class="Heading">Efficient summing over groups</span></h4>
<p><a id="X85E8A5FC844DC09A" name="X85E8A5FC844DC09A"></a></p>
<h5>4.2-1 GroupSumBSGS</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; GroupSumBSGS</code>( <var class="Arg">G</var>, <var class="Arg">summand</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: <span class="Math">\sum_{g \in G} \mbox{summand}(g)</span></p>
<p>Uses a basic stabiliser chain for <span class="Math">G</span> to compute the sum described above. This trick requires <var class="Arg">summand</var> to be a function (in the GAP sense) that defines a monoid homomorphism (in the mathematical sense). The computation of the stabiliser chain assumes <var class="Arg">G</var> is a group. More precisely, if we have the basic stabiliser chain:</p>
<p class="pcenter">\{1\} = G_1 \leq \ldots \leq G_n = G</p>
<p>We traverse the chain from <span class="Math">G_1</span> to <span class="Math">G_n</span>, using the previous sum <span class="Math">G_{i-1}</span> to build the sum <span class="Math">G_i</span>. We do this by using the fact that (writing <span class="Math">f</span> for <var class="Arg">summand</var>)</p>
<p class="pcenter">\sum_{g \in G_i} f(g) = \sum_{r_j} \left(\sum_{h \in G_{i-1}} f(h)\right) f(r_j)</p>
<p>where the <span class="Math">r_j</span> are right coset representatives of <span class="Math">G_{i-1}</span> in <span class="Math">G_i</span>. The condition on <var class="Arg">summand</var> is satisfied if, for example, it is a linear representation of a group <var class="Arg">G</var>.</p>
<p><a id="X86F42D257CFB192D" name="X86F42D257CFB192D"></a></p>
<h4>4.3 <span class="Heading">Space-efficient representation of tensors of matrices</span></h4>
<p>Suppose we have representations of <span class="Math">G</span>, <span class="Math">\rho</span> and <span class="Math">\tau</span>, with degree <span class="Math">n</span> and <span class="Math">m</span>. If we would like to construct the tensor product representation of <span class="Math">G</span>, <span class="Math">\rho \otimes \tau</span>, the usual way to do it would be to take the Kronecker product of the matrices. This means we now have to store very large <span class="Math">nm \times nm</span> matrices for each generator of <span class="Math">G</span>. This can be avoided by storing the tensor of matrices as pairs, essentially storing <span class="Math">A \otimes B</span> as a pair <span class="Math">(A,B)</span> and implementing group operations on top of these, along with some representation-theoretic functions. It is only possible to guarantee an economical representation for pure tensors, i.e. matrices of the form <span class="Math">A \otimes B</span>. These are closed under group operations, so it is natural to define a group structure.</p>
<p><a id="X84335C447DE377B0" name="X84335C447DE377B0"></a></p>
<h5>4.3-1 IsTensorProductOfMatricesObj</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; IsTensorProductOfMatricesObj</code>( <var class="Arg">arg</var> )</td><td class="tdright">( filter )</td></tr></table></div>
<p>Returns: <code class="keyw">true</code> or <code class="keyw">false</code></p>
<p>Position <span class="Math">i</span> in this representation stores the matrix <span class="Math">A_i</span> in the tensor product <span class="Math">A_1 \otimes A_2</span>.</p>
<p><a id="X868B9CB1873C93AC" name="X868B9CB1873C93AC"></a></p>
<h5>4.3-2 IsTensorProductPairRep</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; IsTensorProductPairRep</code>( <var class="Arg">arg</var> )</td><td class="tdright">( filter )</td></tr></table></div>
<p>Returns: <code class="keyw">true</code> or <code class="keyw">false</code></p>
<p>Position 1 stores the full Kronecker product of the matrices, this is very space inefficient and supposed to be used as a last resort.</p>
<p><a id="X85AD76DB7D5F8B12" name="X85AD76DB7D5F8B12"></a></p>
<h5>4.3-3 IsTensorProductKroneckerRep</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; IsTensorProductKroneckerRep</code>( <var class="Arg">arg</var> )</td><td class="tdright">( filter )</td></tr></table></div>
<p>Returns: <code class="keyw">true</code> or <code class="keyw">false</code></p>
<p>More convenient constructor for a tensor product (automatically handles family)</p>
<p><a id="X86671AD582FF77E2" name="X86671AD582FF77E2"></a></p>
<h5>4.3-4 TensorProductOfMatrices</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; TensorProductOfMatrices</code>( <var class="Arg">arg</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>This uses the multiplicativity of characters when taking tensor products to avoid having to compute the trace of a big matrix.</p>
<p><a id="X79D0379D79F5DF9B" name="X79D0379D79F5DF9B"></a></p>
<h5>4.3-5 CharacterOfTensorProductOfRepresentations</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; CharacterOfTensorProductOfRepresentations</code>( <var class="Arg">arg</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p><a id="X83F160967ED7EE14" name="X83F160967ED7EE14"></a></p>
<h4>4.4 <span class="Heading">Matrices and homomorphisms</span></h4>
<p><a id="X7D17785482F143B0" name="X7D17785482F143B0"></a></p>
<h5>4.4-1 ComposeHomFunction</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; ComposeHomFunction</code>( <var class="Arg">hom</var>, <var class="Arg">func</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: Homomorphism g given by g(x) = func(hom(x)).</p>
<p>This is mainly for convenience, since it handles all GAP accounting issues regarding the range, ByImages vs ByFunction, etc.</p>
<p><a id="X7C3EDA5E7A24196C" name="X7C3EDA5E7A24196C"></a></p>
<h4>4.5 <span class="Heading">Representation theoretic functions</span></h4>
<p><a id="X841424DF824E258B" name="X841424DF824E258B"></a></p>
<h5>4.5-1 TensorProductRepLists</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; TensorProductRepLists</code>( <var class="Arg">list1</var>, <var class="Arg">list2</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: All possible tensor products given by <span class="Math">\rho \otimes \tau</span> where <span class="Math">\rho : G \to \mbox{GL}(V)</span> is taken from <var class="Arg">list1</var> and <span class="Math">\tau : H \to \mbox{GL}(W)</span> is taken from <var class="Arg">list2</var>. The result is then a list of representations of <span class="Math">G \times H</span>.</p>
<p><a id="X84EAE3DB7FA8102C" name="X84EAE3DB7FA8102C"></a></p>
<h5>4.5-2 DirectSumOfRepresentations</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; DirectSumOfRepresentations</code>( <var class="Arg">list</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: Direct sum of the list of representations <var class="Arg">list</var></p>
<p><a id="X85147CF97B912CC3" name="X85147CF97B912CC3"></a></p>
<h5>4.5-3 DegreeOfRepresentation</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; DegreeOfRepresentation</code>( <var class="Arg">rho</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: Degree of the representation <var class="Arg">rho</var>. That is, <span class="Math">\mbox{Tr}(\rho(e_G))</span>, where <span class="Math">e_G</span> is the identity of the group <span class="Math">G</span> that <var class="Arg">rho</var> has as domain.</p>
<p><a id="X7B14287E7BFC548D" name="X7B14287E7BFC548D"></a></p>
<h5>4.5-4 PermToLinearRep</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; PermToLinearRep</code>( <var class="Arg">rho</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: Linear representation <span class="Math">\rho</span> isomorphic to the permutation representation <var class="Arg">rho</var>.</p>
<p><a id="X7E67A4817A5E4879" name="X7E67A4817A5E4879"></a></p>
<h5>4.5-5 IsOrthonormalSet</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">an style='color: green'>8227; IsOrthonormalSet</code>( <var class="Arg">S</var>, <var class="Arg">prod</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: Whether <var class="Arg">S</var> is an orthonormal set with respect to the inner product <var class="Arg">prod</var>.</p>
<div class="chlinkprevnextbot"> <a href="chap0.html">[Top of Book]</a> <a href="chap0.html#contents">[Contents]</a> <a href="chap3.html">[Previous Chapter]</a> <a href="chap5.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="chapInd.html">Ind</a> </div>
<hr />
<p class="foot">generated by <a href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc">GAPDoc2HTML</a></p>
</body>
</html>
¤ Dauer der Verarbeitung: 0.8 Sekunden
¤
*© Formatika GbR, Deutschland
|
|
2026-11-01
|
|
|
|
|
Neuigkeiten |
| Aktuelles |
| Motto des Tages |
|
Open Source Software |
|
|
|
Jenseits des Üblichen ....
|
|
Besucherstatistik |
|
|
| Statistik |
| #Sources=1104850 |
| #Domains=416978 |
|
|