AztecProtocol / barretenberg

Apache License 2.0
129 stars 78 forks source link

Structured polynomials #958

Open ledwards2225 opened 3 months ago

ledwards2225 commented 3 months ago

If we naively construct polynomials based on a structured trace, we will pay for the full size (e.g. 2^20) in terms of memory when in practice most entries will be zero (i.e. in the unused portion of each block). One way to avoid this is to implement a more intelligent class that behaves like a structured polynomial but has the memory footprint of its unstructured counterpart. Roughly speaking this can be achieved by letting the class know the structured ranges over which it takes the value 0 (or some other constant).