Sophie

Sophie

distrib > * > 2010.0 > * > by-pkgid > 0c1f9463f03451b5503f0c33beb88a98 > files > 3516

gap-system-4.4.12-5mdv2010.0.x86_64.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 (XMod) - Chapter 4: Derivations and Sections</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="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="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="chap5.html">Next Chapter</a>&nbsp;  </div>

<p><a id="X7C01AE7783898705" name="X7C01AE7783898705"></a></p>
<div class="ChapSects"><a href="chap4.html#X7C01AE7783898705">4 <span class="Heading">Derivations and Sections</span></a>
<div class="ContSect"><span class="nocss">&nbsp;</span><a href="chap4.html#X78790B7D87D9FD73">4.1 <span class="Heading">Whitehead Multiplication</span></a>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap4.html#X82FE679F79FDBF75">4.1-1 IsDerivation</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap4.html#X83EC6F7780F5636E">4.1-2 DerivationByImages</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap4.html#X79FE2BFD85FE88B3">4.1-3 SectionByImages</a></span>
</div>
<div class="ContSect"><span class="nocss">&nbsp;</span><a href="chap4.html#X83886F9484B44B03">4.2 <span class="Heading">Whitehead Groups and Monoids</span></a>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap4.html#X84CD856C84BDB019">4.2-1 RegularDerivations</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap4.html#X804BC7FB7CD0B325">4.2-2 CompositeDerivation</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap4.html#X7F4E9D127E188A63">4.2-3 WhiteheadGroupTable</a></span>
</div>
</div>

<h3>4 <span class="Heading">Derivations and Sections</span></h3>

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

<h4>4.1 <span class="Heading">Whitehead Multiplication</span></h4>

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

