We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
For a faster recursive verifier, we need to implement "barycentric evaluation". Here's Rust code for that:
pub fn barycentric_evaluate( codeword: &[XFieldElement], indeterminate: XFieldElement, ) -> XFieldElement { let root_order = codeword.len().try_into().unwrap(); let generator = BFieldElement::primitive_root_of_unity(root_order).unwrap(); let mut numerator = xfe!(0); let mut denominator = xfe!(0); let mut domain_iter_elem = bfe!(1); for code_word_elem in codeword { let domain_shift_elem = indeterminate - domain_iter_elem; let domain_over_domain_shift_elem = domain_iter_elem.lift() / domain_shift_elem; numerator += domain_over_domain_shift_elem * *code_word_elem; denominator += domain_over_domain_shift_elem; domain_iter_elem *= generator; } numerator / denominator }
See (TritonVM/triton-vm#266) for context.
The text was updated successfully, but these errors were encountered:
8f90779
Sword-Smith
No branches or pull requests
For a faster recursive verifier, we need to implement "barycentric evaluation". Here's Rust code for that:
See (TritonVM/triton-vm#266) for context.
The text was updated successfully, but these errors were encountered: