Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/GAP/pkg/wpe/doc/   (Algebra von RWTH Aachen Version 4.15.1©)  Datei vom 21.9.2024 mit Größe 16 kB image not shown  

Quelle  chap1_mj.html   Sprache: HTML

 
 products/Sources/formale Sprachen/GAP/pkg/wpe/doc/chap1_mj.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>
<script type="text/javascript"
  src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
<title>GAP (WPE) - Chapter 1: Introduction</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="chap1"  onload="jscontent()">


<div class="chlinktop"><span class="chlink1">Goto Chapter: </span><a href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>

<div class="chlinkprevnexttop"> <a href="chap0_mj.html">[Top of Book]</a>   <a href="chap0_mj.html#contents">[Contents]</a>    <a href="chap0_mj.html">[Previous Chapter]</a>    <a href="chap2_mj.html">[Next Chapter]</a>   </div>

<p id="mathjaxlink" class="pcenter"><a href="chap1.html">[MathJax off]</a></p>
<p><a id="X7DFB63A97E67C0A1" name="X7DFB63A97E67C0A1"></a></p>
<div class="ChapSects"><a href="chap1_mj.html#X7DFB63A97E67C0A1">1 <span class="Heading">Introduction</span></a>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap1_mj.html#X8389AD927B74BA4A">1.1 <span class="Heading">Overview</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap1_mj.html#X7950ED88879EE36F">1.2 <span class="Heading">Intuitive Research</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss">  </span><a href="chap1_mj.html#X83C9D5E6846B299E">1.2-1 <span class="Heading">The Power of Component-wise Representation</span></a>
</span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap1_mj.html#X7D96C25680814773">1.3 <span class="Heading">Efficient Computing</span></a>
</span>
</div>
</div>

<h3>1 <span class="Heading">Introduction</span></h3>

<p>This chapter serves as an introduction and showcases some highlights of the package <strong class="pkg">WPE</strong>.</p>

<p><a id="X8389AD927B74BA4A" name="X8389AD927B74BA4A"></a></p>

<h4>1.1 <span class="Heading">Overview</span></h4>

<p>The package <strong class="pkg">WPE</strong> (<b><u>W</u></b>reath <b><u>P</b></u>roduct <b><u>E</b></u>lements) provides methods to work with elements of finite groups which are wreath products. It contributes to <center> <b>intuitive research</b> and <b>efficient computing</b> <p/> </center> in wreath products of groups.</p>

<p>It allows access to a representation of wreath products, which we refer to as the <em>generic representation</em>, that is more intuitive to the User when working with wreath products of groups. Access is as straight-forward as using the provided command <code class="code">IsomorphismWreathProduct</code> on a wreath product created by the native <strong class="pkg">GAP</strongcommand <code class="code">WreathProduct</code>, see <a href="chap1_mj.html#X7950ED88879EE36F"><span class="RefLink">1.2</span></a> for an example.</p>

<p>Additionally, this representation may have computational benefits over other representations. Note, that just by loading the package <strong class="pkg">WPE</strong> and without any additional setup, all optimizations are applied to computations in wreath products created by the native <strong class="pkg">GAP</strongcommand <code class="code">WreathProduct</code>, by exploiting the generic representation under the hood when appropiate. See <a href="chap1_mj.html#X7D96C25680814773"><span class="RefLink">1.3</span></a> for a highlight showcase of such computational problems.</p>

<p>In particular, this package provides efficient methods for finding <b>conjugating elements</b>, <b>conjugacy classes</b>, and <b>centralizers</b> in wreath products. The implementations are based on an accompanying publication <a href="chapBib_mj.html#biBWPE">[BNRW22]</a>, that generalizes results from <a href="chapBib_mj.html#biBSpecht">[Spe32]</a> and <a href="chapBib_mj.html#biBOre">[Ore42]</a> on monomial groups, wreath products whose top group is the full symmetric group.</p>

