Pratyush Mishra
6cca9327be
Refactor bit iteration infrastructure:
* `to_bits` -> `to_bits_le`
* `BitIterator` -> `BitIteratorLE` + `BitIteratorBE`
* `found_one`/`seen_one` -> `BitIteratorBE::without_leading_zeros`
4 years ago
Pratyush Mishra
8022b598fb
Update field variables in `r1cs-std`
4 years ago
Weikeng Chen
61c70ed644
Prepare Zexe for recursion ( #241 )
Co-authored-by: Pratyush Mishra <pratyushmishra@berkeley.edu>
4 years ago
Dev Ojha
a83914af50
Add mul_by_inverse to FieldGadget ( #227 )
4 years ago
Dev Ojha
75439b9b4d
Add constant folding to FpGadget<F> ( #226 )
4 years ago
ValarDragon
349407faef
Speed up exp_by_const
4 years ago
Pratyush Mishra
456f30a849
Fix #172 and improve squaring code for deg-3 extensions ( #174 )
5 years ago
Pascal Berrang
8631f883c4
MNT4/6 curves and recursive SNARKs ( #150 )
* Add mnt6_753 curve
Generalize mnt6 curve model
* Add mnt4 curves
* Use resampled generators
* Calculate correct G2 cofactors
* Add fields to r1cs-std
* Add pairings
* Improve reusing of Fq/Fr among MNT curves
* Add instantiations of curves
Fix Fp6_2over3
Rebase code to current master
* Add test for recursive NIZK proof verification
* Address comments in PR
* Improve test case and port to GM17
Also fix a minor bug in to_field_vec
5 years ago
Pratyush Mishra
b1913a9ca7
Change default `to_bits` and `to_bytes` functions to the safe versions
5 years ago
ValarDragon
78e08aed97
Fix lint
5 years ago
ValarDragon
cba74c09d9
Fix error
5 years ago
ValarDragon
3cb1ed06d6
Fix linter errors
5 years ago
Pratyush Mishra
77837b4a1b
Fix ns issue
5 years ago
ValarDragon
cb1bcb1cbf
Fix ns
5 years ago
ValarDragon
b63d255ea3
Update to use bit iterator
5 years ago
ValarDragon
8cce6501b8
Add exponentiation by constant to Fp
5 years ago
Pratyush Mishra
8bf042a029
Refactor `algebra` API, split into `algebra` and `algebra-core`. ( #100 )
5 years ago
Marek Kotewicz
9621bd34a4
r1cs-std works with no-std ( #92 )
5 years ago
François Garillot
ab65b01478
Clean up a few loop bounds
5 years ago
François Garillot
53a51eb4dc
Use built-in iteration functions more
5 years ago
François Garillot
10c6e85c1a
Remove a few unnecessary `.into_iter()` explicit calls, and some cloning.
See https://rust-lang.github.io/rust-clippy/master/#explicit_into_iter_loop
5 years ago
Kobi Gurkan
581f3df55f
Adds Bowe-Hopwood hash
5 years ago
Pratyush Mishra
0a507b0a5f
Upgrade ff-fft, gm17, and r1cs-std
5 years ago
Pratyush Mishra
c610ecbcc5
Update r1cs-std tests
5 years ago
Pratyush Mishra
e00d667330
Move snark-gadgets to r1cs-std
5 years ago