ezkl is an engine for doing inference for deep learning models and other computational graphs in a zk-snark (ZKML). Use it from Python, Javascript, or the command line.
Much like other lookups ... we can now overflow dynamic lookups to new columns.
Part of the benefit of this is to reduce memory usage of circuit that use dynamic lookups heavily (eg. xgboost).
IF a table doesn't fit in the current lookup column we flush that column to the end and push the table to the next column, and leverage a new selector over that column to constrain the lookup for the current row.
This imposes a minimum number of rows for the circuit, which is the max len of any table being looked up over.
Much like other lookups ... we can now overflow dynamic lookups to new columns.
Part of the benefit of this is to reduce memory usage of circuit that use dynamic lookups heavily (eg. xgboost).
IF a table doesn't fit in the current lookup column we flush that column to the end and push the table to the next column, and leverage a new selector over that column to constrain the lookup for the current row.
This imposes a minimum number of rows for the circuit, which is the max len of any table being looked up over.