File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -463,50 +463,23 @@ pub fn deepfold_commit<const LOG_2_PATH_LENGTH: usize, F: FftField>(
463463/// 2 and 3.
464464fn evaluate_poly_from_evals < F : Field > ( evals : [ F ; 4 ] , eval_at : F ) -> F {
465465 // First compute the coefficients
466- let mut coefficients = [ F :: ZERO ; 4 ] ;
467- coefficients[ 0 ] = evals[ 0 ] ;
468- coefficients[ 1 ] = evals
469- . iter ( )
470- . zip (
471- [
472- -F :: from ( 11 ) / F :: from ( 6 ) ,
473- F :: from ( 3 ) ,
474- -F :: from ( 3 ) / F :: from ( 2 ) ,
475- F :: ONE / F :: from ( 3 ) ,
476- ]
477- . iter ( ) ,
478- )
479- . map ( |( a, b) | * a * b)
480- . sum ( ) ;
481- coefficients[ 2 ] = evals
482- . iter ( )
483- . zip (
484- [
485- F :: ONE ,
486- -F :: from ( 5 ) / F :: from ( 2 ) ,
487- F :: from ( 2 ) ,
488- -F :: ONE / F :: from ( 2 ) ,
489- ]
490- . iter ( ) ,
466+ evals[ 0 ]
467+ + eval_at * (
468+ evals[ 0 ] * ( -F :: from ( 11 ) / F :: from ( 6 ) )
469+ + evals[ 1 ] * F :: from ( 3 )
470+ + evals[ 2 ] * ( -F :: from ( 3 ) / F :: from ( 2 ) )
471+ + evals[ 3 ] * ( F :: ONE / F :: from ( 3 ) )
472+ + eval_at * (
473+ evals[ 0 ]
474+ + evals[ 1 ] * ( -F :: from ( 5 ) / F :: from ( 2 ) )
475+ + evals[ 2 ] + evals[ 2 ]
476+ + evals[ 3 ] * ( -F :: ONE / F :: from ( 2 ) )
477+ + eval_at * (
478+ ( evals[ 1 ] - evals[ 2 ] ) * ( F :: ONE / F :: from ( 2 ) )
479+ + ( evals[ 3 ] - evals[ 0 ] ) * ( F :: ONE / F :: from ( 6 ) )
480+ )
491481 )
492- . map ( |( a, b) | * a * b)
493- . sum ( ) ;
494- coefficients[ 3 ] = evals
495- . iter ( )
496- . zip (
497- [
498- -F :: ONE / F :: from ( 6 ) ,
499- F :: ONE / F :: from ( 2 ) ,
500- -F :: ONE / F :: from ( 2 ) ,
501- F :: ONE / F :: from ( 6 ) ,
502- ]
503- . iter ( ) ,
504- )
505- . map ( |( a, b) | * a * b)
506- . sum ( ) ;
507-
508- coefficients[ 0 ]
509- + eval_at * ( coefficients[ 1 ] + eval_at * ( coefficients[ 2 ] + eval_at * coefficients[ 3 ] ) )
482+ )
510483}
511484
512485pub fn compute_mask_value < F : Field > ( coefficients : & [ F ] , point : & [ F ] , r_y : F ) -> F {
You can’t perform that action at this time.
0 commit comments