Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package gap-cvec for openSUSE:Factory 
checked in at 2024-08-28 21:29:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gap-cvec (Old)
 and      /work/SRC/openSUSE:Factory/.gap-cvec.new.2698 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gap-cvec"

Wed Aug 28 21:29:28 2024 rev:2 rq:1196330 version:2.8.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/gap-cvec/gap-cvec.changes        2023-12-28 
22:57:08.860974258 +0100
+++ /work/SRC/openSUSE:Factory/.gap-cvec.new.2698/gap-cvec.changes      
2024-08-28 21:29:34.333966446 +0200
@@ -1,0 +2,6 @@
+Tue Aug 27 16:05:59 UTC 2024 - Jan Engelhardt <[email protected]>
+
+- Update to release 2.8.2
+  * Do not attempt to read non-existing files
+
+-------------------------------------------------------------------

Old:
----
  cvec-2.8.1.tar.bz2

New:
----
  _scmsync.obsinfo
  build.specials.obscpio
  cvec-2.8.2.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gap-cvec.spec ++++++
--- /var/tmp/diff_new_pack.CIzjee/_old  2024-08-28 21:29:36.190043742 +0200
+++ /var/tmp/diff_new_pack.CIzjee/_new  2024-08-28 21:29:36.202044242 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package gap-cvec
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           gap-cvec
-Version:        2.8.1
+Version:        2.8.2
 Release:        0
 Summary:        GAP: Compact vectors over finite fields
 License:        GPL-2.0-or-later
@@ -27,12 +27,12 @@
 Source:         
https://github.com/gap-packages/cvec/releases/download/v%version/cvec-%version.tar.bz2
 BuildRequires:  autoconf
 BuildRequires:  automake
-BuildRequires:  gap-devel >= 4.10
+BuildRequires:  gap-devel >= 4.12
 BuildRequires:  gap-rpm-devel
 BuildRequires:  gmp-devel
 BuildRequires:  libtool
 BuildRequires:  xz
-Requires:       gap-core >= 4.10
+Requires:       gap-core >= 4.12
 Requires:       gap-gapdoc >= 1.2
 Requires:       gap-io >= 4.1
 Requires:       gap-orb >= 4.2

++++++ _scmsync.obsinfo ++++++
mtime: 1724774853
commit: cce14533a4141c70fe3ad8d81a1ae0c19cb057e8556dde1ee62b95aee69fb0e2
url: https://src.opensuse.org/jengelh/gap-cvec
revision: master

++++++ cvec-2.8.1.tar.bz2 -> cvec-2.8.2.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/CHANGES new/cvec-2.8.2/CHANGES
--- old/cvec-2.8.1/CHANGES      2023-03-28 00:18:57.000000000 +0200
+++ new/cvec-2.8.2/CHANGES      2024-08-27 01:03:21.000000000 +0200
@@ -1,5 +1,10 @@
 This file describes changes in the cvec package.
 
