<!-- This is an automatically generated file. -->
<Chapter Label="Chapter_Pregroups">
<Heading>Pregroups</Heading>
<P/>
Pregroups are the fundamental building block of pregroup presentations used
in the hyperbolicity tester.
<Section Label="Chapter_Pregroups_Section_Creating_Pregroups">
<Heading>Creating Pregroups</Heading>
<P/>
This section describes functions to create pregroups from multiplication
tables, free groups, and free products of finite groups.
<ManSection Label="PregroupByTableGrp">
<Func Arg="enams, table" Name="PregroupByTable" />
<Func Arg="arg" Name="PregroupByTableNC" />
<Returns>A pregroup
</Returns>
<Description>
If <A>enams</A> is a list of element names, which can be arbitrary GAP objects,
with the convention that <C>enams[1]</C> is the name of the identity element, and
<A>table</A> is a square table of non-negative integers that is the multiplication
table of a pregroup, then <Ref Func="PregroupByTable"/> and
<Ref Func="PregroupByTableNC"/> return a pregroup in multiplication
table representation.
<P/>
By convention the elements of the pregroup are numbered <C>[1..n]</C> with
<C>0</C> denoting an undefined product in the table.
<P/>
The axioms for a pregroup are checked by <Ref Func="PregroupByTable"/> and
not checked by <Ref Func="PregroupByTableNC"/>.
<Example><![CDATA[
gap> pregroup := PregroupByTable( "1xyY",
> [ [1,2,3,4]
> , [2,1,0,0]
> , [3,4,0,1]
> , [4,0,1,3] ] );
<pregroup with 4 elements in table rep>
]]></Example>
<P/>
</Description>
</ManSection>
<ManSection>
<Oper Arg="F, rrel, inv" Name="PregroupByRedRelators" Label="for IsFreeGroup, IsList, IsList"/>
<Returns>A pregroup in table representation
</Returns>
<Description>
Construct a pregroup from the list <A>rrel</A> of red relators and the list
<A>inv</A> of involutions over the free group <A>F</A>.
The argument <A>rred</A> has to be a list of elements of length 3 in the
free group <A>F</A>, and <A>inv</A> has to be a list of generators of <A>F</A>.
</Description>
</ManSection>
<ManSection>
<Oper Arg="G, H" Name="PregroupOfFreeProduct" Label="for IsGroup, IsGroup"/>
<Description>
Construct the pregroup of the free product of <A>G</A> and <A>H</A>.
If <A>G</A> and <A>H</A> are finite groups, then
<Ref Oper="PregroupOfFreeProduct" Label="for IsGroup, IsGroup"/> returns the pregroup consisting of the
non-identity elements of <A>G</A> and <A>H</A> and an identity element.
A product between two non-trivial elements is defined if and only if they are
in the same group.
<P/>
<Example><![CDATA[
gap> pregroup := PregroupOfFreeProduct(SmallGroup(12,2), SmallGroup(24,4));
<pregroup with 35 elements in table rep>
]]></Example>
</Description>
</ManSection>
<ManSection>
<Func Arg="F" Name="PregroupOfFreeGroup" />
<Description>
Return the pregroup of the free group <A>F</A>
</Description>
</ManSection>
<P/>
</Section>
<Section Label="Chapter_Pregroups_Section_Filters_and_Representations">
<Heading>Filters and Representations</Heading>
<P/>
This section gives an overview over the filters, categories
and representations defined by &walrus;
<P/>
<ManSection>
<Filt Arg="arg" Name="IsPregroup" Label="for IsObject and IsCollection"/>
<Returns><K>true</K> or <K>false</K>
</Returns>
<Description>
<P/>
</Description>
</ManSection>
<ManSection>
<Filt Arg="arg" Name="IsPregroupTableRep" Label="for IsPregroup andIsComponentObjectRep andIsAttributeStoringRep"/>
<Returns><K>true</K> or <K>false</K>
</Returns>
<Description>
A pregroup represented by its multiplication table, which is a
square table of integers between 0 and the size of the pregroup,
where 0 represents an undefined multiplication.
</Description>
</ManSection>
<ManSection>
<Filt Arg="arg" Name="IsPregroupOfFreeGroupRep" Label="for IsPregroup andIsComponentObjectRep andIsAttributeStoringRep"/>
<Returns><K>true</K> or <K>false</K>
</Returns>
<Description>
Pregroup of a free group of rank <M>k</M>. The
only defined products are <M>1\cdot x = x \cdot 1 = x</M>
and <M>xx^{-1} = x^{-1}x = 1</M>, for all generators <M>x</M>.
</Description>
</ManSection>
<ManSection>
<Filt Arg="arg" Name="IsPregroupOfFreeProductRep" Label="for IsPregroup andIsComponentObjectRep andIsAttributeStoringRep"/>
<Returns><K>true</K> or <K>false</K>
</Returns>
<Description>
Pregroup of the free product of a list of groups where
products between non-trivial elements <M>g</M>, <M>h</M>
are defined if <M>g,h</M> are contained in the same
group.
</Description>
</ManSection>
</Section>
<Section Label="Chapter_Pregroups_Section_Attributes_Properties_and_Operations">
<Heading>Attributes, Properties, and Operations</Heading>
<P/>
This section gives an overview over the attributes, properties,
and operatins defined for pregroups.
<P/>
<ManSection>
<Oper Arg="pregroup,i" Name="[]" Label="for IsPregroup, IsInt"/>
<Description>
Get the <A>i</A>th element of <A>pregroup</A>. By convention
the <M>1</M>st element is the identity element.
</Description>
</ManSection>
<ManSection>
<Attr Arg="pregroup" Name="IntermultPairs" Label="for IsPregroup"/>
<Description>
Returns the set of intermult pairs of the pregroup
</Description>
</ManSection>
<ManSection>
<Attr Arg="pregroup" Name="One" Label="for IsPregroup"/>
<Description>
The identity element of <A>pregroup</A>.
</Description>
</ManSection>
<ManSection>
<Attr Arg="pregroup" Name="MultiplicationTable" Label="for IsPregroup"/>
<Description>
The multiplication table of <A>pregroup</A>
</Description>
</ManSection>
<ManSection>
<Oper Arg="pregroup, names" Name="SetPregroupElementNames" Label="for IsPregroup, IsList"/>
<Description>
Can be used to set more user-friendly display names for
the elements of <A>pregroup</A>. The list <A>names</A>
has to be of length <C>Size(<A>pregroup</A>)</C>.
</Description>
</ManSection>
<ManSection>
<Oper Arg="pregroup" Name="PregroupElementNames" Label="for IsPregroup"/>
<Description>
Return the list of names of elements of <A>pregroup</A>
</Description>
</ManSection>
</Section>
<Section Label="Chapter_Pregroups_Section_Elements_of_Pregroups">
<Heading>Elements of Pregroups</Heading>
<ManSection>
<Filt Arg="arg" Name="IsElementOfPregroupRep" Label="for IsElementOfPregroup and IsComponentObjectRep"/>
<Returns><K>true</K> or <K>false</K>
</Returns>
<Description>
<P/>
</Description>
</ManSection>
<ManSection>
<Filt Arg="arg" Name="IsElementOfPregroupOfFreeGroupRep" Label="for IsElementOfPregroup and IsComponentObjectRep"/>
<Returns><K>true</K> or <K>false</K>
</Returns>
<Description>
<P/>
</Description>
</ManSection>
<ManSection>
<Attr Arg="p" Name="PregroupOf" Label="for IsElementOfPregroup"/>
<Description>
The pregroup that the element <A>p</A> is contained in.
</Description>
</ManSection>
<ManSection>
<Oper Arg="p, q" Name="IsDefinedMultiplication" Label="for IsElementOfPregroup, IsElementOfPregroup"/>
<Description>
Tests whether the multiplication of <A>p</A> and <A>q</A> is
defined in the pregroup containing <A>p</A> and <A>q</A>.
</Description>
</ManSection>
<ManSection>
<Oper Arg="p, q" Name="IsIntermultPair" Label="for IsElementOfPregroup, IsElementOfPregroup"/>
<Description>
Tests whether <M>(<A>p</A>, <A>q</A>)</M> is an intermult pair.
defined.
</Description>
</ManSection>
<ManSection>
<Attr Arg="p" Name="PregroupInverse" Label="for IsElementOfPregroup"/>
<Description>
Return the inverse of <A>p</A>.
</Description>
</ManSection>
This package contains a small database of pregroups of sizes <M>1</M> to
<M>7</M>. The database was computed by Chris Jefferson using the Minion constraint solver.
<P/>
These small pregroups currently used for testing. Accessing the small
pregroups database works as follows.
<ManSection>
<Func Arg="n" Name="NrSmallPregroups" />
<Returns>an integer.
</Returns>
<Description>
Returns the number of pregroups of size <A>n</A> available in the database.
</Description>
</ManSection>
<ManSection>
<Func Arg="n, i" Name="SmallPregroup" />
<Returns>a pregroup.
</Returns>
<Description>
Returns the <A>i</A>th pregroup of size <A>n</A> from the database of small pregroups.
</Description>
</ManSection>
</Section>
</Chapter>
¤ Dauer der Verarbeitung: 0.25 Sekunden
(vorverarbeitet)
¤
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.