nicholas-mainardi
nicholas-mainardi
This PR addresses issues #149 and #150. It defines a new trait `UIntGadget` which defines the functions available for small unsigned integers (up to 128 bits). In particular, the `UIntGadget`...
The comparison functions for `FpGadget` only accepts operands in the range [0, (p-1)/2] for a prime field Fp. In case equality between the input operands x,y must be also checked...
This PR addressed the [issue #148](https://github.com/HorizenOfficial/ginger-lib/issues/148) by adding the functions `to_bits_le` and `from_bits_le` to the `ToBitsGadget` and `FromBitsGadget`, respectively. These functions allow to serialize/deserialize for the types implementing such gadgets...
This PR defines the gadget for the succinct verification of polynomial-commitments, providing also the implementation of the gadget for the DLOG commitment scheme. Similarly to the primitive, the gadget can...
This PR partially addresses issue #36 (partially #125 too), providing a first implementation for complete addition for the `AffineGadget`, both for Jacobian and Projective curves. The algorithm is based on...
The refactoring of `NonNativeFieldGadget` mentioned in issue #152 should allow to perform more than one multiplication before reducing the result back to a non-native field element. Nonetheless, some preliminary benchmarks...
Some computationally intensive operations rely on the `start_timer`/`end_timer` macros to print the execution time employed for such operations. Nonetheless, if an error occurs, such operations might end before calling the...
It seems to me that the `CircuitBuilder` might incorrectly handles the generators for unused slots of gates that can have multiple instances on the same row. I tried to reproduce...
This PR adds a generic provable matrix multiplication component.