Commit Graph

2402 Commits

Author SHA1 Message Date
Han adefd9a4a0
Merge pull request #99 from han0110/feature/stable-channel
Use stable channel rust
2022-10-21 22:33:48 -07:00
han0110 8a82b7716e feat: use stable channel rust 2022-09-19 14:52:48 +08:00
Han a9e99a72a6
feat: implement multi-phase `ConstraintSystem` (#97) 2022-09-08 13:31:01 +02:00
Han 0cccba00d1
Merge pull request #84 from han0110/feature/abstraction-squashed 2022-08-19 18:21:00 +08:00
han0110 3e4b27fc6c feat: expose necessary structure of ConstraintSystem 2022-08-19 16:00:51 +08:00
han0110 6e564cfd23 feat: Add `MockProver::verify_{par,at_rows_par}` 2022-08-19 16:00:51 +08:00
han0110 984105592c feat: Cache table when same identifier and improve permutation checks in `MockProver` 2022-08-19 16:00:51 +08:00
han0110 f08632016f feat: use nightly rust and fix warnings 2022-08-19 16:00:51 +08:00
Brechtpd 182ec2dd99 Reduce lifetime of advice polys 2022-08-19 16:00:51 +08:00
Brechtpd 70cfe70a01 Add `plonk::evaluation` for prover optimization 2022-08-19 16:00:51 +08:00
NoCtrlZ 5b3bf56ca6 Add `ConstraintSystem::lookup_any` 2022-08-19 16:00:51 +08:00
Zhang Zhuo 31efabd369 Add name in `lookup::Argument` 2022-08-19 16:00:51 +08:00
Zhang Zhuo 1e967eb35f Add `MockProver::verify_at_rows` 2022-08-19 16:00:51 +08:00
Brechtpd 8e87a74180 Parallelized `eval_polynomial` 2022-08-19 16:00:51 +08:00
Brechtpd 8916c60b1a Add `Expression::evaluate_lazy` and `Expression::identifier` 2022-08-19 16:00:51 +08:00
Brechtpd f9923c8dd6 Use `HashMap` to count cell assignment in `dev::Region` 2022-08-19 16:00:51 +08:00
testuser-at-490752553772 5eac2ad543 Removed bench.yml, added trigger_proverbench_dispatch.yml to allign halo2 benches with main 2022-08-19 16:00:51 +08:00
kilic 51d523df60 Commitment scheme abstraction
Add SHPLONK and GWC varians of KZG
2022-08-19 16:00:51 +08:00
Chih Cheng Liang 2a19e441b1
Merge pull request #94 from privacy-scaling-explorations/purely-upstream
Purely upstream
2022-08-19 15:55:25 +08:00
ChihChengLiang 25b47f23c8 add back diffs 2022-08-19 11:52:07 +08:00
ChihChengLiang 63b42c96cd Merge branch 'upstream' into purely-upstream 2022-08-19 11:47:43 +08:00
Han ad425ed3d1
Merge pull request #78 from Brechtpd/eval-mem
Reduce memory use in h evaluation
2022-08-09 00:40:06 +08:00
Brechtpd 9015e5432b Reduce memory use in h evaluation 2022-08-08 18:20:26 +02:00
Han 6ec2f49ee3
Merge pull request #85 from scroll-tech/parallel-mockprover-verify
Add Mockprover::verify_par()
2022-08-08 13:31:43 +08:00
Han 763335c95e
Merge pull request #86 from pinkiebell/params_pub
Params,ParamsVerifier: make k & n public
2022-08-08 11:32:28 +08:00
spherel 55bae7c687 Fix parallel function signature. 2022-08-07 20:44:36 +00:00
han0110 8ff5b1e3af feat: make `Expression::{Fixed,Advice,Instance}` to wrap their own `Query` struct 2022-07-15 10:33:47 -04:00
pinkiebell f12f082b71 add doc strings 2022-07-12 07:35:42 +00:00
pinkiebell 2b625a2802 Params,ParamsVerifier: make k & n public
Used for decision making in downstream projects that want to infer
certain bounds given a `Params{Verifier}` structure.
2022-07-12 06:53:28 +00:00
spherel 0b83e58b30 Add Mockprover::verify_par() 2022-07-09 03:23:44 +00:00
Daira Hopwood 5af2bd3bd7 [Book] Rename "polynomial degree bound" to "maximum constraint degree".
This is because "degree bound" is often defined to be exclusive.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-07-07 18:13:14 -04:00
Daira Hopwood 104101d0eb [Book] Make the permutation diagram stand out against dark backgrounds.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-07-07 18:13:14 -04:00
str4d 96d9bde905
Merge pull request #612 from zcash/batch-crate-feature
Place `halo2_proofs::plonk::BatchVerifier` behind a (default enabled) crate feature called `batch`.
2022-06-23 20:16:37 +01:00
Sean Bowe deef0e1416
Place `halo2_proofs::plonk::BatchVerifier` behind a (default enabled) crate feature called `batch`. 2022-06-23 12:51:47 -06:00
ebfull 912003138f
Merge pull request #611 from zcash/release-0.2.0
Release 0.2.0
2022-06-23 12:35:40 -06:00
Jack Grigg 2c06d83ae9 halo2_gadgets 0.2.0 2022-06-23 17:41:52 +00:00
Jack Grigg 7a22f3c9b6 halo2_proofs 0.2.0 2022-06-23 17:40:23 +00:00
Jack Grigg 5641a64d3c halo2_proofs: Fix clippy lints 2022-06-23 17:38:11 +00:00
Jack Grigg f0861db20b halo2_gadgets: Silence clippy lints
They are in code generated by macros from the `uint` crate, that we
can't do anything about from here.
2022-06-23 17:37:19 +00:00
str4d dac6cfb5d7
Merge pull request #610 from zcash/rework-batch-verifier
Rework `halo2_proofs::plonk::BatchVerifier`
2022-06-23 18:15:24 +01:00
Jack Grigg dd94fb95a4 Rework `halo2_proofs::plonk::BatchVerifier`
`BatchVerifier` now manages the entire batch verification process.
Individual proofs are verified on a threadpool, and the resulting MSMs
are then batch-checked as before. The addition of parallelism here
couples with zcash/halo2#608 to make parallelism less fine-grained and
reduce the overhead of multi-threading.
2022-06-23 16:52:08 +00:00
ebfull 7087c33658
Merge pull request #608 from ebfull/msm-optimization
MSM optimizations
2022-06-23 10:49:22 -06:00
ebfull c1159bda1b
Merge pull request #1 from daira/msm-optimization-daira
Reduce memory overhead of MSM
2022-06-23 10:04:29 -06:00
Daira Hopwood 2ed70a3f08 Reduce memory overhead of MSM by 64 bytes per "other" base, and add tests.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-06-23 14:15:37 +01:00
str4d 745f5d1598
Merge pull request #607 from zcash/caching
Cache values in `VerifyingKey` that can be computed on construction
2022-06-22 21:53:32 +01:00
Sean Bowe 6b4af24a5f
Deduplicate the extra (scalar, base) pairs in MSMs. 2022-06-22 14:31:00 -06:00
Sean Bowe 6939ac47ab
Remove parallelism from within MSM scalar operations. 2022-06-22 13:41:45 -06:00
Jack Grigg 05f37ee8a6 Cache the constraint system degree in `VerifyingKey`
This means we only compute the degree in a verification context during
construction, instead of twice per proof in the permutation argument.
2022-06-22 19:33:36 +00:00
Jack Grigg 4802936c56 Cache the representative of `VerifyingKey` used in transcripts
This means we only need to `Debug`-format the `PinnedVerificationKey`
once on construction, instead of once per proof.
2022-06-22 19:25:32 +00:00
str4d f6efecc596
Merge pull request #603 from zcash/batch-verifier-return-rng
Add `BatchVerifier::finalize_and_return_rng`
2022-06-22 17:43:50 +01:00