This file is indexed.

/usr/share/gap/doc/ref/chap52.html is in gap-doc 4r6p5-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<?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 (ref) - Chapter 52: Monoids</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="chap52"  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="chap7.html">7</a>  <a href="chap8.html">8</a>  <a href="chap9.html">9</a>  <a href="chap10.html">10</a>  <a href="chap11.html">11</a>  <a href="chap12.html">12</a>  <a href="chap13.html">13</a>  <a href="chap14.html">14</a>  <a href="chap15.html">15</a>  <a href="chap16.html">16</a>  <a href="chap17.html">17</a>  <a href="chap18.html">18</a>  <a href="chap19.html">19</a>  <a href="chap20.html">20</a>  <a href="chap21.html">21</a>  <a href="chap22.html">22</a>  <a href="chap23.html">23</a>  <a href="chap24.html">24</a>  <a href="chap25.html">25</a>  <a href="chap26.html">26</a>  <a href="chap27.html">27</a>  <a href="chap28.html">28</a>  <a href="chap29.html">29</a>  <a href="chap30.html">30</a>  <a href="chap31.html">31</a>  <a href="chap32.html">32</a>  <a href="chap33.html">33</a>  <a href="chap34.html">34</a>  <a href="chap35.html">35</a>  <a href="chap36.html">36</a>  <a href="chap37.html">37</a>  <a href="chap38.html">38</a>  <a href="chap39.html">39</a>  <a href="chap40.html">40</a>  <a href="chap41.html">41</a>  <a href="chap42.html">42</a>  <a href="chap43.html">43</a>  <a href="chap44.html">44</a>  <a href="chap45.html">45</a>  <a href="chap46.html">46</a>  <a href="chap47.html">47</a>  <a href="chap48.html">48</a>  <a href="chap49.html">49</a>  <a href="chap50.html">50</a>  <a href="chap51.html">51</a>  <a href="chap52.html">52</a>  <a href="chap53.html">53</a>  <a href="chap54.html">54</a>  <a href="chap55.html">55</a>  <a href="chap56.html">56</a>  <a href="chap57.html">57</a>  <a href="chap58.html">58</a>  <a href="chap59.html">59</a>  <a href="chap60.html">60</a>  <a href="chap61.html">61</a>  <a href="chap62.html">62</a>  <a href="chap63.html">63</a>  <a href="chap64.html">64</a>  <a href="chap65.html">65</a>  <a href="chap66.html">66</a>  <a href="chap67.html">67</a>  <a href="chap68.html">68</a>  <a href="chap69.html">69</a>  <a href="chap70.html">70</a>  <a href="chap71.html">71</a>  <a href="chap72.html">72</a>  <a href="chap73.html">73</a>  <a href="chap74.html">74</a>  <a href="chap75.html">75</a>  <a href="chap76.html">76</a>  <a href="chap77.html">77</a>  <a href="chap78.html">78</a>  <a href="chap79.html">79</a>  <a href="chap80.html">80</a>  <a href="chap81.html">81</a>  <a href="chap82.html">82</a>  <a href="chap83.html">83</a>  <a href="chap84.html">84</a>  <a href="chap85.html">85</a>  <a href="chap86.html">86</a>  <a href="chap87.html">87</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;  <a href="chap0.html#contents">[Contents]</a>&nbsp;  &nbsp;<a href="chap51.html">[Previous Chapter]</a>&nbsp;  &nbsp;<a href="chap53.html">[Next Chapter]</a>&nbsp;  </div>

