Skip to content

Suboptimal Instruction-Specific ConstraintsΒ #339

@aszepieniec

Description

@aszepieniec

Upon skimming the result of cargo test print_number_and_degrees_of_transition_constraints_for_all_instructions -- --nocapture, 8 instructions stand out as having max degree 10 or 11. I am skeptical that these constraints must be so expensive. With the fancy technique that enabled pick and place, i.e., using an inner product with potentially shifted weight vectors, I am sure we can shrink these instructions' polynomials' degrees' maximum.

Instruction #polys max deg Degrees
pop 1 16 10 [1, 1, 1, 1, 2, 2, 2, 2, 1, 5, 5, 10, 4, 1, 1, 1]
divine 1 16 10 [1, 1, 1, 1, 2, 2, 2, 2, 1, 5, 5, 10, 4, 1, 1, 1]
read_mem 1 30 10 [1, 1, 1, 1, 2, 2, 2, 2, 1, 5, 5, 10, 10, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 1, 1]
write_mem 1 30 10 [1, 1, 1, 1, 2, 2, 2, 2, 1, 5, 5, 10, 10, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 4, 1, 1]
sponge_absorb 10 11 [1, 1, 1, 1, 1, 1, 11, 1, 1, 1]
sponge_squeeze 10 11 [1, 1, 1, 1, 1, 1, 11, 1, 1, 1]
read_io 1 16 10 [1, 1, 1, 1, 2, 2, 2, 2, 1, 5, 5, 10, 5, 4, 1, 1]
write_io 1 16 10 [1, 1, 1, 1, 2, 2, 2, 2, 1, 5, 5, 10, 5, 4, 1, 1]

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions