Commit Graph

15 Commits

Author SHA1 Message Date
Ryan Orendorff
95721487a8 Mixed bounds in logproof (#276)
This enables some small performance increase for smaller proofs (up to approximately 75%). Additionally this enables the prover and verifier to agree on which components may or may not be interesting by specifying a
bounds of zero.
2023-07-07 12:37:12 -06:00
Ryan Orendorff
300c5eb019 Fix assert_poly_expansion for k > 1 (#275)
* Fix assert_poly_expansion for k > 1

The polynomial expansion was using a flattened tensor product when a normal kronecker product should have been used. This fixes that error.

As a consequence, it is now also possible to create a matrix from a
vector of vectors. This was implemented to make it easier to create the test cases for k > 1.
2023-07-07 11:52:32 -06:00
Ryan Orendorff
a91c7291fb Add CSV stdout for logproof bench (#274) 2023-07-06 10:36:27 -06:00
Ryan Orendorff
8d9af63de0 Fix bounds (b, b_1, b_2) on logproof (#262)
The prior bounds for the short discrete log proof were not quite
accurate for some inputs. Specifically, the following changes were made
to match the paper:

- b: log2(B) + 1 -> ⌈log2(B)⌉ + 1
- b₁: log2(mdB + d||f||_inf) -> ⌈log2(mdB + d||f||_inf)⌉
- b₂ log2(q) + 1 -> ⌈log2(q)⌉

Specifically, b₂ was correct unless q was a power of 2, which
essentially never happens in practice.
2023-06-27 10:35:08 -07:00
Ryan Orendorff
c7052bbfda Build to_2s_complement by individual elements. (#264)
This change is a no-op on the result; it is a precursor to having
bounds that can vary on each element in the input array.
2023-06-26 19:42:51 -07:00
Sam Tay
c2ad1138c2 Fix broken doc links (#252)
* Fix broken doc links

* Fail CI on api doc warnings

* Fix broken api docs
2023-06-12 12:46:08 -07:00
rickwebiii
ee5d6d9cdc Rweber/cuda (#235)
CUDA implementation
2023-04-10 19:54:24 +01:00
rickwebiii
1ba1419691 Rweber/perf (#234)
Use Bulletproofs optimization section 3.1
2023-04-02 15:55:30 +01:00
rickwebiii
06e9c1cb2b Rweber/opencl (#230)
OpenCL implementation of curve25519 operations
2023-03-22 14:30:45 -07:00
rickwebiii
ad17d5ca03 specify poly degree (#222) 2023-03-08 17:03:56 -08:00
rickwebiii
d29f18fbee Rweber/zkp (#221)
* Speed up scalar inversion, move linear relation to criterion benchmark
2023-03-08 16:29:26 -08:00
rickwebiii
55dfdda88c Rweber/zkp (#220)
WebGPU implementation WIP
2023-03-05 16:39:31 -08:00
rickwebiii
6604afbf95 ZKP array inputs (#217)
* ZKP array inputs
2023-03-01 13:33:14 -08:00
rickwebiii
745b9b6996 Rweber/zkp (#216)
* GPU accelerate Scalar inversion
* CPU-GPU work sharing
2023-02-28 09:16:07 -08:00
rickwebiii
ee830d6d70 Rweber/zkp (#215)
Bring logproofs into monorepo
2023-02-17 14:44:03 -08:00