LInteger Version 0.1: A C++ MPILIB

-----BEGIN PGP SIGNED MESSAGE----- LInteger is a C++ library designed to allow programmers to create and perform arithmetic on objects representing nearly arbitrary precision integers. Thanks to C++'s support for operator overloading, the use of the large integers in this library should be nearly as easy as the use of regular int's. In fact, much code which performs arithmetic on regular int's can be converted to code to perform the same arithmetic on arbitrary precision integers merely by substituting "LInteger" for "int". This library is free for both commercial and non-commercial use. (See the COPYRIGHT notice included in the source distribution for exact details.) The current version of this library is only implemented for i386+ processors, and will, probably, only compile unhacked under gcc. Additionally, it has only been tested on the Linux operating system, though I am fairly confident that it will compile, unhacked, under the OS/2 and Windows versions of gcc. (Please let me know if you get it to work!) The basic multiprecision methods are implemented in i386+ assembly language for high speed. Multiplication is performed recursively resulting in O(lg 3) performance. Modular multiplication can be performed via Montgomery representations for a noticeable performance gain when a large number of these modular multiplications are performed. HTML documentaion for all public methods is included. There is currently no pseudo-random or probable prime number generation included. These are my highest priorities for the next release which will, hopefully, come out shortly after I read Rabin-Miller. :) A link to the latest version of this library can be found at http://www.interchg.ubc.ca/janke/linteger/index.html Once you have the file linteger-v0.1.tar.gz, uncompress and untar it with tar -zxvf linteger-v0.1.tar.gz. Next, cd to the newly created directory linteger-v0.1 and read the file README for details on how to proceed. The message digests for linteger-v0.1.tar.gz are MD5: B518B338D59A8376095B9CAD74EA2E16 SHA: 445D8D1555DC18AB0DF47B9B0381F0B07D4CB644 HAVAL: 53774BA2BF60116DF9F0F476913252188DFD9D3828D19B6795BC14C19EFA7FEE -----BEGIN PGP SIGNATURE----- Version: 2.6.3ia Charset: noconv iQCVAwUBMitSJR6H/su8/YEZAQH3lwQAsBpNY0rEW1U5vq5hkxdnqxgk1ZZtSV3K 5gTlYu7Z3OAqsqC62Qi7LlkI2dzhrNWYr/G+OXdFfCaHfBcNlePgHsj6xF4oCy3U iGy9yiCxP7Xs4xb8CjHYkW7S/HfVwyiY2AMxGJ/YfFzvi1MJTIT2A8z4Par5qwWe XuG7XztGzAI= =wq2q -----END PGP SIGNATURE-----
participants (1)
-
janke@unixg.ubc.ca