<p>Before describing general functions for computing induced structures, we consider coproducts of crossed modules which provide induced crossed modules in certain cases.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ CoproductXMod</code>( <var class="Arg">X1</var>, <var class="Arg">X2</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ CoproductInfo</code>( <var class="Arg">X0</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>This function calculates the coproduct crossed module of two or more crossed modules which have a common range <span class="SimpleMath">R</span>. The standard method applies to <span class="SimpleMath">calX_1 = (∂_1 : S_1 -> R)</span> and <span class="SimpleMath">calX_2 = (∂_2 : S_2 -> R)</span>. See below for the case of three or more crossed modules.</p>
<p>The source <span class="SimpleMath">S_2</span> of <span class="SimpleMath">calX_2</span> acts on <span class="SimpleMath">S_1</span> via <span class="SimpleMath">∂_2</span> and the action of <spanclass="SimpleMath">calX_1</span>, so we can form a precrossed module <span class="SimpleMath">(∂' : S_1 ⋉ S_2 -> R) where ∂'(s_1,s_2) = (∂_1 s_1)(∂_2 s_2)</span>. The action of this precrossed module is the diagonal action <span class="SimpleMath">(s_1,s_2)^r = (s_1^r,s_2^r)</span>. Factoring out by the Peiffer subgroup, we obtain the coproduct crossed module <span class="SimpleMath">calX_1 ∘ calX_2</span>.</p>
<p>In the example the structure descriptions of the precrossed module, the Peiffer subgroup, and the resulting coproduct are printed out when <code class="code">InfoLevel(InfoXMod)</code> is at least <span class="SimpleMath">1</span>. The coproduct comes supplied with attribute <code class="code">CoproductInfo</code>, which includes the embedding morphisms of the two factors.</p>
<p>The <code class="code">embeddings</code> field of the <code class="code">CoproductInfo</code> of the resulting crossed module <span class="SimpleMath">calY</span> contains the <span class="SimpleMath">n</span> morphisms <span class="SimpleMath">ϵ_i : calX_i -> calY (1 leqslant i leqslant n)</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ InducedXMod</code>( <var class="Arg">args</var> )</td><td class="tdright">( function )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsInducedXMod</code>( <var class="Arg">xmod</var> )</td><td class="tdright">( property )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ InducedXModBySurjection</code>( <var class="Arg">xmod</var>, <var class="Arg">hom</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ InducedXModByCopower</code>( <var class="Arg">xmod</var>, <var class="Arg">hom</var>, <var class="Arg">list</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ MorphismOfInducedXMod</code>( <var class="Arg">xmod</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>A morphism of crossed modules <span class="SimpleMath">(σ, ρ) : calX_1 -> calX_2</span> factors uniquely through an induced crossed module <span class="SimpleMath">ρ_∗ calX_1 = (δ : ρ_∗ S_1 -> R_2)</span>. Similarly, a morphism of cat<span class="SimpleMath">^1</span>-groups factors through an induced cat<span class="SimpleMath">^1</span>-group. Calculation of induced crossed modules of <spanclass="SimpleMath">calX</span> also provides an algebraic means of determining the homotopy <span class="SimpleMath">2</span>-type of homotopy pushouts of the classifying space of <span class="SimpleMath">calX</span>. For more background from algebraic topology see references in <a href="chapBib.html#biBBH1">[BH78]</a>, <a href="chapBib.html#biBBW1">[BW95]</a>, <a href="chapBib.html#biBBW2">[BW96]</a>. Induced crossed modules and induced cat<span class="SimpleMath">^1</span>-groups also provide the building blocks for constructing pushouts in the categories <em>XMod</em> and <em>Cat1</em>.</p>
<p>Data for the cases of algebraic interest is provided by a crossed module <span class="SimpleMath">calX = (∂ : S -> R)</span> and a homomorphism <span class="SimpleMath">ι : R -> Q</span>. The output from the calculation is a crossed module <span class="SimpleMath">ι_∗calX = (δ : ι_∗S -> Q)</span> together with a morphism of crossed modules <span class="SimpleMath">calX -> ι_∗calX</span>. When <span class="SimpleMath">ι</span> is a surjection with kernel <span class="SimpleMath">K</span> then <span class="SimpleMath">ι_∗S = S/[K,S]</span> where <span class="SimpleMath">[K,S]</span> is the subgroup of <span class="SimpleMath">S</span> generated by elements of the form <span class="SimpleMath">s^-1s^k, s ∈ S, k ∈ K</span> (see <a href="chapBib.html#biBBH1">[BH78]</a>, Prop.9). (For many years, up until June 2018, this manual has stated the result to be <span class="SimpleMath">[K,S]</span>, though the correct quotient had been calculated.) When <span class="SimpleMath">ι</span> is an inclusion the induced crossed module may be calculated using a copower construction <a href="chapBib.html#biBBW1">[BW95]</a> or, in the case when <span class="SimpleMath">R</span> is normal in <span class="SimpleMath">Q</span>, as a coproduct of crossed modules (<a href="chapBib.html#biBBW2">[BW96]</a>, but not yet implemented). When <span class="SimpleMath">ι</span> is neither a surjection nor an inclusion, <span class="SimpleMath">ι</span> is factored as the composite of the surjection onto the image and the inclusion of the image in <span class="SimpleMath">Q</span>, and then the composite induced crossed module is constructed. These constructions use Tietze transformation routines in the library file <code class="code">tietze.gi</code>.</p>
<p>As a first, surjective example, we take for <span class="SimpleMath">calX</span> a central extension crossed module of dihedral groups, <span class="SimpleMath">(d_24 -> d_12)</span>, and for <span class="SimpleMath">ι</span> a surjection <span class="SimpleMath">d_12 -> s_3</span> with kernel <span class="SimpleMath">c_2</span>. The induced crossed module is isomorphic to <span class="SimpleMath">(d_12 -> s_3)</span>.</p>
<p>For a second, injective example we take for <span class="SimpleMath">calX</span> the result <code class="code">iX24</code> of the previous example and for <span class="SimpleMath">ι</span> an inclusion of <span class="SimpleMath">s_3</span> in <span class="SimpleMath">s_4</span>. The resulting source group has size <span class="SimpleMath">96</span>.</p>
<p>For a third example we combine the previous two examples by taking for <span class="SimpleMath">ι</span> the more general case <code class="code">alpha = theta*iota</code>. The resulting <code class="code">jX24</code> is isomorphic to, but not identical to, <code class="code">iiX24</code>.</p>
<p>For a fourth example we use the version <code class="code">InducedXMod(Q,R,S)</code> of this global function, with a normal inclusion crossed module <span class="SimpleMath">(S -> R)</span> and an inclusion mapping <span class="SimpleMath">R -> Q</span>. We take <span class="SimpleMath">(c_6 -> d_12)</span> as <span class="SimpleMath">calX</span> and the inclusion of <span class="SimpleMath">d_12</span> in <span class="SimpleMath">d_24</span> as <span class="SimpleMath">ι</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ AllInducedXMods</code>( <var class="Arg">Q</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>This function calculates all the induced crossed modules <code class="code">InducedXMod(Q,R,S)</code>, where <code class="code">R</code> runs over all conjugacy classes of subgroups of <codeclass="code">Q</code> and <code class="code">S</code> runs over all non-trivial normal subgroups of <code class="code">R</code>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">all := AllInducedXMods( q8 );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">L := List( all, x -> Source( x ) );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Sort( L, function(g,h) return Size(g) < Size(h); end );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">List( L, x -> StructureDescription( x ) );</span>
[ "1", "1", "1", "1", "C2 x C2", "C2 x C2", "C2 x C2", "C4 x C4", "C4 x C4", "C4 x C4", "C2 x C2 x C2 x C2" ]
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.