Commit Graph

465 Commits

Author SHA1 Message Date
Jack Grigg 6da0adb4e1 book: Refactor the multipoint opening argument section 2021-02-11 19:54:45 +00:00
Jack Grigg 91a90f1d9d book: Renumber multipoint opening challenges to match implementation 2021-02-11 19:54:39 +00:00
Jack Grigg ffa8dacaba book: Add section about vanishing argument 2021-02-11 19:54:38 +00:00
Jack Grigg 9e9a92a912 book: Add section about circuit commitments 2021-02-11 19:54:20 +00:00
Jack Grigg e666f8b966 book: Add summary and succinct description of the Halo 2 protocol 2021-02-11 19:16:08 +00:00
Jack Grigg 4aceada21a book: Re-order "Proving system" sub-sections 2021-02-10 13:06:22 +00:00
str4d 7ac44e8d53
Merge pull request #168 from zcash/book-updates
Book updates
2021-02-10 12:01:53 +13:00
Jack Grigg 425c45d96b book: Add a simple example showing how the API is used 2021-02-08 15:56:16 +00:00
Jack Grigg bfbfa80900 book: Add a comparison to BCMS20 2021-02-04 16:04:37 +00:00
ebfull f566bf7fe0
Merge pull request #145 from zcash/circuit-annotations
Circuit annotations and developer tooling
2021-02-01 12:57:39 -07:00
Jack Grigg 0a378c3d0f Require Circuit::Config implement Clone instead of Copy 2021-02-01 19:05:19 +00:00
Jack Grigg c95f0b7c0c circuit_layout: Darken the cells of the region that have been assigned to
We record every instance of a cell assignment, so that cells which are
double-assigned (which is usually a mistake) will appear darker.
2021-02-01 18:38:22 +00:00
Jack Grigg 3c1132ec59 Add halo2::dev::circuit_layout behind dev-graph feature flag
This method renders circuits as tables, showing how the various regions
within them have been layed out.
2021-02-01 18:38:20 +00:00
Jack Grigg 7dd6e65a5f Add halo2::dev::circuit_dot_graph behind dev-graph feature flag
This method renders circuits as dot graphs, to help circuit developers
understand their structure.
2021-02-01 18:38:16 +00:00
Jack Grigg 82da677add Add name field to ConstraintSystem::create_gate
The name has type `&'static str`, as gates apply to every row and thus
do not require any runtime information to name.
2021-02-01 18:38:13 +00:00
Jack Grigg bf771a7446 Add namespacing and gadget name collection to Layouter 2021-02-01 18:38:04 +00:00
Jack Grigg 60061f64fd Add name field to Layouter::assign_region 2021-02-01 18:34:24 +00:00
Jack Grigg 4c3adf59d5 Add annotations to Region::{assign_advice, assign_fixed}
This enables circuits to annotate individual cells with variable names
or similar protocol-specific metadata.
2021-02-01 18:33:25 +00:00
ebfull fb82730d85
Merge pull request #149 from zcash/transcript-blake2b
Replace DummyHash with BLAKE2b
2021-02-01 10:00:27 -07:00
therealyingtong 48bfea9782 Replace DummyHash with BLAKE2b 2021-02-02 00:53:53 +08:00
ebfull a05f48be8f
Merge pull request #143 from zcash/multiproof
Multi-proof prover
2021-02-01 09:35:38 -07:00
therealyingtong ea14d99a83 Renaming and cleanups from code review
Co-authored-by: Sean Bowe <ewillbefull@gmail.com>
2021-02-02 00:05:55 +08:00
str4d a0282e7e15
Merge pull request #159 from daira/background-update2
Further clarify notation and make sure that the discussion is correct for non-cyclic groups
2021-02-02 00:33:02 +13:00
therealyingtong a00d7c2fa6 Cleanups from code review
Co-authored-by: Kris Nuttycombe <kris.nuttycombe@gmail.com>
Co-authored-by: Sean Bowe <ewillbefull@gmail.com>
2021-01-31 11:48:32 +08:00
therealyingtong de86391f0e Update test to pass multiple ConcreteCircuits 2021-01-31 11:48:32 +08:00
therealyingtong def65609b1 Refactor PLONK verifier 2021-01-31 11:45:40 +08:00
therealyingtong 02b5b8442b Refactor PLONK prover 2021-01-31 11:45:40 +08:00
ebfull 5f89227cdd
Merge pull request #135 from zcash/serialize-params
Serialize params
2021-01-30 11:43:55 -07:00
Daira Hopwood 20f33f427f Further clarify notation and make sure that the discussion is correct for non-cyclic groups.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-01-30 16:16:22 +00:00
Daira Hopwood fc0bddad8a
Merge pull request #158 from daira/background-update
Improvements to background section
2021-01-30 03:25:24 +00:00
Daira Hopwood 13f406acc1
Fix link 2021-01-30 03:24:35 +00:00
Daira Hopwood 7a5915ab09
Apply some suggestions from code review
Co-authored-by: str4d <thestr4d@gmail.com>
2021-01-30 02:49:40 +00:00
Daira Hopwood cda768aa00 Improvements to background section:
* describe groups in general, rather than via the example of F_p^*
* explain the isomorphism between group elements and scalars, and how it is useful
* corrections and pedantry :-)

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-01-30 01:43:24 +00:00
str4d 7448f9b930
Merge pull request #156 from zcash/clippy-fixes
Clippy lint fixes
2021-01-30 13:14:46 +13:00
str4d f437bffc97
Merge pull request #137 from zcash/layouter-strategy
Simple layouter strategy to track column usage
2021-01-30 13:06:16 +13:00
Jack Grigg 8b2082877e Remove unnecessary let bindings 2021-01-29 23:43:13 +00:00
str4d 3f96821d83
Merge pull request #155 from zcash/eli15-template
Add an issue template for improving the Halo 2 book
2021-01-30 12:40:20 +13:00
Jack Grigg d84a4cbbfc book: Add a link from "Background Material" to the issue tracker
This will hopefully encourage readers to submit feedback as they read
the book, enabling us to catch things that could be explained better.
2021-01-29 20:59:39 +00:00
Jack Grigg db930f706a Add an issue template for improving the Halo 2 book 2021-01-29 20:57:50 +00:00
Daira Hopwood 723ea8feac Clarifications for background, from pairing with Kris.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-01-29 19:51:48 +00:00
therealyingtong 2255fbec8b Make RegionShape struct public 2021-01-28 10:55:17 +08:00
therealyingtong faf5da15c9 Track column usage in RegionShape.
Co-authored-by: Jack Grigg <jack@electriccoin.co>
2021-01-28 10:55:02 +08:00
therealyingtong ffdd739f85 Only write k in Params; calculate n when reading
Co-authored-by: Jack Grigg <jack@electriccoin.co>
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2021-01-24 08:07:30 +08:00
therealyingtong e0f9fe1dcf Clippy fixes + address review comments
Co-authored-by: Jack Grigg <jack@electriccoin.co>
2021-01-24 08:07:30 +08:00
therealyingtong 58479fbcc3 Refactor keygen to generate pk from vk. 2021-01-24 08:07:30 +08:00
therealyingtong b9737ada93 Add serialization support for polycommit Params. 2021-01-24 08:05:58 +08:00
Sean Bowe ba591c3b39 Add serialization support for PLONK verifying keys. 2021-01-24 08:05:58 +08:00
Sean Bowe a0d7998785 Add implementations of read/write to CurveAffine and FieldExt. 2021-01-24 08:05:58 +08:00
Sean Bowe d9d20bfe36 Break out domain creation logic into separate method. 2021-01-24 08:04:13 +08:00
str4d 963a91464a
Merge pull request #120 from daira/sqrt_ratio
Add sqrt_ratio implementation.
2021-01-24 07:58:14 +13:00