<p id="mathjaxlink" class="pcenter"><a href="chap52_mj.html">[MathJax on]</a></p>
<p><a id="X872FE34A7814C0DC" name="X872FE34A7814C0DC"></a></p>
<div class="ChapSects"><a href="chap52.html#X872FE34A7814C0DC">52 <span class="Heading">Monoids</span></a>
<div class="ContSect"><span class="tocline"><span class="nocss">&nbsp;</span><a href="chap52.html#X7F3D35A38738DEB9">52.1 <span class="Heading">Functions for Monoids</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap52.html#X861C523483C6248C">52.1-1 IsMonoid</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap52.html#X7F95328B7C7E49EA">52.1-2 <span class="Heading">Monoid</span></a>
</span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap52.html#X8322D01E84912FD7">52.1-3 Submonoid</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap52.html#X85129EE387CC4D28">52.1-4 MonoidByGenerators</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap52.html#X7B22038F832B9C0F">52.1-5 AsMonoid</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap52.html#X7C9A12DE8287B2D3">52.1-6 AsSubmonoid</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap52.html#X83CA2E7279C44718">52.1-7 GeneratorsOfMonoid</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap52.html#X7EC77C0184587181">52.1-8 TrivialSubmonoid</a></span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap52.html#X79FA3FA978CA2E43">52.1-9 <span class="Heading">FreeMonoid</span></a>
</span>
<span class="ContSS"><br /><span class="nocss">&nbsp;&nbsp;</span><a href="chap52.html#X7BFE938E857CA27D">52.1-10 MonoidByMultiplicationTable</a></span>
</div></div>
</div>

<h3>52 <span class="Heading">Monoids</span></h3>

<p>This chapter describes functions for monoids. Currently there are only few of them. More general functions for magmas and semigroups can be found in Chapters <a href="chap35.html#X873E502F7D21C39C"><span class="RefLink">35</span></a> and <a href="chap51.html#X80AF5F307DBDC2B4"><span class="RefLink">51</span></a>.</p>

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

<h4>52.1 <span class="Heading">Functions for Monoids</span></h4>

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

<h5>52.1-1 IsMonoid</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&#8227; IsMonoid</code>( <var class="Arg">D</var> )</td><td class="tdright">( property )</td></tr></table></div>
<p>A <em>monoid</em> is a magma-with-one (see <a href="chap35.html#X873E502F7D21C39C"><span class="RefLink">35</span></a>) with associative multiplication.</p>

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

<h5>52.1-2 <span class="Heading">Monoid</span></h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&#8227; Monoid</code>( <var class="Arg">gen1</var>, <var class="Arg">gen2</var>, <var class="Arg">...</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">&#8227; Monoid</code>( <var class="Arg">gens</var>[, <var class="Arg">id</var>] )</td><td class="tdright">( function )</td></tr></table></div>
<p>In the first form, <code class="func">Monoid</code> returns the monoid generated by the arguments <var class="Arg">gen1</var>, <var class="Arg">gen2</var>, <span class="SimpleMath">...</span>, that is, the closure of these elements under multiplication and taking the 0-th power. In the second form, <code class="func">Monoid</code> returns the monoid generated by the elements in the homogeneous list <var class="Arg">gens</var>; a square matrix as only argument is treated as one generator, not as a list of generators. In the second form, the identity element <var class="Arg">id</var> may be given as the second argument.</p>

<p>It is <em>not</em> checked whether the underlying multiplication is associative, use <code class="func">MagmaWithOne</code> (<a href="chap35.html#X7854B23286B17321"><span class="RefLink">35.2-2</span></a>) and <code class="func">IsAssociative</code> (<a href="chap35.html#X7C83B5A47FD18FB7"><span class="RefLink">35.4-7</span></a>) if you want to check whether a magma-with-one is in fact a monoid.</p>

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

<h5>52.1-3 Submonoid</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&#8227; Submonoid</code>( <var class="Arg">M</var>, <var class="Arg">gens</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">&#8227; SubmonoidNC</code>( <var class="Arg">M</var>, <var class="Arg">gens</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>are just synonyms of <code class="func">SubmagmaWithOne</code> (<a href="chap35.html#X7F295EBC7A9CE87E"><span class="RefLink">35.2-8</span></a>) and <code class="func">SubmagmaWithOneNC</code> (<a href="chap35.html#X7F295EBC7A9CE87E"><span class="RefLink">35.2-8</span></a>), respectively.</p>

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

<h5>52.1-4 MonoidByGenerators</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&#8227; MonoidByGenerators</code>( <var class="Arg">gens</var>[, <var class="Arg">one</var>] )</td><td class="tdright">( operation )</td></tr></table></div>
<p>is the underlying operation of <code class="func">Monoid</code> (<a href="chap52.html#X7F95328B7C7E49EA"><span class="RefLink">52.1-2</span></a>).</p>

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