+2.8.2 (2024-08-27)
+  - Require GAP >= 4.12
+  - Don't attempt to read non-existing files
+  - Various janitorial changes
+
 2.8.1 (2023-03-28)
   - Adjust `CompanionMatrix`, `NewCompanionMatrix` output
     to match the GAP documentation (i.e., transpose it compared
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/Makefile.gappkg 
new/cvec-2.8.2/Makefile.gappkg
--- old/cvec-2.8.1/Makefile.gappkg      2023-03-28 00:18:57.000000000 +0200
+++ new/cvec-2.8.2/Makefile.gappkg      2024-08-27 01:03:21.000000000 +0200
@@ -36,7 +36,7 @@
   KEXT_CXXFLAGS += -I$(GAP_LIB_DIR)/src
 endif
 
-# honor used supplied flags
+# honor user supplied flags
 ALL_CFLAGS := $(KEXT_CFLAGS) $(KEXT_CXXFLAGS) $(CPPFLAGS) $(CFLAGS) $(CXXFLAGS)
 ALL_LDFLAGS := $(KEXT_LDFLAGS) $(LDFLAGS)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/PackageInfo.g new/cvec-2.8.2/PackageInfo.g
--- old/cvec-2.8.1/PackageInfo.g        2023-03-28 00:18:57.000000000 +0200
+++ new/cvec-2.8.2/PackageInfo.g        2024-08-27 01:03:21.000000000 +0200
@@ -7,8 +7,8 @@
 
 PackageName := "cvec",
 Subtitle := "Compact vectors over finite fields",
-Version := "2.8.1",
-Date := "28/03/2023", # dd/mm/yyyy format
+Version := "2.8.2",
+Date := "27/08/2024", # dd/mm/yyyy format
 License := "GPL-2.0-or-later",
 
 ##  Information about authors and maintainers.
@@ -100,7 +100,7 @@
 ),
 
 Dependencies := rec(
-  GAP := ">=4.10",
+  GAP := ">=4.12",
   NeededOtherPackages := [
     ["GAPDoc", ">= 1.2"],
     ["IO", ">= 4.1"],
@@ -111,9 +111,10 @@
 ),
 
 AvailabilityTest := function()
-  if not "cvec" in SHOW_STAT() and
-     Filename(DirectoriesPackagePrograms("cvec"), "cvec.so") = fail then
-    #Info(InfoWarning, 1, "cvec: kernel cvec functions not available.");
+  if not IsKernelExtensionAvailable("cvec") then
+    LogPackageLoadingMessage(PACKAGE_WARNING,
+                            ["the kernel module is not compiled, ",
+                              "the package cannot be loaded."]);
     return fail;
   fi;
   return true;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap0.html 
new/cvec-2.8.2/doc/chap0.html
--- old/cvec-2.8.1/doc/chap0.html       2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap0.html       2024-08-27 01:03:40.000000000 +0200
@@ -29,10 +29,10 @@
 <h2>Compact vectors over finite fields</h2>
 
 <p>
-    2.8.1</p>
+    2.8.2</p>
 
 <p>
-    28 March 2023
+    27 August 2024
   </p>
 
 </div>
@@ -332,6 +332,6 @@
 <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="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>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap0.txt new/cvec-2.8.2/doc/chap0.txt
--- old/cvec-2.8.1/doc/chap0.txt        2023-03-28 00:19:14.000000000 +0200
+++ new/cvec-2.8.2/doc/chap0.txt        2024-08-27 01:03:35.000000000 +0200
@@ -6,10 +6,10 @@
                        Compact vectors over finite fields 
   
   
-                                     2.8.1
+                                     2.8.2
   
   
-                                 28 March 2023
+                                 27 August 2024
   
   
                                  Max Neunhöffer
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap0_mj.html 
new/cvec-2.8.2/doc/chap0_mj.html
--- old/cvec-2.8.1/doc/chap0_mj.html    2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap0_mj.html    2024-08-27 01:03:40.000000000 +0200
@@ -6,7 +6,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <script type="text/javascript"
-  
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
+  
src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
 </script>
 <title>GAP (cvec) - Contents</title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
@@ -32,10 +32,10 @@
 <h2>Compact vectors over finite fields</h2>
 
 <p>
-    2.8.1</p>
+    2.8.2</p>
 
 <p>
-    28 March 2023
+    27 August 2024
   </p>
 
 </div>
@@ -335,6 +335,6 @@
 <div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a 
href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a 
href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a 
href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a 
href="chap6_mj.html">6</a>  <a href="chap7_mj.html">7</a>  <a 
href="chap8_mj.html">8</a>  <a href="chap9_mj.html">9</a>  <a 
href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>
 
 <hr />
-<p class="foot">generated by <a 
href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap1.html 
new/cvec-2.8.2/doc/chap1.html
--- old/cvec-2.8.1/doc/chap1.html       2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap1.html       2024-08-27 01:03:40.000000000 +0200
@@ -45,7 +45,7 @@
 
 <p>The main purpose of this implementation is to use it in <strong 
class="pkg">MeatAxe</strong>-like applications, that is, working with matrices 
consisting of compressed vectors over finite fields, doing linear algebra 
calculations like nullspaces, spinning of vectors, multiplying and inverting 
matrices and the like. Another purpose could be matrix group calculations. 
Usually in such computations, the base field does not change too often and not 
many different lengths of vectors occur. This implementation is optimized with 
these applications in mind and might not be very efficient for other purposes 
like using compressed vectors as coefficient lists of polynomials.</p>
 
-<p>Another important point is that compressed vectors in this package do not 
even try to behave exactly like <strong class="pkg">GAP</strong> lists. To the 
contrary, they disallow many operations that are possible for <strong 
class="pkg">GAP</strong> lists for example changing their length or assigning 
arbitrary <strong class="pkg">GAP</strong> objects to positions in the vector. 
The reason for this is that the chosen data structure does not allow to assign 
anything but elements of the one base field to positions in the vector and the 
option to change the representation "on the fly" is not desirable in most 
applications. On the other hand one can be relatively sure not to "lose 
compression" along the way.</p>
+<p>Another important point is that compressed vectors in this package do not 
even try to behave exactly like <strong class="pkg">GAP</strong> lists. To the 
contrary, they disallow many operations that are possible for <strong 
class="pkg">GAP</strong> lists for example changing their length or assigning 
arbitrary <strong class="pkg">GAP</strong> objects to positions in the vector. 
The reason for this is that the chosen data structure does not allow to assign 
anything but elements of the one base field to positions in the vector and the 
option to change the representation <q>on the fly</q> is not desirable in most 
applications. On the other hand one can be relatively sure not to <q>lose 
compression</q> along the way.</p>
 
 <p><a id="X786BACDB82918A65" name="X786BACDB82918A65"></a></p>
 
@@ -66,6 +66,6 @@
 <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="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>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap1_mj.html 
new/cvec-2.8.2/doc/chap1_mj.html
--- old/cvec-2.8.1/doc/chap1_mj.html    2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap1_mj.html    2024-08-27 01:03:40.000000000 +0200
@@ -6,7 +6,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <script type="text/javascript"
-  
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
+  
src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
 </script>
 <title>GAP (cvec) - Chapter 1: Introduction</title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
@@ -48,7 +48,7 @@
 
 <p>The main purpose of this implementation is to use it in <strong 
class="pkg">MeatAxe</strong>-like applications, that is, working with matrices 
consisting of compressed vectors over finite fields, doing linear algebra 
calculations like nullspaces, spinning of vectors, multiplying and inverting 
matrices and the like. Another purpose could be matrix group calculations. 
Usually in such computations, the base field does not change too often and not 
many different lengths of vectors occur. This implementation is optimized with 
these applications in mind and might not be very efficient for other purposes 
like using compressed vectors as coefficient lists of polynomials.</p>
 
-<p>Another important point is that compressed vectors in this package do not 
even try to behave exactly like <strong class="pkg">GAP</strong> lists. To the 
contrary, they disallow many operations that are possible for <strong 
class="pkg">GAP</strong> lists for example changing their length or assigning 
arbitrary <strong class="pkg">GAP</strong> objects to positions in the vector. 
The reason for this is that the chosen data structure does not allow to assign 
anything but elements of the one base field to positions in the vector and the 
option to change the representation "on the fly" is not desirable in most 
applications. On the other hand one can be relatively sure not to "lose 
compression" along the way.</p>
+<p>Another important point is that compressed vectors in this package do not 
even try to behave exactly like <strong class="pkg">GAP</strong> lists. To the 
contrary, they disallow many operations that are possible for <strong 
class="pkg">GAP</strong> lists for example changing their length or assigning 
arbitrary <strong class="pkg">GAP</strong> objects to positions in the vector. 
The reason for this is that the chosen data structure does not allow to assign 
anything but elements of the one base field to positions in the vector and the 
option to change the representation <q>on the fly</q> is not desirable in most 
applications. On the other hand one can be relatively sure not to <q>lose 
compression</q> along the way.</p>
 
 <p><a id="X786BACDB82918A65" name="X786BACDB82918A65"></a></p>
 
@@ -69,6 +69,6 @@
 <div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a 
href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a 
href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a 
href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a 
href="chap6_mj.html">6</a>  <a href="chap7_mj.html">7</a>  <a 
href="chap8_mj.html">8</a>  <a href="chap9_mj.html">9</a>  <a 
href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>
 
 <hr />
-<p class="foot">generated by <a 
href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap2.html 
new/cvec-2.8.2/doc/chap2.html
--- old/cvec-2.8.1/doc/chap2.html       2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap2.html       2024-08-27 01:03:40.000000000 +0200
@@ -69,7 +69,7 @@
 
 <p>respectively.</p>
 
-<p>Do this in a directory called "<code class="file">pkg</code>", preferably 
(but not necessarily) in the "<code class="file">pkg</code>" subdirectory of 
your <strong class="pkg">GAP</strong> 4 installation. It creates a subdirectory 
called "<code class="file">cvec</code>".</p>
+<p>Do this in a directory called <q><code class="file">pkg</code></q>, 
preferably (but not necessarily) in the <q><code class="file">pkg</code></q> 
subdirectory of your <strong class="pkg">GAP</strong> 4 installation. It 
creates a subdirectory called <q><code class="file">cvec</code></q>.</p>
 
 <p>The package will not work without the following compilation step.</p>
 
@@ -84,9 +84,9 @@
 
 </pre>
 
-<p>If you installed the package in another "<code class="file">pkg</code>" 
directory than the standard "<code class="file">pkg</code>" directory in your 
<strong class="pkg">GAP</strong> 4 installation, then you have to do two 
things. Firstly during compilation you have to use the option <code 
class="code">--with-gaproot=PATH</code> of the <code 
class="file">configure</code> script where "PATH" is a path to the main <strong 
class="pkg">GAP</strong> root directory (if not given the default "<code 
class="file">../..</code>" is assumed).</p>
+<p>If you installed the package in another <q><code 
class="file">pkg</code></q> directory than the standard <q><code 
class="file">pkg</code></q> directory in your <strong class="pkg">GAP</strong> 
4 installation, then you have to do two things. Firstly during compilation you 
have to use the option <code class="code">--with-gaproot=PATH</code> of the 
<code class="file">configure</code> script where <q>PATH</q> is a path to the 
main <strong class="pkg">GAP</strong> root directory (if not given the default 
<q><code class="file">../..</code></q> is assumed).</p>
 
-<p>Secondly you have to specify the path to the directory containing your 
"<code class="file">pkg</code>" directory to <strong class="pkg">GAP</strong>'s 
list of directories. This can be done by starting <strong 
class="pkg">GAP</strong> with the "<code class="file">-l</code>" command line 
option followed by the name of the directory and a semicolon. Then your 
directory is prepended to the list of directories searched. Otherwise the 
package is not found by <strong class="pkg">GAP</strong>. Of course, you can 
add this option to your <strong class="pkg">GAP</strong> startup script.</p>
+<p>Secondly you have to specify the path to the directory containing your 
<q><code class="file">pkg</code></q> directory to <strong 
class="pkg">GAP</strong>'s list of directories. This can be done by starting 
<strong class="pkg">GAP</strong> with the <q><code class="file">-l</code></q> 
command line option followed by the name of the directory and a semicolon. Then 
your directory is prepended to the list of directories searched. Otherwise the 
package is not found by <strong class="pkg">GAP</strong>. Of course, you can 
add this option to your <strong class="pkg">GAP</strong> startup script.</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="chap1.html">[Previous Chapter]</a>&nbsp;  &nbsp;<a 
href="chap3.html">[Next Chapter]</a>&nbsp;  </div>
@@ -95,6 +95,6 @@
 <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="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>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap2_mj.html 
new/cvec-2.8.2/doc/chap2_mj.html
--- old/cvec-2.8.1/doc/chap2_mj.html    2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap2_mj.html    2024-08-27 01:03:40.000000000 +0200
@@ -6,7 +6,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <script type="text/javascript"
-  
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
+  
src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
 </script>
 <title>GAP (cvec) - Chapter 2: Installation of the cvec-Package</title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
@@ -72,7 +72,7 @@
 
 <p>respectively.</p>
 
-<p>Do this in a directory called "<code class="file">pkg</code>", preferably 
(but not necessarily) in the "<code class="file">pkg</code>" subdirectory of 
your <strong class="pkg">GAP</strong> 4 installation. It creates a subdirectory 
called "<code class="file">cvec</code>".</p>
+<p>Do this in a directory called <q><code class="file">pkg</code></q>, 
preferably (but not necessarily) in the <q><code class="file">pkg</code></q> 
subdirectory of your <strong class="pkg">GAP</strong> 4 installation. It 
creates a subdirectory called <q><code class="file">cvec</code></q>.</p>
 
 <p>The package will not work without the following compilation step.</p>
 
@@ -87,9 +87,9 @@
 
 </pre>
 
-<p>If you installed the package in another "<code class="file">pkg</code>" 
directory than the standard "<code class="file">pkg</code>" directory in your 
<strong class="pkg">GAP</strong> 4 installation, then you have to do two 
things. Firstly during compilation you have to use the option <code 
class="code">--with-gaproot=PATH</code> of the <code 
class="file">configure</code> script where "PATH" is a path to the main <strong 
class="pkg">GAP</strong> root directory (if not given the default "<code 
class="file">../..</code>" is assumed).</p>
+<p>If you installed the package in another <q><code 
class="file">pkg</code></q> directory than the standard <q><code 
class="file">pkg</code></q> directory in your <strong class="pkg">GAP</strong> 
4 installation, then you have to do two things. Firstly during compilation you 
have to use the option <code class="code">--with-gaproot=PATH</code> of the 
<code class="file">configure</code> script where <q>PATH</q> is a path to the 
main <strong class="pkg">GAP</strong> root directory (if not given the default 
<q><code class="file">../..</code></q> is assumed).</p>
 
-<p>Secondly you have to specify the path to the directory containing your 
"<code class="file">pkg</code>" directory to <strong class="pkg">GAP</strong>'s 
list of directories. This can be done by starting <strong 
class="pkg">GAP</strong> with the "<code class="file">-l</code>" command line 
option followed by the name of the directory and a semicolon. Then your 
directory is prepended to the list of directories searched. Otherwise the 
package is not found by <strong class="pkg">GAP</strong>. Of course, you can 
add this option to your <strong class="pkg">GAP</strong> startup script.</p>
+<p>Secondly you have to specify the path to the directory containing your 
<q><code class="file">pkg</code></q> directory to <strong 
class="pkg">GAP</strong>'s list of directories. This can be done by starting 
<strong class="pkg">GAP</strong> with the <q><code class="file">-l</code></q> 
command line option followed by the name of the directory and a semicolon. Then 
your directory is prepended to the list of directories searched. Otherwise the 
package is not found by <strong class="pkg">GAP</strong>. Of course, you can 
add this option to your <strong class="pkg">GAP</strong> startup script.</p>
 
 
 <div class="chlinkprevnextbot">&nbsp;<a href="chap0_mj.html">[Top of 
Book]</a>&nbsp;  <a href="chap0_mj.html#contents">[Contents]</a>&nbsp;  
&nbsp;<a href="chap1_mj.html">[Previous Chapter]</a>&nbsp;  &nbsp;<a 
href="chap3_mj.html">[Next Chapter]</a>&nbsp;  </div>
@@ -98,6 +98,6 @@
 <div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a 
href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a 
href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a 
href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a 
href="chap6_mj.html">6</a>  <a href="chap7_mj.html">7</a>  <a 
href="chap8_mj.html">8</a>  <a href="chap9_mj.html">9</a>  <a 
href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>
 
 <hr />
-<p class="foot">generated by <a 
href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap3.html 
new/cvec-2.8.2/doc/chap3.html
--- old/cvec-2.8.1/doc/chap3.html       2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap3.html       2024-08-27 01:03:40.000000000 +0200
@@ -60,7 +60,7 @@
 
 <p>Throughout the package, elements in the field <span 
class="SimpleMath">GF(p)</span> of <span class="SimpleMath">p</span> elements 
are represented by numbers <span class="SimpleMath">0,1,...,p-1</span> and 
arithmetic is just the standard arithmetic in the integers modulo <span 
class="SimpleMath">p</span>.</p>
 
-<p>Bigger finite fields are done by calculating in the polynomial ring <span 
class="SimpleMath">GF(p)[x]</span> in one indeterminate <span 
class="SimpleMath">x</span> modulo a certain irreducible polynomial. By 
convention, we use the so-called "Conway polynomials" (see <span class="URL"><a 
href="http://www.math.rwth-aachen.de:8001/~Frank.Luebeck/data/ConwayPol/index.html";>http://www.math.rwth-aachen.de:8001/~Frank.Luebeck/data/ConwayPol/index.html</a></span>)
 for this purpose, because they provide a standard way of embedding finite 
fields into their extension fields. Because Conway polynomials are monic, we 
can store coset representatives by storing polynomials of degree less than 
<span class="SimpleMath">d</span>, where <span class="SimpleMath">d</span> is 
the degree of the finite field over its prime field.</p>
+<p>Bigger finite fields are done by calculating in the polynomial ring <span 
class="SimpleMath">GF(p)[x]</span> in one indeterminate <span 
class="SimpleMath">x</span> modulo a certain irreducible polynomial. By 
convention, we use the so-called <q>Conway polynomials</q> (see <span 
class="URL"><a 
href="http://www.math.rwth-aachen.de:8001/~Frank.Luebeck/data/ConwayPol/index.html";>http://www.math.rwth-aachen.de:8001/~Frank.Luebeck/data/ConwayPol/index.html</a></span>)
 for this purpose, because they provide a standard way of embedding finite 
fields into their extension fields. Because Conway polynomials are monic, we 
can store coset representatives by storing polynomials of degree less than 
<span class="SimpleMath">d</span>, where <span class="SimpleMath">d</span> is 
the degree of the finite field over its prime field.</p>
 
 <p>As of this writing, <strong class="pkg">GAP</strong> has two implementation 
of finite field elements built into its kernel and library, the first of which 
stores finite field elements by storing the discrete logarithm with respect to 
a primitive root of the field. Although this is nice and efficient for small 
finite fields, it becomes unhandy for larger finite fields, because one needs a 
lookup table of length <span class="SimpleMath">p^d</span> for doing efficient 
addition. This implementation thus is limited to fields with less than or equal 
to <span class="SimpleMath">65536</span> elements. The other implementation 
using polynomial arithmetic modulo the Conway polynomial is used for fields 
with more than <span class="SimpleMath">65536</span> elements. For prime fields 
of characteristic <span class="SimpleMath">p</span> with more than that 
elements, there is an implementation using integers modulo <span 
class="SimpleMath">p</span>.</p>
 
@@ -74,7 +74,7 @@
 
 <p>For this section, we assume that the base field is <span 
class="SimpleMath">GF(p^d)</span>, the finite field with <span 
class="SimpleMath">p^d</span> elements, where <span class="SimpleMath">p</span> 
is a prime and <span class="SimpleMath">d</span> is a positive integer. This is 
realized as a field extension of degree <span class="SimpleMath">d</span> over 
the prime field <span class="SimpleMath">GF(p)</span> using the Conway 
polynomial <span class="SimpleMath">c ∈ GF(p)[x]</span>. We always represent 
field elements of <span class="SimpleMath">GF(p^d)</span> by polynomials <span 
class="Math">a = \sum_{{i=0}}^{{d-1}} a_i x^i</span> where the coefficients 
<span class="SimpleMath">a_i</span> are in <span 
class="SimpleMath">GF(p)</span>. Because <span class="SimpleMath">c</span> is 
monic, this gives a one-to-one correspondence between polynomials and finite 
field elements.</p>
 
-<p>The memory layout for compressed vectors is determined by two important 
constants, depending only on <span class="SimpleMath">p</span> and the word 
length of the machine. The word length is 4 bytes on 32bit machines (for 
example on the i386 architecture) and 8 bytes on 64bit machines (for example on 
the AMD64 architecture). More concretely, a "<code class="code">Word</code>" is 
an <code class="code">unsigned long int</code> in C and the length of a <code 
class="code">Word</code> is <code class="code">sizeof(unsigned long 
int)</code>.</p>
+<p>The memory layout for compressed vectors is determined by two important 
constants, depending only on <span class="SimpleMath">p</span> and the word 
length of the machine. The word length is 4 bytes on 32bit machines (for 
example on the i386 architecture) and 8 bytes on 64bit machines (for example on 
the AMD64 architecture). More concretely, a <q><code 
class="code">Word</code></q> is an <code class="code">unsigned long int</code> 
in C and the length of a <code class="code">Word</code> is <code 
class="code">sizeof(unsigned long int)</code>.</p>
 
 <p>Those constants are <code class="code">bitsperel</code> (bits per prime 
field element) and <code class="code">elsperword</code> (prime field elements 
per <code class="code">Word</code>). <code class="code">bitsperel</code> is 
<span class="SimpleMath">1</span> for <span class="SimpleMath">p=2</span> and 
otherwise the smallest integer, such that <span class="SimpleMath">2^bitsperel 
&gt; 2⋅ p-1</span>. This means, that we can store the numbers from <span 
class="SimpleMath">0</span> to <span class="SimpleMath">2⋅ p - 1</span> in 
<code class="code">bitsperel</code> bits. <code class="code">elsperword</code> 
is <span class="SimpleMath">32/bitsperel</span> rounded down to the next 
integer and multiplied by <span class="SimpleMath">2</span> if the length of a 
<code class="code">Word</code> is <span class="SimpleMath">8</span> bytes. Note 
that we thus store as many prime field elements as possible into one <code 
class="code">Word</code>, however, on 64bit machines we store only twice 
 as much as would fit into 32bit, even if we could pack one more into a <code 
class="code">Word</code>. This has technical reasons to make conversion between 
different architectures more efficient.</p>
 
@@ -98,7 +98,7 @@
 
 <p>(The exclamation marks mark the right hand side of the prime field 
elements.)</p>
 
-<p>Note that different architectures store their <code 
class="code">Word</code>s in a different byte order in memory ("endianess"). We 
do <em>not</em> specify how the data is distributed into bytes here! All access 
is via <code class="code">Word</code>s and their arithmetic (shifting, 
addition, multiplication, etc.). See Section <a 
href="chap3.html#X783395FC81A451F3"><span class="RefLink">3.4</span></a> for a 
discussion of this with respect to our external representation.</p>
+<p>Note that different architectures store their <code 
class="code">Word</code>s in a different byte order in memory 
(<q>endianess</q>). We do <em>not</em> specify how the data is distributed into 
bytes here! All access is via <code class="code">Word</code>s and their 
arithmetic (shifting, addition, multiplication, etc.). See Section <a 
href="chap3.html#X783395FC81A451F3"><span class="RefLink">3.4</span></a> for a 
discussion of this with respect to our external representation.</p>
 
 <p><a id="X7C195F41802266B7" name="X7C195F41802266B7"></a></p>
 
@@ -126,13 +126,13 @@
  VVV higher memory addresses VVV
 </pre></div>
 
-<p>A "<code class="code">cvec</code>" (one of our compressed vectors) is a 
<strong class="pkg">GAP</strong> "Data object" (that is with <code 
class="code">TNUM</code> equal to <code class="code">T_DATOBJ</code>). The 
first machine word in its bag is a pointer to its type, from the second machine 
word on the <code class="code">Word</code>s containing the above data are 
stored. The bag is exactly long enough to hold the type pointer and the data 
<code class="code">Word</code>s.</p>
+<p>A <q><code class="code">cvec</code></q> (one of our compressed vectors) is 
a <strong class="pkg">GAP</strong> <q>Data object</q> (that is with <code 
class="code">TNUM</code> equal to <code class="code">T_DATOBJ</code>). The 
first machine word in its bag is a pointer to its type, from the second machine 
word on the <code class="code">Word</code>s containing the above data are 
stored. The bag is exactly long enough to hold the type pointer and the data 
<code class="code">Word</code>s.</p>
 
 <p><a id="X819040FD7BCBABB2" name="X819040FD7BCBABB2"></a></p>
 
 <h5>3.2-3 <span class="Heading">How is information about the base field 
stored?</span></h5>
 
-<p>But how does the system know, over which field the vector is and how long 
it is? The type of a <strong class="pkg">GAP</strong> object consists of <span 
class="SimpleMath">3</span> pieces: A family, a bit list (for the filters), and 
one <strong class="pkg">GAP</strong> object for "defining data". The additional 
information about the vector is stored in the third piece, the defining data, 
and is called a "<code class="code">cvecclass</code>".</p>
+<p>But how does the system know, over which field the vector is and how long 
it is? The type of a <strong class="pkg">GAP</strong> object consists of <span 
class="SimpleMath">3</span> pieces: A family, a bit list (for the filters), and 
one <strong class="pkg">GAP</strong> object for <q>defining data</q>. The 
additional information about the vector is stored in the third piece, the 
defining data, and is called a <q><code class="code">cvecclass</code></q>.</p>
 
 <p>A <code class="code">cvecclass</code> is a positional object with <span 
class="SimpleMath">5</span> components:</p>
 
@@ -271,7 +271,7 @@
 
 <h5>3.2-4 <span class="Heading">Limits that follow from the Data 
Format</span></h5>
 
-<p>The following limits come from the above mentioned data format or other 
internal restrictions (an "immediate integer" in <strong 
class="pkg">GAP</strong> can take values between <span 
class="SimpleMath">2^{-28}</span> and <span 
class="SimpleMath">(2^{28})-1</span> inclusively on 32bit machines and between 
<span class="SimpleMath">2^{-60}</span> and <span 
class="SimpleMath">(2^{60})-1</span> on 64bit machines):</p>
+<p>The following limits come from the above mentioned data format or other 
internal restrictions (an <q>immediate integer</q> in <strong 
class="pkg">GAP</strong> can take values between <span 
class="SimpleMath">2^{-28}</span> and <span 
class="SimpleMath">(2^{28})-1</span> inclusively on 32bit machines and between 
<span class="SimpleMath">2^{-60}</span> and <span 
class="SimpleMath">(2^{60})-1</span> on 64bit machines):</p>
 
 
 <ul>
@@ -331,7 +331,7 @@
 
 <p>The component <code class="code">greasehint</code> contains the greasing 
level for the next matrix multiplication, in which this matrix occurs as the 
factor on the right hand side (if greasing is worth the effort, see Section <a 
href="chap5.html#X7DA0D38A7D5DBDFF"><span class="RefLink">5.8</span></a>).</p>
 
-<p>A <code class="code">cmat</code> can be "pre-greased", which just means, 
that a certain number of linear combinations of its rows is already precomputed 
(see Section <a href="chap5.html#X7DA0D38A7D5DBDFF"><span 
class="RefLink">5.8</span></a>). In that case, the object is in the additional 
filter <code class="code">HasGreaseTab</code> and the following components are 
bound additionally:</p>
+<p>A <code class="code">cmat</code> can be <q>pre-greased</q>, which just 
means, that a certain number of linear combinations of its rows is already 
precomputed (see Section <a href="chap5.html#X7DA0D38A7D5DBDFF"><span 
class="RefLink">5.8</span></a>). In that case, the object is in the additional 
filter <code class="code">HasGreaseTab</code> and the following components are 
bound additionally:</p>
 
 <div class="pcenter"><table class="GAPDocTable">
 <caption class="GAPDocTable"><b>Table: </b>Additional components of a <code 
class="code">cmat</code> object when pre-greased
@@ -367,7 +367,7 @@
 
 <h5>3.4-1 <span class="Heading">Byte ordering and word length</span></h5>
 
-<p>This section describes the external representation of matrices. A special 
data format is needed here, because of differences between computer 
architectures with respect to word length (32bit/64bit) and endianess. The term 
"endianess" refers to the fact, that different architectures store their long 
words in a different way in memory, namely they order the bytes that together 
make up a long word in different orders.</p>
+<p>This section describes the external representation of matrices. A special 
data format is needed here, because of differences between computer 
architectures with respect to word length (32bit/64bit) and endianess. The term 
<q>endianess</q> refers to the fact, that different architectures store their 
long words in a different way in memory, namely they order the bytes that 
together make up a long word in different orders.</p>
 
 <p>The external representation is the same as the internal format of a 32bit 
machine with little endianess, which means, that the lower significant bytes of 
a <code class="code">Word</code> are stored in lower addresses. The reasons for 
this decision are firstly that 64bit machines can do the bit shifting to 
convert between internal and external representation easier using their wide 
registers, and secondly, that the nowadays most popular architectures i386 and 
AMD64 use both little endianess, such that conversion is only necessary on a 
minority of machines.</p>
 
@@ -380,7 +380,7 @@
 <div class="pcenter"><table class="GAPDocTablenoborder">
 <caption class="GAPDocTable"><b>Table: </b>Header of a <code 
class="code">cmat</code> file</caption>
 <tr>
-<td class="tdleft">the magic value "<code class="code">GAPCMat1</code>" as 
ASCII letters (8 bytes) in this order</td>
+<td class="tdleft">the magic value <q><code class="code">GAPCMat1</code></q> 
as ASCII letters (8 bytes) in this order</td>
 </tr>
 <tr>
 <td class="tdleft">the value of <span class="SimpleMath">p</span> to describe 
the base field</td>
@@ -408,6 +408,6 @@
 <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="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>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap3_mj.html 
new/cvec-2.8.2/doc/chap3_mj.html
--- old/cvec-2.8.1/doc/chap3_mj.html    2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap3_mj.html    2024-08-27 01:03:40.000000000 +0200
@@ -6,7 +6,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <script type="text/javascript"
-  
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
+  
src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
 </script>
 <title>GAP (cvec) - Chapter 3: The Data Structures</title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
@@ -63,7 +63,7 @@
 
 <p>Throughout the package, elements in the field <span 
class="SimpleMath">\(GF(p)\)</span> of <span class="SimpleMath">\(p\)</span> 
elements are represented by numbers <span 
class="SimpleMath">\(0,1,\ldots,p-1\)</span> and arithmetic is just the 
standard arithmetic in the integers modulo <span 
class="SimpleMath">\(p\)</span>.</p>
 
-<p>Bigger finite fields are done by calculating in the polynomial ring <span 
class="SimpleMath">\(GF(p)[x]\)</span> in one indeterminate <span 
class="SimpleMath">\(x\)</span> modulo a certain irreducible polynomial. By 
convention, we use the so-called "Conway polynomials" (see <span class="URL"><a 
href="http://www.math.rwth-aachen.de:8001/~Frank.Luebeck/data/ConwayPol/index.html";>http://www.math.rwth-aachen.de:8001/~Frank.Luebeck/data/ConwayPol/index.html</a></span>)
 for this purpose, because they provide a standard way of embedding finite 
fields into their extension fields. Because Conway polynomials are monic, we 
can store coset representatives by storing polynomials of degree less than 
<span class="SimpleMath">\(d\)</span>, where <span 
class="SimpleMath">\(d\)</span> is the degree of the finite field over its 
prime field.</p>
+<p>Bigger finite fields are done by calculating in the polynomial ring <span 
class="SimpleMath">\(GF(p)[x]\)</span> in one indeterminate <span 
class="SimpleMath">\(x\)</span> modulo a certain irreducible polynomial. By 
convention, we use the so-called <q>Conway polynomials</q> (see <span 
class="URL"><a 
href="http://www.math.rwth-aachen.de:8001/~Frank.Luebeck/data/ConwayPol/index.html";>http://www.math.rwth-aachen.de:8001/~Frank.Luebeck/data/ConwayPol/index.html</a></span>)
 for this purpose, because they provide a standard way of embedding finite 
fields into their extension fields. Because Conway polynomials are monic, we 
can store coset representatives by storing polynomials of degree less than 
<span class="SimpleMath">\(d\)</span>, where <span 
class="SimpleMath">\(d\)</span> is the degree of the finite field over its 
prime field.</p>
 
 <p>As of this writing, <strong class="pkg">GAP</strong> has two implementation 
of finite field elements built into its kernel and library, the first of which 
stores finite field elements by storing the discrete logarithm with respect to 
a primitive root of the field. Although this is nice and efficient for small 
finite fields, it becomes unhandy for larger finite fields, because one needs a 
lookup table of length <span class="SimpleMath">\(p^d\)</span> for doing 
efficient addition. This implementation thus is limited to fields with less 
than or equal to <span class="SimpleMath">\(65536\)</span> elements. The other 
implementation using polynomial arithmetic modulo the Conway polynomial is used 
for fields with more than <span class="SimpleMath">\(65536\)</span> elements. 
For prime fields of characteristic <span class="SimpleMath">\(p\)</span> with 
more than that elements, there is an implementation using integers modulo <span 
class="SimpleMath">\(p\)</span>.</p>
 
@@ -77,7 +77,7 @@
 
 <p>For this section, we assume that the base field is <span 
class="SimpleMath">\(GF(p^d)\)</span>, the finite field with <span 
class="SimpleMath">\(p^d\)</span> elements, where <span 
class="SimpleMath">\(p\)</span> is a prime and <span 
class="SimpleMath">\(d\)</span> is a positive integer. This is realized as a 
field extension of degree <span class="SimpleMath">\(d\)</span> over the prime 
field <span class="SimpleMath">\(GF(p)\)</span> using the Conway polynomial 
<span class="SimpleMath">\(c \in GF(p)[x]\)</span>. We always represent field 
elements of <span class="SimpleMath">\(GF(p^d)\)</span> by polynomials <span 
class="SimpleMath">\(a = \sum_{{i=0}}^{{d-1}} a_i x^i\)</span> where the 
coefficients <span class="SimpleMath">\(a_i\)</span> are in <span 
class="SimpleMath">\(GF(p)\)</span>. Because <span 
class="SimpleMath">\(c\)</span> is monic, this gives a one-to-one 
correspondence between polynomials and finite field elements.</p>
 
-<p>The memory layout for compressed vectors is determined by two important 
constants, depending only on <span class="SimpleMath">\(p\)</span> and the word 
length of the machine. The word length is 4 bytes on 32bit machines (for 
example on the i386 architecture) and 8 bytes on 64bit machines (for example on 
the AMD64 architecture). More concretely, a "<code class="code">Word</code>" is 
an <code class="code">unsigned long int</code> in C and the length of a <code 
class="code">Word</code> is <code class="code">sizeof(unsigned long 
int)</code>.</p>
+<p>The memory layout for compressed vectors is determined by two important 
constants, depending only on <span class="SimpleMath">\(p\)</span> and the word 
length of the machine. The word length is 4 bytes on 32bit machines (for 
example on the i386 architecture) and 8 bytes on 64bit machines (for example on 
the AMD64 architecture). More concretely, a <q><code 
class="code">Word</code></q> is an <code class="code">unsigned long int</code> 
in C and the length of a <code class="code">Word</code> is <code 
class="code">sizeof(unsigned long int)</code>.</p>
 
 <p>Those constants are <code class="code">bitsperel</code> (bits per prime 
field element) and <code class="code">elsperword</code> (prime field elements 
per <code class="code">Word</code>). <code class="code">bitsperel</code> is 
<span class="SimpleMath">\(1\)</span> for <span 
class="SimpleMath">\(p=2\)</span> and otherwise the smallest integer, such that 
<span class="SimpleMath">\(2^bitsperel &gt; 2\cdot p-1\)</span>. This means, 
that we can store the numbers from <span class="SimpleMath">\(0\)</span> to 
<span class="SimpleMath">\(2\cdot p - 1\)</span> in <code 
class="code">bitsperel</code> bits. <code class="code">elsperword</code> is 
<span class="SimpleMath">\(32/bitsperel\)</span> rounded down to the next 
integer and multiplied by <span class="SimpleMath">\(2\)</span> if the length 
of a <code class="code">Word</code> is <span class="SimpleMath">\(8\)</span> 
bytes. Note that we thus store as many prime field elements as possible into 
one <code class="code">Word</code>, however, on
  64bit machines we store only twice as much as would fit into 32bit, even if 
we could pack one more into a <code class="code">Word</code>. This has 
technical reasons to make conversion between different architectures more 
efficient.</p>
 
@@ -101,7 +101,7 @@
 
 <p>(The exclamation marks mark the right hand side of the prime field 
elements.)</p>
 
-<p>Note that different architectures store their <code 
class="code">Word</code>s in a different byte order in memory ("endianess"). We 
do <em>not</em> specify how the data is distributed into bytes here! All access 
is via <code class="code">Word</code>s and their arithmetic (shifting, 
addition, multiplication, etc.). See Section <a 
href="chap3_mj.html#X783395FC81A451F3"><span class="RefLink">3.4</span></a> for 
a discussion of this with respect to our external representation.</p>
+<p>Note that different architectures store their <code 
class="code">Word</code>s in a different byte order in memory 
(<q>endianess</q>). We do <em>not</em> specify how the data is distributed into 
bytes here! All access is via <code class="code">Word</code>s and their 
arithmetic (shifting, addition, multiplication, etc.). See Section <a 
href="chap3_mj.html#X783395FC81A451F3"><span class="RefLink">3.4</span></a> for 
a discussion of this with respect to our external representation.</p>
 
 <p><a id="X7C195F41802266B7" name="X7C195F41802266B7"></a></p>
 
@@ -129,13 +129,13 @@
  VVV higher memory addresses VVV
 </pre></div>
 
-<p>A "<code class="code">cvec</code>" (one of our compressed vectors) is a 
<strong class="pkg">GAP</strong> "Data object" (that is with <code 
class="code">TNUM</code> equal to <code class="code">T_DATOBJ</code>). The 
first machine word in its bag is a pointer to its type, from the second machine 
word on the <code class="code">Word</code>s containing the above data are 
stored. The bag is exactly long enough to hold the type pointer and the data 
<code class="code">Word</code>s.</p>
+<p>A <q><code class="code">cvec</code></q> (one of our compressed vectors) is 
a <strong class="pkg">GAP</strong> <q>Data object</q> (that is with <code 
class="code">TNUM</code> equal to <code class="code">T_DATOBJ</code>). The 
first machine word in its bag is a pointer to its type, from the second machine 
word on the <code class="code">Word</code>s containing the above data are 
stored. The bag is exactly long enough to hold the type pointer and the data 
<code class="code">Word</code>s.</p>
 
 <p><a id="X819040FD7BCBABB2" name="X819040FD7BCBABB2"></a></p>
 
 <h5>3.2-3 <span class="Heading">How is information about the base field 
stored?</span></h5>
 
-<p>But how does the system know, over which field the vector is and how long 
it is? The type of a <strong class="pkg">GAP</strong> object consists of <span 
class="SimpleMath">\(3\)</span> pieces: A family, a bit list (for the filters), 
and one <strong class="pkg">GAP</strong> object for "defining data". The 
additional information about the vector is stored in the third piece, the 
defining data, and is called a "<code class="code">cvecclass</code>".</p>
+<p>But how does the system know, over which field the vector is and how long 
it is? The type of a <strong class="pkg">GAP</strong> object consists of <span 
class="SimpleMath">\(3\)</span> pieces: A family, a bit list (for the filters), 
and one <strong class="pkg">GAP</strong> object for <q>defining data</q>. The 
additional information about the vector is stored in the third piece, the 
defining data, and is called a <q><code class="code">cvecclass</code></q>.</p>
 
 <p>A <code class="code">cvecclass</code> is a positional object with <span 
class="SimpleMath">\(5\)</span> components:</p>
 
@@ -274,7 +274,7 @@
 
 <h5>3.2-4 <span class="Heading">Limits that follow from the Data 
Format</span></h5>
 
-<p>The following limits come from the above mentioned data format or other 
internal restrictions (an "immediate integer" in <strong 
class="pkg">GAP</strong> can take values between <span 
class="SimpleMath">\(2^{{-28}}\)</span> and <span 
class="SimpleMath">\((2^{{28}})-1\)</span> inclusively on 32bit machines and 
between <span class="SimpleMath">\(2^{{-60}}\)</span> and <span 
class="SimpleMath">\((2^{{60}})-1\)</span> on 64bit machines):</p>
+<p>The following limits come from the above mentioned data format or other 
internal restrictions (an <q>immediate integer</q> in <strong 
class="pkg">GAP</strong> can take values between <span 
class="SimpleMath">\(2^{{-28}}\)</span> and <span 
class="SimpleMath">\((2^{{28}})-1\)</span> inclusively on 32bit machines and 
between <span class="SimpleMath">\(2^{{-60}}\)</span> and <span 
class="SimpleMath">\((2^{{60}})-1\)</span> on 64bit machines):</p>
 
 
 <ul>
@@ -334,7 +334,7 @@
 
 <p>The component <code class="code">greasehint</code> contains the greasing 
level for the next matrix multiplication, in which this matrix occurs as the 
factor on the right hand side (if greasing is worth the effort, see Section <a 
href="chap5_mj.html#X7DA0D38A7D5DBDFF"><span 
class="RefLink">5.8</span></a>).</p>
 
-<p>A <code class="code">cmat</code> can be "pre-greased", which just means, 
that a certain number of linear combinations of its rows is already precomputed 
(see Section <a href="chap5_mj.html#X7DA0D38A7D5DBDFF"><span 
class="RefLink">5.8</span></a>). In that case, the object is in the additional 
filter <code class="code">HasGreaseTab</code> and the following components are 
bound additionally:</p>
+<p>A <code class="code">cmat</code> can be <q>pre-greased</q>, which just 
means, that a certain number of linear combinations of its rows is already 
precomputed (see Section <a href="chap5_mj.html#X7DA0D38A7D5DBDFF"><span 
class="RefLink">5.8</span></a>). In that case, the object is in the additional 
filter <code class="code">HasGreaseTab</code> and the following components are 
bound additionally:</p>
 
 <div class="pcenter"><table class="GAPDocTable">
 <caption class="GAPDocTable"><b>Table: </b>Additional components of a <code 
class="code">cmat</code> object when pre-greased
@@ -370,7 +370,7 @@
 
 <h5>3.4-1 <span class="Heading">Byte ordering and word length</span></h5>
 
-<p>This section describes the external representation of matrices. A special 
data format is needed here, because of differences between computer 
architectures with respect to word length (32bit/64bit) and endianess. The term 
"endianess" refers to the fact, that different architectures store their long 
words in a different way in memory, namely they order the bytes that together 
make up a long word in different orders.</p>
+<p>This section describes the external representation of matrices. A special 
data format is needed here, because of differences between computer 
architectures with respect to word length (32bit/64bit) and endianess. The term 
<q>endianess</q> refers to the fact, that different architectures store their 
long words in a different way in memory, namely they order the bytes that 
together make up a long word in different orders.</p>
 
 <p>The external representation is the same as the internal format of a 32bit 
machine with little endianess, which means, that the lower significant bytes of 
a <code class="code">Word</code> are stored in lower addresses. The reasons for 
this decision are firstly that 64bit machines can do the bit shifting to 
convert between internal and external representation easier using their wide 
registers, and secondly, that the nowadays most popular architectures i386 and 
AMD64 use both little endianess, such that conversion is only necessary on a 
minority of machines.</p>
 
@@ -383,7 +383,7 @@
 <div class="pcenter"><table class="GAPDocTablenoborder">
 <caption class="GAPDocTable"><b>Table: </b>Header of a <code 
class="code">cmat</code> file</caption>
 <tr>
-<td class="tdleft">the magic value "<code class="code">GAPCMat1</code>" as 
ASCII letters (8 bytes) in this order</td>
+<td class="tdleft">the magic value <q><code class="code">GAPCMat1</code></q> 
as ASCII letters (8 bytes) in this order</td>
 </tr>
 <tr>
 <td class="tdleft">the value of <span class="SimpleMath">\(p\)</span> to 
describe the base field</td>
@@ -411,6 +411,6 @@
 <div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a 
href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a 
href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a 
href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a 
href="chap6_mj.html">6</a>  <a href="chap7_mj.html">7</a>  <a 
href="chap8_mj.html">8</a>  <a href="chap9_mj.html">9</a>  <a 
href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>
 
 <hr />
-<p class="foot">generated by <a 
href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap4.html 
new/cvec-2.8.2/doc/chap4.html
--- old/cvec-2.8.1/doc/chap4.html       2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap4.html       2024-08-27 01:03:40.000000000 +0200
@@ -384,7 +384,7 @@
 
 <p>This is a method for (reading) element access of vectors. <var 
class="Arg">v</var> must be a <var class="Arg">cvec</var> and <var 
class="Arg">pos</var> must be a positive integer not greater than the length of 
<var class="Arg">v</var>. The finite field element at position <var 
class="Arg">pos</var> in <var class="Arg">v</var> is returned.</p>
 
-<p>Note that the list access syntax "<var class="Arg">v</var>[<var 
class="Arg">pos</var>]" triggers a call to the <code 
class="func">ELM_LIST</code> operation.</p>
+<p>Note that the list access syntax <q><var class="Arg">v</var>[<var 
class="Arg">pos</var>]</q> triggers a call to the <code 
class="func">ELM_LIST</code> operation.</p>
 
 <p><a id="X829C3BD17C7A6F4F" name="X829C3BD17C7A6F4F"></a></p>
 
@@ -397,7 +397,7 @@
 
 <p>The scalar <var class="Arg">s</var> is treated exactly as described in 
Subsection <a href="chap4.html#X788A3D6482290F7D"><span 
class="RefLink">4.2-1</span></a>.</p>
 
-<p>Note that the list access syntax "<var class="Arg">v</var><code 
class="code">[</code><var class="Arg">pos</var><code class="code">] := 
</code><var class="Arg">s</var>" triggers a call to the <code 
class="func">ASS_LIST</code> operation.</p>
+<p>Note that the list access syntax <q><var class="Arg">v</var><code 
class="code">[</code><var class="Arg">pos</var><code class="code">] := 
</code><var class="Arg">s</var></q> triggers a call to the <code 
class="func">ASS_LIST</code> operation.</p>
 
 <p><a id="X7E3A8E51853DEC58" name="X7E3A8E51853DEC58"></a></p>
 
@@ -408,7 +408,7 @@
 
 <p>This is a method for (reading) slice access of vectors. <var 
class="Arg">v</var> must be a <var class="Arg">cvec</var> and <var 
class="Arg">l</var> must be a range object or a list of positive integers not 
greater than the length of <var class="Arg">v</var>. In both cases the list of 
numbers must be contiguous list of valid positions in the vector. A new <code 
class="code">cvec</code> over the same field as <var class="Arg">v</var> and 
with the same length as <var class="Arg">l</var> is created and returned. The 
finite field element at i positions <var class="Arg">l</var> in <var 
class="Arg">v</var> are copied into the new vector.</p>
 
-<p>Note that the list slice access syntax "<var class="Arg">v</var>{<var 
class="Arg">l</var>}" triggers a call to the <code 
class="func">ELMS_LIST</code> operation.</p>
+<p>Note that the list slice access syntax <q><var class="Arg">v</var>{<var 
class="Arg">l</var>}</q> triggers a call to the <code 
class="func">ELMS_LIST</code> operation.</p>
 
 <p>Note that there intentionally is no write slice access to <code 
class="code">cvec</code>s, because in most cases this would lead to code that 
unnecessarily copies data around in an expensive way. Please use the following 
function instead:</p>
 
@@ -609,6 +609,6 @@
 <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="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>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap4_mj.html 
new/cvec-2.8.2/doc/chap4_mj.html
--- old/cvec-2.8.1/doc/chap4_mj.html    2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap4_mj.html    2024-08-27 01:03:40.000000000 +0200
@@ -6,7 +6,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <script type="text/javascript"
-  
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
+  
src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
 </script>
 <title>GAP (cvec) - Chapter 4: Vectors</title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
@@ -387,7 +387,7 @@
 
 <p>This is a method for (reading) element access of vectors. <var 
class="Arg">v</var> must be a <var class="Arg">cvec</var> and <var 
class="Arg">pos</var> must be a positive integer not greater than the length of 
<var class="Arg">v</var>. The finite field element at position <var 
class="Arg">pos</var> in <var class="Arg">v</var> is returned.</p>
 
-<p>Note that the list access syntax "<var class="Arg">v</var>[<var 
class="Arg">pos</var>]" triggers a call to the <code 
class="func">ELM_LIST</code> operation.</p>
+<p>Note that the list access syntax <q><var class="Arg">v</var>[<var 
class="Arg">pos</var>]</q> triggers a call to the <code 
class="func">ELM_LIST</code> operation.</p>
 
 <p><a id="X829C3BD17C7A6F4F" name="X829C3BD17C7A6F4F"></a></p>
 
@@ -400,7 +400,7 @@
 
 <p>The scalar <var class="Arg">s</var> is treated exactly as described in 
Subsection <a href="chap4_mj.html#X788A3D6482290F7D"><span 
class="RefLink">4.2-1</span></a>.</p>
 
-<p>Note that the list access syntax "<var class="Arg">v</var><code 
class="code">[</code><var class="Arg">pos</var><code class="code">] := 
</code><var class="Arg">s</var>" triggers a call to the <code 
class="func">ASS_LIST</code> operation.</p>
+<p>Note that the list access syntax <q><var class="Arg">v</var><code 
class="code">[</code><var class="Arg">pos</var><code class="code">] := 
</code><var class="Arg">s</var></q> triggers a call to the <code 
class="func">ASS_LIST</code> operation.</p>
 
 <p><a id="X7E3A8E51853DEC58" name="X7E3A8E51853DEC58"></a></p>
 
@@ -411,7 +411,7 @@
 
 <p>This is a method for (reading) slice access of vectors. <var 
class="Arg">v</var> must be a <var class="Arg">cvec</var> and <var 
class="Arg">l</var> must be a range object or a list of positive integers not 
greater than the length of <var class="Arg">v</var>. In both cases the list of 
numbers must be contiguous list of valid positions in the vector. A new <code 
class="code">cvec</code> over the same field as <var class="Arg">v</var> and 
with the same length as <var class="Arg">l</var> is created and returned. The 
finite field element at i positions <var class="Arg">l</var> in <var 
class="Arg">v</var> are copied into the new vector.</p>
 
-<p>Note that the list slice access syntax "<var class="Arg">v</var>{<var 
class="Arg">l</var>}" triggers a call to the <code 
class="func">ELMS_LIST</code> operation.</p>
+<p>Note that the list slice access syntax <q><var class="Arg">v</var>{<var 
class="Arg">l</var>}</q> triggers a call to the <code 
class="func">ELMS_LIST</code> operation.</p>
 
 <p>Note that there intentionally is no write slice access to <code 
class="code">cvec</code>s, because in most cases this would lead to code that 
unnecessarily copies data around in an expensive way. Please use the following 
function instead:</p>
 
@@ -612,6 +612,6 @@
 <div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a 
href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a 
href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a 
href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a 
href="chap6_mj.html">6</a>  <a href="chap7_mj.html">7</a>  <a 
href="chap8_mj.html">8</a>  <a href="chap9_mj.html">9</a>  <a 
href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>
 
 <hr />
-<p class="foot">generated by <a 
href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap5.html 
new/cvec-2.8.2/doc/chap5.html
--- old/cvec-2.8.1/doc/chap5.html       2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap5.html       2024-08-27 01:03:40.000000000 +0200
@@ -256,7 +256,7 @@
 <div class="func"><table class="func" width="100%"><tr><td 
class="tdleft"><code class="func">&#8227; ELM_LIST</code>( <var 
class="Arg">m</var>, <var class="Arg">pos</var> )</td><td 
class="tdright">(&nbsp;method&nbsp;)</td></tr></table></div>
 <p>Returns: a <code class="code">cvec</code></p>
 
-<p>Behaves exactly as expected. Note that this method is triggered when one 
uses the (reading) syntax "<code class="code">m[pos]</code>".</p>
+<p>Behaves exactly as expected. Note that this method is triggered when one 
uses the (reading) syntax <q><code class="code">m[pos]</code></q>.</p>
 
 <p><a id="X829C3BD17C7A6F4F" name="X829C3BD17C7A6F4F"></a></p>
 
@@ -265,7 +265,7 @@
 <div class="func"><table class="func" width="100%"><tr><td 
class="tdleft"><code class="func">&#8227; ASS_LIST</code>( <var 
class="Arg">m</var>, <var class="Arg">pos</var>, <var class="Arg">v</var> 
)</td><td class="tdright">(&nbsp;method&nbsp;)</td></tr></table></div>
 <p>Returns: nothing</p>
 
-<p>Behaves exactly as expected. Note that one can only assign to positions 
such that the resulting matrix has no holes. This method is triggered when one 
uses the (assignment) syntax "<code class="code">m[pos] := </code>".</p>
+<p>Behaves exactly as expected. Note that one can only assign to positions 
such that the resulting matrix has no holes. This method is triggered when one 
uses the (assignment) syntax <q><code class="code">m[pos] := </code></q>.</p>
 
 <p><a id="X7E3A8E51853DEC58" name="X7E3A8E51853DEC58"></a></p>
 
@@ -713,11 +713,11 @@
 
 <h4>5.8 <span class="Heading">Grease</span></h4>
 
-<p>The basic idea behind the "grease" technique is that over a finite field 
there are only finitely many linear combinations of a fixed list of vectors. 
Thus, many operations including matrix multiplication can be speeded up by 
precomputing all possible linear combinations and then just looking up the 
right one. For the case of matrix multiplication this can for example gain a 
factor of about <span class="SimpleMath">4</span> over the field with <span 
class="SimpleMath">2</span> elements using "grease level<span 
class="SimpleMath">8</span>", which means that for blocks of <span 
class="SimpleMath">8</span> rows all linear combinations are precomputed.</p>
+<p>The basic idea behind the <q>grease</q> technique is that over a finite 
field there are only finitely many linear combinations of a fixed list of 
vectors. Thus, many operations including matrix multiplication can be speeded 
up by precomputing all possible linear combinations and then just looking up 
the right one. For the case of matrix multiplication this can for example gain 
a factor of about <span class="SimpleMath">4</span> over the field with <span 
class="SimpleMath">2</span> elements using <q>grease level<span 
class="SimpleMath">8</span></q>, which means that for blocks of <span 
class="SimpleMath">8</span> rows all linear combinations are precomputed.</p>
 
 <p>The <strong class="pkg">cvec</strong> uses grease whenever appropriate 
automatically for example for matrix multiplication. However, occasionally the 
user has to take a conscious decision, which matrices to grease, because this 
of course uses more memory.</p>
 
-<p>A <code class="code">cmat</code> can be "pre-greased" with level <span 
class="SimpleMath">l</span>, which means that it is chopped into chunks of 
<span class="SimpleMath">l</span> rows and for each such chunk all possible 
linear combinations are precomputed and stored. This increases the memory used 
to store the matrix by a factor of <span class="SimpleMath">q^l</span> if the 
base field of the matrix has <span class="SimpleMath">q</span> elements. 
However, operations like vector matrix multiplication and matrix matrix 
multiplication (here the right hand side matrix must be greased!) are speeded 
up. As a rule of thumb the factor one can hope for is about <span 
class="SimpleMath">l ⋅ (q-1)/q</span>. Note that for big matrices matrix 
multiplication does greasing on the fly anyway and therefore one cannot hope 
for such a big factor by pre-greasing.</p>
+<p>A <code class="code">cmat</code> can be <q>pre-greased</q> with level <span 
class="SimpleMath">l</span>, which means that it is chopped into chunks of 
<span class="SimpleMath">l</span> rows and for each such chunk all possible 
linear combinations are precomputed and stored. This increases the memory used 
to store the matrix by a factor of <span class="SimpleMath">q^l</span> if the 
base field of the matrix has <span class="SimpleMath">q</span> elements. 
However, operations like vector matrix multiplication and matrix matrix 
multiplication (here the right hand side matrix must be greased!) are speeded 
up. As a rule of thumb the factor one can hope for is about <span 
class="SimpleMath">l ⋅ (q-1)/q</span>. Note that for big matrices matrix 
multiplication does greasing on the fly anyway and therefore one cannot hope 
for such a big factor by pre-greasing.</p>
 
 <p><a id="X7DF5A56F8747DD45" name="X7DF5A56F8747DD45"></a></p>
 
@@ -777,6 +777,6 @@
 <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="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>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap5_mj.html 
new/cvec-2.8.2/doc/chap5_mj.html
--- old/cvec-2.8.1/doc/chap5_mj.html    2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap5_mj.html    2024-08-27 01:03:40.000000000 +0200
@@ -6,7 +6,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <script type="text/javascript"
-  
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
+  
src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
 </script>
 <title>GAP (cvec) - Chapter 5: Matrices</title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
@@ -259,7 +259,7 @@
 <div class="func"><table class="func" width="100%"><tr><td 
class="tdleft"><code class="func">&#8227; ELM_LIST</code>( <var 
class="Arg">m</var>, <var class="Arg">pos</var> )</td><td 
class="tdright">(&nbsp;method&nbsp;)</td></tr></table></div>
 <p>Returns: a <code class="code">cvec</code></p>
 
