Commit graph

59 commits

Author SHA1 Message Date
str4d
cc5f45231d
Merge pull request #42 from zcash/plonk-benches
PLONK benchmarks
2020-11-24 18:14:07 +00:00
Jack Grigg
236b3a6692 Collect some verifier metrics 2020-11-23 12:47:51 +00:00
Jack Grigg
d4424db8d4 Collect some prover metrics 2020-11-23 12:47:51 +00:00
ying tong
7822201c9c Remove redundant point checks in commitment verifier
Co-authored-by: Jack Grigg <jack@electriccoin.co>
2020-11-16 21:28:37 +00:00
therealyingtong
2375507f4f Update error handling 2020-11-16 21:26:46 +00:00
therealyingtong
43337dea1b Make Transcript generic over curve points
Co-authored-by: Jack Grigg <jack@electriccoin.co>
2020-11-16 21:26:46 +00:00
Jack Grigg
3407d13e4b Move curves and fields into tweedle module 2020-11-12 21:36:59 +00:00
ebfull
5a2f474616
Merge pull request #56 from zcash/coset-docs
Add to documentation for coset evaluation domain
2020-11-11 08:56:03 -07:00
therealyingtong
28e07eab16 Add to documentation for coset evaluation domain 2020-11-10 13:44:52 +08:00
Jack Grigg
5a6a45c6a8 Fix deref breakage with nightly-2020-10-06
I think this is related to rust-lang/rust#77638
2020-10-30 01:21:09 +00:00
Sean Bowe
011132337f
Remove notes on multiopen module 2020-10-20 08:57:48 -06:00
therealyingtong
3761419ebc Add documentation for multiopen.rs 2020-10-18 20:09:44 +08:00
therealyingtong
a30719c245 Minor changes to multiopen
Co-authored-by: ebfull <ewillbefull@gmail.com>
2020-10-18 20:09:40 +08:00
Sean Bowe
1e9f7f37c6
Minor improvements to multiopen. 2020-10-15 17:16:44 -06:00
Sean Bowe
9d572c181d
Remove unnecessary enumeration in multiopen prover. 2020-10-15 17:12:17 -06:00
Sean Bowe
685bf79613
Relocate x_5 challenge sampling location to simplify logic. 2020-10-15 17:11:06 -06:00
Sean Bowe
123cacc7cc
Remove additional unnecessary vector clone from multiopen prover. 2020-10-15 17:06:35 -06:00
Sean Bowe
55ef4ea1f7
Unify the construct_intermediate_sets function between multiopen prover and verifier. 2020-10-15 17:01:30 -06:00
Sean Bowe
d3f593e89c
Avoid unnecessary enumeration. 2020-10-15 14:18:02 -06:00
Sean Bowe
3955da435c
Avoid unnecessary vector cloning in multiopen. 2020-10-15 14:17:03 -06:00
therealyingtong
2f7b46ffa1 Remove use of parallelize() from multiopen::prover 2020-10-14 08:16:14 +08:00
therealyingtong
742c15bb51 Minor changes and documentation 2020-10-14 08:15:00 +08:00
therealyingtong
b62d113031 Refactor to use fold() in multiple places 2020-10-14 00:35:36 +08:00
therealyingtong
79cabb3d8d Move random scaling of MSM into multiopen verifier
Co-authored-by: Sean Bowe <ewillbefull@gmail.com>
2020-10-14 00:35:36 +08:00
therealyingtong
088118cc5d Refactor lagrange_interpolate() method
Co-authored-by: daira <daira@electriccoin.co>
Co-authored-by: str4d <jack@z.cash>
2020-10-14 00:35:36 +08:00
therealyingtong
1441193de1 Refactoring from initial code review
Co-authored-by: ebfull <ewillbefull@gmail.com>
2020-10-14 00:35:36 +08:00
therealyingtong
97873fa6ea Use VerifierQuery and construct_intermediate_sets() in verifier 2020-10-14 00:35:36 +08:00
therealyingtong
6cd74999ff Use ProverQuery and construct_intermediate_sets() in prover 2020-10-14 00:35:25 +08:00
therealyingtong
9378d0cc70 Define construct_intermediate_sets() helper method for multiopen prover and verifier 2020-10-14 00:35:25 +08:00
therealyingtong
cbe4415870 Introduce Query and CommitmentData structs for multiopen 2020-10-14 00:35:25 +08:00
therealyingtong
c3d0a172a7 Create multiopen abstraction 2020-10-14 00:35:25 +08:00
Sean Bowe
67b35954f4
Move MSM into submodule. 2020-10-13 08:16:20 -06:00
Sean Bowe
4a37e05f49
cargo fmt 2020-09-25 10:21:54 -06:00
Sean Bowe
316a027784
Modify commitment opening argument so that G element can be foux blinded to align with wire blinding in PLONK. 2020-09-25 10:21:15 -06:00
Sean Bowe
3db368b40e
Move Guard and Accumulator implementations into verifier submodule. 2020-09-25 10:21:13 -06:00
Sean Bowe
2d1f69328f
Rename OpeningProof to just Proof. 2020-09-25 09:39:32 -06:00
Sean Bowe
a37c926a89
Address clippy lints 2020-09-20 13:09:03 -06:00
therealyingtong
a6f5d0ad5e
Remove fork from OpeningProof prover; add loop in PLONK prover to try different f_blind values 2020-09-19 16:57:32 +08:00
ying tong
208be28113
Merge pull request #20 from zcash/small-multiexp
Small multiexp
2020-09-17 13:00:51 +08:00
therealyingtong
ced73c2bf7
Minor fixes 2020-09-17 05:14:01 +08:00
Sean Bowe
68de5db8c6
Mitigate unnecessary scaling operations in commitment verifier. 2020-09-15 17:42:02 -06:00
Sean Bowe
a886663e05
Incorporate MSM/Guard into PLONK verifier API and arithmetic. 2020-09-15 17:32:39 -06:00
therealyingtong
d70c8cc0d7
Add benchmarks for shared double-and-add 2020-09-16 00:44:56 +08:00
therealyingtong
f2fc068db0
Implement small_multiexp() in arithmetic.rs 2020-09-15 19:15:35 +08:00
Sean Bowe
5ec820f8fd
Fix warning in test. 2020-09-13 10:23:04 -06:00
Sean Bowe
fd350a28a0
Minor adjustments to tests and documentation 2020-09-13 10:18:31 -06:00
Sean Bowe
221e9029f7
Minor adjustments to MSM and Guard APIs. 2020-09-13 10:14:32 -06:00
therealyingtong
19ee27e51a
Fix bug in compute_g() 2020-09-13 23:10:37 +08:00
therealyingtong
c264208a03
Rename params.msm() to params.empty_msm() 2020-09-13 23:07:05 +08:00
therealyingtong
417174898e
Update documentation 2020-09-13 12:32:33 +08:00