<h5>52.1-5 AsMonoid</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&#8227; AsMonoid</code>( <var class="Arg">C</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>If <var class="Arg">C</var> is a collection whose elements form a monoid (see <code class="func">IsMonoid</code> (<a href="chap52.html#X861C523483C6248C"><span class="RefLink">52.1-1</span></a>)) then <code class="func">AsMonoid</code> returns this monoid. Otherwise <code class="keyw">fail</code> is returned.</p>

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

<h5>52.1-6 AsSubmonoid</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&#8227; AsSubmonoid</code>( <var class="Arg">D</var>, <var class="Arg">C</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Let <var class="Arg">D</var> be a domain and <var class="Arg">C</var> a collection. If <var class="Arg">C</var> is a subset of <var class="Arg">D</var> that forms a monoid then <code class="func">AsSubmonoid</code> returns this monoid, with parent <var class="Arg">D</var>. Otherwise <code class="keyw">fail</code> is returned.</p>

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

<h5>52.1-7 GeneratorsOfMonoid</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&#8227; GeneratorsOfMonoid</code>( <var class="Arg">M</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Monoid generators of a monoid <var class="Arg">M</var> are the same as magma-with-one generators (see <code class="func">GeneratorsOfMagmaWithOne</code> (<a href="chap35.html#X87DD93EC8061DD81"><span class="RefLink">35.4-2</span></a>)).</p>

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

<h5>52.1-8 TrivialSubmonoid</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&#8227; TrivialSubmonoid</code>( <var class="Arg">M</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>is just a synonym for <code class="func">TrivialSubmagmaWithOne</code> (<a href="chap35.html#X837DA95883CFB985"><span class="RefLink">35.4-14</span></a>).</p>

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

<h5>52.1-9 <span class="Heading">FreeMonoid</span></h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&#8227; FreeMonoid</code>( [<var class="Arg">wfilt</var>, ]<var class="Arg">rank</var>[, <var class="Arg">name</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">&#8227; FreeMonoid</code>( [<var class="Arg">wfilt</var>, ]<var class="Arg">name1</var>, <var class="Arg">name2</var>, <var class="Arg">...</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">&#8227; FreeMonoid</code>( [<var class="Arg">wfilt</var>, ]<var class="Arg">names</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">&#8227; FreeMonoid</code>( [<var class="Arg">wfilt</var>, ]<var class="Arg">infinity</var>, <var class="Arg">name</var>, <var class="Arg">init</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Called with a positive integer <var class="Arg">rank</var>, <code class="func">FreeMonoid</code> returns a free monoid on <var class="Arg">rank</var> generators. If the optional argument <var class="Arg">name</var> is given then the generators are printed as <var class="Arg">name</var><code class="code">1</code>, <var class="Arg">name</var><code class="code">2</code> etc., that is, each name is the concatenation of the string <var class="Arg">name</var> and an integer from <code class="code">1</code> to <var class="Arg">range</var>. The default for <var class="Arg">name</var> is the string <code class="code">"m"</code>.</p>

<p>Called in the second form, <code class="func">FreeMonoid</code> returns a free monoid on as many generators as arguments, printed as <var class="Arg">name1</var>, <var class="Arg">name2</var> etc.</p>

<p>Called in the third form, <code class="func">FreeMonoid</code> returns a free monoid on as many generators as the length of the list <var class="Arg">names</var>, the <span class="SimpleMath">i</span>-th generator being printed as <var class="Arg">names</var><code class="code">[</code><span class="SimpleMath">i</span><code class="code">]</code>.</p>

<p>Called in the fourth form, <code class="func">FreeMonoid</code> returns a free monoid on infinitely many generators, where the first generators are printed by the names in the list <var class="Arg">init</var>, and the other generators by <var class="Arg">name</var> and an appended number.</p>

<p>If the extra argument <var class="Arg">wfilt</var> is given, it must be either <code class="func">IsSyllableWordsFamily</code> (<a href="chap37.html#X7869716C84EA9D81"><span class="RefLink">37.6-6</span></a>) or <code class="func">IsLetterWordsFamily</code> (<a href="chap37.html#X7E36F7897D82417F"><span class="RefLink">37.6-2</span></a>) or <code class="func">IsWLetterWordsFamily</code> (<a href="chap37.html#X8719E7F27CDA1995"><span class="RefLink">37.6-4</span></a>) or <code class="func">IsBLetterWordsFamily</code> (<a href="chap37.html#X8719E7F27CDA1995"><span class="RefLink">37.6-4</span></a>). This filter then specifies the representation used for the elements of the free monoid (see <a href="chap37.html#X80A9F39582ED296E"><span class="RefLink">37.6</span></a>). If no such filter is given, a letter representation is used.</p>

