Skip to content

Commit 3a992b9

Browse files
version 1.66
1 parent 9a786c1 commit 3a992b9

25 files changed

+1259
-56
lines changed

PackageInfo.g

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ SetPackageInfo( rec(
88

99
PackageName := "HAP",
1010
Subtitle := "Homological Algebra Programming",
11-
Version := "1.65",
12-
Date := "29/07/2024",
11+
Version := "1.66",
12+
Date := "24/10/2024",
1313
License := "GPL-2.0-or-later",
1414

1515
SourceRepository := rec(

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,12 @@ Please send your bug reports to graham.ellis(at)nuigalway.ie .
3232
On a Linux machine with GAP (and optionally Polymake) installed, the HAP
3333
library can be loaded as follows:
3434

35-
* First download the file hap1.65.tar.gz to the subdirectory "pkg/" of GAP. (If
35+
* First download the file hap1.66.tar.gz to the subdirectory "pkg/" of GAP. (If
3636
you don't have access to this, then create a directory "pkg" in your home
3737
directory and download the file there.)
3838

39-
* Change to directory "pkg/" and type "gunzip hap1.65.tar.gz" followed by
40-
"tar -xvf hap1.65.tar" .
39+
* Change to directory "pkg/" and type "gunzip hap1.66.tar.gz" followed by
40+
"tar -xvf hap1.66.tar" .
4141

4242
* Start GAP. (If you have created "pkg" in your home directory then start GAP
4343
with the command "gap -l 'path/homedir;' " where path/homedir is the path to
@@ -46,12 +46,12 @@ your home directory.)
4646
* In GAP type " LoadPackage("HAP"); " .
4747

4848
* Help on HAP can be found on the HAP home page (a version of which is
49-
included in directory "pkg/Hap1.65/www" of this distribution).
49+
included in directory "pkg/Hap1.66/www" of this distribution).
5050

5151
* Performance can be significantly improved by using a compiled version of the
5252
HAP library. A compiled version can be created by the following steps.
5353

54-
1. Change to the directory "pkg/Hap1.65/" .
54+
1. Change to the directory "pkg/Hap1.66/" .
5555
2. Edit the file "compile" so that: PKGDIR is equal to the path to the
5656
directory "pkg" where your GAP packages are stored; GACDIR is equal to the
5757
path to the directory where the GAP compiler "gac" is stored.
@@ -60,4 +60,4 @@ path to the directory where the GAP compiler "gac" is stored.
6060
The next time HAP is loaded a compiled version will be loaded.
6161

6262
* Should you want to return to an uncompiled version, change to the directory
63-
"pkg/Hap1.65/" and type "./uncompile".
63+
"pkg/Hap1.66/" and type "./uncompile".

date

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
29 July 2024
1+
24 October 2024

doc/Undocumented.xml

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -299,12 +299,14 @@
299299
<Br/>
300300
<C>CrystFinitePartOfMatrix</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <Br/>
301301
<Br/>
302-
<C>CrystGFullBasis</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap9.html</Link><LinkText>1</LinkText></URL>&nbsp;,
303-
<URL><Link>../www/SideLinks/About/aboutBredon.html</Link><LinkText>2</LinkText></URL>&nbsp;
302+
<C>CrystGFullBasis</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap8.html</Link><LinkText>1</LinkText></URL>&nbsp;,
303+
<URL><Link>../tutorial/chap9.html</Link><LinkText>2</LinkText></URL>&nbsp;,
304+
<URL><Link>../www/SideLinks/About/aboutBredon.html</Link><LinkText>3</LinkText></URL>&nbsp;
304305
<Br/>
305306
<Br/>
306-
<C>CrystGcomplex</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap9.html</Link><LinkText>1</LinkText></URL>&nbsp;,
307-
<URL><Link>../www/SideLinks/About/aboutBredon.html</Link><LinkText>2</LinkText></URL>&nbsp;
307+
<C>CrystGcomplex</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap8.html</Link><LinkText>1</LinkText></URL>&nbsp;,
308+
<URL><Link>../tutorial/chap9.html</Link><LinkText>2</LinkText></URL>&nbsp;,
309+
<URL><Link>../www/SideLinks/About/aboutBredon.html</Link><LinkText>3</LinkText></URL>&nbsp;
308310
<Br/>
309311
<Br/>
310312
<C>CrystMatrix</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <Br/>
@@ -865,7 +867,8 @@
865867
<Br/>
866868
<C>IsMetricMatrix</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <Br/>
867869
<Br/>
868-
<C>IsPeriodicSpaceGroup</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap1.html</Link><LinkText>1</LinkText></URL>&nbsp;
870+
<C>IsPeriodicSpaceGroup</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap1.html</Link><LinkText>1</LinkText></URL>&nbsp;,
871+
<URL><Link>../tutorial/chap8.html</Link><LinkText>2</LinkText></URL>&nbsp;
869872
<Br/>
870873
<Br/>
871874
<C>IsPureComplex</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <Br/>
@@ -1281,7 +1284,8 @@
12811284
<C>ResolutionSL2Z_alt</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap13.html</Link><LinkText>1</LinkText></URL>&nbsp;
12821285
<Br/>
12831286
<Br/>
1284-
<C>ResolutionSpaceGroup</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap11.html</Link><LinkText>1</LinkText></URL>&nbsp;
1287+
<C>ResolutionSpaceGroup</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap8.html</Link><LinkText>1</LinkText></URL>&nbsp;,
1288+
<URL><Link>../tutorial/chap11.html</Link><LinkText>2</LinkText></URL>&nbsp;
12851289
<Br/>
12861290
<Br/>
12871291
<C>ResolutionToEquivariantCWComplex</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <Br/>
@@ -2076,7 +2080,8 @@
20762080
<Br/>
20772081
<C>IsPeriodic</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap1.html</Link><LinkText>1</LinkText></URL>&nbsp;,
20782082
<URL><Link>../tutorial/chap7.html</Link><LinkText>2</LinkText></URL>&nbsp;,
2079-
<URL><Link>../tutorial/chap13.html</Link><LinkText>3</LinkText></URL>&nbsp;
2083+
<URL><Link>../tutorial/chap8.html</Link><LinkText>3</LinkText></URL>&nbsp;,
2084+
<URL><Link>../tutorial/chap13.html</Link><LinkText>4</LinkText></URL>&nbsp;
20802085
<Br/>
20812086
<Br/>
20822087
<C>IsPseudoListWithFunction</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <Br/>
@@ -3119,7 +3124,8 @@
31193124
<Br/>
31203125
<C>IsPeriodic</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap1.html</Link><LinkText>1</LinkText></URL>&nbsp;,
31213126
<URL><Link>../tutorial/chap7.html</Link><LinkText>2</LinkText></URL>&nbsp;,
3122-
<URL><Link>../tutorial/chap13.html</Link><LinkText>3</LinkText></URL>&nbsp;
3127+
<URL><Link>../tutorial/chap8.html</Link><LinkText>3</LinkText></URL>&nbsp;,
3128+
<URL><Link>../tutorial/chap13.html</Link><LinkText>4</LinkText></URL>&nbsp;
31233129
<Br/>
31243130
<Br/>
31253131
<C>Kernel</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap1.html</Link><LinkText>1</LinkText></URL>&nbsp;,
@@ -6421,15 +6427,18 @@
64216427
<Br/>
64226428
<Br/>
64236429
<C>Position</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap5.html</Link><LinkText>1</LinkText></URL>&nbsp;,
6424-
<URL><Link>../www/SideLinks/About/aboutTensorSquare.html</Link><LinkText>2</LinkText></URL>&nbsp;
6430+
<URL><Link>../tutorial/chap8.html</Link><LinkText>2</LinkText></URL>&nbsp;,
6431+
<URL><Link>../www/SideLinks/About/aboutTensorSquare.html</Link><LinkText>3</LinkText></URL>&nbsp;
64256432
<Br/>
64266433
<Br/>
64276434
<C>Position</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap5.html</Link><LinkText>1</LinkText></URL>&nbsp;,
6428-
<URL><Link>../www/SideLinks/About/aboutTensorSquare.html</Link><LinkText>2</LinkText></URL>&nbsp;
6435+
<URL><Link>../tutorial/chap8.html</Link><LinkText>2</LinkText></URL>&nbsp;,
6436+
<URL><Link>../www/SideLinks/About/aboutTensorSquare.html</Link><LinkText>3</LinkText></URL>&nbsp;
64296437
<Br/>
64306438
<Br/>
64316439
<C>Position</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <URL><Link>../tutorial/chap5.html</Link><LinkText>1</LinkText></URL>&nbsp;,
6432-
<URL><Link>../www/SideLinks/About/aboutTensorSquare.html</Link><LinkText>2</LinkText></URL>&nbsp;
6440+
<URL><Link>../tutorial/chap8.html</Link><LinkText>2</LinkText></URL>&nbsp;,
6441+
<URL><Link>../www/SideLinks/About/aboutTensorSquare.html</Link><LinkText>3</LinkText></URL>&nbsp;
64336442
<Br/>
64346443
<Br/>
64356444
<C>PositionCanonical</C>&nbsp;&nbsp;&nbsp;&nbsp;<B>Examples:</B> <Br/>

doc/newFunctors.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
<Chapter><Heading> Functors</Heading> <Section><Heading> &nbsp;</Heading>
22
<ManSection> <Func Name="ExtendScalars" Arg="R,G,EltsG"/> <Description> <P/> Inputs a <M>ZH</M>-resolution <M>R</M>, a group <M>G</M> containing <M>H</M> as a subgroup, and a list <M>EltsG</M> of elements of <M>G</M>. It returns the free <M>ZG</M>-resolution <M>(R \otimes_{ZH} ZG)</M>. The returned resolution <M>S</M> has S!.elts:=EltsG. This is a resolution of the <M>ZG</M>-module <M>(Z \otimes_{ZH} ZG)</M>. (Here <M>\otimes_{ZH}</M> means tensor over <M>ZH</M>.) <P/><B>Examples:</B>
33
</Description> </ManSection>
4-
<ManSection> <Func Name="HomToIntegers" Arg="X"/> <Description> <P/> Inputs either a <M>ZG</M>-resolution <M>X=R</M>, or an equivariant chain map <M>X = (F:R \longrightarrow S)</M>. It returns the cochain complex or cochain map obtained by applying <M>HomZG( _ , Z)</M> where <M>Z</M> is the trivial module of integers (characteristic 0). <P/><B>Examples:</B> <URL><Link>../tutorial/chap1.html</Link><LinkText>1</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap7.html</Link><LinkText>2</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap10.html</Link><LinkText>3</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap13.html</Link><LinkText>4</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutCohomologyRings.html</Link><LinkText>5</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutSpaceGroup.html</Link><LinkText>6</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutIntro.html</Link><LinkText>7</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutTorAndExt.html</Link><LinkText>8</LinkText></URL>&nbsp;
4+
<ManSection> <Func Name="HomToIntegers" Arg="X"/> <Description> <P/> Inputs either a <M>ZG</M>-resolution <M>X=R</M>, or an equivariant chain map <M>X = (F:R \longrightarrow S)</M>. It returns the cochain complex or cochain map obtained by applying <M>HomZG( _ , Z)</M> where <M>Z</M> is the trivial module of integers (characteristic 0). <P/><B>Examples:</B> <URL><Link>../tutorial/chap1.html</Link><LinkText>1</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap7.html</Link><LinkText>2</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap8.html</Link><LinkText>3</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap10.html</Link><LinkText>4</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap13.html</Link><LinkText>5</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutCohomologyRings.html</Link><LinkText>6</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutSpaceGroup.html</Link><LinkText>7</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutIntro.html</Link><LinkText>8</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutTorAndExt.html</Link><LinkText>9</LinkText></URL>&nbsp;
55
</Description> </ManSection>
6-
<ManSection> <Func Name="HomToIntegersModP" Arg="R"/> <Description> <P/> Inputs a <M>ZG</M>-resolution <M>R</M> and returns the cochain complex obtained by applying <M>HomZG( _ , Z_p)</M> where <M>Z_p</M> is the trivial module of integers mod <M>p</M>. (At present this functor does not handle equivariant chain maps.) <P/><B>Examples:</B> <URL><Link>../www/SideLinks/About/aboutSpaceGroup.html</Link><LinkText>1</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutIntro.html</Link><LinkText>2</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutTorAndExt.html</Link><LinkText>3</LinkText></URL>&nbsp;
6+
<ManSection> <Func Name="HomToIntegersModP" Arg="R"/> <Description> <P/> Inputs a <M>ZG</M>-resolution <M>R</M> and returns the cochain complex obtained by applying <M>HomZG( _ , Z_p)</M> where <M>Z_p</M> is the trivial module of integers mod <M>p</M>. (At present this functor does not handle equivariant chain maps.) <P/><B>Examples:</B> <URL><Link>../tutorial/chap8.html</Link><LinkText>1</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutSpaceGroup.html</Link><LinkText>2</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutIntro.html</Link><LinkText>3</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutTorAndExt.html</Link><LinkText>4</LinkText></URL>&nbsp;
77
</Description> </ManSection>
88
<ManSection> <Func Name="HomToIntegralModule" Arg="R,f"/> <Description> <P/> Inputs a <M>ZG</M>-resolution <M>R</M> and a group homomorphism <M>f:G \longrightarrow GL_n(Z)</M> to the group of <M>n×n</M> invertible integer matrices. Here <M>Z</M> must have characteristic 0. It returns the cochain complex obtained by applying <M>HomZG( _ , A)</M> where <M>A</M> is the <M>ZG</M>-module <M>Z^n</M> with <M>G</M> action via <M>f</M>. (At present this function does not handle equivariant chain maps.) <P/><B>Examples:</B> <URL><Link>../tutorial/chap7.html</Link><LinkText>1</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap13.html</Link><LinkText>2</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutTwistedCoefficients.html</Link><LinkText>3</LinkText></URL>&nbsp;
99
</Description> </ManSection>

doc/newHomology.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
</Description> </ManSection>
66
<ManSection> <Func Name="CohomologyPrimePart" Arg="C,n,p"/> <Description> <P/> Inputs a cochain complex <M>C</M> in characteristic 0, a positive integer <M>n</M>, and a prime <M>p</M>. It returns a list of those torsion coefficients of <M>H^n(C)</M> that are positive powers of <M>p</M>. The function uses the EDIM package by Frank Luebeck. <P/><B>Examples:</B>
77
</Description> </ManSection>
8-
<ManSection> <Func Name="GroupCohomology" Arg="X,n"/> <Func Name="GroupCohomology" Arg="X,n,p"/> <Description> <P/> Inputs a positive integer <M>n</M> and either <List> <Item> a finite group <M>X=G</M> </Item> <Item> or a nilpotent Pcp-group <M>X=G</M> </Item> <Item> or a space group <M>X=G</M> </Item> <Item> or a list <M>X=D</M> representing a graph of groups</Item> <Item>or a pair <M>X=["Artin",D]</M> where <M>D</M> is a Coxeter diagram representing an infinite Artin group <M>G</M>.</Item> <Item>or a pair <M>X=["Coxeter",D]</M> where <M>D</M> is a Coxeter diagram representing a finite Coxeter group <M>G</M>.</Item> </List> It returns the torsion coefficients of the integral cohomology <M>H^n(G,Z)</M>. <P/> There is an optional third argument which, when set equal to a prime <M>p</M>, causes the function to return the the mod <M>p</M> cohomology <M>H^n(G,Z_p)</M> as a list of length equal to its rank. <P/> This function is a composite of more basic functions, and makes choices for a number of parameters. For a particular group you would almost certainly be better using the more basic functions and making the choices yourself! <P/><B>Examples:</B> <URL><Link>../tutorial/chap7.html</Link><LinkText>1</LinkText></URL>&nbsp;
8+
<ManSection> <Func Name="GroupCohomology" Arg="X,n"/> <Func Name="GroupCohomology" Arg="X,n,p"/> <Description> <P/> Inputs a positive integer <M>n</M> and either <List> <Item> a finite group <M>X=G</M> </Item> <Item> or a nilpotent Pcp-group <M>X=G</M> </Item> <Item> or a space group <M>X=G</M> </Item> <Item> or a list <M>X=D</M> representing a graph of groups</Item> <Item>or a pair <M>X=["Artin",D]</M> where <M>D</M> is a Coxeter diagram representing an infinite Artin group <M>G</M>.</Item> <Item>or a pair <M>X=["Coxeter",D]</M> where <M>D</M> is a Coxeter diagram representing a finite Coxeter group <M>G</M>.</Item> </List> It returns the torsion coefficients of the integral cohomology <M>H^n(G,Z)</M>. <P/> There is an optional third argument which, when set equal to a prime <M>p</M>, causes the function to return the the mod <M>p</M> cohomology <M>H^n(G,Z_p)</M> as a list of length equal to its rank. <P/> This function is a composite of more basic functions, and makes choices for a number of parameters. For a particular group you would almost certainly be better using the more basic functions and making the choices yourself! <P/><B>Examples:</B> <URL><Link>../tutorial/chap7.html</Link><LinkText>1</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap8.html</Link><LinkText>2</LinkText></URL>&nbsp;
99
</Description> </ManSection>
1010
<ManSection> <Func Name="GroupHomology" Arg="X,n"/> <Func Name="GroupHomology" Arg="X,n,p"/> <Description> <P/> Inputs a positive integer <M>n</M> and either <List> <Item> a finite group <M>X=G</M> </Item> <Item> or a nilpotent Pcp-group <M>X=G</M> </Item> <Item> or a space group <M>X=G</M> </Item> <Item> or a list <M>X=D</M> representing a graph of groups</Item> <Item>or a pair <M>X=["Artin",D]</M> where <M>D</M> is a Coxeter diagram representing an infinite Artin group <M>G</M>.</Item> <Item>or a pair <M>X=["Coxeter",D]</M> where <M>D</M> is a Coxeter diagram representing a finite Coxeter group <M>G</M>.</Item> </List> It returns the torsion coefficients of the integral homology <M>H_n(G,Z)</M>. <P/> There is an optional third argument which, when set equal to a prime <M>p</M>, causes the function to return the mod <M>p</M> homology <M>H_n(G,Z_p)</M> as a list of lenth equal to its rank. <P/> This function is a composite of more basic functions, and makes choices for a number of parameters. For a particular group you would almost certainly be better using the more basic functions and making the choices yourself! <P/><B>Examples:</B> <URL><Link>../tutorial/chap7.html</Link><LinkText>1</LinkText></URL>&nbsp;, <URL><Link>../tutorial/chap13.html</Link><LinkText>2</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutLinks.html</Link><LinkText>3</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutParallel.html</Link><LinkText>4</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutRosenbergerMonster.html</Link><LinkText>5</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutFunctorial.html</Link><LinkText>6</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutIntro.html</Link><LinkText>7</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutTensorSquare.html</Link><LinkText>8</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutLie.html</Link><LinkText>9</LinkText></URL>&nbsp;
1111
</Description> </ManSection>

0 commit comments

Comments
 (0)