Double up Cross-table Lookups #1556
matthiasgoergens
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
The constraints for our cross-table lookups are essentially:
Brought into purely polynomial form that becomes this quadratic equation:
However, we allow cubic constraints, thus we can do combine two lookups into one constraint check:
Or as a cubic polynomial:
However, now we are mixing up two potentially unrelated cross-table lookups.
To solve this problem, we can either only allow merging of related lookups. (I think that's what plonky2 now does?) Or, we can give every cross table lookup a unique 'tag' that identifies it. The tag is just a different field element constant for each CTL, and we add it as a 'virtual' CTL output columns, that we send through
reduce_with_powers
to getcombined
.Beta Was this translation helpful? Give feedback.
All reactions