-<p>Behaves exactly as expected. Note that this method is triggered when one 
uses the (reading) syntax "<code class="code">m[pos]</code>".</p>
+<p>Behaves exactly as expected. Note that this method is triggered when one 
uses the (reading) syntax <q><code class="code">m[pos]</code></q>.</p>
 
 <p><a id="X829C3BD17C7A6F4F" name="X829C3BD17C7A6F4F"></a></p>
 
@@ -268,7 +268,7 @@
 <div class="func"><table class="func" width="100%"><tr><td 
class="tdleft"><code class="func">&#8227; ASS_LIST</code>( <var 
class="Arg">m</var>, <var class="Arg">pos</var>, <var class="Arg">v</var> 
)</td><td class="tdright">(&nbsp;method&nbsp;)</td></tr></table></div>
 <p>Returns: nothing</p>
 
-<p>Behaves exactly as expected. Note that one can only assign to positions 
such that the resulting matrix has no holes. This method is triggered when one 
uses the (assignment) syntax "<code class="code">m[pos] := </code>".</p>
+<p>Behaves exactly as expected. Note that one can only assign to positions 
such that the resulting matrix has no holes. This method is triggered when one 
uses the (assignment) syntax <q><code class="code">m[pos] := </code></q>.</p>
 
 <p><a id="X7E3A8E51853DEC58" name="X7E3A8E51853DEC58"></a></p>
 
