Alan Powell on Sun, 04 Dec 2011 18:04:45 +0100

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: PARI-GP use of elldata & seadata packages

Apology - it should read (x86) not (x64).
Windows 7 64-bit uses two âProgram Fileâ folders:
C:\Program Files\       for 64-bit applications
C:\Program Files (x86)\ for 32-bit applications
I just re-checked ellidentify() and the â/â
character is definitely missing between (x86)
and PARI in the diagnostic shown - viz:
[missing âC:/Program Files (x86)PARI/elldata/ell0â.]
but ell0 clearly exists in folder ...PARI\elldata?
The file  Installation Instructions for âelldataâ.mht  reads
âOpen 'data' and move the folder it contains (e.g. elldata)to the
directory where the installer placed architecture independent files.
The default destinations are:
     C:\Program Files\PARI   (Win32)â
Your C code refers to a folder âdataâ. Should the elldata files
reside in  ...\PARI\data or ...\PARI\elldata ?
I will try to re-install seadata.  Should there be a folder named 
....\PARI\seadata containing files like sea0, sea2, ... , sea211?
Sent: Sunday, December 04, 2011 11:02 AM
Subject: Re: PARI-GP use of elldata & seadata packages
On Sun, Dec 04, 2011 at 10:42:18AM -0500, Alan Powell wrote:
> As a PARI-GP newbie, I could use a little help in installing
> or activating the optional âelldataâ and âseadataâ packages.
> I installed PARI-GP 2.5.0 running under Windows 7 SP1 and User
> Guide examples seem to work normally.
> I then downloaded, unzipped and copied the extra packages to the
> PARI-GP (gp.exe) executable folder [C:\Program Files (x86)\PARI\]
> as follows:
> 1. A folder named elldata containing 200 files named ell0 thru ell199

This is normal.

> 2. A single file named seadata (no filename extension) size 39,870KB

It is not, it should be a directory with files sea0, sea2, sea211, etc.

> The User Guide elliptic functions seem to work e.g.
> E = ellinit([0,0,0,-4,0])  outputs voluminous curve parameters
> allap(E,11)  correctly outputs  = 0    but
> ellidentify(E)  returns
> *** ellidentify: Elliptic curves files not available for conductor 64
> [Missing C:/Program Files (x64)PARI/elldata/ell0].
> [Note missing â/â between (x64) and âPARIâ]

I guess the code we use to get the directory where gp.exe is installed does not work
reliably on your system. Does "(x86)" really becomes "(x64)" ?

This is the code we use:

char* win32_datadir(void)
  char datadir[1024];
  char* slash;
  GetModuleFileNameA(0, datadir, sizeof(datadir) );
  slash = strrchr(datadir, '\\');
  if( slash ) *(slash+1) = 0;
  strcat(datadir, "data");
  return strdup(datadir);
Not sure what happen.

> trying example:
> ellsea(E,nextprime(10^6))  returns
> *** unknown function or error in formal parameters: elsea(E,97).

There is no ellsea function: the function is called ellap in both case.