<p>For example, the computation of all <span class="SimpleMath">\(886\,640\)</span> conjugacy classses of elements of the wreath product <span class="SimpleMath">\(W = \textrm{M}_{22} \wr \textrm{A}_9\)</span> takes about 12 seconds with <strong class="pkg">WPE</strong>. With native <strong class="pkg">GAP</strong> this computation is not feasible.</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">LoadPackage("WPE");;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">K := MathieuGroup(22);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">H := AlternatingGroup(9);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">G := WreathProduct(K, H);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">C := ConjugacyClasses(G);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(C);</span>
886640
</pre></div>

<p><a id="X7950ED88879EE36F" name="X7950ED88879EE36F"></a></p>

<h4>1.2 <span class="Heading">Intuitive Research</span></h4>

<p>One of the two main goals of the package is to provide the User with tools to conduct <b>intuitive research</b> in wreath products of groups on the computer.</p>

<p>In this section we present an example session which demonstrates how we can access the generic representation of a wreath product. As noted in the introduction, no additional setup is required if one wants to benefit from the optimizations for computations in wreath products (see <a href="chap1_mj.html#X7D96C25680814773"><span class="RefLink">1.3</span></a> for examples on this).</p>

<p>First we construct the wreath product <span class="SimpleMath">\(G = \textrm{Alt}(5) \wr \textrm{Sym}(7)\)</span> (see <a href="chap2_mj.html#X7DF2AEBC8518FFA4"><span class="RefLink">2.1</span></a>). For this we use the native <strong class="pkg">GAP</strongcommand <code class="func">WreathProduct</code> (<a href="../../../doc/ref/chap49_mj.html#X8786EFBC78D7D6ED"><span class="RefLink">Reference: WreathProduct</span></a>). The resulting group is embedded into a symmetric group on <span class="SimpleMath">\(5 \cdot 7 = 35\)</span> points via the imprimitive action of the wreath product. The size of the group is</p>

<p class="center">\[
\vert G \vert = \vert\textrm{Alt}(5)\vert^7 \cdot \vert\textrm{Sym}(7)\vert = 60^7 \cdot 5\,040 = 14\,108\,774\,400\,000\,000\;.
\]</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">K := AlternatingGroup(5);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">H := SymmetricGroup(7);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">G := WreathProduct(K, H);</span>
<permutation group of size 14108774400000000 with 4 generators>
</pre></div>

<p>Now we construct an isomorphism to a wreath product given in generic representation that is provided in <strong class="pkg">WPE</strong>. For this, we need to load the package <strong class="pkg">WPE</strong>.</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">LoadPackage("WPE");;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">iso := IsomorphismWreathProduct(G);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">W := Image(iso);</span>
<group of size 14108774400000000 with 4 generators>
</pre></div>

<p>Let us compare how <strong class="pkg">GAP</strong> displays elements of <span class="SimpleMath">\(G\)</span> and <span class="SimpleMath">\(W\)</span> respectively. Elements of <span class="SimpleMath">\(G\)</span> are represented as permutations. In this representation it is hard to identify the base and top components of this element (see <a href="chap2_mj.html#X7DF2AEBC8518FFA4"><span class="RefLink">2.1</span></a>).</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">g := (1,13,3,14,4,12,2,15,5,11)</span>
<span class="GAPprompt">></span> <span class="GAPinput">        (6,31,21,7,35,25,9,33,23,8,34,24,10,32,22)</span>
<span class="GAPprompt">></span> <span class="GAPinput">        (18,19,20);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">g in G;</span>
true
</pre></div>

