
Received: from uklirb by incas.informatik.uni-kl.de id aa01181;
          11 Aug 90 8:16 MET DST
Received: from unido.informatik.uni-dortmund.de by uklirb.informatik.uni-kl.de
          id aa02173; 11 Aug 90 8:12 MET DST
Received: from mcsun.eu.net 
	by unido.informatik.uni-dortmund.de with SMTP via EUnet (UNIDO-2.0.2.b) via EUnet
	for uklirb.informatik.uni-kl.de
	id AS03338; Fri, 10 Aug 90 18:16:20 +0100
Received: by mcsun.EU.net with SMTP; Fri, 10 Aug 90 00:35:17 +0200 (MET)
Received: by inria.inria.fr (5.64+/89.0.8)
	via Fnet-EUnet id AA02775; Fri, 10 Aug 90 00:33:41 +0200 (MET)
From: bignard@prl.dec.com
Received: from nacre.prl.dec.com by decprl with SMTP (5.61++prl/05-Apr-90); id AA15092; Thu, 9 Aug 90 23:15:01 +0200 (MET)
Received: by nacre.prl.dec.com (5.61++prl/27-May-90); id AA26175; Thu, 9 Aug 90 23:14:58 +0200 (MET)
Message-Id: <9008092114.AA26175@nacre.prl.dec.com>
Date: Thu, 9 Aug 90 23:14:58 +0200
To: weber@uklirb.informatik.uni-kl.de
Subject: BigNum package from Digital PRL

Bonjour !

You have ordered our bignum package: you are going to receive 4 messages
(one would be too big for the mailer). These messages are named:
    BigNum - Part 1
    BigNum - Part 2
    BigNum - Part 3
    BigNum - Part 4

These messages are shell archives built with the tool "makekit" based on
the tool "shar" (as SHell ARchiver). 

The package bignum is now available on both U*ix system and VMS system.

To install the package bignum on your disk, create a directory where you want
install this package, and go there:
	mkdir bignum
        cd bignum
or 
	create /dir [.bignum]
	set def [.bignum]
according to the system you use.

Copy the 4 messages from your mail system to this directory.
For this example, we assume you have copied the messages in files
    bignum01
    bignum02
    bignum03
    bignum04

Use your favorite text editor to strip from each of the 4 messages 
the header due to the mail system; each ends at the line:

    # Remove all text above and including this line. 

In the following, we are going to use the shell archiver shar. You
can get a copy of a working VMS version of shar on the node prlvms: 
	copy prlvms::shar.exe []
	shar := $disk:[dir]shar.exe;

In the directory bignum, invoke the shell on these files:
    /bin/sh bignum01
    /bin/sh bignum02
    /bin/sh bignum03
    /bin/sh bignum04
or
    shar -u bignum01
    shar -u bignum02
    shar -u bignum03
    shar -u bignum04
according to the system you use.

The order in which you perform these 4 commands must be preserved.

When you are finished, the package will have been installed in the
directory bignum. 


This directory contains the C and assembler source code for BigNum.

   The subdirectory doc contains the documentation files:
      bn.tex        	- Document BigNum in LaTeX format
      bnf.tex       	- Document BigNum in French and LaTeX format
      makeidx.sty	- macro used in BigNum document

   The subdirectory h contains the C include files:
      BigZ.h		- Types and structures for clients of BigZ
      BigNum.h		- Types and structures for clients of BigNum

   The subdirectory c contains the C source files:
      KerN.c		- BigNum implementation ("kernel" routines)
      bn/bn*.c		- BigNum implementation ("non-kernel" routines), 
                          that is bnInit.c, bnMult.c, bnDivide.c and bnCmp.c
      bz.c		- BigZ implementation
      bzf.c		- Miscellaneous functions built on top of BigZ
      bztest.c		- Test program for verifying a BigNum implementation
      testKerN.c	- Test program for verifying KerN implementation

   The subdirectory s contains the assembler source files:
      vaxKerN.s		- Vax/U*ix implementation of KerN
      vaxKerN.mar	- Vax/VMS implementation of KerN
      68KerN.s		- 68020 implementation of KerN (MIT syntax)
      68KerN_mot.s	- 68020 implementation of KerN (Motorola syntax)
      nsKerN.s		- NS implementation of KerN
      mipsKerN.s	- MIPS implementation of KerN
      pyramidKerN.s	- Pyramid implementation of KerN

   Other Files:
      Makefile		- Creates U*ix bignum library and test programs
      VMSmakefile	- Creates VMS bignum library and test programs


Now, to build or modify the current version of the package, type one of:

   on U*ix system:
	make vax	- to use vax assembly code
	make 68K	- to use 68020 assembly code
	make ns		- to use NS assembly code
	make mips	- to use mips assembly code
	make pyramid	- to use pyramid assembly code
	make i960	- to use intel 80960 assembly code
	make C16	- to use C code with 16 bits digits
	make C32	- to use C code with 32 bits digits (default version)

   on VMS system: (copy VMSmakefile to Makefile, before)
	mms vax		- to use vax assembly code (default version)
	mms C32		- to use C code with 32 bits digits 
   we suppose you have defined the standard libraries of C-VMS with:
        define  lnk$library  sys$library:vaxccurse
        define  lnk$library_1  sys$library:vaxcrtlg
        define  lnk$library_2  sys$library:vaxcrtl


Each of these commands products the following files:

   on U*ix system:
	BigNum.a	- BigNum library
	testKerN	- Test program executable for KerN
	bztest		- Test program executable for BigZ

   on VMS system:
	BigNum.olb	- BigNum library
	testKerN.exe	- Test program executable for KerN
	bztest.exe	- Test program executable for BigZ


On U*ix system, if you have the tools LaTeX (L. Lamport's special version of Knuth's
famous TeX, as described in the Addison-Wesley book), makeindex and
dvips, type: 
	make doc	- to build the Postscript files of the documents, 

If you do not have dvips, use your local equivalent tool to print
the dvi file produced by the dvips command. 

When you have built a version of the package bignum, you can test it
by invoking the test programs:
	testKerN all	- Tests the functions in the kernel
	bztest		- Tests the generic functions at the Z level

On VMS system, we suppose you have defined:
	testKerN := $disk:[dir]testKerN.exe
	bztest := $disk:[dir]bztest.exe


We hope all is well !
Please, let us know if you have any problems. 
All reported bugs will be corrected. All improvements to the package
which you send back to us will be included in the successive releases,
with an author's acknowledgement.

     Merci! and have fun ...

This package was initially developed at INRIA by J. Vuillemin. The
following people have greatly contributed to bring it to it's present
state: Patrice Bertin, Hans Boehm, Jerome Chailloux, Michel Gangnet, 
Jean Claude Herve, Jim Lawton, Francois Morain, David Salesin, Mark Shand,
Bernard Serpette, Glenn Sills, Jean Vuillemin.  

    distribution: 
        librarian@decprl.dec.com

    installation, use, suggestions:
        herve@decprl.dec.com
        serpette@inria.inria.fr

