bsdnt

BSD Licensed Bignum Library

  • Owner: wbhart/bsdnt
  • Platform:
  • License:: Other
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

BSDNT version 1.0

BSDNT is a BSD licensed bignum library, suitable for use by languages which
need to provide bignum support and for other projects requiring relatively
fast bignums.

The primary goal of the project is to have clean, comprehensible,
well-documented code, whilst retaining reasonable performance. It is not
a goal to insanely optimise where that would make the code less readable
and maintainable.

Features

  • Support for Linux, OSX, BSD, MinGW32, Cygwin, Cygwin64
  • Inline assembly optimisation for 64 bit Intel and AMD x86_64 processors
  • Low level multiprecision natural numbers interface (nn.h)
  • High level multiprecision integer interface (zz.h)
  • Very extensive test code
  • SHA1 implementation
  • KISS / SuperKISS / Mersenne_twister pseudorandom number generators

Requirements

Currently we require bash, gnu make and gcc 4 or later or clang.

Installation

To build bsdnt and run the test code

$ cd bsdnt
$ ./configure
$ make check

Documentation

The user will most likely use the interfaces in nn.h and zz.h.

All of the functions are documented in those two files.

Future improvements

  • Unroll assembly loops
  • Assembly support for more processors
  • Multiprecision rational number interface
  • Multiprecision floating point interface
  • Simplify and merge the BSD licensed fft found here:
    https://github.com/wbhart/flint2/tree/trunk/fft
  • Asymptotically fast algorithms for GCD, get_str, set_str, division (??)
  • Square root and n-th root code

Contributors

William Hart, Brian Gladman, Antony Vennard, Gonzalo Tornaria, Howard Mao,
Lee Wei Yeong, Ryan Goulden.

See the LICENSE file for legal info and warranty information.

Contributions are welcome. There is a Google group here:

https://groups.google.com/forum/#!forum/bsdnt-devel

Enjoy!!

William Hart - 1-1-2014

Main metrics

Overview
Name With Ownerwbhart/bsdnt
Primary LanguageC
Program languageC (Language Count: 1)
Platform
License:Other
所有者活动
Created At2010-09-07 18:52:53
Pushed At2024-03-12 11:40:43
Last Commit At2024-03-12 11:40:43
Release Count0
用户参与
Stargazers Count232
Watchers Count11
Fork Count26
Commits Count1k
Has Issues Enabled
Issues Count15
Issue Open Count8
Pull Requests Count10
Pull Requests Open Count1
Pull Requests Close Count0
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private