Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 91213ddcfbe7f54821d42c2d9e091326 > files > 1198

gap-system-packages-4.4.12-5mdv2010.0.i586.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 (Gpd) - Chapter 2: Many-object structures</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="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="chap1.html">Previous Chapter</a>&nbsp;  &nbsp;<a href="chap3.html">Next Chapter</a>&nbsp;  </div>

<p><a id="X8361CEA4856430C6" name="X8361CEA4856430C6"></a></p>
<div class="ChapSects"><a href="chap2.html#X8361CEA4856430C6">2 <span class="Heading">Many-object structures</span></a>
<div class="ContSect"><span class="nocss">&nbsp;</span><a href="chap2.html#X79CE5DFF7ADC7744">2.1 <span class="Heading">Magmas with objects</span></a>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap2.html#X7C51D7847BD23284">2.1-1 MagmaWithObjects</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap2.html#X79D2548F7DD8C6E7">2.1-2 MultiplicativeElementWithObjects</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap2.html#X7C0911667FF90DB2">2.1-3 IsSinglePiece</a></span>
</div>
</div>

<h3>2 <span class="Heading">Many-object structures</span></h3>

<p>A <em>magma with objects</em> M consists of a set of <em>objects</em> Ob(M), and a set of <em>arrows</em> Arr(M) together with <em>tail</em> and <em>head</em> maps t,h : Arr(M) -&gt; Ob(M), and a <em>partial multiplication</em> * : Arr(M) -&gt; Arr(M), with a*b defined precisely when the head of a coincides with the tail of b. We write an arrow a with tail u and head v as (a : u -&gt; v).</p>

<p>When this multiplication is associative we obtain a <em>semigroup with objects</em>.</p>

<p>A <em>loop</em> is an arrow whose tail and head are the same object. An <em>identity arrow</em> at object u is a loop (1_u : u -&gt; u) such that a*1_u=a and 1_u*b=b whenever u is the head of a and the tail of b. When M is a semigroup with objects and every object has an identity arrow, we obtain a <em>monoid with objects</em>, which is just the usual notion of mathematical category.</p>

<p>An arrow (a : u -&gt; v) in a monoid with objects has <em>inverse</em> (a^-1 : v -&gt; u) provided a*a^-1 = 1_u and a^-1*a = 1_v. A monoid with objects in which every arrow has an inverse is a <em>group with objects</em>, usually called a <em>groupoid</em>.</p>

<p>For the definitions of the standard properties of groupoids we refer to R. Brown's book ``Topology'' <a href="chapBib.html#biBBrTop">[Bro88]</a>, recently revised and reissued as ``Topology and Groupoids'' <a href="chapBib.html#biBBrTopGpd">[Bro06]</a>.</p>

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

<h4>2.1 <span class="Heading">Magmas with objects</span></h4>

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

<h5>2.1-1 MagmaWithObjects</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; MagmaWithObjects</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">&gt; ObjectList</code>( <var class="Arg">mwo</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; SemigroupithObjects</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">&gt; MonoidWithObjects</code>( <var class="Arg">args</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>The simplest construction for a magma with objects is to take a magma m and form arrows (u,x,v) for every x in m and every pair of objects (u,v). Multiplication is defined by (u,x,v)*(v,y,w) = (u,x*y,w).</p>

<p>Any finite, ordered set is in principle acceptable as the objects of M, but we will restrict ourselves to sets of negative integers here.</p>


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

gap&gt; tm := [[1,2,4,3],[1,2,4,3],[3,4,2,1],[3,4,2,1]];;  Display( tm );
[ [  1,  2,  4,  3 ],
  [  1,  2,  4,  3 ],
  [  3,  4,  2,  1 ],
  [  3,  4,  2,  1 ] ]
gap&gt; m := MagmaByMultiplicationTable( tm ); 
&lt;magma with 4 generators&gt;
gap&gt; SetName( m, "m" ); 
gap&gt; m1 := MagmaElement(m,1);; 
gap&gt; m2 := MagmaElement(m,2);; 
gap&gt; m3 := MagmaElement(m,3);; 
gap&gt; m4 := MagmaElement(m,4);; 
gap&gt; One(m); 
fail
gap&gt; M78 := MagmaWithObjects( [-8,-7], m ); 
Magma with objects :-
  objects = [ -8, -7 ]
    magma = m
gap&gt; [ IsAssociative(M78), IsCommutative(M78) ]; 
[ false, false ]

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

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

<h5>2.1-2 MultiplicativeElementWithObjects</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; MultiplicativeElementWithObjects</code>( <var class="Arg">mwo, elt, tail, head</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Elements in a magma with objects lie in the category <code class="code">IsMultiplicativeElementWithObjects</code>. An attempt to multiply two arrows which do not compose resuts in <code class="code">fail</code> being returned.</p>


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

gap&gt; a78 := MultiplicativeElementWithObjects( M78, m4, -7, -8 ); 
[m2 : -7 -&gt; -8]
gap&gt; b87 := MultiplicativeElementWithObjects( M78, m3, -8, -7 ); 
[m3 : -8 -&gt; -7]
gap&gt; ba := b87*a78; 
[m4 : -8 -&gt; -8]
gap&gt; ab := a78*b87;
[m4 : -7 -&gt; -7]
gap&gt; a78^2; 
fail
gap&gt; ba^2;
[m1 : -8 -&gt; -8]

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

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

<h5>2.1-3 IsSinglePiece</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&gt; IsSinglePiece</code>( <var class="Arg">mwo</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; IsDirectProductWithCompleteGraph</code>( <var class="Arg">mwo</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>If the partial composition is forgotten, then a digraph is left (usually with multiple edges and loops). Thus the notion of <em>connected component</em> may be inherited by magmas with objects from digraphs. Unfortunately the terms <code class="code">Component</code> and <code class="code">Constituent</code> are already in considerably use in <strong class="pkg">GAP</strong>, so (for now?) we use the term <code class="code">IsSinglePiece</code> to describe a connected magma with objects.</p>


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

gap&gt; IsSinglePiece( M78 ); 
true
gap&gt; IsDirectProductWithCompleteGraph( M78 );
true

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


<div class="chlinkprevnextbot">&nbsp;<a href="chap0.html">Top of Book</a>&nbsp;  &nbsp;<a href="chap1.html">Previous Chapter</a>&nbsp;  &nbsp;<a href="chap3.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="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>