Skip to content

Commit b5eeeb4

Browse files
committed
add TODO
1 parent c9c1fef commit b5eeeb4

File tree

1 file changed

+3
-31
lines changed

1 file changed

+3
-31
lines changed

crates/lookup/src/quotient_gkr.rs

Lines changed: 3 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,9 @@ where
236236

237237
let mut eq_poly_packed = pack_extension(&eq_poly);
238238

239+
// TODO for the top layer, the denomiators have a structured form: constant - index.
240+
// We can skip one EE multilication in the sumcheck computation.
241+
239242
let sum_x_packed: EFPacking<EF> = (0..n_non_zeros_numerator - quarter_len_packed)
240243
.into_par_iter()
241244
.map(|i| {
@@ -411,37 +414,6 @@ where
411414
Ok(Evaluation::new(next_point, next_claim))
412415
}
413416

414-
pub struct GKRQuotientComputation<EF> {
415-
u4_const: EF,
416-
u5_const: EF,
417-
}
418-
419-
impl<IF: ExtensionField<PF<EF>>, EF: ExtensionField<IF>> SumcheckComputation<IF, EF>
420-
for GKRQuotientComputation<EF>
421-
{
422-
fn eval(&self, point: &[IF], _: &[EF]) -> EF {
423-
// U4.U2.U3 + U5.[U0.U3 + U1.U2]
424-
self.u4_const * point[2] * point[3]
425-
+ self.u5_const * (point[0] * point[3] + point[1] * point[2])
426-
}
427-
fn degree(&self) -> usize {
428-
2
429-
}
430-
}
431-
432-
impl<EF: ExtensionField<PF<EF>>> SumcheckComputationPacked<EF> for GKRQuotientComputation<EF> {
433-
fn eval_packed_base(&self, _: &[PFPacking<EF>], _: &[EF]) -> EFPacking<EF> {
434-
todo!()
435-
}
436-
fn eval_packed_extension(&self, point: &[EFPacking<EF>], _: &[EF]) -> EFPacking<EF> {
437-
point[2] * point[3] * self.u4_const
438-
+ (point[0] * point[3] + point[1] * point[2]) * self.u5_const
439-
}
440-
fn degree(&self) -> usize {
441-
2
442-
}
443-
}
444-
445417
fn sum_quotients_2_by_2<EF: PrimeCharacteristicRing + Sync + Send + Copy>(
446418
layer: &[EF],
447419
n_non_zeros_numerator: Option<usize>,

0 commit comments

Comments
 (0)