<Chapter><Heading> Miscellaneous</Heading>

<Section><Heading> &nbsp;</Heading>

<ManSection>

<Func Name="SL2Z" Arg="p"/>

<Func Name="SL2Z" Arg="1/m"/>
<Description>
<P/>

Inputs a prime <M>p</M> or the reciprocal <M>1/m</M> of  a 
 square free integer <M>m</M>. In the first case the function
 returns the conjugate <M>SL(2,Z)^P</M> of the special linear group <M>SL(2,Z)</M>
by the matrix <M>P=[[1,0],[0,p]]</M>. In the second case it returns the group <M>SL(2,Z[1/m])</M>. 

<P/><B>Examples:</B> <URL><Link>../tutorial/chap11.html</Link><LinkText>1</LinkText></URL>&nbsp;,
<URL><Link>../www/SideLinks/About/aboutArithmetic.html</Link><LinkText>2</LinkText></URL>&nbsp;,
<URL><Link>../www/SideLinks/About/aboutIntro.html</Link><LinkText>3</LinkText></URL>&nbsp; 

</Description>

























































































































</ManSection>

<ManSection>

<Func Name="BigStepLCS" Arg="G,n"/>
<Description>
<P/>

Inputs a group <M>G</M> and a positive integer <M>n</M>. 
It returns a subseries <M>G=L_1</M>&tgt;<M>L_2</M>&tgt;<M> \ldots L_k=1</M> of the lower central series of 
<M>G</M> such that <M>L_i/L_{i+1}</M> has order greater than <M>n</M>.
<P/><B>Examples:</B> <URL><Link>../www/SideLinks/About/aboutPerformance.html</Link><LinkText>1</LinkText></URL>&nbsp;,
<URL><Link>../www/SideLinks/About/aboutExtensions.html</Link><LinkText>2</LinkText></URL>&nbsp; 

</Description>

























































































































</ManSection>

<ManSection>

<Func Name="Classify" Arg="L,Inv"/>
<Description>
<P/>

Inputs a list of objects <M>L</M> and a function <M>Inv</M> which
computes an invariant of each object. It returns a list of lists which classifies the objects of <M>L</M> according to the invariant..
<P/><B>Examples:</B> <URL><Link>../tutorial/chap5.html</Link><LinkText>1</LinkText></URL>&nbsp;,
<URL><Link>../www/SideLinks/About/aboutQuandles2.html</Link><LinkText>2</LinkText></URL>&nbsp;,
<URL><Link>../www/SideLinks/About/aboutQuandles.html</Link><LinkText>3</LinkText></URL>&nbsp;,
<URL><Link>../www/SideLinks/About/aboutquasi.html</Link><LinkText>4</LinkText></URL>&nbsp;,
<URL><Link>../www/SideLinks/About/aboutTensorSquare.html</Link><LinkText>5</LinkText></URL>&nbsp; 

</Description>

























































































































</ManSection>

<ManSection>

<Func Name="RefineClassification" Arg="C,Inv"/>
<Description>
<P/>

Inputs a list <M>C:=Classify(L,OldInv)</M> and returns a refined classification according to the invariant <M>Inv</M>.
<P/><B>Examples:</B> <URL><Link>../www/SideLinks/About/aboutQuandles2.html</Link><LinkText>1</LinkText></URL>&nbsp;,
<URL><Link>../www/SideLinks/About/aboutQuandles.html</Link><LinkText>2</LinkText></URL>&nbsp; 

</Description>

























































































































</ManSection>

<ManSection>

<Func Name="Compose" Arg="f,g"/>
<Description>
<P/>

Inputs two <M>FpG</M>-module homomorphisms <M>
f:M \longrightarrow N</M> and <M>g:L \longrightarrow M</M>
with <M>Source(f)=Target(g)</M> . 
It returns the composite homomorphism <M>fg:L \longrightarrow N</M> .
<P/>
This also applies to group homomorphisms <M>f,g</M>.
<P/><B>Examples:</B> <URL><Link>../www/SideLinks/About/aboutFunctorial.html</Link><LinkText>1</LinkText></URL>&nbsp; 