@@ -716,11 +716,11 @@
 
 <h4>5.8 <span class="Heading">Grease</span></h4>
 
-<p>The basic idea behind the "grease" technique is that over a finite field 
there are only finitely many linear combinations of a fixed list of vectors. 
Thus, many operations including matrix multiplication can be speeded up by 
precomputing all possible linear combinations and then just looking up the 
right one. For the case of matrix multiplication this can for example gain a 
factor of about <span class="SimpleMath">\(4\)</span> over the field with <span 
class="SimpleMath">\(2\)</span> elements using "grease level<span 
class="SimpleMath">\(8\)</span>", which means that for blocks of <span 
class="SimpleMath">\(8\)</span> rows all linear combinations are 
precomputed.</p>
+<p>The basic idea behind the <q>grease</q> technique is that over a finite 
field there are only finitely many linear combinations of a fixed list of 
vectors. Thus, many operations including matrix multiplication can be speeded 
up by precomputing all possible linear combinations and then just looking up 
the right one. For the case of matrix multiplication this can for example gain 
a factor of about <span class="SimpleMath">\(4\)</span> over the field with 
<span class="SimpleMath">\(2\)</span> elements using <q>grease level<span 
class="SimpleMath">\(8\)</span></q>, which means that for blocks of <span 
class="SimpleMath">\(8\)</span> rows all linear combinations are 
precomputed.</p>
 
 <p>The <strong class="pkg">cvec</strong> uses grease whenever appropriate 
