Refactors GKR circuit evaluation to make it more readable. The most significant change is that children are now "added to the right" as opposed to the left - in other words, circuits can now be thought of as:
0 1
00 01 10 11
000 001 010 011 100 101 110 111
This requires us to run sumcheck from right to left (instead of left to right) in the input layer. The current implementation runs all the sumchecks from right to left.
Refactors GKR circuit evaluation to make it more readable. The most significant change is that children are now "added to the right" as opposed to the left - in other words, circuits can now be thought of as:
This requires us to run sumcheck from right to left (instead of left to right) in the input layer. The current implementation runs all the sumchecks from right to left.