文件名称:Zarith:Zarith库对任意精度的整数和有理数进行算术和逻辑运算。 基于GMP的实施非常有效
文件大小:102KB
文件格式:ZIP
更新时间:2024-03-04 17:31:30
OCaml
扎里斯图书馆 概述 该库对任意精度整数实现算术和逻辑运算。 该模块简称为Z 它的接口类似于OCaml标准库中的Int32 , Int64和Nativeint模块的接口,并具有一些附加功能。 有关文档,请参见文件z.mlip 。 该实现使用GMP(GNU多精度算术库)来计算大整数。 但是,小整数表示为未装箱的Caml整数,以节省空间并提高性能。 大整数在Caml堆中分配,绕过GMP的内存管理,并且比MLGMP库具有更好的GC行为。 小整数的计算使用特殊的较快路径(在C或OCaml中),避免调用GMP,而大整数的计算则使用GMP的低级MPN函数。 可以使用OCaml的多态比较运算符( = , < , >等)正确比较任意精度的整数。 其他功能包括: 基于Z有理数模块Q (请参阅q.mli ) 兼容层Big_int_Z ,其实现与旧版Num库中的Big_int相同的API,但在内部使用
【文件预览】:
Zarith-master
----.gitignore(86B)
----configure(9KB)
----z_mlgmpidl.mli(884B)
----Changes(5KB)
----META(414B)
----project.mak(4KB)
----z_mlgmpidl.ml(1KB)
----big_int_Z.ml(3KB)
----q.mli(7KB)
----z.mli(22KB)
----LICENSE(26KB)
----zarith.opam(1KB)
----.github()
--------workflows()
----caml_z.c(88KB)
----README.md(4KB)
----q.ml(15KB)
----tests()
--------zq.ml(45KB)
--------bi.ml(8KB)
--------Makefile(1KB)
--------zq.output32(34KB)
--------tofloat.ml(4KB)
--------zq.output64(35KB)
--------ofstring.ml(9KB)
--------timings.ml(4KB)
--------setround.c(538B)
--------pi.ml(2KB)
--------pi.output(791B)
----zarith_top.ml(786B)
----zarith.h(1KB)
----config.guess(44KB)
----z.ml(12KB)
----big_int_Z.mli(3KB)