Commit Graph

724 Commits

Author SHA1 Message Date
Jack Grigg eb7ce442f9 Rename ChallengeX6 to ChallengeZ 2020-12-01 21:40:16 +00:00
Jack Grigg 914d150a6b CI: Build for WASM targets 2020-12-01 21:26:52 +00:00
Jack Grigg a63e6e25d8 Restrict visibility of PLONK challenges to plonk module 2020-12-01 21:14:14 +00:00
Jack Grigg 7422efca72 s/permutation::Proof::commit/permutation::Argument::commit
Once we refactor the permutation argument implementation to be integrated
as Vec<permutation::Proof>, we can change this again to just map from the
Vec<permutation::Argument> inside ConstraintSystem.
2020-12-01 21:10:31 +00:00
Jack Grigg 66240800a3 Move permutation keygen into plonk::permutation::keygen 2020-12-01 21:10:31 +00:00
Jack Grigg f63f3ff2af Introduce typed challenge scalars
This also centralises the challenge generation logic in Challenge::get,
ensuring it is consistent across the codebase.
2020-12-01 21:09:03 +00:00
Jack Grigg 63e3bc1e15 Remove unnecessary Transcript::init_with_hashers constructor 2020-12-01 21:03:31 +00:00
Jack Grigg 4a3b830165 Extract permutation argument into a submodule 2020-12-01 21:03:31 +00:00
ebfull 3bcfe7825f
Merge pull request #61 from zcash/ff-traits
Migrate to ff traits
2020-12-01 13:59:06 -07:00
Jack Grigg cdbc41148a Migrate to ff traits
The `Field` trait in this crate is now `FieldExt: ff::PrimeField`.
2020-12-01 20:55:03 +00:00
str4d a66cc66f82
Merge pull request #59 from zcash/optimise-polycommit
Documentation updates + clippy fixes
2020-11-30 20:25:53 +00:00
therealyingtong 72471dc07e Clippy fixes 2020-11-30 23:57:48 +08:00
therealyingtong 0b2ec8965f Update documentation in polycommit verifier 2020-11-30 15:28:19 +08:00
therealyingtong d168f5c21b Parallelize and rename methods in msm.rs 2020-11-30 15:28:19 +08:00
str4d f86fce83ef
Merge pull request #71 from zcash/use-latest-stable
Use latest stable Rust
2020-11-27 15:44:26 +00:00
Jack Grigg a0a9538132 Use renamed broken_intra_doc_links lint 2020-11-27 14:40:37 +00:00
Jack Grigg e5e6700e10 Pin most recent metrics alpha 2020-11-25 19:56:52 +00:00
Jack Grigg 6c85ad14a9 Use latest stable Rust
We don't need to commit to an MSRV yet, and this avoids the problem
where some of our in-flux dependencies bump their MSRV (or don't have
a defined MSRV and make changes to use more recent features) causing
our CI to break.
2020-11-25 19:38:03 +00:00
str4d 6f6a6a6bb0
Merge pull request #48 from zcash/small-optimisations
Small optimisations
2020-11-25 14:01:23 +00:00
Jack Grigg 875c223748 Simplify h_poly expression evaluation in Proof::create 2020-11-24 23:43:48 +00:00
Jack Grigg 61cddec3b8 Update crate authors 2020-11-24 18:25:56 +00:00
Jack Grigg 61c9392475 Remove query allocations from Proof::create
multiopen::Proof::create takes `instances: IntoIterator`, so we can just
pass it an iterator directly.
2020-11-24 18:25:55 +00:00
Jack Grigg 6360da1f4e Remove query allocations from Proof::verify
multiopen::Proof::verify takes `queries: IntoIterator`, so we can just
pass it an iterator directly.
2020-11-24 18:23:27 +00:00
Jack Grigg 7f29ab913d Simplify h(x_3) computation in verifier using Horner's rule
Closes zcash/halo2#45
2020-11-24 18:18:45 +00:00
Jack Grigg feba8e2fdf Allocate permutation_modified_advice once in Proof::create 2020-11-24 18:18:45 +00:00
str4d cc5f45231d
Merge pull request #42 from zcash/plonk-benches
PLONK benchmarks
2020-11-24 18:14:07 +00:00
Jack Grigg 9a4f27056c Fix clippy lint in metrics model doctest 2020-11-24 17:56:33 +00:00
str4d e8bf35d853
Merge pull request #43 from zcash/transcript-merge
Make transcript generic over curve point
2020-11-24 17:50:18 +00:00
therealyingtong 3eb6712c6c Add aux information to metrics 2020-11-24 09:39:34 +08:00
Jack Grigg 37c4927dac model: Measure keygen and prover separately 2020-11-23 12:47:51 +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
Jack Grigg ba27586965 Add an example performance model 2020-11-23 12:47:51 +00:00
Jack Grigg fb8f67dfe5 Add a simple metrics Recorder for counting things in models 2020-11-23 12:47:42 +00:00
Sean Bowe 1f3fc875ab PLONK benchmarks. 2020-11-23 12:47:42 +00:00
therealyingtong bffab9953e Conditionally squeeze scalar hasher before interacting with base hasher 2020-11-16 21:28:37 +00:00
ying tong 15682bf16f Make init_with_hashers() internal to transcript crate
Co-authored-by: Jack Grigg <jack@electriccoin.co>
2020-11-16 21:28:37 +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
str4d 1e8769b738
Merge pull request #60 from zcash/tweedle-refactor
Move curves and fields into tweedle module
2020-11-12 22:45:25 +00:00
Jack Grigg 71111e88b7 Type aliases for the tweedle groups 2020-11-12 21:45:56 +00:00
Jack Grigg 3407d13e4b Move curves and fields into tweedle module 2020-11-12 21:36:59 +00:00
Jack Grigg f4c15760f2 Use explicit trait paths in arithmetic macros 2020-11-12 19:38:27 +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
ebfull 5d1e1a29db
Merge pull request #51 from zcash/update-ci
Update Actions CI with improved workflow
2020-11-11 08:52:59 -07:00
Daira Hopwood 629bab41b0
Merge pull request #54 from zcash/column-types
Introduce Column struct and ColumnType trait
2020-11-11 14:14:40 +00:00
ying tong a856137619 Minor refactors
Co-authored-by: str4d <jack@electriccoin.co>
2020-11-11 13:56:34 +08:00
therealyingtong 28e07eab16 Add to documentation for coset evaluation domain 2020-11-10 13:44:52 +08:00
therealyingtong 766caf9214 Make getters for column index() and column_type() 2020-11-10 00:45:52 +08:00