La biblioteca rápida para teoría de números (FLINT) es una biblioteca en C para aplicaciones de teoría de números . Implementa versiones eficientes de diversas operaciones aritméticas de anillos , así como funcionalidades derivadas como la factorización de enteros mediante una criba cuadrática . La biblioteca está diseñada para compilarse con la Biblioteca de Precisión Múltiple de GNU (GMP) y se distribuye bajo la Licencia Pública General de GNU . Fue desarrollada por William Hart de la Universidad de Kaiserslautern (anteriormente Universidad de Warwick ) y David Harvey de la Universidad de Nueva Gales del Sur (anteriormente Universidad de Harvard ) para solucionar las limitaciones de velocidad de las bibliotecas PARI y NTL . [ 1 ]
FLINT, junto con un envoltorio Cython para el mismo, se distribuye con SageMath . El desarrollo de FLINT ha dado lugar a importantes contribuciones en las áreas de factorización de enteros y aritmética polinomial . Por ejemplo, a partir de mayo de 2007 en ciertas plataformas, FLINT factoriza enteros en el rango de la criba cuadrática más rápido que cualquier otra implementación general [ 2 ] , y a partir de febrero de 2008 realiza aritmética enmás rápido que cualquier otro paquete. [ 3 ] [ 4 ]
Funcionalidad
Centro:
- Aritmética de anillos (números enteros, racionales, algebraicos, reales, complejos y p-ádicos, cuerpos finitos y cuerpos numéricos)
- Números reales exactos (anteriormente la biblioteca independiente de Calcio)
- Números reales aproximados de precisión arbitraria con aritmética de bolas (anteriormente la biblioteca Arb separada) [ 5 ]
- Polinomios (univariables y multivariables), series de potencias y matrices construidas sobre la base de la aritmética de anillos.
Basado en el núcleo:
- Pruebas de primalidad ( APRCL , Miller-Rabin, BPSW, etc.)
- Factorización de enteros (factor de prueba, criba cuadrática , rho de Pollard, ECM de Lenstra)
- MCD polinomial multivariado y factorización
- FFT
- Reconstrucción multimodular
- Funciones especiales
- Álgebra lineal exacta y aproximada
- LLL
- Incrustaciones de campos finitos
- ...y más.
Uso en la investigación
FLINT mantiene una página web que enumera artículos revisados por pares, preimpresiones y otros productos académicos que utilizan su funcionalidad. [ 5 ]
Referencias
- ↑ Página 10 de la descripción del proyecto para la propuesta COMPMATH de la UW 2006 de William Stein
- ↑ Parte inferior de la página 11 del Resumen de Charlas, Festival de Teoría de Números de Illinois 2007
- ↑ Diapositiva 25 de la charla " Números en Sage" (29 de febrero de 2008) de William Stein
- ↑ Cálculo eficiente de números de Bernoulli usando FLINT por David Howden
- 1 2 "FLINT: Biblioteca rápida para la teoría de números: aplicaciones y pruebas de rendimiento" . flintlib.org .
Lecturas adicionales
- FLINT 1.0.9: Biblioteca rápida para la teoría de números, por William Hart y David Harvey.
- Teoría computacional de números
- Software libre programado en C
- Algoritmos de factorización de enteros
- Software numérico