You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							321 lines
						
					
					
						
							12 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							321 lines
						
					
					
						
							12 KiB
						
					
					
				
								diff -r -c3 LiDIA-1.3.orig/Readme LiDIA-1.3/Readme
							 | 
						|
								*** LiDIA-1.3.orig/Readme	Wed Feb  5 21:51:10 1997
							 | 
						|
								--- LiDIA-1.3/Readme	Sun Jan 25 00:44:29 1998
							 | 
						|
								***************
							 | 
						|
								*** 157,164 ****
							 | 
						|
								  o mpqs: large prime variant for quadratic sieve in the class
							 | 
						|
								    rational_factorization.
							 | 
						|
								  
							 | 
						|
								! o You can now choose gmp as the integer arithmetic of the kernel.
							 | 
						|
								!   This LiDIA - release contains gmp version 2.0.2.
							 | 
						|
								  
							 | 
						|
								  
							 | 
						|
								  
							 | 
						|
								--- 157,164 ----
							 | 
						|
								  o mpqs: large prime variant for quadratic sieve in the class
							 | 
						|
								    rational_factorization.
							 | 
						|
								  
							 | 
						|
								! o You can now choose gmp or cln as the integer arithmetic of the kernel.
							 | 
						|
								!   This LiDIA release contains gmp version 2.0.2 and cln version 1997-09-06.
							 | 
						|
								  
							 | 
						|
								  
							 | 
						|
								  
							 | 
						|
								diff -r -c3 LiDIA-1.3.orig/config/CONFIG.in LiDIA-1.3/config/CONFIG.in
							 | 
						|
								*** LiDIA-1.3.orig/config/CONFIG.in	Wed Feb  5 12:02:16 1997
							 | 
						|
								--- LiDIA-1.3/config/CONFIG.in	Sat Jan 24 18:42:57 1998
							 | 
						|
								***************
							 | 
						|
								*** 42,48 ****
							 | 
						|
								  #
							 | 
						|
								  # The Kernel And The Interface To Be compiled
							 | 
						|
								  #
							 | 
						|
								! # Possible Integer Interfaces Are: libI, lip, gmp
							 | 
						|
								  #
							 | 
						|
								  # Possible Memory Managers Are: malloc, dentzer, boehm,
							 | 
						|
								  #                               default (no manager)
							 | 
						|
								--- 42,48 ----
							 | 
						|
								  #
							 | 
						|
								  # The Kernel And The Interface To Be compiled
							 | 
						|
								  #
							 | 
						|
								! # Possible Integer Interfaces Are: libI, lip, gmp, cln
							 | 
						|
								  #
							 | 
						|
								  # Possible Memory Managers Are: malloc, dentzer, boehm,
							 | 
						|
								  #                               default (no manager)
							 | 
						|
								***************
							 | 
						|
								*** 149,155 ****
							 | 
						|
								   LIDIA_INSTALL_DAT    = ${LIDIA_INSTALL_DIR}/lib
							 | 
						|
								   
							 | 
						|
								  #
							 | 
						|
								! # OS/2 Compatability Section 
							 | 
						|
								  #
							 | 
						|
								   
							 | 
						|
								                CXX-off =
							 | 
						|
								--- 149,155 ----
							 | 
						|
								   LIDIA_INSTALL_DAT    = ${LIDIA_INSTALL_DIR}/lib
							 | 
						|
								   
							 | 
						|
								  #
							 | 
						|
								! # OS/2 Compatibility Section 
							 | 
						|
								  #
							 | 
						|
								   
							 | 
						|
								                CXX-off =
							 | 
						|
								***************
							 | 
						|
								*** 166,171 ****
							 | 
						|
								--- 166,172 ----
							 | 
						|
								  # Make Command Macros
							 | 
						|
								  #
							 | 
						|
								  # AR       -- the archiver command
							 | 
						|
								+ # ARX      -- the archiver extract command
							 | 
						|
								  # RM       -- command used to remove files
							 | 
						|
								  # RMR      -- command used to remove directories
							 | 
						|
								  # CP       -- command used to copy files
							 | 
						|
								***************
							 | 
						|
								*** 178,183 ****
							 | 
						|
								--- 179,185 ----
							 | 
						|
								  #
							 | 
						|
								  
							 | 
						|
								                  AR    = @AR@ 
							 | 
						|
								+                 ARX   = ar x
							 | 
						|
								                  RM    = @RM@
							 | 
						|
								                  RMR   = @RMR@
							 | 
						|
								                  CP    = @CP@
							 | 
						|
								diff -r -c3 LiDIA-1.3.orig/config/CONFIG.os2 LiDIA-1.3/config/CONFIG.os2
							 | 
						|
								*** LiDIA-1.3.orig/config/CONFIG.os2	Tue Jan 21 14:55:44 1997
							 | 
						|
								--- LiDIA-1.3/config/CONFIG.os2	Sat Jan 24 18:43:28 1998
							 | 
						|
								***************
							 | 
						|
								*** 137,142 ****
							 | 
						|
								--- 137,143 ----
							 | 
						|
								  # Make Command Macros
							 | 
						|
								  #
							 | 
						|
								  # AR       -- the archiver command
							 | 
						|
								+ # ARX      -- the archiver extract command
							 | 
						|
								  # RM       -- command used to remove files
							 | 
						|
								  # RMR      -- command used to remove directories
							 | 
						|
								  # CP       -- command used to copy files
							 | 
						|
								***************
							 | 
						|
								*** 147,152 ****
							 | 
						|
								--- 148,154 ----
							 | 
						|
								  # TOUCH    -- command used to create an empry file
							 | 
						|
								  #
							 | 
						|
								                AR    = ar ru
							 | 
						|
								+               ARX   = ar x
							 | 
						|
								                RM    = del /N
							 | 
						|
								                RMR   = del /N
							 | 
						|
								                CP    = xcopy
							 | 
						|
								diff -r -c3 LiDIA-1.3.orig/config/bin/integer-sh LiDIA-1.3/config/bin/integer-sh
							 | 
						|
								*** LiDIA-1.3.orig/config/bin/integer-sh	Tue Oct 22 22:25:57 1996
							 | 
						|
								--- LiDIA-1.3/config/bin/integer-sh	Sun Jan 25 00:47:13 1998
							 | 
						|
								***************
							 | 
						|
								*** 7,15 ****
							 | 
						|
								  
							 | 
						|
								  echo " "
							 | 
						|
								  echo "You will now be asked for the integer arithmetic that " 
							 | 
						|
								! echo "will be used in the kernel of LiDIA (gmp, libI, lip)."
							 | 
						|
								  echo " "
							 | 
						|
								  echo "gmp   - written by Torbjorn Granlund"
							 | 
						|
								  echo "libI  - written by Ralf Dentzer"
							 | 
						|
								  echo "lip   - written by Arjen Lenstra"
							 | 
						|
								  echo " "
							 | 
						|
								--- 7,16 ----
							 | 
						|
								  
							 | 
						|
								  echo " "
							 | 
						|
								  echo "You will now be asked for the integer arithmetic that " 
							 | 
						|
								! echo "will be used in the kernel of LiDIA (gmp, cln, libI, lip)."
							 | 
						|
								  echo " "
							 | 
						|
								  echo "gmp   - written by Torbjorn Granlund"
							 | 
						|
								+ echo "cln   - written by Bruno Haible (based on gmp)"
							 | 
						|
								  echo "libI  - written by Ralf Dentzer"
							 | 
						|
								  echo "lip   - written by Arjen Lenstra"
							 | 
						|
								  echo " "
							 | 
						|
								***************
							 | 
						|
								*** 23,35 ****
							 | 
						|
								  do 
							 | 
						|
								    echo -n "integer arithmetic ? [$INTEGERS] : "
							 | 
						|
								    read ANSWER
							 | 
						|
								!   if test "$ANSWER" = "gmp" -o "$ANSWER" = "lip" -o "$ANSWER" = "libI" ; then
							 | 
						|
								      INTEGERS=$ANSWER
							 | 
						|
								      SUCCESS=y
							 | 
						|
								    elif test "$ANSWER" = "" ; then
							 | 
						|
								      SUCCESS=y
							 | 
						|
								    else
							 | 
						|
								!     echo "Please choose gmp, libI, or lip." 
							 | 
						|
								      INTEGERS="libI"
							 | 
						|
								    fi
							 | 
						|
								  done
							 | 
						|
								--- 24,36 ----
							 | 
						|
								  do 
							 | 
						|
								    echo -n "integer arithmetic ? [$INTEGERS] : "
							 | 
						|
								    read ANSWER
							 | 
						|
								!   if test "$ANSWER" = "gmp" -o "$ANSWER" = "cln" -o "$ANSWER" = "lip" -o "$ANSWER" = "libI" ; then
							 | 
						|
								      INTEGERS=$ANSWER
							 | 
						|
								      SUCCESS=y
							 | 
						|
								    elif test "$ANSWER" = "" ; then
							 | 
						|
								      SUCCESS=y
							 | 
						|
								    else
							 | 
						|
								!     echo "Please choose gmp, cln, libI, or lip." 
							 | 
						|
								      INTEGERS="libI"
							 | 
						|
								    fi
							 | 
						|
								  done
							 | 
						|
								diff -r -c3 LiDIA-1.3.orig/doc/manual/FIG/lidia_model.fig LiDIA-1.3/doc/manual/FIG/lidia_model.fig
							 | 
						|
								*** LiDIA-1.3.orig/doc/manual/FIG/lidia_model.fig	Tue Feb 27 11:57:01 1996
							 | 
						|
								--- LiDIA-1.3/doc/manual/FIG/lidia_model.fig	Sun Jan 25 00:48:58 1998
							 | 
						|
								***************
							 | 
						|
								*** 55,61 ****
							 | 
						|
								  4 0 -1 0 0 2 16 0.0000000 4 225 2085 1200 2850 parameterized classes\001
							 | 
						|
								  4 0 -1 0 0 2 16 0.0000000 4 225 1365 1200 4035 simple classes\001
							 | 
						|
								  4 0 -1 0 0 2 16 0.0000000 4 165 930 1200 5220 interfaces\001
							 | 
						|
								! 4 2 -1 0 0 12 12 0.0000000 4 180 2100 9000 6375 (libI, lip, gmp, mm)\001
							 | 
						|
								  4 2 -1 0 0 12 12 0.0000000 4 180 1365 9000 5175 (bigint, gmm)\001
							 | 
						|
								  4 2 -1 0 0 12 12 0.0000000 4 180 2940 9000 3975 (bigrational, bigfloat, ...)\001
							 | 
						|
								  4 2 -1 0 0 12 12 0.0000000 4 180 3675 9000 2775 (vector, matrix, power series, ...)\001
							 | 
						|
								--- 55,61 ----
							 | 
						|
								  4 0 -1 0 0 2 16 0.0000000 4 225 2085 1200 2850 parameterized classes\001
							 | 
						|
								  4 0 -1 0 0 2 16 0.0000000 4 225 1365 1200 4035 simple classes\001
							 | 
						|
								  4 0 -1 0 0 2 16 0.0000000 4 165 930 1200 5220 interfaces\001
							 | 
						|
								! 4 2 -1 0 0 12 12 0.0000000 4 180 2100 9000 6375 (libI, lip, gmp, cln, mm)\001
							 | 
						|
								  4 2 -1 0 0 12 12 0.0000000 4 180 1365 9000 5175 (bigint, gmm)\001
							 | 
						|
								  4 2 -1 0 0 12 12 0.0000000 4 180 2940 9000 3975 (bigrational, bigfloat, ...)\001
							 | 
						|
								  4 2 -1 0 0 12 12 0.0000000 4 180 3675 9000 2775 (vector, matrix, power series, ...)\001
							 | 
						|
								diff -r -c3 LiDIA-1.3.orig/doc/manual/bibliography.tex LiDIA-1.3/doc/manual/bibliography.tex
							 | 
						|
								*** LiDIA-1.3.orig/doc/manual/bibliography.tex	Fri Jan 24 13:22:31 1997
							 | 
						|
								--- LiDIA-1.3/doc/manual/bibliography.tex	Sun Jan 25 00:55:48 1998
							 | 
						|
								***************
							 | 
						|
								*** 151,156 ****
							 | 
						|
								--- 151,159 ----
							 | 
						|
								  \IT{A rigorous subexponential algorithm for computation of class groups},
							 | 
						|
								  Tech. report, IBM Research Report, San Jose, CA, 1989.
							 | 
						|
								  
							 | 
						|
								+ \bibitem{haible} B. Haible:
							 | 
						|
								+ \IT{CLN, a Class Library for Numbers}, 1997.
							 | 
						|
								+ 
							 | 
						|
								  \bibitem{HLConF} G.H. Hardy and J.E. Littlewood:
							 | 
						|
								  \IT{\em Partitio numerorum {III}: On the expression of a number as a sum of
							 | 
						|
								  primes}, Acta Math. {\bf 44} (1923), 1--70.
							 | 
						|
								diff -r -c3 LiDIA-1.3.orig/doc/manual/installing.tex LiDIA-1.3/doc/manual/installing.tex
							 | 
						|
								*** LiDIA-1.3.orig/doc/manual/installing.tex	Wed Feb  5 17:33:40 1997
							 | 
						|
								--- LiDIA-1.3/doc/manual/installing.tex	Sun Jan 25 00:58:30 1998
							 | 
						|
								***************
							 | 
						|
								*** 309,316 ****
							 | 
						|
								  of the kernel.
							 | 
						|
								  \item BIGINT\\
							 | 
						|
								  This is used to decide which integer arithmetic is to be compiled with
							 | 
						|
								! {\LiDIA}. At the moment we support three possibilities: \TT{gmp}, \TT{libI},
							 | 
						|
								! and \TT{lip}. We suggest that you use the \TT{gmp} with the GNU g++
							 | 
						|
								  compiler and \TT{libI} otherwise. Use \TT{lip}, if you have chosen
							 | 
						|
								  \TT{libI} during the configuration process and TARGET has been set
							 | 
						|
								  to c by configure. In this case, no \TT{libI} assembler code is
							 | 
						|
								--- 309,316 ----
							 | 
						|
								  of the kernel.
							 | 
						|
								  \item BIGINT\\
							 | 
						|
								  This is used to decide which integer arithmetic is to be compiled with
							 | 
						|
								! {\LiDIA}. At the moment we support four possibilities: \TT{gmp}, \TT{cln},
							 | 
						|
								! TT{libI}, and \TT{lip}. We suggest that you use the \TT{gmp} with the GNU g++
							 | 
						|
								  compiler and \TT{libI} otherwise. Use \TT{lip}, if you have chosen
							 | 
						|
								  \TT{libI} during the configuration process and TARGET has been set
							 | 
						|
								  to c by configure. In this case, no \TT{libI} assembler code is
							 | 
						|
								diff -r -c3 LiDIA-1.3.orig/doc/manual/overview.tex LiDIA-1.3/doc/manual/overview.tex
							 | 
						|
								*** LiDIA-1.3.orig/doc/manual/overview.tex	Wed Jan 29 19:32:32 1997
							 | 
						|
								--- LiDIA-1.3/doc/manual/overview.tex	Sun Jan 25 00:57:36 1998
							 | 
						|
								***************
							 | 
						|
								*** 19,24 ****
							 | 
						|
								--- 19,25 ----
							 | 
						|
								  \newcommand{\libi}{{\bf libI}}
							 | 
						|
								  \newcommand{\gmp}{{\bf GNU gmp}}
							 | 
						|
								  \newcommand{\lip}{{\bf lip}}
							 | 
						|
								+ \newcommand{\cln}{{\bf cln}}
							 | 
						|
								  \newcommand{\bigint}{{\bf bigint}}
							 | 
						|
								  
							 | 
						|
								  
							 | 
						|
								***************
							 | 
						|
								*** 70,76 ****
							 | 
						|
								  It is a serious problem to decide which multiprecision integer package
							 | 
						|
								  and which memory manager should be used in \LiDIA. There are
							 | 
						|
								  competing multiprecision integer packages, for example the
							 | 
						|
								! \gmp\ package  \cite{gnump}, the \libi\ package \cite{dentzer} and
							 | 
						|
								  the \lip\ package \cite{lenstra}. Some of those packages are more
							 | 
						|
								  efficient on one architecture and some on others. Also, new
							 | 
						|
								  architectures lead very fast to new multiprecision packages. We decided
							 | 
						|
								--- 71,78 ----
							 | 
						|
								  It is a serious problem to decide which multiprecision integer package
							 | 
						|
								  and which memory manager should be used in \LiDIA. There are
							 | 
						|
								  competing multiprecision integer packages, for example the
							 | 
						|
								! \gmp\ package  \cite{gnump}, the \cln\ package \cite{haible},
							 | 
						|
								! the \libi\ package \cite{dentzer} and
							 | 
						|
								  the \lip\ package \cite{lenstra}. Some of those packages are more
							 | 
						|
								  efficient on one architecture and some on others. Also, new
							 | 
						|
								  architectures lead very fast to new multiprecision packages. We decided
							 | 
						|
								***************
							 | 
						|
								*** 112,120 ****
							 | 
						|
								  whole functionality of the interface can be used in the kernel.
							 | 
						|
								  Currently, we support the multiprecision integer packages
							 | 
						|
								  \libi\ \cite{dentzer}, Arjen Lenstra's \Index{lip} package \cite{lenstra}
							 | 
						|
								! (available by anonymous ftp via \TT{flash.bellcore.com:/pub/lenstra}) and GNU's
							 | 
						|
								  \IndexSUBTT{GNU}{gmp} arithmetic \cite{gnump} (available by anonymous
							 | 
						|
								! ftp via \TT{prep.ai.mit.edu}).
							 | 
						|
								  
							 | 
						|
								  The second \LiDIA\  level is the \BF{interface} through which {\CPP}
							 | 
						|
								  applications on higher levels have access to the kernel. By that
							 | 
						|
								--- 114,123 ----
							 | 
						|
								  whole functionality of the interface can be used in the kernel.
							 | 
						|
								  Currently, we support the multiprecision integer packages
							 | 
						|
								  \libi\ \cite{dentzer}, Arjen Lenstra's \Index{lip} package \cite{lenstra}
							 | 
						|
								! (available by anonymous ftp via \TT{flash.bellcore.com:/pub/lenstra}), GNU's
							 | 
						|
								  \IndexSUBTT{GNU}{gmp} arithmetic \cite{gnump} (available by anonymous
							 | 
						|
								! ftp via \TT{prep.ai.mit.edu}), and CLN (available by anonymous ftp from
							 | 
						|
								! \TT{ma2s2.mathematik.uni-karlsruhe.de:/pub/gnu}).
							 | 
						|
								  
							 | 
						|
								  The second \LiDIA\  level is the \BF{interface} through which {\CPP}
							 | 
						|
								  applications on higher levels have access to the kernel. By that
							 | 
						|
								diff -r -c3 LiDIA-1.3.orig/include/LiDIA/bigint.h LiDIA-1.3/include/LiDIA/bigint.h
							 | 
						|
								*** LiDIA-1.3.orig/include/LiDIA/bigint.h	Tue Oct 29 17:47:17 1996
							 | 
						|
								--- LiDIA-1.3/include/LiDIA/bigint.h	Sat Jan 24 20:29:16 1998
							 | 
						|
								***************
							 | 
						|
								*** 51,56 ****
							 | 
						|
								--- 51,57 ----
							 | 
						|
								              bigint(long l);
							 | 
						|
								              bigint(unsigned long ul);
							 | 
						|
								              bigint(const bigint & a);
							 | 
						|
								+             bigint(const integer_type_name & II) : I (II) {} // cln needs this
							 | 
						|
								             ~bigint();
							 | 
						|
								  
							 | 
						|
								    /**
							 | 
						|
								Only in LiDIA-1.3/src/interfaces/integers: cln
							 | 
						|
								diff -r -c3 LiDIA-1.3.orig/src/interfaces/integers/gmp/bigint.c LiDIA-1.3/src/interfaces/integers/gmp/bigint.c
							 | 
						|
								*** LiDIA-1.3.orig/src/interfaces/integers/gmp/bigint.c	Fri Jan 10 18:19:00 1997
							 | 
						|
								--- LiDIA-1.3/src/interfaces/integers/gmp/bigint.c	Sat Jan 24 17:41:29 1998
							 | 
						|
								***************
							 | 
						|
								*** 610,616 ****
							 | 
						|
								  
							 | 
						|
								  void invert(bigint & a, const bigint & b)
							 | 
						|
								  {
							 | 
						|
								!   if ((a.I._mp_size == 1 || a.I._mp_size == -1) && a.I._mp_d[0] == 1)
							 | 
						|
								      mpz_set(&a.I, &b.I);
							 | 
						|
								    else
							 | 
						|
								      lidia_error_handler("bigint", "invert::inverting of a non-unit.");
							 | 
						|
								--- 610,616 ----
							 | 
						|
								  
							 | 
						|
								  void invert(bigint & a, const bigint & b)
							 | 
						|
								  {
							 | 
						|
								!   if ((b.I._mp_size == 1 || b.I._mp_size == -1) && b.I._mp_d[0] == 1)
							 | 
						|
								      mpz_set(&a.I, &b.I);
							 | 
						|
								    else
							 | 
						|
								      lidia_error_handler("bigint", "invert::inverting of a non-unit.");
							 | 
						|
								Only in LiDIA-1.3/src/kernel/integers: cln
							 | 
						|
								diff -r -c3 LiDIA-1.3.orig/src/simple_classes/factorization/mpqs.c LiDIA-1.3/src/simple_classes/factorization/mpqs.c
							 | 
						|
								*** LiDIA-1.3.orig/src/simple_classes/factorization/mpqs.c	Tue Jan 28 14:00:36 1997
							 | 
						|
								--- LiDIA-1.3/src/simple_classes/factorization/mpqs.c	Sat Jan 24 17:45:17 1998
							 | 
						|
								***************
							 | 
						|
								*** 17,23 ****
							 | 
						|
								  //extern "C" int system(char*);
							 | 
						|
								  #endif
							 | 
						|
								  
							 | 
						|
								! #if !defined(__GNUG__)
							 | 
						|
								  #include <signal.h>
							 | 
						|
								  #else
							 | 
						|
								  #define SIGHUP  1       /* hangup */
							 | 
						|
								--- 17,23 ----
							 | 
						|
								  //extern "C" int system(char*);
							 | 
						|
								  #endif
							 | 
						|
								  
							 | 
						|
								! #if defined(__linux__) || !defined(__GNUG__)
							 | 
						|
								  #include <signal.h>
							 | 
						|
								  #else
							 | 
						|
								  #define SIGHUP  1       /* hangup */
							 |