Skip to content
C++ library to make GF(2) linear pseudo-random number generators
Shell C++ Makefile M4 TeX C
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs @ da45284
doxygen
include
lib
m4
samples
slide
test
.gitignore
.gitmodules
AUTHORS
COPYING
ChangeLog
INSTALL
LICENSE.txt
Makefile.am
Makefile.in
NEWS
NEWS.jp.utf8.txt
README
README.jp.utf8.txt
aclocal.m4
aminclude.am
compile
config.guess
config.h.in
config.sub
configure
configure.ac
depcomp
install-sh
ltmain.sh
missing
mttoolbox-0.2.10.tar.gz
mttoolbox-0.2.4.tar.gz
mttoolbox-0.2.5.tar.gz
mttoolbox-0.2.6.tar.gz
mttoolbox-0.2.7.tar.gz
mttoolbox-0.2.8.tar.gz
mttoolbox-0.2.9.tar.gz
mttoolbox-1.0.0.tar.gz
mttoolbox-1.0.1.tar.gz
mttoolbox-1.0.2.tar.gz
test-driver

README

Currently almost of all documents of this project are written in Japanese.
See README.jp.utf8.txt

MTToolBox: a pseudo random number generator developing library.

doxygen documents  http://msaito.github.io/MTToolBox/en/
doxygen documents  http://msaito.github.io/MTToolBox/ (Japanese)
github project https://github.com/MSaito/MTToolBox (Japanese)

This README is written by M. Saito


1. First

MTToolBox is a library for developing pseudo random number
generators(PRNGs) written in C++ language.  MTToolBox is made by
arranging tools used for developing SFMT, dSFMT, MTGP and TinyMT. In
this meaning, the library is reliable.

Tools were changing while developing above PRNGs. I've rewritten
tools for MTToolBox. So in this meaning, the library is not reliable.proved.
Users can make and run samples in samples directory, then can check
the library.

MTToolBox is a library to develop GF(2)-linear PRNGs, it is not usable
to develop other types PRNGs.  Only exception is to use MTToolBox to
develop PRNG which is a combination of GF(2)-linear state transition
function and non-GF(2)-linear output function.

Because Saito is not very good at C++, there may be many mistakes in
the library.  Saito expects that expert users will correct the
mistakes.

2. Dependent Libraries

NTL
version 6.0 or later
http://www.shoup.net/ntl/
using calculation of GF(2)polynomials. To use NTL, MTToolBox is written
in C++.

shared_ptr: C++/tr1 or C++11

openssl
http://www.openssl.org/
using in MTGP sample.
openssl is optional.

3. Interface Changed
At Version 1.0, Interface has been changed. In almost template class,
second template parameter is removed. This is concerned with that the
parameter of setUpParam is changed to ParameterGenerator class. The
class has two method getUint32() and getUint64(), use one of them
instead of generate().
You can’t perform that action at this time.