Fermat (llamado así por Pierre de Fermat ) es un programa gratuito desarrollado por el Prof. Robert H. Lewis de la Universidad de Fordham . Es un sistema de álgebra computacional , en el que los artículos que se calculan puede ser números enteros (de tamaño arbitrario), números racionales , números reales , números complejos , números modulares, campo finito elementos, multivariables polinomios , funciones racionales , o polinomios modulo otros polinomios. Las principales áreas de aplicación son la aritmética de funciones racionales multivariantes y el álgebra matricial sobreanillos de polinomios multivariados o funciones racionales. Fermat no hace simplificación de funciones trascendentales ni integración simbólica .
Desarrollador (es) | Robert H. Lewis |
---|---|
Lanzamiento estable | 6.38 / 9 de abril de 2021 |
Escrito en | C |
Sistema operativo | macOS , Mac OS clásico , Linux , Unix , Windows |
Tipo | Sistema de álgebra informática |
Licencia | Freeware , GPL desde el 4 de agosto de 2018 |
Sitio web | inicio |
Una sesión con Fermat generalmente comienza eligiendo un "modo" racional o modular para establecer el campo de tierra (o anillo de tierra) como o . Además de esto, se puede adjuntar cualquier número de variables simbólicascreando así el anillo polinomial y su campo cociente. Además, algunos polinomios involucrando a algunos de los se puede elegir para modificar, creando el anillo del cociente Finalmente, es posible permitir polinomios de Laurent , aquellos con exponentes tanto negativos como positivos. Una vez que el anillo computacional se establece de esta manera, todos los cálculos son de elementos de este anillo. El anillo computacional se puede cambiar más adelante en la sesión.
Los procedimientos polinomiales de gcd , que se llaman entre sí de una manera altamente recursiva, son aproximadamente 7000 líneas de código.
Fermat tiene primitivas integradas extensas para manipulaciones de matrices y matrices, como submatriz , matriz dispersa , determinante , normalizar , reducir columna, escalón de fila , forma normal de Smith y matriz inversa . Es consistentemente más rápido que algunos sistemas de álgebra computacional bien conocidos, especialmente en mcd polinomial multivariante . También ahorra espacio.
El elemento de datos básico en Fermat es una función racional multivariante o quolinomio. El numerador y el denominador son polinomios sin factor común. Los polinomios se implementan de forma recursiva como listas vinculadas generales, a diferencia de algunos sistemas que implementan polinomios como listas de monomios . Para implementar (la mayoría) de los campos finitos, el usuario encuentra un polinomio mónico irreducible en una variable simbólica, digamosy le ordena a Fermat que lo modifique. Esto puede continuar de forma recursiva,Las estructuras de datos de bajo nivel se configuran para facilitar la aritmética y gcd sobre este campo de tierra recién creado . Dos campos especiales, y se implementan de manera más eficiente a nivel de bits.
Historia
Con Windows 10, y gracias a Bogdan Radu, ahora es posible (mayo de 2021) ejecutar Fermat Linux de forma nativa en Windows. Consulte la página web principal http://home.bway.net/lewis
Fermat se actualizó por última vez el 20 de mayo de 2020 (Mac y Linux; última versión de Windows: 1 de noviembre de 2011).
En una versión anterior, llamada FFermat (Float Fermat), el tipo de número básico son números de coma flotante de 18 dígitos. Esa versión permite técnicas de computación numérica, tiene amplias capacidades gráficas, no tiene algoritmos polinomiales sofisticados de gcd y está disponible solo para Mac OS 9.
Fermat fue escrito originalmente en Pascal para un DEC VAX , luego para el clásico Mac OS durante 1985-1996. Fue portado a Microsoft Windows en 1998. En 2003 fue traducido a C y portado a Linux (máquinas Intel) y Unix (Sparc / Sun). Se trata de unas 98.000 líneas de código C.
El código fuente de FFermat y (antiguo) Windows Fermat Pascal se ha puesto a disposición del público bajo una licencia restrictiva.
El manual se revisó y actualizó ampliamente el 25 de julio de 2011 (la última pequeña revisión en junio de 2016, aparentemente otra revisión el 25 de marzo de 2020).
Ver también
- Comparación de sistemas de álgebra computarizada
enlaces externos
- Página web oficial
- Código fuente de Windows Fermat Pascal
- Código fuente de Float Fermat Pascal
- Robert H. Lewis en academia.edu