automatically for example for matrix multiplication. However, occasionally the 
user has to take a conscious decision, which matrices to grease, because this 
of course uses more memory.</p>
 
-<p>A <code class="code">cmat</code> can be "pre-greased" with level <span 
class="SimpleMath">\(l\)</span>, which means that it is chopped into chunks of 
<span class="SimpleMath">\(l\)</span> rows and for each such chunk all possible 
linear combinations are precomputed and stored. This increases the memory used 
to store the matrix by a factor of <span class="SimpleMath">\(q^l\)</span> if 
the base field of the matrix has <span class="SimpleMath">\(q\)</span> 
elements. However, operations like vector matrix multiplication and matrix 
matrix multiplication (here the right hand side matrix must be greased!) are 
speeded up. As a rule of thumb the factor one can hope for is about <span 
class="SimpleMath">\(l \cdot (q-1)/q\)</span>. Note that for big matrices 
matrix multiplication does greasing on the fly anyway and therefore one cannot 
hope for such a big factor by pre-greasing.</p>
+<p>A <code class="code">cmat</code> can be <q>pre-greased</q> with level <span 
class="SimpleMath">\(l\)</span>, which means that it is chopped into chunks of 
<span class="SimpleMath">\(l\)</span> rows and for each such chunk all possible 
linear combinations are precomputed and stored. This increases the memory used 
to store the matrix by a factor of <span class="SimpleMath">\(q^l\)</span> if 
the base field of the matrix has <span class="SimpleMath">\(q\)</span> 
elements. However, operations like vector matrix multiplication and matrix 
matrix multiplication (here the right hand side matrix must be greased!) are 
speeded up. As a rule of thumb the factor one can hope for is about <span 
class="SimpleMath">\(l \cdot (q-1)/q\)</span>. Note that for big matrices 
matrix multiplication does greasing on the fly anyway and therefore one cannot 
hope for such a big factor by pre-greasing.</p>
 
 <p><a id="X7DF5A56F8747DD45" name="X7DF5A56F8747DD45"></a></p>
 
@@ -780,6 +780,6 @@
 <div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a 
href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a 
href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a 
href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a 
href="chap6_mj.html">6</a>  <a href="chap7_mj.html">7</a>  <a 
href="chap8_mj.html">8</a>  <a href="chap9_mj.html">9</a>  <a 
href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>
 
 <hr />
-<p class="foot">generated by <a 
href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap6.html 
new/cvec-2.8.2/doc/chap6.html
--- old/cvec-2.8.1/doc/chap6.html       2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap6.html       2024-08-27 01:03:40.000000000 +0200
@@ -122,15 +122,15 @@
 
 <p>The argument <var class="Arg">m</var> must be a <code 
class="code">cmat</code>. This method calculates a semi echelonised basis for 
the row space of <var class="Arg">m</var>.</p>
 
-<p>There are a number of similar operations the names of which are derived 
from <code class="func">SemiEchelonBasisMutable</code> by appending single 
letters: The letters "P", "T" and "X" are modifiers and there are operations 
for most of the <span class="SimpleMath">8</span> combinations of those letters 
being present or not respectively. Always give the present letters in 
alphabetical order.</p>
+<p>There are a number of similar operations the names of which are derived 
from <code class="func">SemiEchelonBasisMutable</code> by appending single 
letters: The letters <q>P</q>, <q>T</q> and <q>X</q> are modifiers and there 
are operations for most of the <span class="SimpleMath">8</span> combinations 
of those letters being present or not respectively. Always give the present 
letters in alphabetical order.</p>
 
