barretenberg
barretenberg copied to clipboard
Structured polynomials
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).