-
Notifications
You must be signed in to change notification settings - Fork 202
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix FRI folded layers domain #368
Conversation
18fa38a
to
7ac4ae9
Compare
Unless there is a strong reason for this, I would keep it as is. I agree that it is probably more natural to define the folded domains using a "pure" square map in the case of folding factor 2, but the current implementation is equally valid and can be expressed using the same framework.
This is one of the reasons why I would like to keep it as is :). However, we can comeback to this once we have some spare capacity to update things on the VM side. |
I can't find the right way to explain what's going on though. For example, for a folding factor of 2, we have If the domain of What am I missing? |
I think you can just define the projection map to be, instead of a pure square, In more details, take the polynomial in the where and So we have in some sense a scaled even-odd decomposition of the original polynomial, but the crucial point here is that the degree bounds on both polynomials is half that of the one on the original polynomial, and moreover we have a relation linking the original evaluations to the evaluations of the two decomposition polynomials in the spirit of butterflys in FFTs. Now we can build the folded code-word as Now using the relation Putting everything together we get |
Awesome, thank you for the detailed explanation, that clears things up! |
Fixes the (implied) FRI layer domains.
For example, let
domain_size = 16
,folding_factor = 2
,then the FRI domains are
Noticeably, the domain offset is also squared - which the previous implementation did not do. The Miden VM's recursive verifier will probably need to be updated accordingly as well.
cc @Al-Kindi-0