<h5>4.1-1 IsDerivation</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; IsDerivation</code>( <var class="Arg">map</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">&gt; IsSection</code>( <var class="Arg">map</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">&gt; IsUp2dMapping</code>( <var class="Arg">map</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>The Whitehead monoid Der(mathcalX) of mathcalX was defined in <a href="chapBib.html#biBW2">[Whi48]</a> to be the monoid of all <em>derivations</em> from R to S, that is the set of all maps chi : R -&gt; S, with <em>Whitehead multiplication</em> star (on the <em>right</em>) satisfying:</p>

<p class="pcenter">
{\bf Der\ 1}:  \chi(qr) ~=~ (\chi q)^{r} \; (\chi r),
\qquad
{\bf Der\ 2}: (\chi_1 \star \chi_2)(r) 
    ~=~ (\chi_2 r)(\chi_1 r)(\chi_2 \partial \chi_1 r).
</p>

<p>The zero map is the identity for this composition. Invertible elements in the monoid are called <em>regular</em>. The Whitehead group of mathcalX is the group of regular derivations in Der(mathcalX ). In the next chapter the <em>actor</em> of mathcalX is defined as a crossed module whose source and range are permutation representations of the Whitehead group and the automorphism group of mathcalX.</p>

<p>The construction for cat1-groups equivalent to the derivation of a crossed module is the <em>section</em>. The monoid of sections of mathcalC = (e;t,h : G -&gt; R) is the set of group homomorphisms xi : R -&gt; G, with Whitehead multiplication star, (on the <em>right</em>) satisfying:</p>

<p class="pcenter">
{\bf Sect\ 1}: t \xi ~=~ {\rm id}_R,
\quad
{\bf Sect\ 2}: (\xi_1 \star \xi_2)(r) 
                ~=~ (\xi_1 r)(e h \xi_1 r)^{-1}(\xi_2 h \xi_1 r) 
                ~=~ (\xi_2 h \xi_1 r)(e h \xi_1 r)^{-1}(\xi_1 r).
</p>

<p>The embedding e is the identity for this composition, and h(xi_1 star xi_2) = (h xi_1)(h xi_2). A section is <em>regular</em> when h xi is an automorphism, and the group of regular sections is isomorphic to the Whitehead group.</p>

<p>If epsilon denotes the inclusion of S = ker t in G then partial = h epsilon : S -&gt; R and</p>

<p class="pcenter">
\xi r ~=~ (e r)(e \chi r) ~=~ (r, \chi r) 
</p>

<p>determines a section xi of mathcalC in terms of the corresponding derivation chi of mathcalX, and conversely.</p>

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

<h5>4.1-2 DerivationByImages</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; DerivationByImages</code>( <var class="Arg">X0, ims</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">&gt; Object2d</code>( <var class="Arg">chi</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; GeneratorImages</code>( <var class="Arg">chi</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Derivations are stored like group homomorphisms by specifying the images of a generating set. Images of the remaining elements may then be obtained using axiom {\bf Der\ 1}. The function <code class="code">IsDerivation</code> is automatically called to check that this procedure is well-defined.</p>

<p>In the following example a cat1-group <code class="code">C3</code> and the associated crossed module <code class="code">X3</code> are constructed, where <code class="code">X3</code> is isomorphic to the inclusion of the normal cyclic group <code class="code">c3</code> in the symmetric group <code class="code">s3</code>.</p>


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

gap&gt; g18 := Group( (1,2,3), (4,5,6), (2,3)(5,6) );;
gap&gt; SetName( g18, "g18" );
gap&gt; gen18 := GeneratorsOfGroup( g18 );;
gap&gt; g1 := gen18[1];;  g2 := gen18[2];;  g3 := gen18[3];;
gap&gt; s3 := Subgroup( g18, gen18{[2..3]} );;
gap&gt; SetName( s3, "s3" );;
gap&gt; t := GroupHomomorphismByImages( g18, s3, gen18, [g2,g2,g3] );;
gap&gt; h := GroupHomomorphismByImages( g18, s3, gen18, [(),g2,g3] );;
gap&gt; e := GroupHomomorphismByImages( s3, g18, [g2,g3], [g2,g3] );;
gap&gt; C3 := Cat1( t, h, e );
[g18=&gt;s3]
gap&gt; SetName( Kernel(t), "c3" );;
gap&gt; X3 := XModOfCat1( C3 );;
gap&gt; Display( X3 );
Crossed module [c3-&gt;s3] :-
: Source group has generators:
  [ ( 1, 2, 3)( 4, 6, 5) ]
: Range group has generators:
  [ (4,5,6), (2,3)(5,6) ]
: Boundary homomorphism maps source generators to:
  [ (4,6,5) ]
: Action homomorphism maps range generators to automorphisms:
  (4,5,6) --&gt; { source gens --&gt; [ (1,2,3)(4,6,5) ] }
  (2,3)(5,6) --&gt; { source gens --&gt; [ (1,3,2)(4,5,6) ] }
  These 2 automorphisms generate the group of automorphisms.
: associated cat1-group is [g18=&gt;s3]

gap&gt; imchi := [ (1,2,3)(4,6,5), (1,2,3)(4,6,5) ];;
gap&gt; chi := DerivationByImages( X3, imchi );
DerivationByImages( s3, c3, [ (4,5,6), (2,3)(5,6) ],
[ (1,2,3)(4,6,5), (1,2,3)(4,6,5) ] )

</pre></td></tr></table>

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

<h5>4.1-3 SectionByImages</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; SectionByImages</code>( <var class="Arg">C, ims</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">&gt; SectionByDerivation</code>( <var class="Arg">chi</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">&gt; DerivationBySection</code>( <var class="Arg">xi</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Sections <em>are</em> group homomorphisms, so do not need a special representation. Operations <code class="code">SectionByDerivation</code> and <code class="code">DerivationBySection</code> convert derivations to sections, and vice-versa, calling <code class="code">Cat1OfXMod</code> and <code class="code">XModOfCat1</code> automatically.</p>

<p>Two strategies for calculating derivations and sections are implemented, see <a href="chapBib.html#biBAW1">[AW00]</a>. The default method for <code class="code">AllDerivations</code> is to search for all possible sets of images using a backtracking procedure, and when all the derivations are found it is not known which are regular. In the <strong class="pkg">GAP</strong>3 version of this package, the default method for <code class="code">AllSections( &lt;C&gt; )</code> was to compute all endomorphisms on the range group <code class="code">R</code> of <code class="code">C</code> as possibilities for the composite h xi. A backtrack method then found possible images for such a section. In the current version the derivations of the associated crossed module are calculated, and these are all converted to sections using <code class="code">SectionByDerivation</code>.</p>


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

gap&gt; xi := SectionByDerivation( chi );
[ (4,5,6), (2,3)(5,6) ] -&gt; [ (1,2,3), (1,2)(4,6) ]

</pre></td></tr></table>

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

<h4>4.2 <span class="Heading">Whitehead Groups and Monoids</span></h4>

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

<h5>4.2-1 RegularDerivations</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; RegularDerivations</code>( <var class="Arg">X0</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; AllDerivations</code>( <var class="Arg">X0</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; RegularSections</code>( <var class="Arg">C0</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; AllSections</code>( <var class="Arg">C0</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; ImagesList</code>( <var class="Arg">obj</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; ImagesTable</code>( <var class="Arg">obj</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>There are two functions to determine the elements of the Whitehead group and the Whitehead monoid of mathcalX0, namely <code class="code">RegularDerivations</code> and <code class="code">AllDerivations</code>. (The functions <code class="code">RegularSections</code> and <code class="code">AllSections</code> perform corresponding tasks for a cat1-group.)</p>

<p>Using our example <code class="code">X3</code> we find that there are just nine derivations, six of them regular, and the associated group is isomorphic to <code class="code">s3</code>.</p>


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

gap&gt; all3 := AllDerivations( X3 );;
gap&gt; imall3 := ImagesList( all3 );; Display( imall3 );
[ [ (), () ],
  [ (), ( 1, 2, 3)( 4, 6, 5) ],
  [ (), ( 1, 3, 2)( 4, 5, 6) ],
  [ ( 1, 2, 3)( 4, 6, 5), () ],
  [ ( 1, 2, 3)( 4, 6, 5), ( 1, 2, 3)( 4, 6, 5) ],
  [ ( 1, 2, 3)( 4, 6, 5), ( 1, 3, 2)( 4, 5, 6) ],
  [ ( 1, 3, 2)( 4, 5, 6), () ],
  [ ( 1, 3, 2)( 4, 5, 6), ( 1, 2, 3)( 4, 6, 5) ],
  [ ( 1, 3, 2)( 4, 5, 6), ( 1, 3, 2)( 4, 5, 6) ]
  ]
gap&gt; KnownAttributesOfObject( all3 );
[ "Object2d", "ImagesList", "AllOrRegular", "ImagesTable" ]
gap&gt; Display( ImagesTable( all3 ) );
[ [  1,  1,  1,  1,  1,  1 ],
  [  1,  1,  1,  2,  2,  2 ],
  [  1,  1,  1,  3,  3,  3 ],
  [  1,  2,  3,  1,  2,  3 ],
  [  1,  2,  3,  2,  3,  1 ],
  [  1,  2,  3,  3,  1,  2 ],
  [  1,  3,  2,  1,  3,  2 ],
  [  1,  3,  2,  2,  1,  3 ],
  [  1,  3,  2,  3,  2,  1 ] ]

</pre></td></tr></table>

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

<h5>4.2-2 CompositeDerivation</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; CompositeDerivation</code>( <var class="Arg">chi1, chi2</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">&gt; ImagePositions</code>( <var class="Arg">chi</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; CompositeSection</code>( <var class="Arg">xi1, xi2</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>The Whitehead product chi_1 star chi_2 is implemented as <code class="code">CompositeDerivation( &lt;chi1&gt;, &lt;chi2&gt; )</code>. The composite of two sections is just the composite of homomorphisms.</p>


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

gap&gt; reg3 := RegularDerivations( X3 );;
gap&gt; imder3 := ImagesList( reg3 );;
gap&gt; chi4 := DerivationByImages( X3, imder3[4] );
DerivationByImages( s3, c3, [ (4,5,6), (2,3)(5,6) ], 
[ ( 1, 3, 2)( 4, 5, 6), () ] )
gap&gt; chi5 := DerivationByImages( X3, imder3[5] );
DerivationByImages( s3, c3, [ (4,5,6), (2,3)(5,6) ], 
[ ( 1, 3, 2)( 4, 5, 6), ( 1, 2, 3)( 4, 6, 5) ] )
gap&gt; im4 := ImagePositions( chi4 );
[ 1, 3, 2, 1, 3, 2 ] 
gap&gt; im5 := ImagePositions( chi5 );
[ 1, 3, 2, 2, 1, 3 ] 
gap&gt; chi45 := chi4 * chi5;
DerivationByImages( s3, c3, [ (4,5,6), (2,3)(5,6) ], 
[ (), ( 1, 2, 3)( 4, 6, 5) ] )
gap&gt; im45 := ImagePositions( chi45 );
[ 1, 1, 1, 2, 2, 2 ]  
gap&gt; pos := Position( imder3, GeneratorImages( chi45 ) );
2

</pre></td></tr></table>

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

<h5>4.2-3 WhiteheadGroupTable</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; WhiteheadGroupTable</code>( <var class="Arg">X0</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; WhiteheadMonoidTable</code>( <var class="Arg">X0</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; WhiteheadPermGroup</code>( <var class="Arg">X0</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; WhiteheadTransMonoid</code>( <var class="Arg">X0</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Multiplication tables for the Whitehead group or monoid enable the construction of permutation or transformation representations.</p>


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

gap&gt; wgt3 := WhiteheadGroupTable( X3 );; Display( wgt3 );
[ [  1,  2,  3,  4,  5,  6 ],
  [  2,  3,  1,  5,  6,  4 ],
  [  3,  1,  2,  6,  4,  5 ],
  [  4,  6,  5,  1,  3,  2 ],
  [  5,  4,  6,  2,  1,  3 ],
  [  6,  5,  4,  3,  2,  1 ] ]
gap&gt; wpg3 := WhiteheadPermGroup( X3 );
Group([ (1,2,3)(4,5,6), (1,4)(2,6)(3,5) ])
gap&gt; wmt3 := WhiteheadMonoidTable( X3 );; Display( wmt3 );
[ [  1,  2,  3,  4,  5,  6,  7,  8,  9 ],
  [  2,  3,  1,  5,  6,  4,  8,  9,  7 ],
  [  3,  1,  2,  6,  4,  5,  9,  7,  8 ],
  [  4,  4,  4,  4,  4,  4,  4,  4,  4 ],
  [  5,  5,  5,  5,  5,  5,  5,  5,  5 ],
  [  6,  6,  6,  6,  6,  6,  6,  6,  6 ],
  [  7,  9,  8,  4,  6,  5,  1,  3,  2 ],
  [  8,  7,  9,  5,  4,  6,  2,  1,  3 ],
  [  9,  8,  7,  6,  5,  4,  3,  2,  1 ] ]
gap&gt; wtm3 := WhiteheadTransMonoid( X3 );
Monoid( [ Transformation( [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ] ),
  Transformation( [ 2, 3, 1, 5, 6, 4, 8, 9, 7 ] ),
  Transformation( [ 3, 1, 2, 6, 4, 5, 9, 7, 8 ] ),
  Transformation( [ 4, 4, 4, 4, 4, 4, 4, 4, 4 ] ),
  Transformation( [ 5, 5, 5, 5, 5, 5, 5, 5, 5 ] ),
  Transformation( [ 6, 6, 6, 6, 6, 6, 6, 6, 6 ] ),
  Transformation( [ 7, 9, 8, 4, 6, 5, 1, 3, 2 ] ),
  Transformation( [ 8, 7, 9, 5, 4, 6, 2, 1, 3 ] ),
  Transformation( [ 9, 8, 7, 6, 5, 4, 3, 2, 1 ] ) ], ... )

</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="chap5.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="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="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>