= sympow =
== Description ==
SYMPOW is a package to compute special values of symmetric power elliptic
curve L-functions. It can compute up to about 64 digits of precision.
== License ==
* See the file src/COPYING
== SPKG Maintainers ==
* David Kirkby (I'll do my best, but this is hard to maintain)
== Upstream Contact ==
SYMPOW does not appear to be maintained any longer, so there is no
upstream web site.
Mark Watkins, the package author, now works at Magma.
Previous (possibly still usable) email is watkins@maths.usyd.edu.au
== Dependencies ==
* GNU patch
== Special Update/Build Instructions ==
* Some of the code is very dubious, and it is anyones guess really what
the compiler does with it. For example, the following line exists in
src/eulerfactors.c:
if ((HECKE) && (d==1)) return hecke_good(p,ap,m,v);
But since hecke_good is defined as returning void, it's hard to know
exactly how this code behaves. I would not be surprised by any bugs
that might show up. I (David Kirkby) would personally not trust this
code much at all.
* This is a difficult package to maintain. A trac ticket (#9758) has been
opened to implement Watkins-Delaunay's algorithm for computing modular
degrees in Sage. Once implemented, it should be possible to remove this
package.
* The package is configured such that the data files are in a directory
below where 'sympow' is installed. If Sage is installed globally, then
it will be impossible to create the data files without being root.
This has been fixed in the Gentoo Linux distribution. Some information
from Christopher can be see on http://trac.sagemath.org/sage_trac/ticket/9703
This package will generate binary versions of all shipped datafiles,
so these will work. However, creating totally new datafiles from scratch
will not work.
== Changelog ==
=== sympow-1.018.1.p11 (Jeroen Demeyer, 19 Jan 2012) ===
* #11920: Remove -fno-expensive-optimizations workaround, instead try
various flags which might force 53-bit precision doubles.
* Find out the actual FPU precision with config/fpubits1.c and
config/fpubits2.c.
* Move all x86 extended precision FPU-control word stuff from
src/Configure to spkg-install
* Generate binary datafiles when installing SYMPOW. This ensures that
all users (not only the one which installed Sage) can use the standard
datafiles.
* execlp.patch: Use execlp() instead of execl() to execute "sh". This
is needed for the -new_data option to work (which surely could never
have worked before).
* Use `patch` instead of `cp` for patching.
* Lots of small fixes in spkg-install.
* Remove dist/debian directory.
=== sympow-1.018.1.p9 (Jeroen Demeyer, 2 May 2011) ===
* #11226: Add flag -fno-expensive-optimizations when compiling with
gcc 4.6.x on a ia64 system. See also gcc bugzilla:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48823
=== sympow-1.018.1.p8 (David Kirkby, 21st August 2010) ===
* #9703 + #9166 Implement inline assembly code to set the control
word of the floating point processor to round to an
IEEE-754 double (53-bit mantissa, 64-bits in total), rather
than the default extended precision. This resolves problems with
doctest failures on Solaris 10 x86, OpenSolaris on x86 and Cygwin.
This is in the file patches/fpu.c
* Tidied up SPKG.txt, to conform to the Sage Developers Guide.
* Move part of the contents of SPKG.txt to a file called 'email-exchange.txt'
which shows some email exchanges between William Stein and Mark
Watkins. It was previously here in SPKG.txt, but is rather out of place.
* Changed the very badly written Configure script to work with any compiler
(not gcc as before). Actually, since the C code is so badly written,
the Sun compiler will not compile it, but at least the errors can be seen
if one tries.
* Changed the Configure script so the code to change the precision control
of the floating point processor is implemented on any non-OS X system
with an x86 CPU. It now no longer assumes Linux.
* Removed code from spkg-install which tries to first build SYMPOW with
assembly code, then without it. The code must be old and redundant, as
the varibles set are not anywhere in the SYMPOW source code.
=== sympow-1.018.1.p7 (David Kirkby, 25th May 2010) ===
* #9029 Allow to build 64-bit
=== sympow-1.018.1.p6 (Michael Abshoff, November 30th, 2008) ===
* add build fix for tcsh by Willem Jan Palenstijn (trac #4261)
* small cleanups
=== sympow-1.018.1.p5 ===
* make sure we pick gcc over cc