-<p>The "X" indicates, that the input matrix may be destroyed, that is, the 
rows of <var class="Arg">m</var> will be changed and the very same objects be 
used in the semi echelonised result basis.</p>
+<p>The <q>X</q> indicates, that the input matrix may be destroyed, that is, 
the rows of <var class="Arg">m</var> will be changed and the very same objects 
be used in the semi echelonised result basis.</p>
 
-<p>The "T" indicates, that the transformation is calculated, that is, the 
resulting record <code class="code">r</code> will have a component <code 
class="code">coeffs</code>, such that <code class="code">r.coeffs * <var 
class="Arg">m</var></code> is equal to <code class="code">r.vectors</code> 
component of the semi echelonised result. Further, with given letter "T" there 
will be a component <code class="code">relations</code> which is a basis for 
the (left) nullspace of <var class="Arg">m</var>.</p>
+<p>The <q>T</q> indicates, that the transformation is calculated, that is, the 
resulting record <code class="code">r</code> will have a component <code 
class="code">coeffs</code>, such that <code class="code">r.coeffs * <var 
class="Arg">m</var></code> is equal to <code class="code">r.vectors</code> 
component of the semi echelonised result. Further, with given letter <q>T</q> 
there will be a component <code class="code">relations</code> which is a basis 
for the (left) nullspace of <var class="Arg">m</var>.</p>
 
-<p>The "P" indicates, that a component <code class="code">r.p</code> is 
calculated such that <code class="code">r.p * r.vectors</code> is the original 
matrix <var class="Arg">m</var>.</p>
+<p>The <q>P</q> indicates, that a component <code class="code">r.p</code> is 
calculated such that <code class="code">r.p * r.vectors</code> is the original 
matrix <var class="Arg">m</var>.</p>
 
-<p>Currently the variants with "P" and "T" both present are not implement 
because they will probably not be very useful.</p>
+<p>Currently the variants with <q>P</q> and <q>T</q> both present are not 
implement because they will probably not be very useful.</p>
 
 <p><a id="X839298477E3F7345" name="X839298477E3F7345"></a></p>
 
@@ -277,6 +277,6 @@
 <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="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>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap6_mj.html 
new/cvec-2.8.2/doc/chap6_mj.html
--- old/cvec-2.8.1/doc/chap6_mj.html    2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap6_mj.html    2024-08-27 01:03:40.000000000 +0200
@@ -6,7 +6,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <script type="text/javascript"
-  
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
+  
src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
 </script>
 <title>GAP (cvec) - Chapter 6: Linear Algebra routines</title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
@@ -125,15 +125,15 @@
 
 <p>The argument <var class="Arg">m</var> must be a <code 
class="code">cmat</code>. This method calculates a semi echelonised basis for 
the row space of <var class="Arg">m</var>.</p>
 
-<p>There are a number of similar operations the names of which are derived 
from <code class="func">SemiEchelonBasisMutable</code> by appending single 
letters: The letters "P", "T" and "X" are modifiers and there are operations 
for most of the <span class="SimpleMath">\(8\)</span> combinations of those 
letters being present or not respectively. Always give the present letters in 
alphabetical order.</p>
+<p>There are a number of similar operations the names of which are derived 
from <code class="func">SemiEchelonBasisMutable</code> by appending single 
letters: The letters <q>P</q>, <q>T</q> and <q>X</q> are modifiers and there 
are operations for most of the <span class="SimpleMath">\(8\)</span> 
combinations of those letters being present or not respectively. Always give 
the present letters in alphabetical order.</p>
 
-<p>The "X" indicates, that the input matrix may be destroyed, that is, the 
rows of <var class="Arg">m</var> will be changed and the very same objects be 
used in the semi echelonised result basis.</p>
+<p>The <q>X</q> indicates, that the input matrix may be destroyed, that is, 
the rows of <var class="Arg">m</var> will be changed and the very same objects 
be used in the semi echelonised result basis.</p>
 
-<p>The "T" indicates, that the transformation is calculated, that is, the 
resulting record <code class="code">r</code> will have a component <code 
class="code">coeffs</code>, such that <code class="code">r.coeffs * <var 
class="Arg">m</var></code> is equal to <code class="code">r.vectors</code> 
component of the semi echelonised result. Further, with given letter "T" there 
will be a component <code class="code">relations</code> which is a basis for 
the (left) nullspace of <var class="Arg">m</var>.</p>
+<p>The <q>T</q> indicates, that the transformation is calculated, that is, the 
resulting record <code class="code">r</code> will have a component <code 
class="code">coeffs</code>, such that <code class="code">r.coeffs * <var 
class="Arg">m</var></code> is equal to <code class="code">r.vectors</code> 
component of the semi echelonised result. Further, with given letter <q>T</q> 
there will be a component <code class="code">relations</code> which is a basis 
for the (left) nullspace of <var class="Arg">m</var>.</p>
 
-<p>The "P" indicates, that a component <code class="code">r.p</code> is 
calculated such that <code class="code">r.p * r.vectors</code> is the original 
matrix <var class="Arg">m</var>.</p>
+<p>The <q>P</q> indicates, that a component <code class="code">r.p</code> is 
calculated such that <code class="code">r.p * r.vectors</code> is the original 
matrix <var class="Arg">m</var>.</p>
 
-<p>Currently the variants with "P" and "T" both present are not implement 
because they will probably not be very useful.</p>
+<p>Currently the variants with <q>P</q> and <q>T</q> both present are not 
implement because they will probably not be very useful.</p>
 
 <p><a id="X839298477E3F7345" name="X839298477E3F7345"></a></p>
 
@@ -280,6 +280,6 @@
 <div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a 
href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a 
href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a 
href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a 
href="chap6_mj.html">6</a>  <a href="chap7_mj.html">7</a>  <a 
href="chap8_mj.html">8</a>  <a href="chap9_mj.html">9</a>  <a 
href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>
 
 <hr />
-<p class="foot">generated by <a 
href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap7.html 
new/cvec-2.8.2/doc/chap7.html
--- old/cvec-2.8.1/doc/chap7.html       2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap7.html       2024-08-27 01:03:40.000000000 +0200
@@ -35,6 +35,6 @@
 <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="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>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap7_mj.html 
new/cvec-2.8.2/doc/chap7_mj.html
--- old/cvec-2.8.1/doc/chap7_mj.html    2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap7_mj.html    2024-08-27 01:03:40.000000000 +0200
@@ -6,7 +6,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <script type="text/javascript"
-  
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
+  
src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
 </script>
 <title>GAP (cvec) - Chapter 7: Performance</title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
@@ -38,6 +38,6 @@
 <div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a 
href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a 
href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a 
href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a 
href="chap6_mj.html">6</a>  <a href="chap7_mj.html">7</a>  <a 
href="chap8_mj.html">8</a>  <a href="chap9_mj.html">9</a>  <a 
href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>
 
 <hr />
-<p class="foot">generated by <a 
href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap8.html 
new/cvec-2.8.2/doc/chap8.html
--- old/cvec-2.8.1/doc/chap8.html       2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap8.html       2024-08-27 01:03:40.000000000 +0200
@@ -35,6 +35,6 @@
 <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="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>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap8_mj.html 
new/cvec-2.8.2/doc/chap8_mj.html
--- old/cvec-2.8.1/doc/chap8_mj.html    2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap8_mj.html    2024-08-27 01:03:40.000000000 +0200
@@ -6,7 +6,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <script type="text/javascript"
-  
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
+  
src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
 </script>
 <title>GAP (cvec) - Chapter 8: Cooperation with the GAP library</title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
@@ -38,6 +38,6 @@
 <div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a 
href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a 
href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a 
href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a 
href="chap6_mj.html">6</a>  <a href="chap7_mj.html">7</a>  <a 
href="chap8_mj.html">8</a>  <a href="chap9_mj.html">9</a>  <a 
href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>
 
 <hr />
-<p class="foot">generated by <a 
href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap9.html 
new/cvec-2.8.2/doc/chap9.html
--- old/cvec-2.8.1/doc/chap9.html       2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap9.html       2024-08-27 01:03:40.000000000 +0200
@@ -35,6 +35,6 @@
 <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="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>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chap9_mj.html 
new/cvec-2.8.2/doc/chap9_mj.html
--- old/cvec-2.8.1/doc/chap9_mj.html    2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chap9_mj.html    2024-08-27 01:03:40.000000000 +0200
@@ -6,7 +6,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <script type="text/javascript"
-  
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
+  
src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
 </script>
 <title>GAP (cvec) - Chapter 9: Examples</title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
@@ -38,6 +38,6 @@
 <div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a 
href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a 
href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a 
href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a 
href="chap6_mj.html">6</a>  <a href="chap7_mj.html">7</a>  <a 
href="chap8_mj.html">8</a>  <a href="chap9_mj.html">9</a>  <a 
href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>
 
 <hr />
-<p class="foot">generated by <a 
href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chapBib.html 
new/cvec-2.8.2/doc/chapBib.html
--- old/cvec-2.8.1/doc/chapBib.html     2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chapBib.html     2024-08-27 01:03:40.000000000 +0200
@@ -30,6 +30,6 @@
 <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="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>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chapBib_mj.html 
new/cvec-2.8.2/doc/chapBib_mj.html
--- old/cvec-2.8.1/doc/chapBib_mj.html  2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chapBib_mj.html  2024-08-27 01:03:40.000000000 +0200
@@ -6,7 +6,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <script type="text/javascript"
-  
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
+  
src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
 </script>
 <title>GAP (cvec) - References</title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
@@ -33,6 +33,6 @@
 <div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a 
href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a 
href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a 
href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a 
href="chap6_mj.html">6</a>  <a href="chap7_mj.html">7</a>  <a 
href="chap8_mj.html">8</a>  <a href="chap9_mj.html">9</a>  <a 
href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>
 
 <hr />
-<p class="foot">generated by <a 
href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chapInd.html 
new/cvec-2.8.2/doc/chapInd.html
--- old/cvec-2.8.1/doc/chapInd.html     2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chapInd.html     2024-08-27 01:03:40.000000000 +0200
@@ -158,6 +158,6 @@
 <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="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>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chapInd.txt 
new/cvec-2.8.2/doc/chapInd.txt
--- old/cvec-2.8.1/doc/chapInd.txt      2023-03-28 00:19:14.000000000 +0200
+++ new/cvec-2.8.2/doc/chapInd.txt      2024-08-27 01:03:35.000000000 +0200
@@ -39,7 +39,7 @@
   Collected 5.2-9 
   CopySubMatrix 5.5-2 
   CopySubVector 4.3-5 