<p>Elements of <span class="SimpleMath">\(W\)</span> however are represented as generic wreath product elements (see <a href="chap2_mj.html#X7DF2AEBC8518FFA4"><span class="RefLink">2.1</span></a>). This allows us to read off the base and top component of the element easily by either printing or displaying the element. Otherwise, by default the element is viewed in compressed form (see <a href="chap4_mj.html#X8227AD6B7FC637DE"><span class="RefLink">4.4</span></a>). This printing behaviour is similar to the behaviour of matrices in <strong class="pkg">GAP</strong>.</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">w := g ^ iso;</span>
< wreath product element with 7 base components >
<span class="GAPprompt">gap></span> <span class="GAPinput">Print(w);</span>
[ (1,3,4,2,5), (2,5)(3,4), (), (3,4,5), (1,2)(4,5), (), (), (1,3)(2,7,5) ]
<span class="GAPprompt">gap></span> <span class="GAPinput">Display(w);</span>
       1           2       3      4         5       6   7       top     
( (1,3,4,2,5), (2,5)(3,4), (), (3,4,5), (1,2)(4,5), (), (); (1,3)(2,7,5) )
</pre></div>

<p>Furthermore, we can display and access each component easily with the provided commands.</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">BaseComponentOfWreathProductElement(w, 2);</span>
(2,5)(3,4)
<span class="GAPprompt">gap></span> <span class="GAPinput">TopComponentOfWreathProductElement(w);</span>
(1,3)(2,7,5)
</pre></div>

<p><a id="X83C9D5E6846B299E" name="X83C9D5E6846B299E"></a></p>

<h5>1.2-1 <span class="Heading">The Power of Component-wise Representation</span></h5>

<p>This component-wise representation is often exactly the one that we encounter in research on wreath products. Thus having it available on the computer greatly sharpens our intuition. We can make very non-trivial statements by looking at the components of such an element, and for the case of the element <span class="SimpleMath">\(w\)</span> even without a computer.</p>

<p>Let us start off with an easy observation. Just by looking at the top component of <span class="SimpleMath">\(w\)</span>, i.e. <span class="SimpleMath">\((1,3)(2,7,5)\)</span>, we can see that the smallest power of <span class="SimpleMath">\(w\)</span> that lies in the base group of <span class="SimpleMath">\(W\)</span> has exponent <span class="SimpleMath">\(6\)</span>, since it has to be equal to the order of the top component.</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">m := Order(w);</span>
30
<span class="GAPprompt">gap></span> <span class="GAPinput">First( [1 .. m], k -> IsOne(TopComponentOfWreathProductElement(w ^ k)) );</span>
6
<span class="GAPprompt">gap></span> <span class="GAPinput">Display(w ^ 6);</span>
       1            2            3       4        5       6        7       top
( (1,2,3,5,4), (1,4,5,2,3), (1,2,3,5,4), (), (1,3,2,5,4), (), (1,3,2,5,4); () )
</pre></div>

<p>Now let us be more advanced. Just by looking at the element <span class="SimpleMath">\(w\)</span>, we can deduce structural information on the conjugacy class <span class="SimpleMath">\(w^W\)</span>. All elements conjugate to <span class="SimpleMath">\(w\)</span> in <span class="SimpleMath">\(W = K \wr H\)</span> must have at least one trivial base component, since the territory of <span class="SimpleMath">\(w\)</span> (see <a href="chap2_mj.html#X83A8F3308644ACFA"><span class="RefLink">2.2</span></a>) contains exactly six elements, whereas the top group acts on seven points.</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">Length(Territory(w));</span>
6
<span class="GAPprompt">gap></span> <span class="GAPinput">NrMovedPoints(H);</span>
7
</pre></div>

<p>On the other hand, all such elements must have at least three non-trivial base components, since the wreath cycle decomposition of <span class="SimpleMath">\(w\)</span> (see <a href="chap2_mj.html#X83A8F3308644ACFA"><span class="RefLink">2.2</span></a>) contains exactly three wreath cycles with non-trivial yades (see <a href="chap2_mj.html#X872BE72F7B2BBD6B"><span class="RefLink">2.3</span></a>).</p>


<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">Number(WreathCycleDecomposition(w), c -> not IsOne(Yade(c)));</span>
3
</pre></div>