<p>Also see Chapter <a href="chap52.html#X872FE34A7814C0DC"><span class="RefLink">52</span></a>.</p>

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

<h5>52.1-10 MonoidByMultiplicationTable</h5>

<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">&#8227; MonoidByMultiplicationTable</code>( <var class="Arg">A</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>returns the monoid whose multiplication is defined by the square matrix <var class="Arg">A</var> (see <code class="func">MagmaByMultiplicationTable</code> (<a href="chap35.html#X85CD1E7678295CA6"><span class="RefLink">35.3-1</span></a>)) if such a monoid exists. Otherwise <code class="keyw">fail</code> is returned.</p>


<div class="chlinkprevnextbot">&nbsp;<a href="chap0.html">[Top of Book]</a>&nbsp;  <a href="chap0.html#contents">[Contents]</a>&nbsp;  &nbsp;<a href="chap51.html">[Previous Chapter]</a>&nbsp;  &nbsp;<a href="chap53.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="chap10.html">10</a>  <a href="chap11.html">11</a>  <a href="chap12.html">12</a>  <a href="chap13.html">13</a>  <a href="chap14.html">14</a>  <a href="chap15.html">15</a>  <a href="chap16.html">16</a>  <a href="chap17.html">17</a>  <a href="chap18.html">18</a>  <a href="chap19.html">19</a>  <a href="chap20.html">20</a>  <a href="chap21.html">21</a>  <a href="chap22.html">22</a>  <a href="chap23.html">23</a>  <a href="chap24.html">24</a>  <a href="chap25.html">25</a>  <a href="chap26.html">26</a>  <a href="chap27.html">27</a>  <a href="chap28.html">28</a>  <a href="chap29.html">29</a>  <a href="chap30.html">30</a>  <a href="chap31.html">31</a>  <a href="chap32.html">32</a>  <a href="chap33.html">33</a>  <a href="chap34.html">34</a>  <a href="chap35.html">35</a>  <a href="chap36.html">36</a>  <a href="chap37.html">37</a>  <a href="chap38.html">38</a>  <a href="chap39.html">39</a>  <a href="chap40.html">40</a>  <a href="chap41.html">41</a>  <a href="chap42.html">42</a>  <a href="chap43.html">43</a>  <a href="chap44.html">44</a>  <a href="chap45.html">45</a>  <a href="chap46.html">46</a>  <a href="chap47.html">47</a>  <a href="chap48.html">48</a>  <a href="chap49.html">49</a>  <a href="chap50.html">50</a>  <a href="chap51.html">51</a>  <a href="chap52.html">52</a>  <a href="chap53.html">53</a>  <a href="chap54.html">54</a>  <a href="chap55.html">55</a>  <a href="chap56.html">56</a>  <a href="chap57.html">57</a>  <a href="chap58.html">58</a>  <a href="chap59.html">59</a>  <a href="chap60.html">60</a>  <a href="chap61.html">61</a>  <a href="chap62.html">62</a>  <a href="chap63.html">63</a>  <a href="chap64.html">64</a>  <a href="chap65.html">65</a>  <a href="chap66.html">66</a>  <a href="chap67.html">67</a>  <a href="chap68.html">68</a>  <a href="chap69.html">69</a>  <a href="chap70.html">70</a>  <a href="chap71.html">71</a>  <a href="chap72.html">72</a>  <a href="chap73.html">73</a>  <a href="chap74.html">74</a>  <a href="chap75.html">75</a>  <a href="chap76.html">76</a>  <a href="chap77.html">77</a>  <a href="chap78.html">78</a>  <a href="chap79.html">79</a>  <a href="chap80.html">80</a>  <a href="chap81.html">81</a>  <a href="chap82.html">82</a>  <a href="chap83.html">83</a>  <a href="chap84.html">84</a>  <a href="chap85.html">85</a>  <a href="chap86.html">86</a>  <a href="chap87.html">87</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>