[BACK]Return to README CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / gmp

Annotation of OpenXM_contrib/gmp/README, Revision 1.1.1.3

1.1.1.3 ! ohara       1: Copyright 1991, 1996, 1999, 2000 Free Software Foundation, Inc.
        !             2:
        !             3: This file is part of the GNU MP Library.
        !             4:
        !             5: The GNU MP Library is free software; you can redistribute it and/or modify
        !             6: it under the terms of the GNU Lesser General Public License as published by
        !             7: the Free Software Foundation; either version 2.1 of the License, or (at your
        !             8: option) any later version.
        !             9:
        !            10: The GNU MP Library is distributed in the hope that it will be useful, but
        !            11: WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
        !            12: or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
        !            13: License for more details.
        !            14:
        !            15: You should have received a copy of the GNU Lesser General Public License
        !            16: along with the GNU MP Library; see the file COPYING.LIB.  If not, write to
        !            17: the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
        !            18: 02111-1307, USA.
        !            19:
        !            20:
        !            21:
        !            22:
        !            23:
1.1.1.2   maekawa    24:
1.1       maekawa    25:                        THE GNU MP LIBRARY
                     26:
                     27:
                     28: GNU MP is a library for arbitrary precision arithmetic, operating on signed
1.1.1.2   maekawa    29: integers, rational numbers, and floating point numbers.  It has a rich set of
                     30: functions, and the functions have a regular interface.
1.1       maekawa    31:
1.1.1.2   maekawa    32: GNU MP is designed to be as fast as possible, both for small operands and huge
                     33: operands.  The speed is achieved by using fullwords as the basic arithmetic
                     34: type, by using fast algorithms, with carefully optimized assembly code for the
                     35: most common inner loops for lots of CPUs, and by a general emphasis on speed
                     36: (instead of simplicity or elegance).
                     37:
                     38: GNU MP is believed to be faster than any other similar library.  Its advantage
                     39: increases with operand sizes for certain operations, since GNU MP in many
                     40: cases has asymptotically faster algorithms.
                     41:
                     42: GNU MP is free software and may be freely copied on the terms contained in the
                     43: files COPYING.LIB and COPYING (most of GNU MP is under the former, some under
                     44: the latter).
1.1       maekawa    45:
                     46:
                     47:
                     48:                        OVERVIEW OF GNU MP
                     49:
                     50: There are five classes of functions in GNU MP.
                     51:
1.1.1.2   maekawa    52:  1. Signed integer arithmetic functions (mpz).  These functions are intended
1.1       maekawa    53:     to be easy to use, with their regular interface.  The associated type is
                     54:     `mpz_t'.
                     55:
1.1.1.2   maekawa    56:  2. Rational arithmetic functions (mpq).  For now, just a small set of
1.1       maekawa    57:     functions necessary for basic rational arithmetics.  The associated type
                     58:     is `mpq_t'.
                     59:
1.1.1.2   maekawa    60:  3. Floating-point arithmetic functions (mpf).  If the C type `double'
1.1       maekawa    61:     doesn't give enough precision for your application, declare your
                     62:     variables as `mpf_t' instead, set the precision to any number desired,
                     63:     and call the functions in the mpf class for the arithmetic operations.
                     64:
                     65:  4. Positive-integer, hard-to-use, very low overhead functions are in the
1.1.1.2   maekawa    66:     mpn class.  No memory management is performed.  The caller must ensure
1.1       maekawa    67:     enough space is available for the results.  The set of functions is not
                     68:     regular, nor is the calling interface.  These functions accept input
                     69:     arguments in the form of pairs consisting of a pointer to the least
1.1.1.2   maekawa    70:     significant word, and an integral size telling how many limbs (= words)
1.1       maekawa    71:     the pointer points to.
                     72:
                     73:     Almost all calculations, in the entire package, are made by calling these
                     74:     low-level functions.
                     75:
                     76:  5. Berkeley MP compatible functions.
                     77:
                     78:     To use these functions, include the file "mp.h".  You can test if you are
                     79:     using the GNU version by testing if the symbol __GNU_MP__ is defined.
                     80:
                     81: For more information on how to use GNU MP, please refer to the documentation.
                     82: It is composed from the file gmp.texi, and can be displayed on the screen or
                     83: printed.  How to do that, as well how to build the library, is described in
                     84: the INSTALL file in this directory.
                     85:
                     86:
1.1.1.2   maekawa    87:
1.1       maekawa    88:                        REPORTING BUGS
                     89:
                     90: If you find a bug in the library, please make sure to tell us about it!
                     91:
1.1.1.2   maekawa    92: You should first check the GNU MP web pages at http://www.swox.com/gmp/,
                     93: under "Status of the current release".  There will be patches for all known
                     94: serious bugs there.
                     95:
                     96: Report bugs to bug-gmp@gnu.org.  What information is needed in a good bug
                     97: report is described in the manual.  The same address can be used for
                     98: suggesting modifications and enhancements.
                     99:
                    100:
                    101:
                    102:
                    103: ----------------
                    104: Local variables:
                    105: mode: text
                    106: fill-column: 78
                    107: End:

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>