Nagasaka Lab.
Top > My Research > SNAP



LIBSNAP is a library for numeric-symbolic computations (e.g. approximate polynomial GCD, approximate factorization and so on) by C language. Our aim is 1) to make numeric-symbolic computations easy to use, and 2) to compare several algorithms on the same framework. The license is a BSD 2-Clause license.

However, the current version only includes very basic functions for univariate polynomials. Others including higher level functions will be implemented later.

  • Approximate polynomial GCD(UVGCD for mpc) is now implemented. 2013.11.11
  • Approximate polynomial GCD(UVGCD for mpfr, double and dcomplex) is now corrected and implemented. 2013.10.28
  • Approximate polynomial GCD(UVGCD for double complex) is now tentatively implemented. 2013.10.23
  • All the rounding mode for multi-precision numbers are now hard-coded (roundTiesToEven). 2013.10.09
  • Approximate polynomial GCD(QRGCD and ExQRGCD) with complex coefficients (double complex and mpc versions) is now implemented. 2013.09.20
  • Some sub-routines for complex numbers are now implemented. 2013.07.09
  • Approximate polynomial GCD(UVGCD for mpfr) is now implemented, QR decomposition is now updated and the license is changed. 2013.05.20
  • Approximate polynomial GCD(UVGCD for double) is now implemented. 2013.05.15
  • Approximate polynomial GCD(QRGCD and ExQRGCD) is now implemented. 2013.04.25


  • GMP (The GNU Multiple Precision Arithmetic Library)
  • MPFR (The GNU MPFR Library)
  • MPC (The GNU MPC Library)
  • BLAS (Basic Linear Algebra Subprograms)

    note: libsnap works only with cblas of ATLAS

  • LAPACK (Linear Algebra PACKage)

    note: libsnap works only with clapack of ATLAS and lapacke of LAPACK



This research was partly helped by Grants-in-Aid for Scientific Research, Ministry of Education, Culture, Sports, Science and Technology, JAPAN. Moreover, here is Old SNAP package for Mathematica for record.