From c5f0c8806aefc1997716929554417bf0f4acfdc7 Mon Sep 17 00:00:00 2001
From: grahamknockillaree
Date: Mon, 29 Jul 2024 16:53:10 +0100
Subject: [PATCH] version 1.65
---
PackageInfo.g | 4 ++--
README.md | 12 ++++++------
date | 2 +-
lib/Congruence/bianchi.gi | 28 ++++++++++++++--------------
tst/testall3/bianchi.1.tst | 10 ++++++++++
tutorial/tutex/bianchi.1.txt | 4 +++-
version | 2 +-
www/download/downloadContent.html | 14 +++++++-------
www/home/content.html | 4 ++--
9 files changed, 46 insertions(+), 34 deletions(-)
create mode 100644 tst/testall3/bianchi.1.tst
diff --git a/PackageInfo.g b/PackageInfo.g
index 34206b4f..a2cd5dd0 100644
--- a/PackageInfo.g
+++ b/PackageInfo.g
@@ -8,8 +8,8 @@ SetPackageInfo( rec(
PackageName := "HAP",
Subtitle := "Homological Algebra Programming",
- Version := "1.64",
- Date := "28/07/2024",
+ Version := "1.65",
+ Date := "29/07/2024",
License := "GPL-2.0-or-later",
SourceRepository := rec(
diff --git a/README.md b/README.md
index be5e3c2d..b18b53d6 100644
--- a/README.md
+++ b/README.md
@@ -32,12 +32,12 @@ Please send your bug reports to graham.ellis(at)nuigalway.ie .
On a Linux machine with GAP (and optionally Polymake) installed, the HAP
library can be loaded as follows:
-* First download the file hap1.64.tar.gz to the subdirectory "pkg/" of GAP. (If
+* First download the file hap1.65.tar.gz to the subdirectory "pkg/" of GAP. (If
you don't have access to this, then create a directory "pkg" in your home
directory and download the file there.)
-* Change to directory "pkg/" and type "gunzip hap1.64.tar.gz" followed by
-"tar -xvf hap1.64.tar" .
+* Change to directory "pkg/" and type "gunzip hap1.65.tar.gz" followed by
+"tar -xvf hap1.65.tar" .
* Start GAP. (If you have created "pkg" in your home directory then start GAP
with the command "gap -l 'path/homedir;' " where path/homedir is the path to
@@ -46,12 +46,12 @@ your home directory.)
* In GAP type " LoadPackage("HAP"); " .
* Help on HAP can be found on the HAP home page (a version of which is
-included in directory "pkg/Hap1.64/www" of this distribution).
+included in directory "pkg/Hap1.65/www" of this distribution).
* Performance can be significantly improved by using a compiled version of the
HAP library. A compiled version can be created by the following steps.
-1. Change to the directory "pkg/Hap1.64/" .
+1. Change to the directory "pkg/Hap1.65/" .
2. Edit the file "compile" so that: PKGDIR is equal to the path to the
directory "pkg" where your GAP packages are stored; GACDIR is equal to the
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.
The next time HAP is loaded a compiled version will be loaded.
* Should you want to return to an uncompiled version, change to the directory
-"pkg/Hap1.64/" and type "./uncompile".
+"pkg/Hap1.65/" and type "./uncompile".
diff --git a/date b/date
index edb1a04c..01efbf5e 100644
--- a/date
+++ b/date
@@ -1 +1 @@
-28 July 2024
+29 July 2024
diff --git a/lib/Congruence/bianchi.gi b/lib/Congruence/bianchi.gi
index ff2cfda9..a765e7f7 100644
--- a/lib/Congruence/bianchi.gi
+++ b/lib/Congruence/bianchi.gi
@@ -1133,10 +1133,16 @@ N:=5;
BI:=OQ!.bianchiInteger;
ABI:=AbsInt(BI);
###############################
-HAPRECORD:=[ [ 1, 1 ], [ 2, 1 ], [ 3, 1 ], [ 5, 20 ], [ 6, 24 ], [ 7, 1 ], [ 10, 40 ], [ 11, 1 ], [ 13, 52 ], [ 14, 56 ], [ 15, 16 ], [ 17, 68 ], [ 19, 4 ], [ 21, 84 ], [ 22, 88 ], [ 23, 12 ], [ 26, 104 ], [ 29, 169 ], [ 30, 121 ], [ 31, 16 ], [33,132], [ 34, 0 ], [ 35, 35 ], [ 37, 0 ], [ 38, 0 ], [ 39, 39 ], [ 41, 0 ], [ 42, 0 ], [ 43, 9 ], [ 46, 0 ], [ 47, 24 ], [ 51, 51 ], [ 53, 0 ], [ 55, 56 ], [ 57, 0 ], [ 59, 27 ], [ 67, 16 ], [ 71, 48 ], [ 79, 40 ], [ 83, 33 ], [ 87, 87 ], [ 91, 91 ], [ 95, 95 ], [ 103, 56 ], [ 107, 36 ], [ 111, 111 ], [ 115, 115 ], [ 119, 0 ], [ 123, 123 ], [ 127, 64 ], [ 131, 45 ], [ 139, 55 ], [ 143, 0 ], [ 151, 80 ], [163, 53 ] ];
-#HAPRECORD:=[]; #Uncomment this line to calculate
- #HAPRECORD entries from scratch.
+HAPRECORD:=[
+[ 1, 1 ],[ 2, 1 ],[ 3, 1 ],[ 5, 20 ],[ 6, 24 ],[ 7, 1 ],[ 10, 40 ],[ 11, 1 ],[ 13, 52 ],[ 14, 56 ],[ 15, 15 ],[ 17, 68 ],[ 19, 4 ],[ 21, 84 ],[ 22, 88 ],[ 23, 12 ],[ 26, 104 ],[ 29, 169 ],[ 30, 121 ],[ 31, 16 ],[ 33, 132 ],[ 34, 9 ],[ 35, 35 ],[ 37, 25 ],[ 38, 4 ],[ 39, 39 ],[ 41, 25 ],[ 42, 25 ],[ 43, 9 ],[ 46, 25 ],[ 47, 24 ],[ 51, 51 ],[ 53, 25 ],[ 55, 56 ],[ 57, 49 ],[ 59, 27 ],[ 67, 16 ],[ 71, 48 ],[ 79, 40 ],[ 83, 33 ],[ 87, 87 ],[ 91, 91 ],[ 95, 95 ],[ 103, 56 ],[ 107, 36 ],[ 111, 111 ],[ 115, 115 ],[ 119, 25 ],[ 123, 123 ],[ 127, 64 ],[ 131, 45 ],[ 139, 55 ],[ 143, 9 ],[ 151, 80 ],[ 155, 155 ],[ 163, 53 ],
+[ 179, 155]
+];;
+ #HAPRECORD contains some precomuted [d,r] for which Swan's
+ #criterion is satisfied for the given norm r.
+#HAPRECORD:=[]; #Uncomment this line to calculate HAPRECORD entries from
+ #scratch. The value [179,155] was only partialy checked (up
+ #to norm r=5000).
if Length(arg)=2 then pos:=arg[2];
else
@@ -1158,9 +1164,9 @@ while bool do
N:=N+1;
#if NRMS[N]>ABI+30 then NRMS[N]:=0; break; fi; #REMEBER TO DELETE THIS
#
-#if Length(arg)>1 then
+if Length(arg)>1 then
Print("Adding hemispheres of squared radius ",1/NRMS[N],"\n");
-#fi;
+fi;
L:=UnimodularPairs(OQ,NRMS[N],true,L);
#L:=QQNeighbourhoodOfUnimodularPairs(OQ,L);
@@ -1183,15 +1189,9 @@ L:=K[1]; K:=K[2];
if pos=infinity then
A:=BianchiPolyhedron(OQ!.bianchiInteger,L);
A:=SwanBianchiCriterion(A);
-if Length(A)=0 then bool:=false; return [L,K]; fi;
-# if A[1]=false then Print("YES\n"); return CoverOfUnimodularPairs(OQ,N+1,true);
-#else
-# A:=List(A,x->HAPNorm(OQ,x[1]));
-# A:=Minimum(A);
-# return CoverOfUnimodularPairs(OQ,A);
-#fi;
-N:=N+1;
-return CoverOfUnimodularPairs(OQ,N,true);
+if not Length(A)=0 then
+return CoverOfUnimodularPairs(OQ,N+1,true);
+fi;
fi;
##################################################
diff --git a/tst/testall3/bianchi.1.tst b/tst/testall3/bianchi.1.tst
new file mode 100644
index 00000000..a933af6a
--- /dev/null
+++ b/tst/testall3/bianchi.1.tst
@@ -0,0 +1,10 @@
+gap> START_TEST("HAP library");
+gap> P:=BianchiPolyhedron(-5);
+3-dimensional Bianchi polyhedron over OQ( Sqrt(
+-5) ) involving hemispheres of minimum squared radius 1/
+20 and non-cuspidal vertices of minimum squared height 1/25 .
+
+gap> SwanBianchiCriterion(P);
+[ ]
+gap> STOP_TEST( "tst.tst", 1000 );
+
diff --git a/tutorial/tutex/bianchi.1.txt b/tutorial/tutex/bianchi.1.txt
index cf04f143..b1f752a6 100644
--- a/tutorial/tutex/bianchi.1.txt
+++ b/tutorial/tutex/bianchi.1.txt
@@ -1,5 +1,7 @@
gap> D:=BianchiPolyhedron(-39);
-3-dimensional Bianchi polyhedron over OQ( Sqrt(-39) )
+3-dimensional Bianchi polyhedron over OQ( Sqrt(-39) )
+involving hemispheres of minimum squared radius 1/39
+and non-cuspidal vertices of minimum squared height 10/12493 .
gap> Display3D(D);;
gap> Display2D(D);;
diff --git a/version b/version
index 8725364a..5b6cd6b3 100644
--- a/version
+++ b/version
@@ -1 +1 @@
-1.64
+1.65
diff --git a/www/download/downloadContent.html b/www/download/downloadContent.html
index 441b3b3c..7d66ca08 100644
--- a/www/download/downloadContent.html
+++ b/www/download/downloadContent.html
@@ -19,23 +19,23 @@ Download Instructions
- First download the file hap1.64.tar.gz
+ href="https://github.com/gap-packages/hap/releases/download/v1.65/hap-1.65.tar.gz">hap1.65.tar.gz
which contains the most recent development version of HAP to the
subdirectory
"pkg/" of GAP. If you don't have access to this subdirectory,
then create a directory "pkg" in your home directory and download the
file there. (If you'd prefer to download the most
recent development version of HAP then download the file hap1.64-dev.tar.gz
+ href="https://github.com/gap-packages/hap/releases/download/v1.47/hap-1.47.tar.gz">hap1.65-dev.tar.gz
instead.)
- Change to directory "pkg/" and type "gunzip
-hap1.64.tar.gz"
+hap1.65.tar.gz"
followed
by "tar
--xvf hap1.64.tar" .
+-xvf hap1.65.tar" .
- Start GAP. (If you have created "pkg" in your home
@@ -51,7 +51,7 @@
Download Instructions
- Help on HAP can be found on the HAP
home page (a version of which is included in directory
-"pkg/Hap1.64/www" of the distribution).
+"pkg/Hap1.65/www" of the distribution).
- A few of HAP's (optional) functions rely on Polymake
@@ -67,7 +67,7 @@
Download Instructions
- Performance can be improved by using a compiled
version of the HAP library. The following steps will produce a compiled
version.
-(1) Change to the directory "pkg/Hap1.64/" .
+(1) Change to the directory "pkg/Hap1.65/" .
(2) Edit the file "compile" so that: PKGDIR is equal to the path to the
directory "pkg" where your GAP packages are stored; GACDIR is equal to
the
@@ -78,7 +78,7 @@ Download Instructions
- Should you want to return to an uncompiled version, change
to the directory
-"pkg/Hap1.64/" and type "./uncompile".
+"pkg/Hap1.65/" and type "./uncompile".