</Description>

























































































































</ManSection>
<ManSection>

<Func Name="HAPcopyright" Arg=""/>
<Description>
<P/>

This function provides details of HAP'S GNU public copyright licence.
<P/><B>Examples:</B> 
</Description>

























































































































</ManSection>
<ManSection>

<Func Name="IsLieAlgebraHomomorphism" Arg="f"/>
<Description>
<P/>

Inputs an object <M>f</M> and returns true if <M>f</M>
is a homomorphism <M>f:A \longrightarrow B</M>
of Lie algebras (preserving the Lie bracket).
<P/><B>Examples:</B> 
</Description>

























































































































</ManSection>

<ManSection>

<Func Name="IsSuperperfect" Arg="G"/>
<Description>
<P/>

Inputs a group <M>G</M> and returns "true" if  both the 
first and second integral homology of <M>G</M> is trivial. 
Otherwise, it returns "false". 
<P/><B>Examples:</B> 
</Description>

























































































































</ManSection>

<ManSection>

<Func Name="MakeHAPManual" Arg=""/>
<Description>
<P/>
This function creates the manual for HAP from an XML file.
<P/><B>Examples:</B> 
</Description>

























































































































</ManSection>

<ManSection>

<Func Name="PermToMatrixGroup" Arg="G,n"/>
<Description>
<P/>

Inputs a permutation group <M>G</M> and its degree <M>n</M>. 
Returns a bijective homomorphism <M>f:G \longrightarrow M</M> where 
<M>M</M> is a group of permutation matrices.
<P/><B>Examples:</B> <URL><Link>../tutorial/chap7.html</Link><LinkText>1</LinkText></URL>&nbsp;,
<URL><Link>../www/SideLinks/About/aboutTwistedCoefficients.html</Link><LinkText>2</LinkText></URL>&nbsp; 

</Description>

























































































































</ManSection>
<ManSection>

<Func Name="SolutionsMatDestructive" Arg="M,B"/>
<Description>
<P/>

Inputs an <M>m×n</M> matrix <M>M</M> and a <M>k×n</M> matrix 
<M>B</M> over a field. It returns a k×m matrix <M>S</M> satisfying 
<M>SM=B</M>.
<P/>
The function will leave matrix <M>M</M> unchanged but 
will probably change matrix <M>B</M>.
<P/>
(This is  a trivial rewrite of the standard GAP function 
<M>SolutionMatDestructive(</M>&tlt;<M>mat</M>&tgt;,&tlt;<M>vec</M>&tgt;) .) 
<P/><B>Examples:</B> 
</Description>

























































































































</ManSection>

<ManSection>

<Func Name="LinearHomomorphismsPersistenceMat" Arg="L"/>
<Description>
<P/>
Inputs a composable sequence <M>L</M> of  vector space homomorphisms. It returns an integer matrix containing the dimensions of the images of the various composites. The sequence <M>L</M> is determined up to isomorphism by this matrix.
<P/><B>Examples:</B> 
</Description>

























































































































</ManSection>

<ManSection>

<Func Name="NormalSeriesToQuotientHomomorphisms" Arg="L"/>
<Description>
<P/>
Inputs an (increasing or decreasing) chain <M>L</M> of normal subgroups in some group <M>G</M>. This <M>G</M> is the largest group in the chain. It
 returns the sequence of composable group homomorphisms <M>G/L[i] \rightarrow G/L[i+/-1]</M>. 
<P/><B>Examples:</B> 
</Description>

























































































































</ManSection>

<ManSection>

<Func Name="TestHap" Arg=""/>
<Description>
<P/>

This runs a representative sample of HAP functions and checks to see that they produce the correct output.  
<P/><B>Examples:</B> 
</Description>

























































































































</ManSection>

</Section>
</Chapter>