-  cvec 2. 
+  cvec 2.0 
   CVec 4.1-1 
       coefflcvecclass 4.1-3 
       coefflff 4.1-6 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/chapInd_mj.html 
new/cvec-2.8.2/doc/chapInd_mj.html
--- old/cvec-2.8.1/doc/chapInd_mj.html  2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/chapInd_mj.html  2024-08-27 01:03:40.000000000 +0200
@@ -6,7 +6,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
 <head>
 <script type="text/javascript"
-  
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
+  
src="https://cdn.jsdelivr.net/npm/mathjax@2/MathJax.js?config=TeX-AMS-MML_HTMLorMML";>
 </script>
 <title>GAP (cvec) - Index</title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
@@ -161,6 +161,6 @@
 <div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a 
href="chap0_mj.html">Top</a>  <a href="chap1_mj.html">1</a>  <a 
href="chap2_mj.html">2</a>  <a href="chap3_mj.html">3</a>  <a 
href="chap4_mj.html">4</a>  <a href="chap5_mj.html">5</a>  <a 
href="chap6_mj.html">6</a>  <a href="chap7_mj.html">7</a>  <a 
href="chap8_mj.html">8</a>  <a href="chap9_mj.html">9</a>  <a 
href="chapBib_mj.html">Bib</a>  <a href="chapInd_mj.html">Ind</a>  </div>
 
 <hr />
-<p class="foot">generated by <a 
href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
+<p class="foot">generated by <a 
href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc";>GAPDoc2HTML</a></p>
 </body>
 </html>
Binary files old/cvec-2.8.1/doc/manual.pdf and new/cvec-2.8.2/doc/manual.pdf 
differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/manual.six 
new/cvec-2.8.2/doc/manual.six
--- old/cvec-2.8.1/doc/manual.six       2023-03-28 00:19:19.000000000 +0200
+++ new/cvec-2.8.2/doc/manual.six       2024-08-27 01:03:40.000000000 +0200
@@ -3,9 +3,11 @@
 encoding := "UTF-8",
 bookname := "cvec",
 entries :=
-[ [ "Title page", ".", [ 0, 0, 0 ], 1, 1, "title page", "X7D2C85EC87DD46E5" ],
-  [ "Copyright", ".-1", [ 0, 0, 1 ], 29, 2, "copyright", "X81488B807F2A1CF1" ]
-    , [ "Table of Contents", ".-2", [ 0, 0, 2 ], 47, 3, "table of contents", 
+[ [ "Title page", "0.0", [ 0, 0, 0 ], 1, 1, "title page", "X7D2C85EC87DD46E5" 
+     ], 
+  [ "Copyright", "0.0-1", [ 0, 0, 1 ], 29, 2, "copyright", 
+      "X81488B807F2A1CF1" ], 
+  [ "Table of Contents", "0.0-2", [ 0, 0, 2 ], 47, 3, "table of contents", 
       "X8537FEB07AF2BEC8" ], 
   [ "\033[1X\033[33X\033[0;-2YIntroduction\033[133X\033[101X", "1", 
       [ 1, 0, 0 ], 1, 5, "introduction", "X7DFB63A97E67C0A1" ], 
@@ -132,7 +134,7 @@
   [ "References", "bib", [ "Bib", 0, 0 ], 1, 44, "references", 
       "X7A6F98FD85F02BFE" ], 
   [ "Index", "ind", [ "Ind", 0, 0 ], 1, 45, "index", "X83A0356F839C696F" ], 
-  [ "\033[5Xcvec\033[105X", "2.", [ 2, 0, 0 ], 1, 7, "cvec", 
+  [ "\033[5Xcvec\033[105X", "2.0", [ 2, 0, 0 ], 1, 7, "cvec", 
       "X81D63A85782CD477" ], 
   [ "\033[2XCVec\033[102X", "4.1-1", [ 4, 1, 1 ], 14, 14, "cvec", 
       "X83BF7BBC84478E77" ], 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/doc/title.xml new/cvec-2.8.2/doc/title.xml
--- old/cvec-2.8.1/doc/title.xml        2023-03-28 00:19:14.000000000 +0200
+++ new/cvec-2.8.2/doc/title.xml        2024-08-27 01:03:35.000000000 +0200
@@ -9,7 +9,7 @@
     Compact vectors over finite fields
   </Subtitle>
   <Version>
-    2.8.1
+    2.8.2
   </Version>
   <Author>
     Max Neunhöffer<Alt Only="LaTeX"><Br/></Alt>
@@ -23,7 +23,7 @@
 
   </Author>
   <Date>
-    28 March 2023
+    27 August 2024
   </Date>
   <Copyright>
           &copyright; 2005-2014 by Max Neunhöffer<P/>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/gap/calibration.gi 
new/cvec-2.8.2/gap/calibration.gi
--- old/cvec-2.8.1/gap/calibration.gi   2023-03-28 00:18:57.000000000 +0200
+++ new/cvec-2.8.2/gap/calibration.gi   2024-08-27 01:03:21.000000000 +0200
@@ -859,13 +859,13 @@
 # Now read hostname-specific calibration data:
 if IsBoundGlobal("IO_gethostname") then
     CVEC_hostname := IO_gethostname();
-    CVEC_calibrationfile := Concatenation("local/calibration.",
-                                            CVEC_hostname);
-    if CVEC_hostname <> "" then
-        if ReadPackage("cvec",CVEC_calibrationfile) = true then
-            Info(InfoCVec,1,"Have read host-specific calibration file ",
-                    CVEC_calibrationfile);
-        fi;
+    CVEC_calibrationfile := Filename(
+            DirectoriesPackageLibrary("cvec", "local"),
+            Concatenation("calibration.", CVEC_hostname));
+    if CVEC_hostname <> "" and CVEC_calibrationfile <> fail then
+        Read(CVEC_calibrationfile);
+        Info(InfoCVec,1,"Have read host-specific calibration file ",
+                CVEC_calibrationfile);
     fi;
 fi;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/gap/cmat.gd new/cvec-2.8.2/gap/cmat.gd
--- old/cvec-2.8.1/gap/cmat.gd  2023-03-28 00:18:57.000000000 +0200
+++ new/cvec-2.8.2/gap/cmat.gd  2024-08-27 01:03:21.000000000 +0200
@@ -77,7 +77,6 @@
 # Greasing:
 #############################################################################
 
-DeclareGlobalVariable( "CVEC_SpreadTabCache" );
 DeclareGlobalFunction( "CVEC_MakeSpreadTab" );
 DeclareGlobalFunction( "CVEC_OptimizeGreaseHint" );
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/gap/cmat.gi new/cvec-2.8.2/gap/cmat.gi
--- old/cvec-2.8.1/gap/cmat.gi  2023-03-28 00:18:57.000000000 +0200
+++ new/cvec-2.8.2/gap/cmat.gi  2024-08-27 01:03:21.000000000 +0200
@@ -1326,7 +1326,7 @@
 # Greasing:
 #############################################################################
 
-InstallValue( CVEC_SpreadTabCache, [] );
+BindGlobal( "CVEC_SpreadTabCache", [] );
 
 InstallGlobalFunction( CVEC_MakeSpreadTab, function(p,d,l,bitsperel)
     # Make up the spreadtab (EXTRACT values are 2^bitsperel-adic
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/gap/cvec.gd new/cvec-2.8.2/gap/cvec.gd
--- old/cvec-2.8.1/gap/cvec.gd  2023-03-28 00:18:57.000000000 +0200
+++ new/cvec-2.8.2/gap/cvec.gd  2024-08-27 01:03:21.000000000 +0200
@@ -35,12 +35,6 @@
 ## Information about the base fields:
 #############################################################################
 
-DeclareGlobalVariable( "CVEC_q" );
-DeclareGlobalVariable( "CVEC_F" );
-DeclareGlobalVariable( "CVEC_lens" );
-DeclareGlobalVariable( "CVEC_classes" );
-DeclareGlobalVariable( "CVEC_BestGreaseTab" );
-
 DeclareGlobalFunction( "CVEC_NewCVecClass" );
 DeclareGlobalFunction( "CVEC_NewCVecClassSameField" );
 
@@ -110,8 +104,6 @@
 
 DeclareGlobalFunction( "CVEC_New" );
 
-DeclareGlobalVariable( "CVEC_CharactersForDisplay" );
-
 DeclareGlobalFunction( "CVEC_HandleScalar" );
 
 DeclareOperation( "Memory", [IsCVecRep] );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/gap/cvec.gi new/cvec-2.8.2/gap/cvec.gi
--- old/cvec-2.8.1/gap/cvec.gi  2023-03-28 00:18:57.000000000 +0200
+++ new/cvec-2.8.2/gap/cvec.gi  2024-08-27 01:03:21.000000000 +0200
@@ -21,20 +21,20 @@
 #############################################################################
 
 # A set holding all q's for which we have cvec classes:
-InstallValue( CVEC_q, [] );
+BindGlobal( "CVEC_q", [] );
 # A list holding field infos:
-InstallValue( CVEC_F, [] );
+BindGlobal( "CVEC_F", [] );
 # A list holding lengths of vectors existing for each q:
-InstallValue( CVEC_lens, [] );
+BindGlobal( "CVEC_lens", [] );
 # A list holding cvec classes (which are pairs [fieldinfo,len])
-InstallValue( CVEC_classes, [] );
+BindGlobal( "CVEC_classes", [] );
 
 
 #############################################################################
 ## Administration of field info and cvec class data:
 #############################################################################
 
-InstallValue( CVEC_BestGreaseTab,
+BindGlobal( "CVEC_BestGreaseTab",
   [ ,            # q=1
     8,           # q=2
     5,           # q=3
@@ -375,7 +375,7 @@
   return res;
 end);
 
-InstallValue( CVEC_CharactersForDisplay,
+BindGlobal( "CVEC_CharactersForDisplay",
               ".123456789abcdefghijklmnopqrstuvwxyz" );
 
 InstallMethod( Display, "for a cvec", [IsCVecRep], 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cvec-2.8.1/init.g new/cvec-2.8.2/init.g
--- old/cvec-2.8.1/init.g       2023-03-28 00:18:57.000000000 +0200
+++ new/cvec-2.8.2/init.g       2024-08-27 01:03:21.000000000 +0200
@@ -13,13 +13,8 @@
 ################################
 
 # load kernel function if it is installed:
-if (not IsBound(CVEC)) and ("cvec" in SHOW_STAT()) then
-  # try static module
-  LoadStaticModule("cvec");
-fi;
-if (not IsBound(CVEC)) and
-   (Filename(DirectoriesPackagePrograms("cvec"), "cvec.so") <> fail) then
-  LoadDynamicModule(Filename(DirectoriesPackagePrograms("cvec"), "cvec.so"));
+if not LoadKernelExtension("cvec") then
+  Error("failed to load the cvec package kernel extension");
 fi;
 
 #
@@ -36,7 +31,6 @@
 ReadPackage("cvec", "gap/cvec.gd");
 ReadPackage("cvec", "gap/cmat.gd");
 ReadPackage("cvec", "gap/linalg.gd");
-ReadPackage("cvec", "gap/matrix.gd");
 
 ##
 ##  This program is free software; you can redistribute it and/or modify

Reply via email to