Skip to content

Commit 67896e7

Browse files
committed
wip14
1 parent db585cc commit 67896e7

File tree

3 files changed

+22
-19
lines changed

3 files changed

+22
-19
lines changed

extensions/native/circuit/src/sumcheck/air.rs

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -366,12 +366,15 @@ impl<AB: InteractionBuilder> Air<AB> for NativeSumcheckAir {
366366
)
367367
.eval(builder, prod_row);
368368

369-
// TODO: reduce the degree
370-
// builder.when(prod_row * within_round_limit).assert_eq(
371-
// prod_row_specific.data_ptr,
372-
// (prod_nested_len * (curr_prod_n - AB::F::ONE) + prod_spec_inner_inner_len * round)
373-
// * AB::F::from_canonical_usize(EXT_DEG),
374-
// );
369+
// prod_row * within_round_limit =
370+
// prod_in_round_evaluation + prod_next_round_evaluation
371+
builder
372+
.when(prod_in_round_evaluation + prod_next_round_evaluation)
373+
.assert_eq(
374+
prod_row_specific.data_ptr,
375+
(prod_nested_len * (curr_prod_n - AB::F::ONE) + prod_spec_inner_inner_len * round)
376+
* AB::F::from_canonical_usize(EXT_DEG),
377+
);
375378
builder.assert_eq(
376379
prod_row * within_round_limit * in_round,
377380
prod_in_round_evaluation,
@@ -466,12 +469,16 @@ impl<AB: InteractionBuilder> Air<AB> for NativeSumcheckAir {
466469
)
467470
.eval(builder, logup_row);
468471

469-
// TODO: reduce the degree
470-
// builder.when(logup_row * within_round_limit).assert_eq(
471-
// logup_row_specific.data_ptr,
472-
// (logup_nested_len * (curr_logup_n - AB::F::ONE) + logup_spec_inner_inner_len * round)
473-
// * AB::F::from_canonical_usize(EXT_DEG),
474-
// );
472+
// logup_row * within_round_limit =
473+
// logup_in_round_evaluation + logup_next_round_evaluation
474+
builder
475+
.when(logup_in_round_evaluation + logup_next_round_evaluation)
476+
.assert_eq(
477+
logup_row_specific.data_ptr,
478+
(logup_nested_len * (curr_logup_n - AB::F::ONE)
479+
+ logup_spec_inner_inner_len * round)
480+
* AB::F::from_canonical_usize(EXT_DEG),
481+
);
475482
builder.assert_eq(
476483
logup_row * within_round_limit * in_round,
477484
logup_in_round_evaluation,

extensions/native/circuit/src/sumcheck/chip.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -357,8 +357,8 @@ where
357357
if round < max_round - 1 {
358358
logup_row.within_round_limit = F::ONE;
359359
let start = calculate_3d_ext_idx(
360-
prod_specs_inner_inner_len,
361-
prod_specs_inner_len,
360+
logup_specs_inner_inner_len,
361+
logup_specs_inner_len,
362362
i as u32,
363363
round,
364364
0,

extensions/native/compiler/src/ir/sumcheck.rs

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,4 @@
1-
use openvm_native_compiler_derive::iter_zip;
2-
use openvm_stark_backend::p3_field::FieldAlgebra;
3-
4-
use super::{Array, ArrayLike, Builder, Config, DslIr, Ext, Felt, MemIndex, Ptr, Usize, Var};
5-
use crate::ir::Variable;
1+
use super::{Array, Builder, Config, DslIr, Ext, Usize};
62

73
impl<C: Config> Builder<C> {
84
/// Extends native VM ability to calculate the evaluation for a sumcheck layer

0 commit comments

Comments
 (0)