nicholas-mainardi

Results 10 issues of 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...

optimization

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...

bug
good first issue

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...

bug

This PR adds a generic provable matrix multiplication component.