package ff
OCaml implementation of Finite Field operations
Install
Dune Dependency
Authors
Maintainers
Sources
ocaml-ff-0.4.0.tar.gz
md5=ac1198ad3075847b7e8a8f1904ba44d8
sha512=b20e5f114adbcd4d4e9dbf7b8a937776b07787052f6e6b965ffeaa3e3319f4ab9051d64e30a1a34d55f9f08509382b9aabc012988a2f704f3d770a65db48304d
Description
OCaml implementation of Finite Field operations
Published: 03 Oct 2020
README
OCaml FF
Play with Finite Field in OCaml
This library provides functors to instantiate finite field of arbitrary orders (in the limit of Zarith, the dependency to handle arbitrary integers).
module F13 = Ff.MakeFp (struct let prime_order = Z.of_string "13" end)
module BLSFr = Ff.MakeFp (
struct
let prime_order = Z.of_string "52435875175126190479447740508185965837690552500527637822603658699938581184513"
end
)
JavaScript compatibility
This library can be transpiled in JavaScript using js_of_ocaml. An example is provided in js/test_js.ml
, with the corresponding dune
file. It instantiates Fp with p = 53. dune
will compile this into a FiniteField.js
file, exporting methods like add
, toString
, random
, etc. FiniteField
can be used as a Node module. See js/test/test_js.js
for an example.
# Generate FiniteField.js
dune build js
cp _build/default/js/FiniteField.js ./
node
var FF = require("./FiniteField.js");
let x = FF.random();
let y = FF.random();
let x_plus_y = FF.add(x, y);
Dev Dependencies (1)
-
alcotest
with-test
Used by (2)
-
bls12-381
< "0.4.1"
-
tezos-plompiler
< "1.0.0"
Conflicts
None
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page