zkllvm-blueprint
zkllvm-blueprint copied to clipboard
Circuit components definition library for zkLLVM circuit compiler
the verification circuit for placeholder proof system can be verified using placeholder proof system similar to Nova's recursive proof approach
Fixing the `blueprint_algebra_fields_plonk_non_native_multiplication_test` failing. Part of #169.
Currently, sha256 component accepts 4 pallas curve points (blocks) as an input. It should accept any input size
Currently, different types of assertions are used across blueprint. In zkLLVM we develop different [asserts](https://github.com/NilFoundation/zkllvm-assigner/blob/master/include/nil/blueprint/asserts.hpp) and profiliers. It makes sense to reuse them and normalize the tests.
SHA256 component lacks copy constraints. It has component table similar to SHA512.
Currently, the tests are usually done with the first columns: from 0 up to the amount of witnesses. This doesn't catch the case where instead of using the component's column...
This is an easy error to make, and current tests cannot catch this; also it's difficult to catch during review. Output variables should be checked in the test bench. Gate...
For some tasks, including parallelization, we need to add many components to circuit and generate assignments for them independently or even at the same time. Since it's not possible with...