forked from zcash/halo2
-
Notifications
You must be signed in to change notification settings - Fork 132
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Remove dependency to common ConstraintSystem in the backend (#290)
* refactor: generalize ExpressionMid * refactor: move ConstraintSystem::from(ConstraintSystemV2Backend) to backend * refactor: generalize Expression type * feat: define ExpressionMid as an alias * refactor: rename ConstraintSystemV2Back to ConstraintSystemMid, GateV2Back to GateMid * refactor: use ConstraintSystemBack in halo2_backend * fix: warnings * refactor: simplify Query type * feat(backend): rewrite pk/vk serialization - Rewrite VerifyingKey and ProvingKey methods in terms of the ConstraintSystemBack so that the backend becomes independent of the Circuit trait (which belongs to the frontend) - Add `vk_read` and `pk_read` legacy functions in halo2_proofs for compatiblity. - Split the implementation of converting selectors to fixed columns into two parts: - One part just converts the ConstraintSystem, transforming the selectors into fixed columns (compressed and direct versions) - The other part transforms the assignments of selector columns into assignments of fixed columns based on the mappings calculated in part one. * feat: remove feature circuit-params from halo2_backend * wip: clean up common+backend * wip: clean up frontend * wip: clean common plonk folder * refactor: move Error to frontend * refactor: move Error to backend * refactor: clean up error types * fix: use errors instead of temporary panics * feat: annotate columns in test * fix: remove unnecessary pub, set correct SelectorsToFixed.compressed value, add safety check In selectors_to_fixed_compressed and selectors_to_fixed_direct add safety check via the ConstraintSystem.selectors_to_fixed status field such that the methods can only be called once. Calling them multiple times would lead to an invalid ConstraintSystem with unused duplicated fixed columns. * fix: ponk_api unit tests * fix: clippy warnings, common dependencies * fix: remove old TODO * chore: bump VK version * chore: remove unnecessary code * chore: remove virtual variable rules in middleware Expression * chore: remove unused evaluate_lazy, deprecate directly_convert_selectors_to_fixed
- Loading branch information
Showing
90 changed files
with
6,974 additions
and
6,209 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,4 +6,5 @@ members = [ | |
"halo2_middleware", | ||
"halo2_backend", | ||
"halo2_common", | ||
] | ||
] | ||
resolver = "2" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.