Articulo de referencia

Lista de software aritmético de precisión arbitraria

Este artículo enumera las bibliotecas, aplicaciones y otros programas que permiten o admiten la aritmética de precisión arbitraria . Bibliotecas Software de aplicación independi...

Este artículo enumera las bibliotecas, aplicaciones y otros programas que permiten o admiten la aritmética de precisión arbitraria .

Bibliotecas

Software de aplicación independiente

Software que admite cálculos de precisión arbitraria:

Idiomas

Lenguajes de programación que admiten cálculos de precisión arbitraria, ya sea de forma integrada o en la biblioteca estándar del lenguaje:

  • Ada : la próxima revisión Ada 202x agrega los paquetes Ada.Numerics.Big_Numbers.Big_Integersy Ada.Numerics.Big_Numbers.Big_Realsa la biblioteca estándar, proporcionando números enteros y reales de precisión arbitraria.
  • Agda : el BigInttipo de dato en el backend de Epic implementa aritmética de precisión arbitraria.
  • Common Lisp : El estándar ANSI Common Lisp admite números enteros, de razón y complejos de precisión arbitraria.
  • C# : System.Numerics.BigInteger, desde .NET 5
  • ColdFusion : la función integrada PrecisionEvaluate()evalúa una o más expresiones de cadena, de forma dinámica, de izquierda a derecha, utilizando aritmética de precisión BigDecimal para calcular los valores de expresiones aritméticas de precisión arbitraria.
  • D : módulo de biblioteca estándarstd.bigint
  • Dart : el tipo de dato integrado intimplementa aritmética de precisión arbitraria.
  • Emacs Lisp : admite números enteros de tamaño arbitrario, a partir de Emacs 27.1.
  • Erlang : el tipo de dato integrado Integerimplementa aritmética de precisión arbitraria.
  • Go : el paquete de la biblioteca estándar math/bigimplementa enteros de precisión arbitraria ( Inttipo), números racionales ( Rattipo) y números de punto flotante ( Floattipo).
  • Guile : los números integrados exactson de precisión arbitraria. Ejemplo: (expt 10 100)produce el resultado esperado (grande). Los números exactos también incluyen racionales, por lo que (/ 3 4)produce 3/4. Uno de los lenguajes implementados en Guile es Scheme .
  • Haskell : el tipo de dato integrado Integerimplementa aritmética de precisión arbitraria y el Data.Ratiomódulo estándar implementa números racionales.
  • Idris : el tipo de dato integrado Integerimplementa aritmética de precisión arbitraria.
  • ISLISP : El estándar ISO/IEC 13816:1997(E) ISLISP admite números enteros de precisión arbitraria.
  • J : precisión extendida incorporada
  • Java : Clase java.math.BigInteger(entero), java.math.BigDecimalClase (decimal)
  • JavaScript : a partir de ES2020 , BigInt es compatible con la mayoría de los navegadores; [ 3 ] la biblioteca gwt-math proporciona una interfaz para java.math.BigDecimal, y bibliotecas como DecimalJS , BigInt y Crunch admiten enteros de precisión arbitraria.
  • JuliaBigFloat : los tipos integrados BigIntproporcionan aritmética de punto flotante y de enteros de precisión arbitraria, respectivamente.
  • newRPL : los números enteros y de coma flotante pueden tener precisión arbitraria (hasta al menos 2000 dígitos); número máximo de dígitos configurable (por defecto 32 dígitos).
  • Nim : bigints y múltiples enlaces GMP .
  • OCaml : La biblioteca Num admite números enteros y racionales de precisión arbitraria.
  • OpenLisp : admite números enteros de precisión arbitraria.
  • Perl : Las bignumdirectivas bigratpragma proporcionan soporte para BigNum y BigRational en Perl.
  • PHP : El módulo BC Math proporciona matemáticas de precisión arbitraria.
  • PicoLisp : admite números enteros de precisión arbitraria.
  • Pike : el tipo integrado intcambiará silenciosamente de entero nativo de la máquina a precisión arbitraria tan pronto como el valor exceda la capacidad del anterior.
  • Prolog : Los sistemas Prolog compatibles con el estándar ISO pueden comprobar el indicador "bounded" de Prolog. La mayoría de los principales sistemas Prolog admiten números enteros de precisión arbitraria.
  • Python : el tipo de entero integrado int(3.x) / long(2.x) es de precisión arbitraria. La Decimalclase del módulo de la biblioteca estándar ` decimal` tiene precisión definible por el usuario y operaciones matemáticas limitadas (exponenciación, raíz cuadrada, etc., pero no funciones trigonométricas). La Fractionclase del módulo ` fractions` implementa números racionales. Se puede acceder a una aritmética de punto flotante de precisión arbitraria más extensa con los paquetes de terceros `mpmath` y `bigfloat`.
  • Racket : los números integrados exactson de precisión arbitraria. Ejemplo: (expt 10 100)produce el resultado esperado (grande). Los números exactos también incluyen racionales, por lo que (/ 3 4)produce . Los números de punto flotante de precisión arbitraria están incluidos en el módulo math/bigfloat3/4 de la biblioteca estándar .
  • Raku : Rakudo admite tipos Intde FatRatdatos que se convierten en enteros y racionales de precisión arbitraria.
  • Rexx : variantes que incluyen Open Object Rexx y NetRexx.
  • RPL (solo en la serie HP 49/50 en modo exacto ): la calculadora trata los números introducidos sin punto decimal como enteros en lugar de números de coma flotante; los enteros tienen una precisión arbitraria limitada únicamente por la memoria disponible.
  • Ruby : el tipo entero integrado Bignumtiene precisión arbitraria. La clase bigdecimalBigDecimal del módulo de la biblioteca estándar tiene precisión definible por el usuario.
  • Esquema : R 5 RS fomenta, y R 6 RS exige, que los enteros exactos y los racionales exactos tengan una precisión arbitraria.
  • Scala : Class BigInty Class BigDecimal.
  • Semilla7 : bigIntegery bigRational.
  • Self : el tipo integrado admite números enteros de precisión arbitraria bigInt.
  • Smalltalk : variantes que incluyen Squeak , Smalltalk/X , GNU Smalltalk , Dolphin Smalltalk , etc.
  • SmartXML es un lenguaje de programación gratuito con un entorno de desarrollo integrado (IDE) para cálculos matemáticos. BigNumberSe pueden usar variables de tipo entero o convertir números regulares a números grandes mediante el operador de conversión #(por ejemplo, #2.3^2000.1). Los números grandes de SmartXML pueden tener hasta 100 000 000 de dígitos decimales y hasta 100 000 000 de dígitos enteros.
  • ML estándar : La estructura integrada opcional IntInfimplementa la firma INTEGER y admite enteros de precisión arbitraria.
  • Tcl : A partir de la versión 8.5 (2007), los enteros son de precisión arbitraria por defecto. (Internamente, el lenguaje cambia a una representación interna de precisión arbitraria para los enteros demasiado grandes para caber en una palabra de máquina. Las interfaces de C deben usar funciones de biblioteca como Tcl_GetLongFromObjpara obtener valores como tipos de datos nativos de C a partir de enteros de Tcl).
  • Wolfram Language , al igual que Mathematica , emplea GMP para el cálculo aproximado de números.

