The blacksmith who crafts materials into verifiers.
This repo contains tool for generating move codes
Strategy:
-
read the sol file
-
extract all comments
-
parse comment
- trim the last
.
- memory layout
// [0x0, 0x20) - periodic_column/pedersen/points/x
->periodic_column_pedersen_points_x
:0x0
- add to memory registry
- assignment
// Denominator for constraints: 'cpu/decode/opcode_range_check/bit', 'diluted_check/permutation/step0', 'diluted_check/step'
- extract the denominator for constraints
// domains[0] = point^trace_length - 1
- parse the expression
point^trace_length - 1
to AST - generate code for the expression
- add to memory registry
- parse the expression
// Constraint expression for cpu/update_registers/update_pc/tmp0: column8_row2 - cpu__decode__opcode_range_check__bit_9 * column3_row9.
- compute the constraint expression
-
- numerator
-
- denominator
- trim the last
-
generate new code
-
write to file
bug: current denominator is not correct