zkllvm-blueprint
zkllvm-blueprint copied to clipboard
Circuit components definition library for zkLLVM circuit compiler
Currently we have only basic arithmetic opcodes implemented. We need as many other opcode implementations as possible.
1. Current implementation is too slow 2. Current implementation does not support dynamic lookup tables
These tests are failing for a while, I'm disabling them for now.
In int/include/nil/blueprint/components/systems/snark/plonk/flexible/colinear_checks.hpp we are dividing by value of "s", which is sometimes zero. I changed it to assignment.witness(component.W(block*5 + 8), start_row_index + row) = ((alpha + s ) * y0...
In test/mock/mocked_components.cpp and include/nil/blueprint/components/mock/mocked_components.hpp we are generating classes/functions with defines. That makes debugging impossible, even compilation errors are hard to find. The compiler does not tell me which line has...
I suggest to change constructors of "struct input_type" for all the components that are using EC points as inputs to convert an algebra zero point, which is normally {0, 1}...