-
Notifications
You must be signed in to change notification settings - Fork 496
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Implement Column annotations for MockProver debugging #706
base: main
Are you sure you want to change the base?
Commits on Jan 10, 2023
-
feat: Add
name_column
toLayouter
&RegionLayouter
This adds the trait-associated function `name_column` in order to enable the possibility of the Layouter to store annotations aobut the colums. This function does nothing for all the trait implementors (V1, SimpleFloor, Assembly....) except for the `MockProver`. Which is responsible of storing a map that links within a `Region` index, the `column::Metadata` to the annotation `String`.
Configuration menu - View commit details
-
Copy full SHA for e620642 - Browse repository at this point
Copy the full SHA e620642View commit details -
Configuration menu - View commit details
-
Copy full SHA for c79040e - Browse repository at this point
Copy the full SHA c79040eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4a470fe - Browse repository at this point
Copy the full SHA 4a470feView commit details -
feat: Add lookup column annotations
This adds the fn `annotate_lookup_column` for `ConstraintSystem` which allows to carry annotations for the lookup columns declared for a circuit within a CS.
Configuration menu - View commit details
-
Copy full SHA for 81a8c7b - Browse repository at this point
Copy the full SHA 81a8c7bView commit details -
feat: Add Lookup TableColumn annotations
This allows to annotate lookup `TableColumn`s and print it's annotation within the `assert_satisfied` fn. This has required to change the `ConstraintSystem::lookup_annotations` to have keys as `metadata::Column` rather than `usize` as otherwise it's impossible within the `emitter` scope to distinguish between regular advice columns (local to the Region) and fixed columns which come from `TableColumn`s.
Configuration menu - View commit details
-
Copy full SHA for 68aeaf4 - Browse repository at this point
Copy the full SHA 68aeaf4View commit details -
fix: Customly derive PartialEq for metadata::Region
This allows to ignore the annotation map of the metadata::Region so that is easier to match against `VerifyFailure` errors in tests.
Configuration menu - View commit details
-
Copy full SHA for a2e8ada - Browse repository at this point
Copy the full SHA a2e8adaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5b31fdd - Browse repository at this point
Copy the full SHA 5b31fddView commit details -
fix: Update Debug & Display for VerifyFailure
It was necessary to improve the `prover.verify` output also. To do so, this required auxiliary types which are obfuscated to any other part of the lib but that are necessary in order to be able to inject the Column names inside of the `Column` section itself. This also required to re-implement manually `Debug` and `Display` for this enum. This closes zcash#705
Configuration menu - View commit details
-
Copy full SHA for c7aeb66 - Browse repository at this point
Copy the full SHA c7aeb66View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3882cf9 - Browse repository at this point
Copy the full SHA 3882cf9View commit details -
Configuration menu - View commit details
-
Copy full SHA for c8d9244 - Browse repository at this point
Copy the full SHA c8d9244View commit details -
Address some leftover TO-DOs & apply code simplifications for nested if let Some() blocks.
Configuration menu - View commit details
-
Copy full SHA for 3b70fe7 - Browse repository at this point
Copy the full SHA 3b70fe7View commit details -
fix: StackOverflow caused by Debug recursive call
For the `VerifyFailure::ConstraintNotSatisfied` case we want to customly impl the `Debug` call so that we can print the annotations within the `VirtualCell`s. If we hit any other case of `VerifyFailure` we basically send it to print and be handled by (ideally Display). The issue is that the call was forwarded to `Debug` impl again which ended up in an infinite recursive call to the `Debug` method. See: privacy-scaling-explorations#109 (comment) This is solved by calling `Display` if we hit a case that is not `ConstraintNotSatisfied`.
Configuration menu - View commit details
-
Copy full SHA for 22e3504 - Browse repository at this point
Copy the full SHA 22e3504View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3cfbc09 - Browse repository at this point
Copy the full SHA 3cfbc09View commit details
Commits on Jan 16, 2023
-
Configuration menu - View commit details
-
Copy full SHA for f5dd587 - Browse repository at this point
Copy the full SHA f5dd587View commit details
Commits on Feb 27, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 23a4051 - Browse repository at this point
Copy the full SHA 23a4051View commit details -
Configuration menu - View commit details
-
Copy full SHA for 120bc23 - Browse repository at this point
Copy the full SHA 120bc23View commit details -
Configuration menu - View commit details
-
Copy full SHA for ac194ac - Browse repository at this point
Copy the full SHA ac194acView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6c38b03 - Browse repository at this point
Copy the full SHA 6c38b03View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5f956cc - Browse repository at this point
Copy the full SHA 5f956ccView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6505547 - Browse repository at this point
Copy the full SHA 6505547View commit details -
Configuration menu - View commit details
-
Copy full SHA for 084a64b - Browse repository at this point
Copy the full SHA 084a64bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 83c0c72 - Browse repository at this point
Copy the full SHA 83c0c72View commit details