Calculadoras en línea

Para cálculos puntuales. Se ejecuta en el servidor o en el navegador. No requiere instalación ni compilación.

  • 1. https://www.mathsisfun.com/calculator-precision.html 200 lugares
  • 2. http://birrell.org/andrew/ratcalc/ arbitrario; seleccione racional o de punto fijo y número de lugares
  • 3. Calculadora en línea PARI/GP - https://pari.math.u-bordeaux.fr/gp.html (PARI/GP es un sistema de álgebra computacional ampliamente utilizado, diseñado para realizar cálculos rápidos en teoría de números (factorizaciones, teoría algebraica de números, curvas elípticas, formas modulares, funciones L...), pero también contiene una gran cantidad de otras funciones útiles para trabajar con entidades matemáticas como matrices, polinomios, series de potencias, números algebraicos, etc., y muchas funciones trascendentales. PARI también está disponible como una biblioteca C para permitir cálculos más rápidos).
  • 4.1. AutoCalcs : permite a los usuarios buscar, crear, almacenar y compartir cálculos de varios pasos mediante expresiones explícitas con conversión automática de unidades. Es una plataforma que va más allá de la simple conversión de unidades, lo que se traduce en una mayor eficiencia. En la documentación de AutoCalcs encontrará numerosos ejemplos de cálculos. Los cálculos creados con AutoCalcs pueden integrarse en sitios web de terceros.
  • 4.2. Documentación de AutoCalcs : considerando AutoCalcs como el motor de cálculo, este sitio de documentación es una biblioteca con una gran cantidad de cálculos, donde cada cálculo es esencialmente una aplicación web que se puede ejecutar en línea, personalizar aún más y mucho más. Imagínese leer un libro con muchos cálculos; este es el libro/manual con todos los cálculos que puede usar al instante. Cabe mencionar que, cuando los cálculos involucran unidades, la conversión de unidades se puede automatizar.
  • 5. Calculadora de números grandes : una calculadora de enteros y decimales de precisión arbitraria, con soporte para desplazamiento decimal y ajuste de tipo de datos.

Referencias

  1. https://www.algorithmic-solutions.info/leda_manual/License_Terms_Availability.html
  2. "¡Se ha lanzado OpenSSL 3.0!" . Blog de OpenSSL . 7 de septiembre de 2021 . Consultado el 11 de octubre de 2024 .
  3. "BigInt" . ¿Puedo usarlo ? Consultado el 16 de marzo de 2021 .
Obtenido de " https://en.wikipedia.org/w/index.php?title=List_of_arbitrary-precision_arithmetic_software&oldid=1360265120 "