Tom Shen
989f579ca8
Add Univariate Domain, Vanishing Polynomial, Lagrange Interpolation ( #53 )
* add domain and vp
* add lagrange interpolator
* add query position to coset
* nostd
* add test assertion
* fmt
* fix test
* add Add and Sub arithmetic
* add Add and Sub arithmetic
* add unit test for mul/div arithmetic
* add more doc for clarification
* add test for native interpolate
* add test for vp constraints
* fix lagrange interpolate bug
* comment cleanup + fmt
* add CHANGELOG
* fix a compile error
* Update CHANGELOG.md
* Update CHANGELOG.md
* fix comment
* doc fix
* doc update 2
* doc update 3
* pub lagrange_interpolator
* doc fix
* rename `EvaluationDomain` to `Radix2Domain`
* tweak
* tweak
Co-authored-by: weikeng <w.k@berkeley.edu>
3 years ago
Dev Ojha
5debc6f8f1
Rename AllocatedBit to AllocatedBool ( #60 )
* Rename AllocatedBit to AllocatedBool
* Update Changelog
* Fix independent fmt issues
3 years ago
ValarDragon
2348acf3a1
Update changelog for release
3 years ago
Pratyush Mishra
73ac661ddf
Update CHANGELOG
3 years ago
Tom Shen
09f3613aac
Add DensePolynomialVar ( #50 )
* add folder structures similar to `ark-poly`
* add evaluate impl for DensePolynomialVar
* add tests
* fix no-std
* use ark_std::rand instead of SeedableRng
* add changelog
Co-authored-by: Weikeng Chen <w.k@berkeley.edu>
3 years ago
Dev Ojha
1f83ffdff4
Switch to panic='abort' for safety across FFI boundaries ( #47 )
Co-authored-by: Pratyush Mishra <pratyushmishra@berkeley.edu>
3 years ago
Tom Shen
05fee34686
Add Mux gadget ( #48 )
3 years ago
Pratyush Mishra
d9e0200433
Improve handling of constant bits in scalar mul for SW curves ( #43 )
* We add a double_and_add method that computes 2 * self + other more
efficiently than just doubling + addition; this is not used anywhere
yet, but I am planning on fiddling with it to see if we can leverage
it somehow. (See zcash/zcash#3924 for details)
* We handle constant scalars better:
* We skip the most-significant constant zeroes to avoid unnecessary
doubling
* When intermediate bits of the scalar are constants, instead of
conditionally adding, we directly use the value of the bit to
decide whether to add or not.
Co-authored-by: Dev Ojha <ValarDragon@users.noreply.github.com>
Co-authored-by: weikeng <w.k@berkeley.edu>
3 years ago
Pratyush Mishra
5e4114b19c
Better scalar multiplication for Short Weierstrass curves ( #40 )
Co-authored-by: Dev Ojha <ValarDragon@users.noreply.github.com>
Co-authored-by: Pratyush Mishra <pratyushmishra@berkeley.edu>
3 years ago
Dev Ojha
f88d7c6ea3
Make `mul_by_inverse` use one constraint ( #42 )
Co-authored-by: Pratyush Mishra <pratyushmishra@berkeley.edu>
3 years ago
Dev Ojha
bdc9fbbf30
Add changelog and .github issue templates ( #39 )
* Add changelog and .github issue templates
3 years ago