Nagasaka Lab.
Top > My Research > SNAP

LIBSNAP

About LIBSNAP

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.

  • Several Updates with new algorithms (but still for univariate polynomials). 2023.11.8
    • Approximate polynomial GCD (SSGCDs based on SLRA)
    • with several options.
  • Several Updates for double and double complex. 2019.5.11
    • Approximate polynomial GCD (GPGCD)
    • Approximate polynomial GCD (STLNGCD1)
    • Approximate polynomial GCD (STLNGCD2)
    • Approximate polynomial GCD (GHLGCD)
    • with several options.
  • Some default parameters are changed for UVGCD. 2016.1.26
  • Several Updates for double and double complex. 2016.1.25
    • Approximate polynomial GCD (QRGCD with pivoting)
    • Approximate polynomial GCD (ExQRGCD with pivoting)
    • Approximate polynomial GCD (UVGCD with pivoting)
    • Approximate polynomial GCD (QRGCD with refinements of UVGCD and Fastgcd)
    • Approximate polynomial GCD (ExQRGCD with refinements of UVGCD and Fastgcd)
    • Approximate polynomial GCD (Fastgcd with subroutines of UVGCD)
    • Some of above are also available for mpc and mpfr
  • 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

Requirements

  • GMP (The GNU Multiple Precision Arithmetic Library)
  • MPFR (The GNU MPFR Library)
  • MPC (The GNU MPC Library)
  • BLAS (Basic Linear Algebra Subprograms)
  • LAPACK (Linear Algebra PACKage)
  • FFTW (FFT library)

Downloads

Downloads (old)

Notes

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.