<p>Moreover, for each integer <span class="SimpleMath">\(k\)</span> with <span class="SimpleMath">\(3 \leq k \leq 6\)</span> there exists at least one conjugate element with exactly <span class="SimpleMath">\(k\)</span> non-trivial base components.</p>

<p><a id="X7D96C25680814773" name="X7D96C25680814773"></a></p>

<h4>1.3 <span class="Heading">Efficient Computing</span></h4>

<p>One of the two main goals of the package is to empower the User to carry out <b>efficient computations</b> in wreath products of groups on the computer.</p>

<p>In this section we present a highlight showcase of computational problems that benefit from the generic representation. As noted in the introduction, no additional setup is required if one wants to benefit from the optimizations for computations in wreath products. We simply create the wreath products via the native <strong class="pkg">GAP</strongcommand <code class="func">WreathProduct</code> (<a href="../../../doc/ref/chap49_mj.html#X8786EFBC78D7D6ED"><span class="RefLink">Reference: WreathProduct</span></a>), and the generic representation provided by <strong class="pkg">WPE</strong> is used under the hood whenever appropiate.</p>

<p>We only give a summary of some computational problems that now become approachable on the computer, and include examples for such computations in Chapter <a href="chap3_mj.html#X81932F777898AD72"><span class="RefLink">3</span></a> containing extensive <strong class="pkg">GAP</strong> sessions that can be followed like a tutorial.</p>

<p>In the following let <span class="SimpleMath">\(G = K \wr H\)</span> be a wreath product of finite groups, where <span class="SimpleMath">\(H \leq \textrm{Sym}(m)\)</span>. Further let <span class="SimpleMath">\(x, y \in P = K \wr \textrm{Sym}(m)\)</span> be elements of the parent wreath product <span class="SimpleMath">\(P\)</span> which is given in the same representation as <span class="SimpleMath">\(G\)</span>.</p>


<dl>
<dt><strong class="Mark"> Conjugacy Problem </strong></dt>
<dd><p>Solve the conjugacy problem for <span class="SimpleMath">\(x\)</span> and <span class="SimpleMath">\(y\)</span> over <span class="SimpleMath">\(G\)</span>, i.e. decide whether there exists <span class="SimpleMath">\(c \in G\)</span> with <span class="SimpleMath">\(x^c = y\)</span> and if it does, explicitly compute such a conjugating element <span class="SimpleMath">\(c\)</span>.</p>

</dd>
<dt><strong class="Mark"> Conjugacy Classes </strong></dt>
<dd><p>Enumerate representatives of all conjugacy classes of elements of <span class="SimpleMath">\(G\)</span>, i.e. return elements <span class="SimpleMath">\(g_1, \dots, g_\ell\)</span> such that <span class="SimpleMath">\(g_1^G, \dots, g_\ell^G\)</span> are the conjugacy classes of <span class="SimpleMath">\(G\)</span>.</p>

</dd>
<dt><strong class="Mark"> Centralizer </strong></dt>
<dd><p>Compute the centralizer of <span class="SimpleMath">\(x\)</span> in <span class="SimpleMath">\(G\)</span>, i.e. compute a generating set of <span class="SimpleMath">\(C_G(x)\)</span>.</p>

</dd>
<dt><strong class="Mark"> Cycle Index Polynomial</strong></dt>
<dd><p>Compute the cycle index polynomial of <span class="SimpleMath">\(G\)</span> either for the imprimitive action or the product action.</p>

</dd>
</dl>

<div class="chlinkprevnextbot"> <a href="chap0_mj.html">[Top of Book]</a>   <a href="chap0_mj.html#contents">[Contents]</a>    <a href="chap0_mj.html">[Previous Chapter]</a>    <a href="chap2_mj.html">[Next Chapter]</a>   </div>


<div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.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>

100%


¤ Dauer der Verarbeitung: 0.11 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

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.