galois
galois copied to clipboard
Arithmetic and polynomial operations in finite fields.
There is currently no way to free memory consumed by WASM modules, so, periodic recreation of `FiniteField` objects is required to avoid memory leaks. This can be fixed by [finalizers](https://v8.dev/features/weak-references)...
This would be pretty tedious to do, especially without multi-return values in WASM. Also, without SIMD, performance gains would not be as great as for 128-bit fields (especially for modular...
Most (all?) bulk operations can be sped up by leveraging multi-threading. The way to do this is probably to spin up worker threads with shared WASM memory and assign a...
Right now, the construct does not check if the passed-in modulus is prime. This can lead to unexpected results and should be fixed.
The `BinaryField` class has already been stubbed out, but pretty much everything there needs to be implemented. The hardest part will probably be FFT and Lagrange Interpolation - but, this...
Right now, PRNG methods use simple hashing to get the next value. There is probably something better than this.