From 1bf19865b307ff22363d4f9746662790d1fdf62a Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Tue, 16 Sep 2025 20:01:22 -0400 Subject: [PATCH 01/24] Adjust verifier program for new opcode --- Cargo.lock | 18 ----- Cargo.toml | 20 ++++-- src/e2e/mod.rs | 2 + src/tower_verifier/program.rs | 119 ++++++++++++++-------------------- src/zkvm_verifier/verifier.rs | 2 + 5 files changed, 66 insertions(+), 95 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ec0153f..fabfca9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1740,7 +1740,6 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1753,7 +1752,6 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "backtrace", "cfg-if", @@ -1784,7 +1782,6 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "itertools 0.14.0", "quote", @@ -1794,7 +1791,6 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1809,7 +1805,6 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "itertools 0.14.0", "quote", @@ -1819,7 +1814,6 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "proc-macro2", "quote", @@ -1829,7 +1823,6 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1846,7 +1839,6 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "quote", "syn 2.0.106", @@ -1855,7 +1847,6 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1882,7 +1873,6 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1904,7 +1894,6 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "quote", "syn 2.0.106", @@ -1913,7 +1902,6 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1937,7 +1925,6 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "libm", "openvm-custom-insn", @@ -1947,7 +1934,6 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "derivative", "lazy_static", @@ -1964,7 +1950,6 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1987,7 +1972,6 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "openvm-custom-insn", "p3-field", @@ -1997,7 +1981,6 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2075,7 +2058,6 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git#9b7591dce3c0afc1dbe9502499cd670e864e47a6" dependencies = [ "elf", "eyre", diff --git a/Cargo.toml b/Cargo.toml index 752e401..5afeb31 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,12 +4,20 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } -openvm-circuit = { git = "https://github.com/scroll-tech/openvm.git", default-features = false, features = ["bench-metrics"] } -openvm-native-circuit = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } -openvm-native-compiler = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } -openvm-native-compiler-derive = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } -openvm-native-recursion = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } +# openvm = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } +# openvm-circuit = { git = "https://github.com/scroll-tech/openvm.git", default-features = false, features = ["bench-metrics"] } +# openvm-native-circuit = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } +# openvm-native-compiler = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } +# openvm-native-compiler-derive = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } +# openvm-native-recursion = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } + +openvm = { path = "../openvm-scroll-tech/crates/toolchain/openvm", default-features = false } +openvm-circuit = { path = "../openvm-scroll-tech/crates/vm", default-features = false, features = ["bench-metrics"] } +openvm-native-circuit = { path = "../openvm-scroll-tech/extensions/native/circuit", default-features = false } +openvm-native-compiler = { path = "../openvm-scroll-tech/extensions/native/compiler", default-features = false } +openvm-native-compiler-derive = { path = "../openvm-scroll-tech/extensions/native/compiler/derive", default-features = false } +openvm-native-recursion = { path = "../openvm-scroll-tech/extensions/native/recursion", default-features = false } + openvm-stark-backend = { git = "https://github.com/openvm-org/stark-backend.git", tag = "v1.1.1", default-features = false } openvm-stark-sdk = { git = "https://github.com/openvm-org/stark-backend.git", tag = "v1.1.1", default-features = false } diff --git a/src/e2e/mod.rs b/src/e2e/mod.rs index 6bb6908..f70b814 100644 --- a/src/e2e/mod.rs +++ b/src/e2e/mod.rs @@ -403,6 +403,7 @@ mod tests { println!("=> segment {:?} metrics: {:?}", i, seg.metrics); } + /* _debug: temp disable let poseidon2_max_constraint_degree = 3; let log_blowup = 1; @@ -429,6 +430,7 @@ mod tests { for proof in proofs { verify_single(&vm.engine, &pk.get_vk(), &proof).expect("Verification failed"); } + */ } #[test] diff --git a/src/tower_verifier/program.rs b/src/tower_verifier/program.rs index 4b2d101..ae13752 100644 --- a/src/tower_verifier/program.rs +++ b/src/tower_verifier/program.rs @@ -7,6 +7,7 @@ use crate::tower_verifier::binding::IOPProverMessageVecVariable; use crate::transcript::transcript_observe_label; use crate::zkvm_verifier::binding::TowerProofInputVariable; use ceno_zkvm::scheme::constants::NUM_FANIN; +use itertools::izip; use openvm_native_compiler::prelude::*; use openvm_native_compiler_derive::iter_zip; use openvm_native_recursion::challenger::{ @@ -318,6 +319,9 @@ pub fn verify_tower_proof( eval: initial_claim, }; + let next_layer_evals_output_len: Usize = builder.eval(Usize::from(1) + num_prod_spec.clone() + Usize::from(2) * num_logup_spec.clone()); + let next_layer_evals: Array> = builder.dyn_array(next_layer_evals_output_len); + builder .range(0, op_range.clone()) .for_each(|i_vec, builder| { @@ -452,8 +456,7 @@ pub fn verify_tower_proof( builder.assert_ext_eq(expected_evaluation, sub_e); builder.cycle_tracker_end("check expected evaluation"); - // _debug - // builder.cycle_tracker_start("derive next layer's expected sum"); + builder.cycle_tracker_start("derive next layer's expected sum"); // derive single eval // rt' = r_merge || rt // r_merge.len() == ceil_log2(num_product_fanin) @@ -465,7 +468,6 @@ pub fn verify_tower_proof( let c1: Ext<::F, ::EF> = builder.eval(one - r_merge.clone()); let c2: Ext<::F, ::EF> = builder.eval(r_merge.clone()); - let coeffs = vec![c1, c2]; let rt_prime = extend(builder, &sub_rt, &r_merge); // _debug @@ -477,15 +479,37 @@ pub fn verify_tower_proof( builder.assign(&alpha, new_alpha); builder.assign(&alpha_acc, zero + one); - let next_round = builder.eval_expr(round_var + RVar::from(1)); + // Use native opcode + // [round_var, num_prod_spec, num_logup_spec, num_variables] + let input_ctx_len: Usize = Usize::Var(builder.uninit()); + builder.assign(&input_ctx_len, Usize::from(8) + num_variables_len.clone()); + let input_ctx: Array> = builder.dyn_array(input_ctx_len); + + builder.set(&input_ctx, 0, round_var); + builder.set(&input_ctx, 1, num_prod_spec.clone()); + builder.set(&input_ctx, 2, num_logup_spec.clone()); + builder.set(&input_ctx, 3, Usize::from(proof.prod_specs_eval.inner_length)); + builder.set(&input_ctx, 4, Usize::from(proof.prod_specs_eval.inner_inner_length)); + builder.set(&input_ctx, 5, Usize::from(proof.logup_specs_eval.inner_length)); + builder.set(&input_ctx, 6, Usize::from(proof.logup_specs_eval.inner_inner_length)); + + let input_ctx_variables_slice = input_ctx.slice(builder, 8, input_ctx.len()); + iter_zip!(builder, input_ctx_variables_slice, num_variables).for_each(|ptr_vec, builder| { + let n_v = builder.iter_ptr_get(&num_variables, ptr_vec[1]); + builder.iter_ptr_set(&input_ctx_variables_slice, ptr_vec[0], n_v); + }); + + let challenges: Array> = builder.dyn_array(3); + builder.set(&challenges, 0, alpha.clone()); + builder.set(&challenges, 1, c1.clone()); + builder.set(&challenges, 2, c2.clone()); + + builder.sumcheck_layer_eval(input_ctx, challenges, &proof.prod_specs_eval.data, &proof.logup_specs_eval.data, &next_layer_evals); - let next_prod_spec_evals: Ext<::F, ::EF> = - builder.eval(zero + zero); // simple trick to avoid AddEI + let next_round = builder.eval_expr(round_var + RVar::from(1)); builder .range(0, num_prod_spec.clone()) .for_each(|i_vec, builder| { - // _debug - // builder.cycle_tracker_start("derive next layer for prod specs"); let spec_index = i_vec[0]; let skip = builder.get(&should_skip, spec_index.clone()); let max_round = builder.get(&num_variables, spec_index.clone()); @@ -493,23 +517,12 @@ pub fn verify_tower_proof( // now skip is 0 if and only if current round_var is smaller than round_limit. builder.if_eq(skip, var_zero.clone()).then(|builder| { - let prod_round_slice = proof.prod_specs_eval.get_inner( - builder, - spec_index.variable(), - round_var.variable(), - ); - let evals = fixed_dot_product(builder, &coeffs, &prod_round_slice, zero); - - builder.if_ne(next_round, round_limit).then_or_else( - |builder| { - let new_subsum: Ext = builder.eval(evals * alpha_acc); - builder.assign( - &next_prod_spec_evals, - next_prod_spec_evals + new_subsum, - ); - }, - // update point and eval only for last layer + + builder.if_eq(next_round, round_limit).then( |builder| { + let evals_idx: Usize = builder.eval(spec_index + Usize::from(1)); + let evals = builder.get(&next_layer_evals, evals_idx); + let point_and_eval: PointAndEvalVariable = builder.eval(PointAndEvalVariable { point: PointVariable { @@ -522,25 +535,17 @@ pub fn verify_tower_proof( spec_index, point_and_eval, ); - }, + } ); }); - - builder.assign(&alpha_acc, alpha_acc * alpha.clone()); - // _debug - // builder.cycle_tracker_end("derive next layer for prod specs"); }); - let next_logup_spec_evals: Ext<::F, ::EF> = - builder.eval(zero + zero); let logup_num_variables_slice = num_variables.slice(builder, num_prod_spec.clone(), num_variables_len.clone()); builder .range(0, num_logup_spec.clone()) .for_each(|i_vec, builder| { - // _debug - // builder.cycle_tracker_start("derive next layer for logup specs"); let spec_index = i_vec[0]; let max_round = builder.get(&logup_num_variables_slice, spec_index); let round_limit: RVar = builder.eval_expr(max_round - RVar::from(1)); @@ -548,41 +553,15 @@ pub fn verify_tower_proof( builder.eval(spec_index.variable() + num_prod_spec.get_var()); let skip = builder.get(&should_skip, idx); - let alpha_numerator: Ext = builder.eval(alpha_acc * one); - builder.assign(&alpha_acc, alpha_acc * alpha.clone()); - let alpha_denominator: Ext = builder.eval(alpha_acc * one); - builder.assign(&alpha_acc, alpha_acc * alpha.clone()); - // now skip is 0 if and only if current round_var is smaller than round_limit. builder.if_eq(skip, var_zero).then(|builder| { - let prod_round_slice = proof.logup_specs_eval.get_inner( - builder, - spec_index.variable(), - round_var.variable(), - ); - let p1 = builder.get(&prod_round_slice, 0); - let p2 = builder.get(&prod_round_slice, 1); - let q1 = builder.get(&prod_round_slice, 2); - let q2 = builder.get(&prod_round_slice, 3); - - let p_eval: Ext<::F, ::EF> = - builder.eval(zero + zero); - let q_eval: Ext<::F, ::EF> = - builder.eval(zero + zero); - builder.assign(&p_eval, p1 * coeffs[0] + p2 * coeffs[1]); - builder.assign(&q_eval, q1 * coeffs[0] + q2 * coeffs[1]); - - builder.if_ne(next_round, round_limit).then_or_else( - |builder| { - builder.assign( - &next_logup_spec_evals, - next_logup_spec_evals - + alpha_numerator * p_eval - + alpha_denominator * q_eval, - ); - }, - // update point and eval only for last layer + builder.if_eq(next_round, round_limit).then( |builder| { + let p_idx: Usize = builder.eval(idx + Usize::from(1)); + let q_idx: Usize = builder.eval(idx + Usize::from(1) + num_logup_spec.clone()); + let p_eval = builder.get(&next_layer_evals, p_idx); + let q_eval = builder.get(&next_layer_evals, q_idx); + let p_eval: PointAndEvalVariable = builder.eval(PointAndEvalVariable { point: PointVariable { @@ -599,19 +578,17 @@ pub fn verify_tower_proof( }); builder.set_value(&logup_spec_p_point_n_eval, spec_index, p_eval); builder.set_value(&logup_spec_q_point_n_eval, spec_index, q_eval); - }, + } ); }); - // _debug - // builder.cycle_tracker_end("derive next layer for logup specs"); }); + let output_eval = builder.get(&next_layer_evals, 0); builder.assign(&curr_pt, rt_prime.clone()); - builder.assign(&curr_eval, next_prod_spec_evals + next_logup_spec_evals); + builder.assign(&curr_eval, output_eval); builder.assign(&round, round + C::F::ONE); - // _debug - // builder.cycle_tracker_end("derive next layer's expected sum"); + builder.cycle_tracker_end("derive next layer's expected sum"); builder.assign( &next_rt, diff --git a/src/zkvm_verifier/verifier.rs b/src/zkvm_verifier/verifier.rs index 4eb24b4..67b90e1 100644 --- a/src/zkvm_verifier/verifier.rs +++ b/src/zkvm_verifier/verifier.rs @@ -360,6 +360,7 @@ pub fn verify_zkvm_proof>( }); } + /* _debug builder.assert_usize_eq(num_chips_have_fixed, Usize::from(num_fixed_opening)); builder.assert_eq::>(num_chips_verified, chip_indices.len()); @@ -435,6 +436,7 @@ pub fn verify_zkvm_proof>( // logup check let zero: Ext = builder.constant(C::EF::ZERO); builder.assert_ext_eq(logup_sum, zero); + */ } pub fn verify_opcode_proof( From ac2203303a12ecbc94545122c39cb2ce9276884c Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Wed, 17 Sep 2025 18:16:44 -0400 Subject: [PATCH 02/24] Replace expected sum --- src/tower_verifier/program.rs | 129 ++++++++++------------------------ 1 file changed, 38 insertions(+), 91 deletions(-) diff --git a/src/tower_verifier/program.rs b/src/tower_verifier/program.rs index ae13752..55113aa 100644 --- a/src/tower_verifier/program.rs +++ b/src/tower_verifier/program.rs @@ -352,105 +352,55 @@ pub fn verify_tower_proof( builder.cycle_tracker_start("check expected evaluation"); let eq_e = eq_eval(builder, &out_rt, &sub_rt, one, zero); - let expected_evaluation: Ext = builder.eval(zero + zero); - let alpha_acc: Ext = builder.eval(zero + one); + let input_ctx_len: Usize = Usize::Var(builder.uninit()); + let num_variables_len = num_variables.len(); + builder.assign(&input_ctx_len, Usize::from(8) + num_variables_len.clone()); + let input_ctx: Array> = builder.dyn_array(input_ctx_len); - builder - .range(0, num_prod_spec.clone()) - .for_each(|i_vec, builder| { - // _debug - // builder.cycle_tracker_start("accumulate expected eval for prod specs"); - let spec_index = i_vec[0]; - let skip = builder.get(&should_skip, spec_index.clone()); - let max_round = builder.get(&num_variables, spec_index); - let round_limit: RVar = builder.eval_expr(max_round - RVar::from(1)); + builder.set(&input_ctx, 0, round_var); + builder.set(&input_ctx, 1, num_prod_spec.clone()); + builder.set(&input_ctx, 2, num_logup_spec.clone()); + builder.set(&input_ctx, 3, Usize::from(proof.prod_specs_eval.inner_length)); + builder.set(&input_ctx, 4, Usize::from(proof.prod_specs_eval.inner_inner_length)); + builder.set(&input_ctx, 5, Usize::from(proof.logup_specs_eval.inner_length)); + builder.set(&input_ctx, 6, Usize::from(proof.logup_specs_eval.inner_inner_length)); + builder.set(&input_ctx, 7, Usize::from(1)); - let prod: Ext = builder.eval(zero + zero); + let input_ctx_variables_slice = input_ctx.slice(builder, 8, input_ctx.len()); + iter_zip!(builder, input_ctx_variables_slice, num_variables).for_each(|ptr_vec, builder| { + let n_v = builder.iter_ptr_get(&num_variables, ptr_vec[1]); + builder.iter_ptr_set(&input_ctx_variables_slice, ptr_vec[0], n_v); + }); - // invariant: skip == 0 implies previous round_var is smaller than round_limit. - // - // if skip == 0 and current round_var is also not equal to round_limit, - // then we know round_var is also smaller than round_limit. - builder.if_eq(skip, var_zero.clone()).then(|builder| { - builder.if_ne(round_var, round_limit).then_or_else( - |builder| { - let prod_round_slice = proof.prod_specs_eval.get_inner( - builder, - spec_index.variable(), - round_var.variable(), - ); - builder.assign(&prod, one * one); - for j in 0..NUM_FANIN { - let prod_j = builder.get(&prod_round_slice, j); - builder.assign(&prod, prod * prod_j); - } - }, - |builder| { - builder.set_value(&should_skip, spec_index, var_one.clone()); - }, - ); - }); + let challenges: Array> = builder.dyn_array(3); + builder.set(&challenges, 0, alpha.clone()); - builder.assign(&expected_evaluation, expected_evaluation + alpha_acc * prod); - builder.assign(&alpha_acc, alpha_acc * alpha.clone()); - // _debug - // builder.cycle_tracker_end("accumulate expected eval for prod specs"); - }); + builder.sumcheck_layer_eval(&input_ctx, &challenges, &proof.prod_specs_eval.data, &proof.logup_specs_eval.data, &next_layer_evals); + let expected_evaluation = builder.get(&next_layer_evals, 0); - let num_variables_len = num_variables.len(); - let logup_num_variables_slice = - num_variables.slice(builder, num_prod_spec.clone(), num_variables_len.clone()); - builder - .range(0, num_logup_spec.clone()) - .for_each(|i_vec, builder| { - // _debug - // builder.cycle_tracker_start("accumulate expected eval for logup specs"); - let spec_index = i_vec[0]; + - let alpha_numerator: Ext<::F, ::EF> = - builder.eval(alpha_acc * one); - builder.assign(&alpha_acc, alpha_acc * alpha); - let alpha_denominator: Ext = builder.eval(alpha_acc * one); - builder.assign(&alpha_acc, alpha_acc * alpha); - let idx: Var = - builder.eval(spec_index.variable() + num_prod_spec.get_var()); - let skip = builder.get(&should_skip, idx); - let max_round = builder.get(&logup_num_variables_slice, spec_index); - let round_limit: RVar = builder.eval_expr(max_round - RVar::from(1)); - let prod: Ext = builder.eval(zero + zero); - builder.if_eq(skip, var_zero).then(|builder| { - builder.if_ne(round_var, round_limit).then_or_else( - |builder| { - let prod_round_slice = proof.logup_specs_eval.get_inner( - builder, - spec_index.variable(), - round_var.variable(), - ); - let p1 = builder.get(&prod_round_slice, 0); - let p2 = builder.get(&prod_round_slice, 1); - let q1 = builder.get(&prod_round_slice, 2); - let q2 = builder.get(&prod_round_slice, 3); - builder.assign( - &prod, - alpha_numerator * (p1 * q2 + p2 * q1) - + alpha_denominator * (q1 * q2), - ); - }, - |builder| { - builder.set_value(&should_skip, idx, var_one.clone()); - }, - ); - }); - builder.assign(&expected_evaluation, expected_evaluation + prod); - // _debug - // builder.cycle_tracker_end("accumulate expected eval for logup specs"); - }); + + + + + + + + + + + + + + + builder.assign(&expected_evaluation, expected_evaluation * eq_e); builder.assert_ext_eq(expected_evaluation, sub_e); @@ -477,10 +427,8 @@ pub fn verify_tower_proof( transcript_observe_label(builder, challenger, b"combine subset evals"); let new_alpha = challenger.sample_ext(builder); builder.assign(&alpha, new_alpha); - builder.assign(&alpha_acc, zero + one); // Use native opcode - // [round_var, num_prod_spec, num_logup_spec, num_variables] let input_ctx_len: Usize = Usize::Var(builder.uninit()); builder.assign(&input_ctx_len, Usize::from(8) + num_variables_len.clone()); let input_ctx: Array> = builder.dyn_array(input_ctx_len); @@ -504,7 +452,7 @@ pub fn verify_tower_proof( builder.set(&challenges, 1, c1.clone()); builder.set(&challenges, 2, c2.clone()); - builder.sumcheck_layer_eval(input_ctx, challenges, &proof.prod_specs_eval.data, &proof.logup_specs_eval.data, &next_layer_evals); + builder.sumcheck_layer_eval(&input_ctx, &challenges, &proof.prod_specs_eval.data, &proof.logup_specs_eval.data, &next_layer_evals); let next_round = builder.eval_expr(round_var + RVar::from(1)); builder @@ -517,7 +465,6 @@ pub fn verify_tower_proof( // now skip is 0 if and only if current round_var is smaller than round_limit. builder.if_eq(skip, var_zero.clone()).then(|builder| { - builder.if_eq(next_round, round_limit).then( |builder| { let evals_idx: Usize = builder.eval(spec_index + Usize::from(1)); From 9e6aec09044464d0305dc5b2aa17afdf77dd4ff4 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Wed, 17 Sep 2025 18:25:07 -0400 Subject: [PATCH 03/24] Adjust input ctx --- src/tower_verifier/program.rs | 46 ++--------------------------------- 1 file changed, 2 insertions(+), 44 deletions(-) diff --git a/src/tower_verifier/program.rs b/src/tower_verifier/program.rs index 55113aa..c40ecf6 100644 --- a/src/tower_verifier/program.rs +++ b/src/tower_verifier/program.rs @@ -378,30 +378,6 @@ pub fn verify_tower_proof( builder.sumcheck_layer_eval(&input_ctx, &challenges, &proof.prod_specs_eval.data, &proof.logup_specs_eval.data, &next_layer_evals); let expected_evaluation = builder.get(&next_layer_evals, 0); - - - - - - - - - - - - - - - - - - - - - - - - builder.assign(&expected_evaluation, expected_evaluation * eq_e); builder.assert_ext_eq(expected_evaluation, sub_e); builder.cycle_tracker_end("check expected evaluation"); @@ -429,26 +405,8 @@ pub fn verify_tower_proof( builder.assign(&alpha, new_alpha); // Use native opcode - let input_ctx_len: Usize = Usize::Var(builder.uninit()); - builder.assign(&input_ctx_len, Usize::from(8) + num_variables_len.clone()); - let input_ctx: Array> = builder.dyn_array(input_ctx_len); - - builder.set(&input_ctx, 0, round_var); - builder.set(&input_ctx, 1, num_prod_spec.clone()); - builder.set(&input_ctx, 2, num_logup_spec.clone()); - builder.set(&input_ctx, 3, Usize::from(proof.prod_specs_eval.inner_length)); - builder.set(&input_ctx, 4, Usize::from(proof.prod_specs_eval.inner_inner_length)); - builder.set(&input_ctx, 5, Usize::from(proof.logup_specs_eval.inner_length)); - builder.set(&input_ctx, 6, Usize::from(proof.logup_specs_eval.inner_inner_length)); - - let input_ctx_variables_slice = input_ctx.slice(builder, 8, input_ctx.len()); - iter_zip!(builder, input_ctx_variables_slice, num_variables).for_each(|ptr_vec, builder| { - let n_v = builder.iter_ptr_get(&num_variables, ptr_vec[1]); - builder.iter_ptr_set(&input_ctx_variables_slice, ptr_vec[0], n_v); - }); - - let challenges: Array> = builder.dyn_array(3); - builder.set(&challenges, 0, alpha.clone()); + builder.set(&input_ctx, 7, Usize::from(0)); // Turn `in_round` off + builder.set(&challenges, 0, new_alpha.clone()); builder.set(&challenges, 1, c1.clone()); builder.set(&challenges, 2, c2.clone()); From 193afc6d1ceb3246ae43c5d0018f28fd8a69e52e Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Wed, 24 Sep 2025 21:03:37 -0400 Subject: [PATCH 04/24] Recover test --- Cargo.lock | 18 +++++ Cargo.toml | 24 +++--- src/e2e/mod.rs | 2 - src/tower_verifier/program.rs | 139 ++++++++++++++++++++-------------- src/zkvm_verifier/verifier.rs | 3 +- 5 files changed, 113 insertions(+), 73 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index fabfca9..b9e4d14 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1740,6 +1740,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1752,6 +1753,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "backtrace", "cfg-if", @@ -1782,6 +1784,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "itertools 0.14.0", "quote", @@ -1791,6 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1805,6 +1809,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "itertools 0.14.0", "quote", @@ -1814,6 +1819,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "proc-macro2", "quote", @@ -1823,6 +1829,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1839,6 +1846,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "quote", "syn 2.0.106", @@ -1847,6 +1855,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1873,6 +1882,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1894,6 +1904,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "quote", "syn 2.0.106", @@ -1902,6 +1913,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1925,6 +1937,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "libm", "openvm-custom-insn", @@ -1934,6 +1947,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "derivative", "lazy_static", @@ -1950,6 +1964,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1972,6 +1987,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "openvm-custom-insn", "p3-field", @@ -1981,6 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2058,6 +2075,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" dependencies = [ "elf", "eyre", diff --git a/Cargo.toml b/Cargo.toml index 5afeb31..3919118 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,19 +4,19 @@ version = "0.1.0" edition = "2021" [dependencies] -# openvm = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } -# openvm-circuit = { git = "https://github.com/scroll-tech/openvm.git", default-features = false, features = ["bench-metrics"] } -# openvm-native-circuit = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } -# openvm-native-compiler = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } -# openvm-native-compiler-derive = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } -# openvm-native-recursion = { git = "https://github.com/scroll-tech/openvm.git", default-features = false } +openvm = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/native_sumcheck_layer_eval", default-features = false } +openvm-circuit = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/native_sumcheck_layer_eval", default-features = false, features = ["bench-metrics"] } +openvm-native-circuit = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/native_sumcheck_layer_eval", default-features = false } +openvm-native-compiler = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/native_sumcheck_layer_eval", default-features = false } +openvm-native-compiler-derive = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/native_sumcheck_layer_eval", default-features = false } +openvm-native-recursion = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/native_sumcheck_layer_eval", default-features = false } -openvm = { path = "../openvm-scroll-tech/crates/toolchain/openvm", default-features = false } -openvm-circuit = { path = "../openvm-scroll-tech/crates/vm", default-features = false, features = ["bench-metrics"] } -openvm-native-circuit = { path = "../openvm-scroll-tech/extensions/native/circuit", default-features = false } -openvm-native-compiler = { path = "../openvm-scroll-tech/extensions/native/compiler", default-features = false } -openvm-native-compiler-derive = { path = "../openvm-scroll-tech/extensions/native/compiler/derive", default-features = false } -openvm-native-recursion = { path = "../openvm-scroll-tech/extensions/native/recursion", default-features = false } +# openvm = { path = "../openvm-scroll-tech/crates/toolchain/openvm", default-features = false } +# openvm-circuit = { path = "../openvm-scroll-tech/crates/vm", default-features = false, features = ["bench-metrics"] } +# openvm-native-circuit = { path = "../openvm-scroll-tech/extensions/native/circuit", default-features = false } +# openvm-native-compiler = { path = "../openvm-scroll-tech/extensions/native/compiler", default-features = false } +# openvm-native-compiler-derive = { path = "../openvm-scroll-tech/extensions/native/compiler/derive", default-features = false } +# openvm-native-recursion = { path = "../openvm-scroll-tech/extensions/native/recursion", default-features = false } openvm-stark-backend = { git = "https://github.com/openvm-org/stark-backend.git", tag = "v1.1.1", default-features = false } openvm-stark-sdk = { git = "https://github.com/openvm-org/stark-backend.git", tag = "v1.1.1", default-features = false } diff --git a/src/e2e/mod.rs b/src/e2e/mod.rs index f70b814..6bb6908 100644 --- a/src/e2e/mod.rs +++ b/src/e2e/mod.rs @@ -403,7 +403,6 @@ mod tests { println!("=> segment {:?} metrics: {:?}", i, seg.metrics); } - /* _debug: temp disable let poseidon2_max_constraint_degree = 3; let log_blowup = 1; @@ -430,7 +429,6 @@ mod tests { for proof in proofs { verify_single(&vm.engine, &pk.get_vk(), &proof).expect("Verification failed"); } - */ } #[test] diff --git a/src/tower_verifier/program.rs b/src/tower_verifier/program.rs index c40ecf6..0ecfa2d 100644 --- a/src/tower_verifier/program.rs +++ b/src/tower_verifier/program.rs @@ -319,8 +319,10 @@ pub fn verify_tower_proof( eval: initial_claim, }; - let next_layer_evals_output_len: Usize = builder.eval(Usize::from(1) + num_prod_spec.clone() + Usize::from(2) * num_logup_spec.clone()); - let next_layer_evals: Array> = builder.dyn_array(next_layer_evals_output_len); + let next_layer_evals_output_len: Usize = builder + .eval(Usize::from(1) + num_prod_spec.clone() + Usize::from(2) * num_logup_spec.clone()); + let next_layer_evals: Array> = + builder.dyn_array(next_layer_evals_output_len); builder .range(0, op_range.clone()) @@ -360,22 +362,46 @@ pub fn verify_tower_proof( builder.set(&input_ctx, 0, round_var); builder.set(&input_ctx, 1, num_prod_spec.clone()); builder.set(&input_ctx, 2, num_logup_spec.clone()); - builder.set(&input_ctx, 3, Usize::from(proof.prod_specs_eval.inner_length)); - builder.set(&input_ctx, 4, Usize::from(proof.prod_specs_eval.inner_inner_length)); - builder.set(&input_ctx, 5, Usize::from(proof.logup_specs_eval.inner_length)); - builder.set(&input_ctx, 6, Usize::from(proof.logup_specs_eval.inner_inner_length)); + builder.set( + &input_ctx, + 3, + Usize::from(proof.prod_specs_eval.inner_length), + ); + builder.set( + &input_ctx, + 4, + Usize::from(proof.prod_specs_eval.inner_inner_length), + ); + builder.set( + &input_ctx, + 5, + Usize::from(proof.logup_specs_eval.inner_length), + ); + builder.set( + &input_ctx, + 6, + Usize::from(proof.logup_specs_eval.inner_inner_length), + ); builder.set(&input_ctx, 7, Usize::from(1)); let input_ctx_variables_slice = input_ctx.slice(builder, 8, input_ctx.len()); - iter_zip!(builder, input_ctx_variables_slice, num_variables).for_each(|ptr_vec, builder| { - let n_v = builder.iter_ptr_get(&num_variables, ptr_vec[1]); - builder.iter_ptr_set(&input_ctx_variables_slice, ptr_vec[0], n_v); - }); + iter_zip!(builder, input_ctx_variables_slice, num_variables).for_each( + |ptr_vec, builder| { + let n_v = builder.iter_ptr_get(&num_variables, ptr_vec[1]); + builder.iter_ptr_set(&input_ctx_variables_slice, ptr_vec[0], n_v); + }, + ); let challenges: Array> = builder.dyn_array(3); builder.set(&challenges, 0, alpha.clone()); - builder.sumcheck_layer_eval(&input_ctx, &challenges, &proof.prod_specs_eval.data, &proof.logup_specs_eval.data, &next_layer_evals); + builder.sumcheck_layer_eval( + &input_ctx, + &challenges, + &proof.prod_specs_eval.data, + &proof.logup_specs_eval.data, + &next_layer_evals, + ); let expected_evaluation = builder.get(&next_layer_evals, 0); builder.assign(&expected_evaluation, expected_evaluation * eq_e); @@ -405,12 +431,18 @@ pub fn verify_tower_proof( builder.assign(&alpha, new_alpha); // Use native opcode - builder.set(&input_ctx, 7, Usize::from(0)); // Turn `in_round` off + builder.set(&input_ctx, 7, Usize::from(0)); // Turn `in_round` off builder.set(&challenges, 0, new_alpha.clone()); builder.set(&challenges, 1, c1.clone()); builder.set(&challenges, 2, c2.clone()); - builder.sumcheck_layer_eval(&input_ctx, &challenges, &proof.prod_specs_eval.data, &proof.logup_specs_eval.data, &next_layer_evals); + builder.sumcheck_layer_eval( + &input_ctx, + &challenges, + &proof.prod_specs_eval.data, + &proof.logup_specs_eval.data, + &next_layer_evals, + ); let next_round = builder.eval_expr(round_var + RVar::from(1)); builder @@ -423,25 +455,19 @@ pub fn verify_tower_proof( // now skip is 0 if and only if current round_var is smaller than round_limit. builder.if_eq(skip, var_zero.clone()).then(|builder| { - builder.if_eq(next_round, round_limit).then( - |builder| { - let evals_idx: Usize = builder.eval(spec_index + Usize::from(1)); - let evals = builder.get(&next_layer_evals, evals_idx); - - let point_and_eval: PointAndEvalVariable = - builder.eval(PointAndEvalVariable { - point: PointVariable { - fs: rt_prime.clone(), - }, - eval: evals, - }); - builder.set_value( - &prod_spec_point_n_eval, - spec_index, - point_and_eval, - ); - } - ); + builder.if_eq(next_round, round_limit).then(|builder| { + let evals_idx: Usize = builder.eval(spec_index + Usize::from(1)); + let evals = builder.get(&next_layer_evals, evals_idx); + + let point_and_eval: PointAndEvalVariable = + builder.eval(PointAndEvalVariable { + point: PointVariable { + fs: rt_prime.clone(), + }, + eval: evals, + }); + builder.set_value(&prod_spec_point_n_eval, spec_index, point_and_eval); + }); }); }); @@ -460,31 +486,30 @@ pub fn verify_tower_proof( // now skip is 0 if and only if current round_var is smaller than round_limit. builder.if_eq(skip, var_zero).then(|builder| { - builder.if_eq(next_round, round_limit).then( - |builder| { - let p_idx: Usize = builder.eval(idx + Usize::from(1)); - let q_idx: Usize = builder.eval(idx + Usize::from(1) + num_logup_spec.clone()); - let p_eval = builder.get(&next_layer_evals, p_idx); - let q_eval = builder.get(&next_layer_evals, q_idx); - - let p_eval: PointAndEvalVariable = - builder.eval(PointAndEvalVariable { - point: PointVariable { - fs: rt_prime.clone(), - }, - eval: p_eval, - }); - let q_eval: PointAndEvalVariable = - builder.eval(PointAndEvalVariable { - point: PointVariable { - fs: rt_prime.clone(), - }, - eval: q_eval, - }); - builder.set_value(&logup_spec_p_point_n_eval, spec_index, p_eval); - builder.set_value(&logup_spec_q_point_n_eval, spec_index, q_eval); - } - ); + builder.if_eq(next_round, round_limit).then(|builder| { + let p_idx: Usize = builder.eval(idx + Usize::from(1)); + let q_idx: Usize = + builder.eval(idx + Usize::from(1) + num_logup_spec.clone()); + let p_eval = builder.get(&next_layer_evals, p_idx); + let q_eval = builder.get(&next_layer_evals, q_idx); + + let p_eval: PointAndEvalVariable = + builder.eval(PointAndEvalVariable { + point: PointVariable { + fs: rt_prime.clone(), + }, + eval: p_eval, + }); + let q_eval: PointAndEvalVariable = + builder.eval(PointAndEvalVariable { + point: PointVariable { + fs: rt_prime.clone(), + }, + eval: q_eval, + }); + builder.set_value(&logup_spec_p_point_n_eval, spec_index, p_eval); + builder.set_value(&logup_spec_q_point_n_eval, spec_index, q_eval); + }); }); }); diff --git a/src/zkvm_verifier/verifier.rs b/src/zkvm_verifier/verifier.rs index 67b90e1..70b5b8e 100644 --- a/src/zkvm_verifier/verifier.rs +++ b/src/zkvm_verifier/verifier.rs @@ -219,8 +219,7 @@ pub fn verify_zkvm_proof>( }); // _debug - // for (i, (circuit_name, chip_vk)) in vk.circuit_vks.iter().enumerate() { - for (i, (circuit_name, chip_vk)) in vk.circuit_vks.iter().take(100).enumerate() { + for (i, (circuit_name, chip_vk)) in vk.circuit_vks.iter().enumerate() { // _debug println!("=> circuit_name: {:?}", circuit_name); From a38c3a51acf1fa9200f0f404e257b7ab030060cc Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Wed, 24 Sep 2025 21:20:31 -0400 Subject: [PATCH 05/24] Try a lower number of sub-circuits --- src/zkvm_verifier/verifier.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/zkvm_verifier/verifier.rs b/src/zkvm_verifier/verifier.rs index 70b5b8e..dd90eef 100644 --- a/src/zkvm_verifier/verifier.rs +++ b/src/zkvm_verifier/verifier.rs @@ -219,7 +219,8 @@ pub fn verify_zkvm_proof>( }); // _debug - for (i, (circuit_name, chip_vk)) in vk.circuit_vks.iter().enumerate() { + // for (i, (circuit_name, chip_vk)) in vk.circuit_vks.iter().enumerate() { + for (i, (circuit_name, chip_vk)) in vk.circuit_vks.iter().take(2).enumerate() { // _debug println!("=> circuit_name: {:?}", circuit_name); From dd965de92b1721ee83388cb4dd291c283318e837 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 13:58:20 -0400 Subject: [PATCH 06/24] cargo update --- Cargo.lock | 242 +++++++++++++++++++++++++++++++---------------------- 1 file changed, 144 insertions(+), 98 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b9e4d14..3b4f86b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -116,9 +116,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.99" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100" +checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" [[package]] name = "ark-ff" @@ -493,9 +493,9 @@ checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" [[package]] name = "cc" -version = "1.2.35" +version = "1.2.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "590f9024a68a8c40351881787f1934dc11afd69090f5edb6831464694d836ea3" +checksum = "80f41ae168f955c12fb8960b057d70d0ca153fb83182b57d86380443527be7e9" dependencies = [ "find-msvc-tools", "shlex", @@ -504,7 +504,7 @@ dependencies = [ [[package]] name = "ceno-examples" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#ec4f614c5b04a83acf70de2e84af5de61ab93fb2" +source = "git+https://github.com/scroll-tech/ceno.git?branch=master#e3062a0357c646022b1c569365f5540b7d1a232d" dependencies = [ "glob", ] @@ -556,7 +556,7 @@ dependencies = [ [[package]] name = "ceno_emul" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#ec4f614c5b04a83acf70de2e84af5de61ab93fb2" +source = "git+https://github.com/scroll-tech/ceno.git?branch=master#e3062a0357c646022b1c569365f5540b7d1a232d" dependencies = [ "anyhow", "ceno_rt", @@ -578,7 +578,7 @@ dependencies = [ [[package]] name = "ceno_host" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#ec4f614c5b04a83acf70de2e84af5de61ab93fb2" +source = "git+https://github.com/scroll-tech/ceno.git?branch=master#e3062a0357c646022b1c569365f5540b7d1a232d" dependencies = [ "anyhow", "ceno_emul", @@ -590,7 +590,7 @@ dependencies = [ [[package]] name = "ceno_rt" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#ec4f614c5b04a83acf70de2e84af5de61ab93fb2" +source = "git+https://github.com/scroll-tech/ceno.git?branch=master#e3062a0357c646022b1c569365f5540b7d1a232d" dependencies = [ "getrandom 0.2.16", "rkyv", @@ -599,7 +599,7 @@ dependencies = [ [[package]] name = "ceno_zkvm" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#ec4f614c5b04a83acf70de2e84af5de61ab93fb2" +source = "git+https://github.com/scroll-tech/ceno.git?branch=master#e3062a0357c646022b1c569365f5540b7d1a232d" dependencies = [ "base64", "bincode", @@ -616,6 +616,7 @@ dependencies = [ "mpcs", "multilinear_extensions", "ndarray", + "once_cell", "p3", "parse-size", "prettytable-rs", @@ -644,9 +645,9 @@ checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9" [[package]] name = "clap" -version = "4.5.46" +version = "4.5.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c5e4fcf9c21d2e544ca1ee9d8552de13019a42aa7dbf32747fa7aaf1df76e57" +checksum = "e2134bb3ea021b78629caa971416385309e0131b351b25e01dc16fb54e1b5fae" dependencies = [ "clap_builder", "clap_derive", @@ -654,9 +655,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.46" +version = "4.5.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fecb53a0e6fcfb055f686001bc2e2592fa527efaf38dbe81a6a9563562e57d41" +checksum = "c2ba64afa3c0a6df7fa517765e31314e983f51dda798ffba27b988194fb65dc9" dependencies = [ "anstream", "anstyle", @@ -666,9 +667,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.45" +version = "4.5.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14cb31bb0a7d536caef2639baa7fad459e15c3144efefa6dbd1c84562c4739f6" +checksum = "bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c" dependencies = [ "heck", "proc-macro2", @@ -955,12 +956,12 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -1031,9 +1032,9 @@ dependencies = [ [[package]] name = "find-msvc-tools" -version = "0.1.0" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e178e4fba8a2726903f6ba98a6d221e76f9c12c650d5dc0e6afdc50677b49650" +checksum = "1ced73b1dacfc750a6db6c0a0c3a3853c8b41997e2e2c563dc90804ae6867959" [[package]] name = "fnv" @@ -1092,7 +1093,7 @@ dependencies = [ "cfg-if", "libc", "r-efi", - "wasi 0.14.3+wasi-0.2.4", + "wasi 0.14.7+wasi-0.2.4", ] [[package]] @@ -1116,7 +1117,7 @@ checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" [[package]] name = "gkr_iop" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#ec4f614c5b04a83acf70de2e84af5de61ab93fb2" +source = "git+https://github.com/scroll-tech/ceno.git?branch=master#e3062a0357c646022b1c569365f5540b7d1a232d" dependencies = [ "bincode", "either", @@ -1124,6 +1125,7 @@ dependencies = [ "itertools 0.13.0", "mpcs", "multilinear_extensions", + "once_cell", "p3", "rand", "rayon", @@ -1134,15 +1136,17 @@ dependencies = [ "thiserror", "thread_local", "tracing", + "tracing-forest", + "tracing-subscriber", "transcript", "witness", ] [[package]] name = "glam" -version = "0.30.5" +version = "0.30.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2d1aab06663bdce00d6ca5e5ed586ec8d18033a771906c993a1e3755b368d85" +checksum = "e12d847aeb25f41be4c0ec9587d624e9cd631bc007a8fd7ce3f5851e064c6460" [[package]] name = "glob" @@ -1257,6 +1261,12 @@ dependencies = [ "allocator-api2", ] +[[package]] +name = "hashbrown" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" + [[package]] name = "heck" version = "0.5.0" @@ -1295,12 +1305,12 @@ checksum = "964de6e86d545b246d84badc0fef527924ace5134f30641c203ef52ba83f58d5" [[package]] name = "indexmap" -version = "2.11.0" +version = "2.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2481980430f9f78649238835720ddccc57e52df14ffce1c6f37391d61b563e9" +checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" dependencies = [ "equivalent", - "hashbrown 0.15.5", + "hashbrown 0.16.0", ] [[package]] @@ -1355,9 +1365,9 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "js-sys" -version = "0.3.77" +version = "0.3.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" +checksum = "ec48937a97411dcb524a265206ccd4c90bb711fca92b2792c407f268825b9305" dependencies = [ "once_cell", "wasm-bindgen", @@ -1397,9 +1407,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.175" +version = "0.2.176" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543" +checksum = "58f929b4d672ea937a23a1ab494143d968337a5f47e56d0815df1e0890ddf174" [[package]] name = "libm" @@ -1409,9 +1419,9 @@ checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" [[package]] name = "libredox" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "391290121bad3d37fbddad76d8f5d1c1c314cfc646d143d7e07a3086ddff0ce3" +checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" dependencies = [ "bitflags", "libc", @@ -1419,9 +1429,9 @@ dependencies = [ [[package]] name = "linux-raw-sys" -version = "0.9.4" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" +checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" [[package]] name = "lockfree-object-pool" @@ -1431,9 +1441,9 @@ checksum = "9374ef4228402d4b7e403e5838cb880d9ee663314b0a900d5a6aabf0c213552e" [[package]] name = "log" -version = "0.4.27" +version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" +checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" [[package]] name = "matchers" @@ -1456,9 +1466,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.7.5" +version = "2.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" +checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273" [[package]] name = "memuse" @@ -1740,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1753,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "backtrace", "cfg-if", @@ -1784,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "itertools 0.14.0", "quote", @@ -1794,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1809,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "itertools 0.14.0", "quote", @@ -1819,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "proc-macro2", "quote", @@ -1829,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1846,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "quote", "syn 2.0.106", @@ -1855,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1882,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1904,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "quote", "syn 2.0.106", @@ -1913,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1937,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "libm", "openvm-custom-insn", @@ -1947,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "derivative", "lazy_static", @@ -1964,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1987,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "openvm-custom-insn", "p3-field", @@ -1997,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2075,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#18f0b755754aed537775ade393ca94a8f334d9e0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" dependencies = [ "elf", "eyre", @@ -2707,9 +2717,9 @@ dependencies = [ [[package]] name = "raw-cpuid" -version = "11.5.0" +version = "11.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6df7ab838ed27997ba19a4664507e6f82b41fe6e20be42929332156e5e85146" +checksum = "498cd0dc59d73224351ee52a95fee0f1a617a2eae0e7d9d720cc622c73a54186" dependencies = [ "bitflags", ] @@ -2753,9 +2763,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.10" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6" +checksum = "833eb9ce86d40ef33cb1306d8accf7bc8ec2bfea4355cbdebb3df68b40925cad" dependencies = [ "aho-corasick", "memchr", @@ -2857,15 +2867,15 @@ dependencies = [ [[package]] name = "rustix" -version = "1.0.8" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8" +checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" dependencies = [ "bitflags", "errno", "libc", "linux-raw-sys", - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -2914,16 +2924,17 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.26" +version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" +checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" [[package]] name = "serde" -version = "1.0.219" +version = "1.0.226" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "0dca6411025b24b60bfa7ec1fe1f8e710ac09782dca409ee8237ba74b51295fd" dependencies = [ + "serde_core", "serde_derive", ] @@ -2945,11 +2956,20 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_core" +version = "1.0.226" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba2ba63999edb9dac981fb34b3e5c0d111a69b0924e253ed29d83f7c99e966a4" +dependencies = [ + "serde_derive", +] + [[package]] name = "serde_derive" -version = "1.0.219" +version = "1.0.226" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "8db53ae22f34573731bafa1db20f04027b2d25e02d8205921b569171699cdb33" dependencies = [ "proc-macro2", "quote", @@ -2958,14 +2978,15 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.143" +version = "1.0.145" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a" +checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" dependencies = [ "itoa", "memchr", "ryu", "serde", + "serde_core", ] [[package]] @@ -3157,15 +3178,15 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.21.0" +version = "3.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15b61f8f20e3a6f7e0649d825294eaf317edce30f82cf6026e7e4cb9222a7d1e" +checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16" dependencies = [ "fastrand", "getrandom 0.3.3", "once_cell", "rustix", - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -3407,9 +3428,9 @@ checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "unicode-ident" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" [[package]] name = "unicode-width" @@ -3469,30 +3490,40 @@ checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "wasi" -version = "0.14.3+wasi-0.2.4" +version = "0.14.7+wasi-0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c" +dependencies = [ + "wasip2", +] + +[[package]] +name = "wasip2" +version = "1.0.1+wasi-0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a51ae83037bdd272a9e28ce236db8c07016dd0d50c27038b3f407533c030c95" +checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" dependencies = [ "wit-bindgen", ] [[package]] name = "wasm-bindgen" -version = "0.2.100" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" +checksum = "c1da10c01ae9f1ae40cbfac0bac3b1e724b320abfcf52229f80b547c0d250e2d" dependencies = [ "cfg-if", "once_cell", "rustversion", "wasm-bindgen-macro", + "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.100" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" +checksum = "671c9a5a66f49d8a47345ab942e2cb93c7d1d0339065d4f8139c486121b43b19" dependencies = [ "bumpalo", "log", @@ -3504,9 +3535,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.100" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" +checksum = "7ca60477e4c59f5f2986c50191cd972e3a50d8a95603bc9434501cf156a9a119" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3514,9 +3545,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.100" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" +checksum = "9f07d2f20d4da7b26400c9f4a0511e6e0345b040694e8a75bd41d578fa4421d7" dependencies = [ "proc-macro2", "quote", @@ -3527,18 +3558,18 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.100" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +checksum = "bad67dc8b2a1a6e5448428adec4c3e84c43e561d8c9ee8a9e5aabeb193ec41d1" dependencies = [ "unicode-ident", ] [[package]] name = "web-sys" -version = "0.3.77" +version = "0.3.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" +checksum = "9367c417a924a74cae129e6a2ae3b47fabb1f8995595ab474029da749a8be120" dependencies = [ "js-sys", "wasm-bindgen", @@ -3595,6 +3626,12 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" +[[package]] +name = "windows-link" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" + [[package]] name = "windows-sys" version = "0.52.0" @@ -3622,6 +3659,15 @@ dependencies = [ "windows-targets 0.53.3", ] +[[package]] +name = "windows-sys" +version = "0.61.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa" +dependencies = [ + "windows-link 0.2.0", +] + [[package]] name = "windows-targets" version = "0.52.6" @@ -3644,7 +3690,7 @@ version = "0.53.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" dependencies = [ - "windows-link", + "windows-link 0.1.3", "windows_aarch64_gnullvm 0.53.0", "windows_aarch64_msvc 0.53.0", "windows_i686_gnu 0.53.0", @@ -3771,9 +3817,9 @@ dependencies = [ [[package]] name = "wit-bindgen" -version = "0.45.0" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "052283831dbae3d879dc7f51f3d92703a316ca49f91540417d38591826127814" +checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" [[package]] name = "witness" @@ -3799,18 +3845,18 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" +checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" +checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", From c358c7f850415e16d7f11eff5181ae35f4f258c7 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 14:11:59 -0400 Subject: [PATCH 07/24] cargo update --- Cargo.lock | 62 ++++++++++++++++++++++++------------------------------ 1 file changed, 28 insertions(+), 34 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 3b4f86b..ffb900f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -961,7 +961,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.61.0", + "windows-sys 0.61.1", ] [[package]] @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#25a72ba9c6ba1e3aee91fd77c025787afae9e8a7" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" dependencies = [ "elf", "eyre", @@ -2875,7 +2875,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.61.0", + "windows-sys 0.61.1", ] [[package]] @@ -3186,7 +3186,7 @@ dependencies = [ "getrandom 0.3.3", "once_cell", "rustix", - "windows-sys 0.61.0", + "windows-sys 0.61.1", ] [[package]] @@ -3620,12 +3620,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -[[package]] -name = "windows-link" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" - [[package]] name = "windows-link" version = "0.2.0" @@ -3656,16 +3650,16 @@ version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ - "windows-targets 0.53.3", + "windows-targets 0.53.4", ] [[package]] name = "windows-sys" -version = "0.61.0" +version = "0.61.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa" +checksum = "6f109e41dd4a3c848907eb83d5a42ea98b3769495597450cf6d153507b166f0f" dependencies = [ - "windows-link 0.2.0", + "windows-link", ] [[package]] @@ -3686,11 +3680,11 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.53.3" +version = "0.53.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" +checksum = "2d42b7b7f66d2a06854650af09cfdf8713e427a439c97ad65a6375318033ac4b" dependencies = [ - "windows-link 0.1.3", + "windows-link", "windows_aarch64_gnullvm 0.53.0", "windows_aarch64_msvc 0.53.0", "windows_i686_gnu 0.53.0", From 3b12408f490a8abbf267be820b3621f05b2f8fda Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 14:40:15 -0400 Subject: [PATCH 08/24] cargo update --- Cargo.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ffb900f..298bc39 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a43bd22d30cba78a1951fa93c6db7c9e9e571a54" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" dependencies = [ "elf", "eyre", From 5fea404f4d1cfb760c240d6a62fa15161d5657f4 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 14:59:43 -0400 Subject: [PATCH 09/24] cargo update --- Cargo.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 298bc39..4a5058f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#5b50b5bb77900ee8d9033c86a00962b5730ed766" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" dependencies = [ "elf", "eyre", From 2e4554f10ed61644d96771d1b099e52fb69ed81a Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 15:16:23 -0400 Subject: [PATCH 10/24] cargo update --- Cargo.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4a5058f..8ee8093 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#12fe6fdc673650c15b86b1ecedfdb632047fc6ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" dependencies = [ "elf", "eyre", From 168d1b97bd306fe936dc0e7714aa6d23a6e1bc21 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 15:28:23 -0400 Subject: [PATCH 11/24] cargo update --- Cargo.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8ee8093..71bd440 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#21a89711b3a2fd2aa7ca5315ec12d4e713ba3248" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" dependencies = [ "elf", "eyre", From ba0a7eaf72353e20d1b97b4a0c99351b7c0fad6a Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 15:37:59 -0400 Subject: [PATCH 12/24] cargo update --- Cargo.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 71bd440..aead8c7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#8ad853ae3ade299216056675ad9d05f9a5073603" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" dependencies = [ "elf", "eyre", From 319714cd2e7a07e2a75530ae1fb2a845fb51f6bc Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 15:54:23 -0400 Subject: [PATCH 13/24] cargo update --- Cargo.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index aead8c7..d4aae71 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#4d28b2144aa757da7fcac779ab31ed19f4c904ee" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" dependencies = [ "elf", "eyre", From f85453c287edb8531dca60faef682071f04b8c4e Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 16:07:11 -0400 Subject: [PATCH 14/24] cargo update --- Cargo.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d4aae71..9647969 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#7be1fd8b8b4346963eadc268f9f868cdf95782ba" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" dependencies = [ "elf", "eyre", From 434bb6516d88f77417eb3798b1dde374a0df6778 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 16:22:43 -0400 Subject: [PATCH 15/24] cargo update --- Cargo.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 9647969..cf2b349 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#964cee369f24e3c17206d081ff0913351ad5e1e1" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" dependencies = [ "elf", "eyre", From 1a81206e6ee4fe7797d5af8068514849d3e4e2f1 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 16:31:35 -0400 Subject: [PATCH 16/24] cargo update --- Cargo.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index cf2b349..aa17a6a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2da96e0074460afd9c6caaed5aa47d77633ee059" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" dependencies = [ "elf", "eyre", From 4cc74290aa735e74fae68f2f075c04b7d5031cf8 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 18:18:16 -0400 Subject: [PATCH 17/24] cargo update --- Cargo.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index aa17a6a..a69379c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a3ab084556a628d2735c11347d173f3cfc9adca3" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" dependencies = [ "elf", "eyre", From 381702a33ace43f93be80a324f3dbb24c0d7a224 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 21:18:35 -0400 Subject: [PATCH 18/24] cargo update --- Cargo.lock | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a69379c..4954c6b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#39afd1aace719d403c4576404caec6a4240c3699" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" dependencies = [ "elf", "eyre", @@ -2930,9 +2930,9 @@ checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" [[package]] name = "serde" -version = "1.0.226" +version = "1.0.227" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dca6411025b24b60bfa7ec1fe1f8e710ac09782dca409ee8237ba74b51295fd" +checksum = "80ece43fc6fbed4eb5392ab50c07334d3e577cbf40997ee896fe7af40bba4245" dependencies = [ "serde_core", "serde_derive", @@ -2958,18 +2958,18 @@ dependencies = [ [[package]] name = "serde_core" -version = "1.0.226" +version = "1.0.227" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba2ba63999edb9dac981fb34b3e5c0d111a69b0924e253ed29d83f7c99e966a4" +checksum = "7a576275b607a2c86ea29e410193df32bc680303c82f31e275bbfcafe8b33be5" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.226" +version = "1.0.227" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8db53ae22f34573731bafa1db20f04027b2d25e02d8205921b569171699cdb33" +checksum = "51e694923b8824cf0e9b382adf0f60d4e05f348f357b38833a3fa5ed7c2ede04" dependencies = [ "proc-macro2", "quote", From 382e6236412202deb6e10edb3c86bb8676393488 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Thu, 25 Sep 2025 21:46:35 -0400 Subject: [PATCH 19/24] cargo update --- Cargo.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4954c6b..1958bf2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#892d1d058d7cf5c62dcecf58272470c2778e37c0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" dependencies = [ "elf", "eyre", From 6f01b6f7abd2c976f880264e9b9c02f3312e22d1 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Sun, 28 Sep 2025 16:01:23 -0400 Subject: [PATCH 20/24] cargo update --- Cargo.lock | 82 +++++++++++++++++++++++++++--------------------------- 1 file changed, 41 insertions(+), 41 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 1958bf2..f0b246c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -15,9 +15,9 @@ dependencies = [ [[package]] name = "addr2line" -version = "0.24.2" +version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" +checksum = "1b5d307320b3181d6d7954e663bd7c774a838b8220fe0593c86d9fb09f498b4b" dependencies = [ "gimli", ] @@ -296,9 +296,9 @@ checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "backtrace" -version = "0.3.75" +version = "0.3.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002" +checksum = "bb531853791a215d7c62a30daf0dde835f381ab5de4589cfe7c649d2cbe92bd6" dependencies = [ "addr2line", "cfg-if", @@ -307,7 +307,7 @@ dependencies = [ "object", "rustc-demangle", "serde", - "windows-targets 0.52.6", + "windows-link", ] [[package]] @@ -493,9 +493,9 @@ checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" [[package]] name = "cc" -version = "1.2.38" +version = "1.2.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80f41ae168f955c12fb8960b057d70d0ca153fb83182b57d86380443527be7e9" +checksum = "e1354349954c6fc9cb0deab020f27f783cf0b604e8bb754dc4658ecf0d29c35f" dependencies = [ "find-msvc-tools", "shlex", @@ -504,7 +504,7 @@ dependencies = [ [[package]] name = "ceno-examples" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#e3062a0357c646022b1c569365f5540b7d1a232d" +source = "git+https://github.com/scroll-tech/ceno.git?branch=master#d096f28b52390a30ad7d2f77d8033a9e08673162" dependencies = [ "glob", ] @@ -556,7 +556,7 @@ dependencies = [ [[package]] name = "ceno_emul" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#e3062a0357c646022b1c569365f5540b7d1a232d" +source = "git+https://github.com/scroll-tech/ceno.git?branch=master#d096f28b52390a30ad7d2f77d8033a9e08673162" dependencies = [ "anyhow", "ceno_rt", @@ -578,7 +578,7 @@ dependencies = [ [[package]] name = "ceno_host" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#e3062a0357c646022b1c569365f5540b7d1a232d" +source = "git+https://github.com/scroll-tech/ceno.git?branch=master#d096f28b52390a30ad7d2f77d8033a9e08673162" dependencies = [ "anyhow", "ceno_emul", @@ -590,7 +590,7 @@ dependencies = [ [[package]] name = "ceno_rt" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#e3062a0357c646022b1c569365f5540b7d1a232d" +source = "git+https://github.com/scroll-tech/ceno.git?branch=master#d096f28b52390a30ad7d2f77d8033a9e08673162" dependencies = [ "getrandom 0.2.16", "rkyv", @@ -599,7 +599,7 @@ dependencies = [ [[package]] name = "ceno_zkvm" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#e3062a0357c646022b1c569365f5540b7d1a232d" +source = "git+https://github.com/scroll-tech/ceno.git?branch=master#d096f28b52390a30ad7d2f77d8033a9e08673162" dependencies = [ "base64", "bincode", @@ -1110,14 +1110,14 @@ dependencies = [ [[package]] name = "gimli" -version = "0.31.1" +version = "0.32.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" +checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7" [[package]] name = "gkr_iop" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#e3062a0357c646022b1c569365f5540b7d1a232d" +source = "git+https://github.com/scroll-tech/ceno.git?branch=master#d096f28b52390a30ad7d2f77d8033a9e08673162" dependencies = [ "bincode", "either", @@ -1728,9 +1728,9 @@ dependencies = [ [[package]] name = "object" -version = "0.36.7" +version = "0.37.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" +checksum = "ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe" dependencies = [ "memchr", ] @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#a817f6f2b1a17c87c1286f764df15706d6c65800" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" dependencies = [ "elf", "eyre", @@ -2930,9 +2930,9 @@ checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" [[package]] name = "serde" -version = "1.0.227" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80ece43fc6fbed4eb5392ab50c07334d3e577cbf40997ee896fe7af40bba4245" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" dependencies = [ "serde_core", "serde_derive", @@ -2958,18 +2958,18 @@ dependencies = [ [[package]] name = "serde_core" -version = "1.0.227" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a576275b607a2c86ea29e410193df32bc680303c82f31e275bbfcafe8b33be5" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.227" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51e694923b8824cf0e9b382adf0f60d4e05f348f357b38833a3fa5ed7c2ede04" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", From d570b9cc269136cbef130921a7ed08af3d4f6677 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Sun, 28 Sep 2025 17:30:37 -0400 Subject: [PATCH 21/24] Remove debug flags --- Cargo.lock | 36 +++++++++++++++++------------------ rust-toolchain.toml | 4 ++-- src/tower_verifier/program.rs | 18 ++++++------------ src/zkvm_verifier/verifier.rs | 7 +------ 4 files changed, 27 insertions(+), 38 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f0b246c..14555ba 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1750,7 +1750,7 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +1763,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "backtrace", "cfg-if", @@ -1794,7 +1794,7 @@ dependencies = [ [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "itertools 0.14.0", "quote", @@ -1804,7 +1804,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,7 +1819,7 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "itertools 0.14.0", "quote", @@ -1829,7 +1829,7 @@ dependencies = [ [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "proc-macro2", "quote", @@ -1839,7 +1839,7 @@ dependencies = [ [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,7 +1856,7 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "quote", "syn 2.0.106", @@ -1865,7 +1865,7 @@ dependencies = [ [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,7 +1914,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "quote", "syn 2.0.106", @@ -1923,7 +1923,7 @@ dependencies = [ [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +1947,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +1957,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +1974,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +1997,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2007,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2085,7 +2085,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#de7724265d2abdcfd69c76877e40c4e93536a273" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" dependencies = [ "elf", "eyre", diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 8c279ac..4b661e9 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,4 +1,4 @@ [toolchain] -channel = "nightly-2025-03-25" +channel = "nightly-2025-08-18" targets = ["riscv32im-unknown-none-elf"] -components = ["clippy", "rustfmt", "rust-src"] +components = ["clippy", "rustfmt", "rust-src"] \ No newline at end of file diff --git a/src/tower_verifier/program.rs b/src/tower_verifier/program.rs index 0ecfa2d..bb39260 100644 --- a/src/tower_verifier/program.rs +++ b/src/tower_verifier/program.rs @@ -114,8 +114,7 @@ pub fn iop_verifier_state_verify( let challenges: Array> = builder.dyn_array(max_num_variables_usize.clone()); let expected: Ext = builder.eval(out_claim.clone() + zero); - // _debug - // builder.cycle_tracker_start("IOPVerifierState::verify_round_and_update_state"); + builder.cycle_tracker_start("IOPVerifierState::verify_round_and_update_state"); builder .range(0, max_num_variables_usize.clone()) .for_each(|i_vec, builder| { @@ -143,8 +142,7 @@ pub fn iop_verifier_state_verify( builder.assign(&expected, p_r + zero); builder.set_value(&challenges, i, challenge); }); - // _debug - // builder.cycle_tracker_end("IOPVerifierState::verify_round_and_update_state"); + builder.cycle_tracker_end("IOPVerifierState::verify_round_and_update_state"); (challenges, expected) } @@ -337,8 +335,7 @@ pub fn verify_tower_proof( let max_degree = builder.constant(C::F::from_canonical_usize(3)); - // _debug - // builder.cycle_tracker_start("sumcheck verify"); + builder.cycle_tracker_start("sumcheck verify"); let (sub_rt, sub_e) = iop_verifier_state_verify( builder, challenger, @@ -348,8 +345,7 @@ pub fn verify_tower_proof( max_degree, unipoly_extrapolator, ); - // _debug - // builder.cycle_tracker_end("sumcheck verify"); + builder.cycle_tracker_end("sumcheck verify"); builder.cycle_tracker_start("check expected evaluation"); let eq_e = eq_eval(builder, &out_rt, &sub_rt, one, zero); @@ -414,16 +410,14 @@ pub fn verify_tower_proof( // r_merge.len() == ceil_log2(num_product_fanin) transcript_observe_label(builder, challenger, b"merge"); - // _debug - // builder.cycle_tracker_start("derive rt_prime"); + builder.cycle_tracker_start("derive rt_prime"); let r_merge = challenger.sample_ext(builder); let c1: Ext<::F, ::EF> = builder.eval(one - r_merge.clone()); let c2: Ext<::F, ::EF> = builder.eval(r_merge.clone()); let rt_prime = extend(builder, &sub_rt, &r_merge); - // _debug - // builder.cycle_tracker_end("derive rt_prime"); + builder.cycle_tracker_end("derive rt_prime"); // generate next round challenge transcript_observe_label(builder, challenger, b"combine subset evals"); diff --git a/src/zkvm_verifier/verifier.rs b/src/zkvm_verifier/verifier.rs index dd90eef..97b1bcd 100644 --- a/src/zkvm_verifier/verifier.rs +++ b/src/zkvm_verifier/verifier.rs @@ -218,12 +218,7 @@ pub fn verify_zkvm_proof>( builder.set(&chip_indices, i, chip_proof.idx); }); - // _debug - // for (i, (circuit_name, chip_vk)) in vk.circuit_vks.iter().enumerate() { - for (i, (circuit_name, chip_vk)) in vk.circuit_vks.iter().take(2).enumerate() { - // _debug - println!("=> circuit_name: {:?}", circuit_name); - + for (i, (circuit_name, chip_vk)) in vk.circuit_vks.iter().enumerate() { let chip_id: Var = builder.get(&chip_indices, num_chips_verified.get_var()); builder.if_eq(chip_id, RVar::from(i)).then(|builder| { From 11fea238cce71f4a2f2427f6de682f44cc5f7cf5 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Wed, 5 Nov 2025 16:31:53 -0500 Subject: [PATCH 22/24] Add New Ecc Verification (#72) --- Cargo.lock | 1112 +++++++++++++++++++++++---------- Cargo.toml | 18 +- src/arithmetics/mod.rs | 33 +- src/zkvm_verifier/binding.rs | 34 +- src/zkvm_verifier/verifier.rs | 252 +++++++- 5 files changed, 1099 insertions(+), 350 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 14555ba..4cc5e8a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -42,9 +42,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" dependencies = [ "memchr", ] @@ -66,9 +66,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.20" +version = "0.6.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ae563653d1938f79b1ab1b5e668c87c76a9930414574a6583a7b7e11a8e6192" +checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" dependencies = [ "anstyle", "anstyle-parse", @@ -81,9 +81,9 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.11" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd" +checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" [[package]] name = "anstyle-parse" @@ -177,7 +177,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" dependencies = [ "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -203,7 +203,7 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -253,7 +253,7 @@ checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -294,6 +294,12 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" +[[package]] +name = "az" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b7e4c2464d97fe331d41de9d5db0def0a96f4d823b8b32a2efd503578988973" + [[package]] name = "backtrace" version = "0.3.76" @@ -322,6 +328,12 @@ version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" +[[package]] +name = "base64ct" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba" + [[package]] name = "bincode" version = "1.3.3" @@ -352,7 +364,7 @@ checksum = "ffebfc2d28a12b262c303cb3860ee77b91bd83b1f20f0bd2a9693008e2f55a9e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -373,9 +385,9 @@ dependencies = [ [[package]] name = "bitflags" -version = "2.9.4" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" +checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3" [[package]] name = "bitvec" @@ -428,7 +440,7 @@ version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" dependencies = [ - "generic-array", + "generic-array 0.14.9", ] [[package]] @@ -450,11 +462,17 @@ version = "3.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43" +[[package]] +name = "byte-slice-cast" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" + [[package]] name = "bytecheck" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50690fb3370fb9fe3550372746084c46f2ac8c9685c583d2be10eefd89d3d1a3" +checksum = "0caa33a2c0edca0419d15ac723dff03f1956f7978329b1e3b5fdaaaed9d3ca8b" dependencies = [ "bytecheck_derive", "ptr_meta", @@ -464,20 +482,20 @@ dependencies = [ [[package]] name = "bytecheck_derive" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efb7846e0cb180355c2dec69e721edafa36919850f1a9f52ffba4ebc0393cb71" +checksum = "89385e82b5d1821d2219e0b095efa2cc1f246cbf99080f3be46a1a85c0d392d9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] name = "bytemuck" -version = "1.23.2" +version = "1.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3995eaeebcdf32f91f980d360f78732ddc061097ab4e39991ae7a6ace9194677" +checksum = "1fbdf580320f38b612e485521afda1ee26d10cc9884efaaa750d383e13e3c5f4" [[package]] name = "byteorder" @@ -493,9 +511,9 @@ checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" [[package]] name = "cc" -version = "1.2.39" +version = "1.2.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1354349954c6fc9cb0deab020f27f783cf0b604e8bb754dc4658ecf0d29c35f" +checksum = "739eb0f94557554b3ca9a86d2d37bebd49c5e6d0c1d2bda35ba5bdac830befc2" dependencies = [ "find-msvc-tools", "shlex", @@ -504,7 +522,7 @@ dependencies = [ [[package]] name = "ceno-examples" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#d096f28b52390a30ad7d2f77d8033a9e08673162" +source = "git+https://github.com/scroll-tech/ceno.git?branch=feat%2Fseptic_global_chip#2d8d643565cb741f8f8565f2d590cbb6b5021abd" dependencies = [ "glob", ] @@ -556,18 +574,23 @@ dependencies = [ [[package]] name = "ceno_emul" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#d096f28b52390a30ad7d2f77d8033a9e08673162" +source = "git+https://github.com/scroll-tech/ceno.git?branch=feat%2Fseptic_global_chip#2d8d643565cb741f8f8565f2d590cbb6b5021abd" dependencies = [ "anyhow", "ceno_rt", + "ceno_syscall", "elf", "ff_ext", "itertools 0.13.0", "multilinear_extensions", "num-derive", "num-traits", + "rayon", "rrs-succinct", + "rustc-hash", "secp", + "serde", + "smallvec", "strum", "strum_macros", "substrate-bn", @@ -578,7 +601,7 @@ dependencies = [ [[package]] name = "ceno_host" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#d096f28b52390a30ad7d2f77d8033a9e08673162" +source = "git+https://github.com/scroll-tech/ceno.git?branch=feat%2Fseptic_global_chip#2d8d643565cb741f8f8565f2d590cbb6b5021abd" dependencies = [ "anyhow", "ceno_emul", @@ -590,40 +613,54 @@ dependencies = [ [[package]] name = "ceno_rt" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#d096f28b52390a30ad7d2f77d8033a9e08673162" +source = "git+https://github.com/scroll-tech/ceno.git?branch=feat%2Fseptic_global_chip#2d8d643565cb741f8f8565f2d590cbb6b5021abd" dependencies = [ "getrandom 0.2.16", + "getrandom 0.3.4", "rkyv", ] +[[package]] +name = "ceno_syscall" +version = "0.1.0" +source = "git+https://github.com/scroll-tech/ceno.git?branch=feat%2Fseptic_global_chip#2d8d643565cb741f8f8565f2d590cbb6b5021abd" + [[package]] name = "ceno_zkvm" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#d096f28b52390a30ad7d2f77d8033a9e08673162" +source = "git+https://github.com/scroll-tech/ceno.git?branch=feat%2Fseptic_global_chip#2d8d643565cb741f8f8565f2d590cbb6b5021abd" dependencies = [ "base64", "bincode", "ceno-examples", "ceno_emul", "ceno_host", + "cfg-if", "clap", + "derive", "either", "ff_ext", + "generic-array 1.3.5", "generic_static", "gkr_iop", "glob", "itertools 0.13.0", + "lazy_static", "mpcs", "multilinear_extensions", "ndarray", + "num", + "num-bigint 0.4.6", "once_cell", "p3", "parse-size", "prettytable-rs", "rand", "rayon", + "rustc-hash", "serde", "serde_json", + "sp1-curves", "strum", "strum_macros", "sumcheck", @@ -635,19 +672,20 @@ dependencies = [ "transcript", "whir", "witness", + "zkhash", ] [[package]] name = "cfg-if" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" [[package]] name = "clap" -version = "4.5.48" +version = "4.5.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2134bb3ea021b78629caa971416385309e0131b351b25e01dc16fb54e1b5fae" +checksum = "0c2cfd7bf8a6017ddaa4e32ffe7403d547790db06bd171c1c53926faab501623" dependencies = [ "clap_builder", "clap_derive", @@ -655,9 +693,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.48" +version = "4.5.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2ba64afa3c0a6df7fa517765e31314e983f51dda798ffba27b988194fb65dc9" +checksum = "0a4c05b9e80c5ccd3a7ef080ad7b6ba7d6fc00a985b8b157197075677c82c7a0" dependencies = [ "anstream", "anstyle", @@ -667,21 +705,21 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.47" +version = "4.5.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c" +checksum = "2a0b5487afeab2deb2ff4e03a807ad1a03ac532ff5a2cee5d86884440c7f7671" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] name = "clap_lex" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675" +checksum = "a1d728cc89cf3aee9ff92b05e62b19ee65a02b5702cff7d5a377e32c6ae29d8d" [[package]] name = "colorchoice" @@ -689,6 +727,32 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" +[[package]] +name = "const-oid" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" + +[[package]] +name = "const_format" +version = "0.2.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7faa7469a93a566e9ccc1c73fe783b4a65c274c5ace346038dca9c39fe0030ad" +dependencies = [ + "const_format_proc_macros", +] + +[[package]] +name = "const_format_proc_macros" +version = "0.2.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d57c2eccfb16dbac1f4e61e206105db5820c9d26c3c472bc17c774259ef7744" +dependencies = [ + "proc-macro2", + "quote", + "unicode-xid", +] + [[package]] name = "constant_time_eq" version = "0.3.1" @@ -741,37 +805,138 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" +[[package]] +name = "crypto-bigint" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" +dependencies = [ + "generic-array 0.14.9", + "rand_core", + "subtle", + "zeroize", +] + [[package]] name = "crypto-common" version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" dependencies = [ - "generic-array", + "generic-array 0.14.9", "typenum", ] [[package]] name = "csv" -version = "1.3.1" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acdc4883a9c96732e4733212c01447ebd805833b7275a73ca3ee080fd77afdaf" +checksum = "52cd9d68cf7efc6ddfaaee42e7288d3a99d613d4b50f76ce9827ae0c6e14f938" dependencies = [ "csv-core", "itoa", "ryu", - "serde", + "serde_core", ] [[package]] name = "csv-core" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d02f3b0da4c6504f86e9cd789d8dbafab48c2321be74e9987593de5a894d93d" +checksum = "704a3c26996a80471189265814dbc2c257598b96b8a7feae2d31ace646bb9782" dependencies = [ "memchr", ] +[[package]] +name = "dashu" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85b3e5ac1e23ff1995ef05b912e2b012a8784506987a2651552db2c73fb3d7e0" +dependencies = [ + "dashu-base", + "dashu-float", + "dashu-int", + "dashu-macros", + "dashu-ratio", + "rustversion", +] + +[[package]] +name = "dashu-base" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0b80bf6b85aa68c58ffea2ddb040109943049ce3fbdf4385d0380aef08ef289" + +[[package]] +name = "dashu-float" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85078445a8dbd2e1bd21f04a816f352db8d333643f0c9b78ca7c3d1df71063e7" +dependencies = [ + "dashu-base", + "dashu-int", + "num-modular", + "num-order", + "rustversion", + "static_assertions", +] + +[[package]] +name = "dashu-int" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee99d08031ca34a4d044efbbb21dff9b8c54bb9d8c82a189187c0651ffdb9fbf" +dependencies = [ + "cfg-if", + "dashu-base", + "num-modular", + "num-order", + "rustversion", + "static_assertions", +] + +[[package]] +name = "dashu-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93381c3ef6366766f6e9ed9cf09e4ef9dec69499baf04f0c60e70d653cf0ab10" +dependencies = [ + "dashu-base", + "dashu-float", + "dashu-int", + "dashu-ratio", + "paste", + "proc-macro2", + "quote", + "rustversion", +] + +[[package]] +name = "dashu-ratio" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47e33b04dd7ce1ccf8a02a69d3419e354f2bbfdf4eb911a0b7465487248764c9" +dependencies = [ + "dashu-base", + "dashu-float", + "dashu-int", + "num-modular", + "num-order", + "rustversion", +] + +[[package]] +name = "der" +version = "0.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" +dependencies = [ + "const-oid", + "pem-rfc7468", + "zeroize", +] + [[package]] name = "derivative" version = "2.2.0" @@ -783,6 +948,15 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "derive" +version = "0.1.0" +source = "git+https://github.com/scroll-tech/ceno.git?branch=feat%2Fseptic_global_chip#2d8d643565cb741f8f8565f2d590cbb6b5021abd" +dependencies = [ + "quote", + "syn 1.0.109", +] + [[package]] name = "derive-new" version = "0.6.0" @@ -791,7 +965,7 @@ checksum = "d150dea618e920167e5973d70ae6ece4385b7164e0d799fe7c122dd0a5d912ad" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -802,7 +976,7 @@ checksum = "2cdc8d50f426189eef89dac62fabfa0abb27d5cc008f25bf4156a0203325becc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -815,7 +989,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -835,7 +1009,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", "unicode-xid", ] @@ -846,6 +1020,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer", + "const-oid", "crypto-common", "subtle", ] @@ -877,6 +1052,20 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" +[[package]] +name = "ecdsa" +version = "0.16.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" +dependencies = [ + "der", + "digest", + "elliptic-curve", + "rfc6979", + "signature", + "spki", +] + [[package]] name = "educe" version = "0.6.0" @@ -886,7 +1075,7 @@ dependencies = [ "enum-ordinalize", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -904,6 +1093,26 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4445909572dbd556c457c849c4ca58623d84b27c8fff1e74b0b4227d8b90d17b" +[[package]] +name = "elliptic-curve" +version = "0.13.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" +dependencies = [ + "base16ct", + "crypto-bigint", + "digest", + "ff 0.13.1", + "generic-array 0.14.9", + "group 0.13.0", + "pem-rfc7468", + "pkcs8", + "rand_core", + "sec1", + "subtle", + "zeroize", +] + [[package]] name = "encode_unicode" version = "1.0.0" @@ -918,22 +1127,22 @@ checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d" [[package]] name = "enum-ordinalize" -version = "4.3.0" +version = "4.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea0dcfa4e54eeb516fe454635a95753ddd39acda650ce703031c6973e315dd5" +checksum = "4a1091a7bb1f8f2c4b28f1fe2cef4980ca2d410a3d727d67ecc3178c9b0800f0" dependencies = [ "enum-ordinalize-derive", ] [[package]] name = "enum-ordinalize-derive" -version = "4.3.1" +version = "4.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff" +checksum = "8ca9601fb2d62598ee17836250842873a413586e5d7ed88b356e38ddbb0ec631" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -945,7 +1154,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -961,7 +1170,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.61.1", + "windows-sys 0.61.2", ] [[package]] @@ -1022,7 +1231,7 @@ dependencies = [ [[package]] name = "ff_ext" version = "0.1.0" -source = "git+https://github.com/scroll-tech/gkr-backend.git?rev=v1.0.0-alpha.6#3a9e040bdbdf0059ed432b9d8a93a29171200e83" +source = "git+https://github.com/scroll-tech/gkr-backend.git?branch=chore%2Fsw_curve_default#c2580ace319e01bc8657dc92a6b5775348ce3133" dependencies = [ "once_cell", "p3", @@ -1032,9 +1241,9 @@ dependencies = [ [[package]] name = "find-msvc-tools" -version = "0.1.2" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ced73b1dacfc750a6db6c0a0c3a3853c8b41997e2e2c563dc90804ae6867959" +checksum = "52051878f80a721bb68ebfbc930e07b65ba72f2da88968ea5c06fd6ca3d3a127" [[package]] name = "fnv" @@ -1056,12 +1265,24 @@ checksum = "1d758ba1b47b00caf47f24925c0074ecb20d6dfcffe7f6d53395c0465674841a" [[package]] name = "generic-array" -version = "0.14.7" +version = "0.14.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +checksum = "4bb6743198531e02858aeaea5398fcc883e71851fcbcb5a2f773e2fb6cb1edf2" dependencies = [ "typenum", "version_check", + "zeroize", +] + +[[package]] +name = "generic-array" +version = "1.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eaf57c49a95fd1fe24b90b3033bee6dc7e8f1288d51494cb44e627c295e38542" +dependencies = [ + "rustversion", + "serde_core", + "typenum", ] [[package]] @@ -1081,19 +1302,19 @@ checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" dependencies = [ "cfg-if", "libc", - "wasi 0.11.1+wasi-snapshot-preview1", + "wasi", ] [[package]] name = "getrandom" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" +checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" dependencies = [ "cfg-if", "libc", "r-efi", - "wasi 0.14.7+wasi-0.2.4", + "wasip2", ] [[package]] @@ -1105,7 +1326,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -1117,7 +1338,7 @@ checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7" [[package]] name = "gkr_iop" version = "0.1.0" -source = "git+https://github.com/scroll-tech/ceno.git?branch=master#d096f28b52390a30ad7d2f77d8033a9e08673162" +source = "git+https://github.com/scroll-tech/ceno.git?branch=feat%2Fseptic_global_chip#2d8d643565cb741f8f8565f2d590cbb6b5021abd" dependencies = [ "bincode", "either", @@ -1133,7 +1354,7 @@ dependencies = [ "strum", "strum_macros", "sumcheck", - "thiserror", + "thiserror 2.0.17", "thread_local", "tracing", "tracing-forest", @@ -1144,9 +1365,9 @@ dependencies = [ [[package]] name = "glam" -version = "0.30.8" +version = "0.30.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e12d847aeb25f41be4c0ec9587d624e9cd631bc007a8fd7ce3f5851e064c6460" +checksum = "bd47b05dddf0005d850e5644cae7f2b14ac3df487979dbfff3b56f20b1a6ae46" [[package]] name = "glob" @@ -1154,6 +1375,16 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" +[[package]] +name = "gmp-mpfr-sys" +version = "1.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60f8970a75c006bb2f8ae79c6768a116dd215fa8346a87aed99bf9d82ca43394" +dependencies = [ + "libc", + "windows-sys 0.60.2", +] + [[package]] name = "group" version = "0.12.1" @@ -1297,6 +1528,26 @@ dependencies = [ "arrayvec", ] +[[package]] +name = "hmac" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" +dependencies = [ + "digest", +] + +[[package]] +name = "impl-trait-for-tuples" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.108", +] + [[package]] name = "indenter" version = "0.3.4" @@ -1305,9 +1556,9 @@ checksum = "964de6e86d545b246d84badc0fef527924ace5134f30641c203ef52ba83f58d5" [[package]] name = "indexmap" -version = "2.11.4" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" +checksum = "6717a8d2a5a929a1a2eb43a12812498ed141a0bcfb7e8f7844fbdbe4303bba9f" dependencies = [ "equivalent", "hashbrown 0.16.0", @@ -1315,20 +1566,20 @@ dependencies = [ [[package]] name = "is-terminal" -version = "0.4.16" +version = "0.4.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" +checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46" dependencies = [ "hermit-abi", "libc", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] name = "is_terminal_polyfill" -version = "1.70.1" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" [[package]] name = "itertools" @@ -1365,9 +1616,9 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "js-sys" -version = "0.3.81" +version = "0.3.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec48937a97411dcb524a265206ccd4c90bb711fca92b2792c407f268825b9305" +checksum = "b011eec8cc36da2aab2d5cff675ec18454fad408585853910a202391cf9f8e65" dependencies = [ "once_cell", "wasm-bindgen", @@ -1387,6 +1638,20 @@ dependencies = [ "subtle", ] +[[package]] +name = "k256" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" +dependencies = [ + "cfg-if", + "ecdsa", + "elliptic-curve", + "once_cell", + "sha2", + "signature", +] + [[package]] name = "keccak" version = "0.1.5" @@ -1407,9 +1672,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.176" +version = "0.2.177" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58f929b4d672ea937a23a1ab494143d968337a5f47e56d0815df1e0890ddf174" +checksum = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976" [[package]] name = "libm" @@ -1534,7 +1799,7 @@ dependencies = [ [[package]] name = "mpcs" version = "0.1.0" -source = "git+https://github.com/scroll-tech/gkr-backend.git?rev=v1.0.0-alpha.6#3a9e040bdbdf0059ed432b9d8a93a29171200e83" +source = "git+https://github.com/scroll-tech/gkr-backend.git?branch=chore%2Fsw_curve_default#c2580ace319e01bc8657dc92a6b5775348ce3133" dependencies = [ "bincode", "clap", @@ -1558,7 +1823,7 @@ dependencies = [ [[package]] name = "multilinear_extensions" version = "0.1.0" -source = "git+https://github.com/scroll-tech/gkr-backend.git?rev=v1.0.0-alpha.6#3a9e040bdbdf0059ed432b9d8a93a29171200e83" +source = "git+https://github.com/scroll-tech/gkr-backend.git?branch=chore%2Fsw_curve_default#c2580ace319e01bc8657dc92a6b5775348ce3133" dependencies = [ "either", "ff_ext", @@ -1572,22 +1837,22 @@ dependencies = [ [[package]] name = "munge" -version = "0.4.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7feb0b48aa0a25f9fe0899482c6e1379ee7a11b24a53073eacdecb9adb6dc60" +checksum = "5e17401f259eba956ca16491461b6e8f72913a0a114e39736ce404410f915a0c" dependencies = [ "munge_macro", ] [[package]] name = "munge_macro" -version = "0.4.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2e3795a5d2da581a8b252fec6022eee01aea10161a4d1bf237d4cbe47f7e988" +checksum = "4568f25ccbd45ab5d5603dc34318c1ec56b117531781260002151b8530a9f931" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -1616,11 +1881,25 @@ dependencies = [ [[package]] name = "nu-ansi-term" -version = "0.50.1" +version = "0.50.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" +dependencies = [ + "windows-sys 0.61.2", +] + +[[package]] +name = "num" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4a28e057d01f97e61255210fcff094d74ed0466038633e95017f5beb68e4399" +checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" dependencies = [ - "windows-sys 0.52.0", + "num-bigint 0.4.6", + "num-complex", + "num-integer", + "num-iter", + "num-rational", + "num-traits", ] [[package]] @@ -1662,7 +1941,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -1674,6 +1953,43 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-iter" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-modular" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17bb261bf36fa7d83f4c294f834e91256769097b3cb505d44831e0a179ac647f" + +[[package]] +name = "num-order" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "537b596b97c40fcf8056d153049eb22f481c17ebce72a513ec9286e4986d1bb6" +dependencies = [ + "num-modular", +] + +[[package]] +name = "num-rational" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" +dependencies = [ + "num-bigint 0.4.6", + "num-integer", + "num-traits", +] + [[package]] name = "num-traits" version = "0.2.19" @@ -1708,7 +2024,7 @@ version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" dependencies = [ - "proc-macro-crate", + "proc-macro-crate 1.3.1", "proc-macro2", "quote", "syn 1.0.109", @@ -1743,14 +2059,14 @@ checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" [[package]] name = "once_cell_polyfill" -version = "1.70.1" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -1763,7 +2079,7 @@ dependencies = [ [[package]] name = "openvm-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "backtrace", "cfg-if", @@ -1787,24 +2103,24 @@ dependencies = [ "serde", "serde-big-array", "static_assertions", - "thiserror", + "thiserror 1.0.69", "tracing", ] [[package]] name = "openvm-circuit-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "itertools 0.14.0", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] name = "openvm-circuit-primitives" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "derive-new 0.6.0", "itertools 0.14.0", @@ -1819,27 +2135,27 @@ dependencies = [ [[package]] name = "openvm-circuit-primitives-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "itertools 0.14.0", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] name = "openvm-custom-insn" version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] name = "openvm-instructions" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "backtrace", "derive-new 0.6.0", @@ -1856,16 +2172,16 @@ dependencies = [ [[package]] name = "openvm-instructions-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] name = "openvm-native-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1892,7 +2208,7 @@ dependencies = [ [[package]] name = "openvm-native-compiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "backtrace", "itertools 0.14.0", @@ -1914,16 +2230,16 @@ dependencies = [ [[package]] name = "openvm-native-compiler-derive" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] name = "openvm-native-recursion" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "cfg-if", "itertools 0.14.0", @@ -1947,7 +2263,7 @@ dependencies = [ [[package]] name = "openvm-platform" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "libm", "openvm-custom-insn", @@ -1957,7 +2273,7 @@ dependencies = [ [[package]] name = "openvm-poseidon2-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "derivative", "lazy_static", @@ -1974,7 +2290,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", @@ -1997,7 +2313,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "openvm-custom-insn", "p3-field", @@ -2007,7 +2323,7 @@ dependencies = [ [[package]] name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "openvm-instructions", "openvm-instructions-derive", @@ -2042,7 +2358,7 @@ dependencies = [ "rayon", "rustc-hash", "serde", - "thiserror", + "thiserror 1.0.69", "tracing", ] @@ -2085,7 +2401,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#b0c1e4d0bad4c7a5ea6a5e17dfc872d715171575" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" dependencies = [ "elf", "eyre", @@ -2093,7 +2409,7 @@ dependencies = [ "openvm-platform", "openvm-stark-backend", "rrs-lib", - "thiserror", + "thiserror 1.0.69", ] [[package]] @@ -2105,11 +2421,24 @@ dependencies = [ "num-traits", ] +[[package]] +name = "p256" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +dependencies = [ + "ecdsa", + "elliptic-curve", + "primeorder", + "sha2", +] + [[package]] name = "p3" version = "0.1.0" -source = "git+https://github.com/scroll-tech/gkr-backend.git?rev=v1.0.0-alpha.6#3a9e040bdbdf0059ed432b9d8a93a29171200e83" +source = "git+https://github.com/scroll-tech/gkr-backend.git?branch=chore%2Fsw_curve_default#c2580ace319e01bc8657dc92a6b5775348ce3133" dependencies = [ + "p3-air", "p3-baby-bear", "p3-challenger", "p3-commit", @@ -2121,8 +2450,10 @@ dependencies = [ "p3-maybe-rayon", "p3-mds", "p3-merkle-tree", + "p3-monty-31", "p3-poseidon", "p3-poseidon2", + "p3-poseidon2-air", "p3-symmetric", "p3-util", ] @@ -2472,6 +2803,32 @@ dependencies = [ "group 0.13.0", ] +[[package]] +name = "parity-scale-codec" +version = "3.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "799781ae679d79a948e13d4824a40970bfa500058d245760dd857301059810fa" +dependencies = [ + "arrayvec", + "byte-slice-cast", + "const_format", + "impl-trait-for-tuples", + "parity-scale-codec-derive", + "rustversion", +] + +[[package]] +name = "parity-scale-codec-derive" +version = "3.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34b4653168b563151153c9e4c08ebed57fb8262bebfa79711552fa983c623e7a" +dependencies = [ + "proc-macro-crate 3.4.0", + "proc-macro2", + "quote", + "syn 2.0.108", +] + [[package]] name = "parse-size" version = "1.1.0" @@ -2514,12 +2871,31 @@ version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" +[[package]] +name = "pem-rfc7468" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" +dependencies = [ + "base64ct", +] + [[package]] name = "pin-project-lite" version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" +[[package]] +name = "pkcs8" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +dependencies = [ + "der", + "spki", +] + [[package]] name = "portable-atomic" version = "1.11.1" @@ -2538,7 +2914,7 @@ dependencies = [ [[package]] name = "poseidon" version = "0.1.0" -source = "git+https://github.com/scroll-tech/gkr-backend.git?rev=v1.0.0-alpha.6#3a9e040bdbdf0059ed432b9d8a93a29171200e83" +source = "git+https://github.com/scroll-tech/gkr-backend.git?branch=chore%2Fsw_curve_default#c2580ace319e01bc8657dc92a6b5775348ce3133" dependencies = [ "ff_ext", "p3", @@ -2568,6 +2944,15 @@ dependencies = [ "unicode-width", ] +[[package]] +name = "primeorder" +version = "0.13.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" +dependencies = [ + "elliptic-curve", +] + [[package]] name = "proc-macro-crate" version = "1.3.1" @@ -2578,6 +2963,15 @@ dependencies = [ "toml_edit 0.19.15", ] +[[package]] +name = "proc-macro-crate" +version = "3.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" +dependencies = [ + "toml_edit 0.23.7", +] + [[package]] name = "proc-macro-error-attr2" version = "2.0.0" @@ -2597,36 +2991,36 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] name = "proc-macro2" -version = "1.0.101" +version = "1.0.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" +checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" dependencies = [ "unicode-ident", ] [[package]] name = "ptr_meta" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe9e76f66d3f9606f44e45598d155cb13ecf09f4a28199e48daf8c8fc937ea90" +checksum = "0b9a0cf95a1196af61d4f1cbdab967179516d9a4a4312af1f31948f8f6224a79" dependencies = [ "ptr_meta_derive", ] [[package]] name = "ptr_meta_derive" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca414edb151b4c8d125c12566ab0d74dc9cdba36fb80eb7b848c15f495fd32d1" +checksum = "7347867d0a7e1208d93b46767be83e2b8f978c3dad35f775ac8d8847551d6fe1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -2639,16 +3033,16 @@ dependencies = [ "libc", "once_cell", "raw-cpuid", - "wasi 0.11.1+wasi-snapshot-preview1", + "wasi", "web-sys", "winapi", ] [[package]] name = "quote" -version = "1.0.40" +version = "1.0.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +checksum = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1" dependencies = [ "proc-macro2", ] @@ -2677,9 +3071,9 @@ dependencies = [ [[package]] name = "rancor" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caf5f7161924b9d1cea0e4cabc97c372cea92b5f927fc13c6bca67157a0ad947" +checksum = "a063ea72381527c2a0561da9c80000ef822bdd7c3241b1cc1b12100e3df081ee" dependencies = [ "ptr_meta", ] @@ -2758,14 +3152,14 @@ checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ "getrandom 0.2.16", "libredox", - "thiserror", + "thiserror 1.0.69", ] [[package]] name = "regex-automata" -version = "0.4.11" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "833eb9ce86d40ef33cb1306d8accf7bc8ec2bfea4355cbdebb3df68b40925cad" +checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c" dependencies = [ "aho-corasick", "memchr", @@ -2774,24 +3168,34 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.6" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001" +checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58" [[package]] name = "rend" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a35e8a6bf28cd121053a66aa2e6a2e3eaffad4a60012179f0e864aa5ffeff215" +checksum = "cadadef317c2f20755a64d7fdc48f9e7178ee6b0e1f7fce33fa60f1d68a276e6" dependencies = [ "bytecheck", ] +[[package]] +name = "rfc6979" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +dependencies = [ + "hmac", + "subtle", +] + [[package]] name = "rkyv" -version = "0.8.11" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19f5c3e5da784cd8c69d32cdc84673f3204536ca56e1fa01be31a74b92c932ac" +checksum = "35a640b26f007713818e9a9b65d34da1cf58538207b052916a83d80e43f3ffa4" dependencies = [ "bytecheck", "bytes", @@ -2808,13 +3212,13 @@ dependencies = [ [[package]] name = "rkyv_derive" -version = "0.8.11" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4270433626cffc9c4c1d3707dd681f2a2718d3d7b09ad754bec137acecda8d22" +checksum = "bd83f5f173ff41e00337d97f6572e416d022ef8a19f371817259ae960324c482" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -2838,6 +3242,18 @@ dependencies = [ "paste", ] +[[package]] +name = "rug" +version = "1.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58ad2e973fe3c3214251a840a621812a4f40468da814b1a3d6947d433c2af11f" +dependencies = [ + "az", + "gmp-mpfr-sys", + "libc", + "libm", +] + [[package]] name = "rustc-demangle" version = "0.1.26" @@ -2875,7 +3291,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.61.1", + "windows-sys 0.61.2", ] [[package]] @@ -2890,6 +3306,44 @@ version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +[[package]] +name = "scale-info" +version = "2.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "346a3b32eba2640d17a9cb5927056b08f3de90f65b72fe09402c2ad07d684d0b" +dependencies = [ + "cfg-if", + "derive_more 1.0.0", + "parity-scale-codec", + "scale-info-derive", +] + +[[package]] +name = "scale-info-derive" +version = "2.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf" +dependencies = [ + "proc-macro-crate 3.4.0", + "proc-macro2", + "quote", + "syn 2.0.108", +] + +[[package]] +name = "sec1" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" +dependencies = [ + "base16ct", + "der", + "generic-array 0.14.9", + "pkcs8", + "subtle", + "zeroize", +] + [[package]] name = "secp" version = "0.4.1" @@ -2973,7 +3427,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -3034,6 +3488,16 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" +[[package]] +name = "signature" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +dependencies = [ + "digest", + "rand_core", +] + [[package]] name = "simdutf8" version = "0.1.5" @@ -3051,6 +3515,41 @@ name = "smallvec" version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" +dependencies = [ + "serde", +] + +[[package]] +name = "snowbridge-amcl" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "460a9ed63cdf03c1b9847e8a12a5f5ba19c4efd5869e4a737e05be25d7c427e5" +dependencies = [ + "parity-scale-codec", + "scale-info", +] + +[[package]] +name = "sp1-curves" +version = "0.1.0" +source = "git+https://github.com/scroll-tech/gkr-backend.git?branch=chore%2Fsw_curve_default#c2580ace319e01bc8657dc92a6b5775348ce3133" +dependencies = [ + "cfg-if", + "dashu", + "elliptic-curve", + "ff_ext", + "generic-array 1.3.5", + "itertools 0.13.0", + "k256", + "multilinear_extensions", + "num", + "p256", + "p3-field", + "rug", + "serde", + "snowbridge-amcl", + "typenum", +] [[package]] name = "spin" @@ -3058,6 +3557,16 @@ version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +[[package]] +name = "spki" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" +dependencies = [ + "base64ct", + "der", +] + [[package]] name = "static_assertions" version = "1.1.0" @@ -3095,7 +3604,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -3120,7 +3629,7 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "sumcheck" version = "0.1.0" -source = "git+https://github.com/scroll-tech/gkr-backend.git?rev=v1.0.0-alpha.6#3a9e040bdbdf0059ed432b9d8a93a29171200e83" +source = "git+https://github.com/scroll-tech/gkr-backend.git?branch=chore%2Fsw_curve_default#c2580ace319e01bc8657dc92a6b5775348ce3133" dependencies = [ "either", "ff_ext", @@ -3130,7 +3639,7 @@ dependencies = [ "rayon", "serde", "sumcheck_macro", - "thiserror", + "thiserror 1.0.69", "tracing", "transcript", ] @@ -3138,14 +3647,14 @@ dependencies = [ [[package]] name = "sumcheck_macro" version = "0.1.0" -source = "git+https://github.com/scroll-tech/gkr-backend.git?rev=v1.0.0-alpha.6#3a9e040bdbdf0059ed432b9d8a93a29171200e83" +source = "git+https://github.com/scroll-tech/gkr-backend.git?branch=chore%2Fsw_curve_default#c2580ace319e01bc8657dc92a6b5775348ce3133" dependencies = [ "itertools 0.13.0", "p3", "proc-macro2", "quote", "rand", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -3161,9 +3670,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.106" +version = "2.0.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" +checksum = "da58917d35242480a05c2897064da0a80589a2a0476c9a3f2fdc83b53502e917" dependencies = [ "proc-macro2", "quote", @@ -3183,10 +3692,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16" dependencies = [ "fastrand", - "getrandom 0.3.3", + "getrandom 0.3.4", "once_cell", "rustix", - "windows-sys 0.61.1", + "windows-sys 0.61.2", ] [[package]] @@ -3206,7 +3715,16 @@ version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" dependencies = [ - "thiserror-impl", + "thiserror-impl 1.0.69", +] + +[[package]] +name = "thiserror" +version = "2.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8" +dependencies = [ + "thiserror-impl 2.0.17", ] [[package]] @@ -3217,7 +3735,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", +] + +[[package]] +name = "thiserror-impl" +version = "2.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.108", ] [[package]] @@ -3231,9 +3760,9 @@ dependencies = [ [[package]] name = "tikv-jemalloc-sys" -version = "0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7" +version = "0.6.1+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd3c60906412afa9c2b5b5a48ca6a5abe5736aec9eb48ad05037a677e52e4e2d" +checksum = "cd8aa5b2ab86a2cefa406d889139c162cbb230092f7d1d7cbc1716405d852a3b" dependencies = [ "cc", "libc", @@ -3241,9 +3770,9 @@ dependencies = [ [[package]] name = "tikv-jemallocator" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cec5ff18518d81584f477e9bfdf957f5bb0979b0bac3af4ca30b5b3ae2d2865" +checksum = "0359b4327f954e0567e69fb191cf1436617748813819c94b8cd4a431422d053a" dependencies = [ "libc", "tikv-jemalloc-sys", @@ -3281,7 +3810,7 @@ checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" dependencies = [ "serde", "serde_spanned", - "toml_datetime", + "toml_datetime 0.6.11", "toml_edit 0.22.27", ] @@ -3294,6 +3823,15 @@ dependencies = [ "serde", ] +[[package]] +name = "toml_datetime" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2cdb639ebbc97961c51720f858597f7f24c4fc295327923af55b74c3c724533" +dependencies = [ + "serde_core", +] + [[package]] name = "toml_edit" version = "0.19.15" @@ -3301,7 +3839,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ "indexmap", - "toml_datetime", + "toml_datetime 0.6.11", "winnow 0.5.40", ] @@ -3314,11 +3852,32 @@ dependencies = [ "indexmap", "serde", "serde_spanned", - "toml_datetime", + "toml_datetime 0.6.11", "toml_write", "winnow 0.7.13", ] +[[package]] +name = "toml_edit" +version = "0.23.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6485ef6d0d9b5d0ec17244ff7eb05310113c3f316f2d14200d4de56b3cb98f8d" +dependencies = [ + "indexmap", + "toml_datetime 0.7.3", + "toml_parser", + "winnow 0.7.13", +] + +[[package]] +name = "toml_parser" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0cbe268d35bdb4bb5a56a2de88d0ad0eb70af5384a99d648cd4b3d04039800e" +dependencies = [ + "winnow 0.7.13", +] + [[package]] name = "toml_write" version = "0.1.2" @@ -3344,7 +3903,7 @@ checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] @@ -3365,7 +3924,7 @@ checksum = "ee40835db14ddd1e3ba414292272eddde9dad04d3d4b65509656414d1c42592f" dependencies = [ "ansi_term", "smallvec", - "thiserror", + "thiserror 1.0.69", "tracing", "tracing-subscriber", ] @@ -3402,7 +3961,7 @@ dependencies = [ [[package]] name = "transcript" version = "0.1.0" -source = "git+https://github.com/scroll-tech/gkr-backend.git?rev=v1.0.0-alpha.6#3a9e040bdbdf0059ed432b9d8a93a29171200e83" +source = "git+https://github.com/scroll-tech/gkr-backend.git?branch=chore%2Fsw_curve_default#c2580ace319e01bc8657dc92a6b5775348ce3133" dependencies = [ "ff_ext", "itertools 0.13.0", @@ -3422,15 +3981,15 @@ dependencies = [ [[package]] name = "typenum" -version = "1.18.0" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" +checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" [[package]] name = "unicode-ident" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" +checksum = "462eeb75aeb73aea900253ce739c8e18a67423fadf006037cd3ff27e82748a06" [[package]] name = "unicode-width" @@ -3488,15 +4047,6 @@ version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" -[[package]] -name = "wasi" -version = "0.14.7+wasi-0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c" -dependencies = [ - "wasip2", -] - [[package]] name = "wasip2" version = "1.0.1+wasi-0.2.4" @@ -3508,9 +4058,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.104" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1da10c01ae9f1ae40cbfac0bac3b1e724b320abfcf52229f80b547c0d250e2d" +checksum = "da95793dfc411fbbd93f5be7715b0578ec61fe87cb1a42b12eb625caa5c5ea60" dependencies = [ "cfg-if", "once_cell", @@ -3519,25 +4069,11 @@ dependencies = [ "wasm-bindgen-shared", ] -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.104" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "671c9a5a66f49d8a47345ab942e2cb93c7d1d0339065d4f8139c486121b43b19" -dependencies = [ - "bumpalo", - "log", - "proc-macro2", - "quote", - "syn 2.0.106", - "wasm-bindgen-shared", -] - [[package]] name = "wasm-bindgen-macro" -version = "0.2.104" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ca60477e4c59f5f2986c50191cd972e3a50d8a95603bc9434501cf156a9a119" +checksum = "04264334509e04a7bf8690f2384ef5265f05143a4bff3889ab7a3269adab59c2" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3545,31 +4081,31 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.104" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f07d2f20d4da7b26400c9f4a0511e6e0345b040694e8a75bd41d578fa4421d7" +checksum = "420bc339d9f322e562942d52e115d57e950d12d88983a14c79b86859ee6c7ebc" dependencies = [ + "bumpalo", "proc-macro2", "quote", - "syn 2.0.106", - "wasm-bindgen-backend", + "syn 2.0.108", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.104" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bad67dc8b2a1a6e5448428adec4c3e84c43e561d8c9ee8a9e5aabeb193ec41d1" +checksum = "76f218a38c84bcb33c25ec7059b07847d465ce0e0a76b995e134a45adcb6af76" dependencies = [ "unicode-ident", ] [[package]] name = "web-sys" -version = "0.3.81" +version = "0.3.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9367c417a924a74cae129e6a2ae3b47fabb1f8995595ab474029da749a8be120" +checksum = "3a1f95c0d03a47f4ae1f7a64643a6bb97465d9b740f0fa8f90ea33915c99a9a1" dependencies = [ "js-sys", "wasm-bindgen", @@ -3578,7 +4114,7 @@ dependencies = [ [[package]] name = "whir" version = "0.1.0" -source = "git+https://github.com/scroll-tech/gkr-backend.git?rev=v1.0.0-alpha.6#3a9e040bdbdf0059ed432b9d8a93a29171200e83" +source = "git+https://github.com/scroll-tech/gkr-backend.git?branch=chore%2Fsw_curve_default#c2580ace319e01bc8657dc92a6b5775348ce3133" dependencies = [ "bincode", "clap", @@ -3622,27 +4158,9 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windows-link" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-sys" -version = "0.59.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" -dependencies = [ - "windows-targets 0.52.6", -] +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" [[package]] name = "windows-sys" @@ -3650,146 +4168,82 @@ version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ - "windows-targets 0.53.4", + "windows-targets", ] [[package]] name = "windows-sys" -version = "0.61.1" +version = "0.61.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f109e41dd4a3c848907eb83d5a42ea98b3769495597450cf6d153507b166f0f" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" dependencies = [ "windows-link", ] [[package]] name = "windows-targets" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" -dependencies = [ - "windows_aarch64_gnullvm 0.52.6", - "windows_aarch64_msvc 0.52.6", - "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm 0.52.6", - "windows_i686_msvc 0.52.6", - "windows_x86_64_gnu 0.52.6", - "windows_x86_64_gnullvm 0.52.6", - "windows_x86_64_msvc 0.52.6", -] - -[[package]] -name = "windows-targets" -version = "0.53.4" +version = "0.53.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d42b7b7f66d2a06854650af09cfdf8713e427a439c97ad65a6375318033ac4b" +checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" dependencies = [ "windows-link", - "windows_aarch64_gnullvm 0.53.0", - "windows_aarch64_msvc 0.53.0", - "windows_i686_gnu 0.53.0", - "windows_i686_gnullvm 0.53.0", - "windows_i686_msvc 0.53.0", - "windows_x86_64_gnu 0.53.0", - "windows_x86_64_gnullvm 0.53.0", - "windows_x86_64_msvc 0.53.0", + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_gnullvm", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", ] [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.6" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" +checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" [[package]] name = "windows_aarch64_msvc" -version = "0.52.6" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" +checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" [[package]] name = "windows_i686_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" - -[[package]] -name = "windows_i686_gnu" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" - -[[package]] -name = "windows_i686_gnullvm" -version = "0.52.6" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" +checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" [[package]] name = "windows_i686_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.6" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" +checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" [[package]] name = "windows_i686_msvc" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" +checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" [[package]] name = "windows_x86_64_gnu" -version = "0.52.6" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" +checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.6" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" +checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" [[package]] name = "windows_x86_64_msvc" -version = "0.53.0" +version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" +checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" [[package]] name = "winnow" @@ -3818,7 +4272,7 @@ checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" [[package]] name = "witness" version = "0.1.0" -source = "git+https://github.com/scroll-tech/gkr-backend.git?rev=v1.0.0-alpha.6#3a9e040bdbdf0059ed432b9d8a93a29171200e83" +source = "git+https://github.com/scroll-tech/gkr-backend.git?branch=chore%2Fsw_curve_default#c2580ace319e01bc8657dc92a6b5775348ce3133" dependencies = [ "ff_ext", "multilinear_extensions", @@ -3854,14 +4308,14 @@ checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] name = "zeroize" -version = "1.8.1" +version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" +checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0" dependencies = [ "zeroize_derive", ] @@ -3874,7 +4328,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.108", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 3919118..b55ce76 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -49,15 +49,15 @@ ark-poly = "0.5" ark-serialize = "0.5" # Ceno -ceno_mle = { git = "https://github.com/scroll-tech/gkr-backend.git", rev = "v1.0.0-alpha.6", package = "multilinear_extensions" } -ceno_sumcheck = { git = "https://github.com/scroll-tech/gkr-backend.git", rev = "v1.0.0-alpha.6", package = "sumcheck" } -ceno_transcript = { git = "https://github.com/scroll-tech/gkr-backend.git", rev = "v1.0.0-alpha.6", package = "transcript" } -ceno_witness = { git = "https://github.com/scroll-tech/gkr-backend.git", rev = "v1.0.0-alpha.6", package = "witness" } -ceno_zkvm = { git = "https://github.com/scroll-tech/ceno.git", branch = "master" } -ceno_emul = { git = "https://github.com/scroll-tech/ceno.git", branch = "master" } -gkr_iop = { git = "https://github.com/scroll-tech/ceno.git", branch = "master" } -mpcs = { git = "https://github.com/scroll-tech/gkr-backend.git", rev = "v1.0.0-alpha.6" } -ff_ext = { git = "https://github.com/scroll-tech/gkr-backend.git", rev = "v1.0.0-alpha.6" } +ceno_mle = { git = "https://github.com/scroll-tech/gkr-backend.git", branch = "chore/sw_curve_default", package = "multilinear_extensions" } +ceno_sumcheck = { git = "https://github.com/scroll-tech/gkr-backend.git", branch = "chore/sw_curve_default", package = "sumcheck" } +ceno_transcript = { git = "https://github.com/scroll-tech/gkr-backend.git", branch = "chore/sw_curve_default", package = "transcript" } +ceno_witness = { git = "https://github.com/scroll-tech/gkr-backend.git", branch = "chore/sw_curve_default", package = "witness" } +mpcs = { git = "https://github.com/scroll-tech/gkr-backend.git", branch = "chore/sw_curve_default" } +ff_ext = { git = "https://github.com/scroll-tech/gkr-backend.git", branch = "chore/sw_curve_default" } +ceno_zkvm = { git = "https://github.com/scroll-tech/ceno.git", branch = "feat/septic_global_chip" } +ceno_emul = { git = "https://github.com/scroll-tech/ceno.git", branch = "feat/septic_global_chip" } +gkr_iop = { git = "https://github.com/scroll-tech/ceno.git", branch = "feat/septic_global_chip" } [features] default = ["parallel", "nightly-features"] diff --git a/src/arithmetics/mod.rs b/src/arithmetics/mod.rs index 77ccfed..d3ab92d 100644 --- a/src/arithmetics/mod.rs +++ b/src/arithmetics/mod.rs @@ -203,6 +203,19 @@ pub fn dot_product( acc } +// In-place masking of a value array with randomness +pub fn mask_arr( + builder: &mut Builder, + a: &Array>, + mask: &Array>, +) { + builder.range(0, a.len()).for_each(|idx_vec, builder| { + let a_i = builder.get(a, idx_vec[0]); + let m_i = builder.get(mask, idx_vec[0]); + builder.set(a, idx_vec[0], a_i * m_i); + }); +} + pub fn reverse>( builder: &mut Builder, arr: &Array, @@ -320,6 +333,19 @@ pub fn nested_product( acc } +// Multiply all elements in an Array +pub fn arr_product( + builder: &mut Builder, + arr: &Array>, +) -> Ext { + let acc = builder.constant(C::EF::ONE); + iter_zip!(builder, arr).for_each(|ptr_vec, builder| { + let el = builder.iter_ptr_get(&arr, ptr_vec[0]); + builder.assign(&acc, acc * el); + }); + acc +} + // Generate alpha power challenges pub fn gen_alpha_pows( builder: &mut Builder, @@ -347,14 +373,13 @@ pub fn gen_alpha_pows( /// = \sum_{\mathbf{b}=0}^{max_idx} \prod_{i=0}^{n-1} (x_i y_i b_i + (1 - x_i)(1 - y_i)(1 - b_i)) pub fn eq_eval_less_or_equal_than( builder: &mut Builder, - opcode_proof: &ZKVMChipProofInputVariable, + // opcode_proof: &ZKVMChipProofInputVariable, + eq_bit_decomp: &Array>, a: &Array>, b: &Array>, ) -> Ext { builder.cycle_tracker_start("Compute eq_eval_less_or_equal_than"); - let eq_bit_decomp: Array> = opcode_proof - .num_instances_minus_one_bit_decomposition - .slice(builder, 0, b.len()); + let eq_bit_decomp: Array> = eq_bit_decomp.slice(builder, 0, b.len()); let one_ext: Ext = builder.constant(C::EF::ONE); let rp_len = builder.eval_expr(b.len() + C::N::ONE); diff --git a/src/zkvm_verifier/binding.rs b/src/zkvm_verifier/binding.rs index 7759ea8..747ce8f 100644 --- a/src/zkvm_verifier/binding.rs +++ b/src/zkvm_verifier/binding.rs @@ -5,7 +5,7 @@ use crate::basefold_verifier::basefold::{ use crate::tower_verifier::binding::{ IOPProverMessageVec, IOPProverMessageVecVariable, ThreeDimensionalVecVariable, - ThreeDimensionalVector, + ThreeDimensionalVector, IOPProverMessageVariable }; use crate::{arithmetics::ceil_log2, tower_verifier::binding::PointVariable}; use itertools::Itertools; @@ -498,3 +498,35 @@ pub struct GKRClaimEvaluation { pub point: PointVariable, pub poly: Usize, } + +#[derive(DslVariable, Clone)] +pub struct SepticExtensionVariable { + pub vs: Array> +} + +impl From>> for SepticExtensionVariable { + fn from(slice: Array>) -> Self { + Self { + vs: slice + } + } +} + +#[derive(DslVariable, Clone)] +pub struct SepticPointVariable { + x: SepticExtensionVariable, + y: SepticExtensionVariable, + is_infinity: Usize, +} + +#[derive(DslVariable, Clone)] +pub struct EccQuarkProofVariable { + pub zerocheck_proof: IOPProverMessageVecVariable, + pub num_instances: Usize, + pub num_instances_minus_one_bit_decomposition: Array>, + pub num_vars: Usize, // next_pow2_instance_padding(proof.num_instances).ilog2() + pub evals: Array>, + pub rt: PointVariable, + pub sum: SepticPointVariable, + pub prefix_one_seq: Array>, +} \ No newline at end of file diff --git a/src/zkvm_verifier/verifier.rs b/src/zkvm_verifier/verifier.rs index 97b1bcd..4ce13a0 100644 --- a/src/zkvm_verifier/verifier.rs +++ b/src/zkvm_verifier/verifier.rs @@ -3,8 +3,7 @@ use super::binding::{ ZKVMProofInputVariable, }; use crate::arithmetics::{ - challenger_multi_observe, eq_eval, eval_ceno_expr_with_instance, eval_stacked_constant, - eval_stacked_wellform_address_vec, PolyEvaluator, UniPolyExtrapolator, + arr_product, challenger_multi_observe, eq_eval, eval_ceno_expr_with_instance, eval_stacked_constant, eval_stacked_wellform_address_vec, mask_arr, reverse, PolyEvaluator, UniPolyExtrapolator }; use crate::basefold_verifier::basefold::{ BasefoldCommitmentVariable, RoundOpeningVariable, RoundVariable, @@ -17,7 +16,7 @@ use crate::basefold_verifier::verifier::batch_verify; use crate::tower_verifier::program::verify_tower_proof; use crate::transcript::transcript_observe_label; use crate::zkvm_verifier::binding::{ - GKRProofVariable, LayerProofVariable, SumcheckLayerProofVariable, + EccQuarkProofVariable, GKRProofVariable, LayerProofVariable, SepticExtensionVariable, SumcheckLayerProofVariable }; use crate::{ arithmetics::{ @@ -59,6 +58,8 @@ type E = BabyBearExt4; type Pcs = Basefold; const NUM_FANIN: usize = 2; +const SEPTIC_EXTENSION_DEGREE: usize = 7; +const SEPTIC_JACOBIAN_NUM_MLES: usize = 3 * SEPTIC_EXTENSION_DEGREE; pub fn transcript_group_observe_label( builder: &mut Builder, @@ -937,9 +938,9 @@ pub fn evaluate_selector( let zero = builder.constant(C::EF::ZERO); (expr, eq_eval(builder, out_point, in_point, one, zero)) } - SelectorType::Prefix(_, expr) => ( + SelectorType::Prefix(expr) => ( expr, - eq_eval_less_or_equal_than(builder, opcode_proof, out_point, in_point), + eq_eval_less_or_equal_than(builder, &opcode_proof.num_instances_minus_one_bit_decomposition, out_point, in_point), ), SelectorType::OrderedSparse32 { indices, @@ -962,13 +963,16 @@ pub fn evaluate_selector( let sel = eq_eval_less_or_equal_than( builder, - opcode_proof, + &opcode_proof.num_instances_minus_one_bit_decomposition, &out_point_slice, &in_point_slice, ); builder.assign(&eval, eval * sel); (expression, eval) + }, + _ => { + unreachable!() } }; @@ -976,7 +980,72 @@ pub fn evaluate_selector( let Expression::StructuralWitIn(wit_id, _) = expr else { panic!("Wrong selector expression format"); }; - let wit_id = *wit_id as usize + offset_eq_id; + let wit_id = wit_id.clone() as usize + offset_eq_id; + builder.set(evals, wit_id, eval); +} + +pub fn evaluate_ecc_selector( + builder: &mut Builder, + sel_type: &SelectorType, + evals: &Array>, + out_point: &Array>, + in_point: &Array>, + proof: &EccQuarkProofVariable, + offset_eq_id: usize, +) { + let (expr, eval) = match sel_type { + SelectorType::QuarkBinaryTreeLessThan(expr) => { + builder.assert_nonzero(&proof.num_instances); + // assert!(ctx.num_instances <= (1 << out_point.len())); + builder.assert_nonzero(&out_point.len()); + builder.assert_usize_eq(out_point.len(), in_point.len()); + let one: Ext = builder.constant(C::EF::ONE); + + let prefix_one_seq = reverse(builder, &proof.prefix_one_seq); + + let res: Ext = builder.constant(C::EF::ZERO); + let prefix_one_seq_0 = builder.get(&prefix_one_seq, 0); + + builder.if_ne(prefix_one_seq_0.clone(), Usize::from(0)).then(|builder| { + builder.assert_usize_eq(prefix_one_seq_0.clone(), Usize::from(1)); + let out_point_0 = builder.get(out_point, 0); + let in_point_0 = builder.get(in_point, 0); + builder.assign(&res, (one - out_point_0) * (one - in_point_0)); + }); + + builder.range(1, out_point.len()).for_each(|idx_vec, builder| { + let i = idx_vec[0]; + + let num_prefix_one_lhs = builder.get(&prefix_one_seq, i); + let out_point_i = builder.get(&out_point, i); + let in_point_i = builder.get(&in_point, i); + + let lhs_res: Ext = builder.constant(C::EF::ZERO); + builder.if_ne(num_prefix_one_lhs, Usize::from(0)).then(|builder| { + let out_point_slice = out_point.slice(builder, 0, i); + let in_point_slice = in_point.slice(builder, 0, i); + + let eq_eval = eq_eval_less_or_equal_than(builder, &proof.num_instances_minus_one_bit_decomposition, &out_point_slice, &in_point_slice); + builder.assign(&lhs_res, (one - out_point_i) * (one - in_point_i) * eq_eval); + }); + + let rhs_res: Ext = builder.constant(C::EF::ZERO); + builder.assign(&rhs_res, out_point_i * in_point_i * res); + builder.assign(&res, lhs_res + rhs_res); + }); + + (expr, res) + }, + _ => { + unreachable!() + } + }; + + // TODO: just return eval and check it with respect to evals + let Expression::StructuralWitIn(wit_id, _) = expr else { + panic!("Wrong selector expression format"); + }; + let wit_id = wit_id.clone() as usize + offset_eq_id; builder.set(evals, wit_id, eval); } @@ -1462,3 +1531,172 @@ pub fn verify_table_proof( rt_tower.fs } + +pub fn verify_ecc_proof( + builder: &mut Builder, + challenger: &mut DuplexChallengerVariable, + proof: EccQuarkProofVariable, + unipoly_extrapolator: &mut UniPolyExtrapolator, +) { + let num_vars = proof.num_vars.clone(); + let one = builder.constant(C::EF::ONE); + let zero = builder.constant(C::EF::ZERO); + + // Derive out_rt + transcript_observe_label(builder, challenger, b"ecc"); + let out_rt: Array> = builder.dyn_array(num_vars.clone()); + builder.range(0, num_vars.clone()).for_each(|idx_vec, builder| { + let e = challenger.sample_ext(builder); + builder.set(&out_rt, idx_vec[0], e); + }); + + // Derive alpha_pows + transcript_observe_label(builder, challenger, b"ecc_alpha"); + let alpha_pows = gen_alpha_pows(builder, challenger, Usize::from(SEPTIC_EXTENSION_DEGREE * 3 + SEPTIC_EXTENSION_DEGREE * 2)); + + let zero_ext: Ext = builder.constant(C::EF::ZERO); + let three_f: Felt = builder.constant(C::F::from_canonical_u32(3)); + let num_vars_f = builder.unsafe_cast_var_to_felt(num_vars.get_var()); + let (rt, expected_evaluation) = iop_verifier_state_verify( + builder, + challenger, + &zero_ext, + &proof.zerocheck_proof, + num_vars_f, + three_f, + unipoly_extrapolator + ); + + // Calculate v1, v2, v3, v4, v5 + let cord_slice = proof.evals.slice(builder, 2, proof.evals.len()); + let s0: SepticExtensionVariable = cord_slice.slice(builder, 0, SEPTIC_EXTENSION_DEGREE).into(); + let x0: SepticExtensionVariable = cord_slice.slice(builder, SEPTIC_EXTENSION_DEGREE, 2 * SEPTIC_EXTENSION_DEGREE).into(); + let y0: SepticExtensionVariable = cord_slice.slice(builder, 2 * SEPTIC_EXTENSION_DEGREE, 3 * SEPTIC_EXTENSION_DEGREE).into(); + let x1: SepticExtensionVariable = cord_slice.slice(builder, 3 * SEPTIC_EXTENSION_DEGREE, 4 * SEPTIC_EXTENSION_DEGREE).into(); + let y1: SepticExtensionVariable = cord_slice.slice(builder, 4 * SEPTIC_EXTENSION_DEGREE, 5 * SEPTIC_EXTENSION_DEGREE).into(); + let x3: SepticExtensionVariable = cord_slice.slice(builder, 5 * SEPTIC_EXTENSION_DEGREE, 6 * SEPTIC_EXTENSION_DEGREE).into(); + let y3: SepticExtensionVariable = cord_slice.slice(builder, 6 * SEPTIC_EXTENSION_DEGREE, 7 * SEPTIC_EXTENSION_DEGREE).into(); + let s0_squared = septic_ext_squared(builder, &s0); + + let v1: SepticExtensionVariable = builder.dyn_array(SEPTIC_EXTENSION_DEGREE).into(); + let v2: SepticExtensionVariable = builder.dyn_array(SEPTIC_EXTENSION_DEGREE).into(); + let v3: SepticExtensionVariable = builder.dyn_array(SEPTIC_EXTENSION_DEGREE).into(); + let v4: SepticExtensionVariable = builder.dyn_array(SEPTIC_EXTENSION_DEGREE).into(); + let v5: SepticExtensionVariable = builder.dyn_array(SEPTIC_EXTENSION_DEGREE).into(); + + for i in 0..SEPTIC_EXTENSION_DEGREE { + let s0_i = builder.get(&s0.vs, i); + let x0_i = builder.get(&x0.vs, i); + let x1_i = builder.get(&x1.vs, i); + let x3_i = builder.get(&x3.vs, i); + let y0_i = builder.get(&y0.vs, i); + let y1_i = builder.get(&y1.vs, i); + let y3_i = builder.get(&y3.vs, i); + let s0_squared_i = builder.get(&s0_squared.vs, i); + + builder.set(&v1.vs, i, s0_i * (x0_i - x1_i) - (y0_i - y1_i)); + builder.set(&v2.vs, i, s0_squared_i - x0_i - x1_i - x3_i); + builder.set(&v3.vs, i, s0_i * (x0_i - x3_i) - (y0_i + y3_i)); + builder.set(&v4.vs, i, x3_i - x0_i); + builder.set(&v5.vs, i, y3_i - y0_i); + } + + let mask1 = alpha_pows.slice(builder, 0, SEPTIC_EXTENSION_DEGREE); + let mask2 = alpha_pows.slice(builder, SEPTIC_EXTENSION_DEGREE, 2 * SEPTIC_EXTENSION_DEGREE); + let mask3 = alpha_pows.slice(builder, 2 * SEPTIC_EXTENSION_DEGREE, 3 * SEPTIC_EXTENSION_DEGREE); + let mask4 = alpha_pows.slice(builder, 3 * SEPTIC_EXTENSION_DEGREE, 4 * SEPTIC_EXTENSION_DEGREE); + let mask5 = alpha_pows.slice(builder, 4 * SEPTIC_EXTENSION_DEGREE, 5 * SEPTIC_EXTENSION_DEGREE); + + mask_arr(builder, &v1.vs, &mask1); + mask_arr(builder, &v2.vs, &mask2); + mask_arr(builder, &v3.vs, &mask3); + mask_arr(builder, &v4.vs, &mask4); + mask_arr(builder, &v5.vs, &mask5); + + // Evaluate selector expression + let sel_add_expr = SelectorType::::QuarkBinaryTreeLessThan(Expression::StructuralWitIn( + 0, + // this value doesn't matter, as we only need structural id + StackedConstantSequence { max_value: 0 }, + )); + let sel_evals: Array> = builder.dyn_array(1); + evaluate_ecc_selector( + builder, + &sel_add_expr, + &sel_evals, + &out_rt, + &rt, + &proof, + 0 + ); + let expected_sel_add = builder.get(&sel_evals, 0); + + // Assertions + let proof_eval_0 = builder.get(&proof.evals, 0); + builder.assert_ext_eq(proof_eval_0, expected_sel_add); + + let e = eq_eval(builder, &out_rt, &rt, one, zero); + let out_rt_prod = arr_product(builder, &out_rt); + let rt_prod = arr_product(builder, &rt); + let expected_sel_bypass: Ext = builder.uninit(); + builder.assign(&expected_sel_bypass, e - expected_sel_add - (out_rt_prod * rt_prod)); + + let proof_eval_1 = builder.get(&proof.evals, 1); + builder.assert_ext_eq(proof_eval_1, expected_sel_bypass); + + let add_evaluations: Ext = builder.constant(C::EF::ZERO); + let bypass_evaluations: Ext = builder.constant(C::EF::ZERO); + + for i in 0..SEPTIC_EXTENSION_DEGREE { + let v1_i = builder.get(&v1.vs, i); + let v2_i = builder.get(&v2.vs, i); + let v3_i = builder.get(&v3.vs, i); + let v4_i = builder.get(&v4.vs, i); + let v5_i = builder.get(&v5.vs, i); + + builder.assign(&add_evaluations, add_evaluations + v1_i + v2_i + v3_i); + builder.assign(&bypass_evaluations, bypass_evaluations + v4_i + v5_i); + } + + let calculated_evaluation: Ext = builder.uninit(); + builder.assign(&calculated_evaluation, add_evaluations * expected_sel_add + bypass_evaluations * expected_sel_bypass); + builder.assert_ext_eq(expected_evaluation, calculated_evaluation); +} + +pub fn septic_ext_squared( + builder: &mut Builder, + a: &SepticExtensionVariable +) -> SepticExtensionVariable { + let r: Array> = builder.dyn_array(SEPTIC_EXTENSION_DEGREE); + + let two_ext: Ext = builder.constant(C::EF::TWO); + let five_ext: Ext = builder.constant(C::EF::from_canonical_u32(5)); + + for i in 0..SEPTIC_EXTENSION_DEGREE { + for j in (i + 1)..SEPTIC_EXTENSION_DEGREE { + let mut index = i + j; + + let i_term = builder.get(&a.vs, i); + let j_term = builder.get(&a.vs, j); + + let term: Ext = builder.uninit(); + builder.assign(&term, two_ext * i_term * j_term); + + + if index < 7 { + let r_v = builder.get(&r, index); + builder.set(&r, index, r_v + term); + } else { + index -= 7; + // x^7 = 2x + 5 + let r_v_i = builder.get(&r, index); + let r_v_i_1 = builder.get(&r, index + 1); + + builder.set(&r, index, r_v_i + five_ext * term); + builder.set(&r, index + 1, r_v_i_1 + two_ext * term); + } + } + } + + r.into() +} \ No newline at end of file From c300df9a79b50254c8badf159734e0cca5e479e1 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Wed, 5 Nov 2025 16:33:25 -0500 Subject: [PATCH 23/24] fmt --- src/arithmetics/mod.rs | 6 +- src/zkvm_verifier/binding.rs | 14 +-- src/zkvm_verifier/verifier.rs | 204 +++++++++++++++++++++++----------- 3 files changed, 150 insertions(+), 74 deletions(-) diff --git a/src/arithmetics/mod.rs b/src/arithmetics/mod.rs index d3ab92d..392d142 100644 --- a/src/arithmetics/mod.rs +++ b/src/arithmetics/mod.rs @@ -340,9 +340,9 @@ pub fn arr_product( ) -> Ext { let acc = builder.constant(C::EF::ONE); iter_zip!(builder, arr).for_each(|ptr_vec, builder| { - let el = builder.iter_ptr_get(&arr, ptr_vec[0]); - builder.assign(&acc, acc * el); - }); + let el = builder.iter_ptr_get(&arr, ptr_vec[0]); + builder.assign(&acc, acc * el); + }); acc } diff --git a/src/zkvm_verifier/binding.rs b/src/zkvm_verifier/binding.rs index 747ce8f..58e17d2 100644 --- a/src/zkvm_verifier/binding.rs +++ b/src/zkvm_verifier/binding.rs @@ -4,8 +4,8 @@ use crate::basefold_verifier::basefold::{ }; use crate::tower_verifier::binding::{ - IOPProverMessageVec, IOPProverMessageVecVariable, ThreeDimensionalVecVariable, - ThreeDimensionalVector, IOPProverMessageVariable + IOPProverMessageVariable, IOPProverMessageVec, IOPProverMessageVecVariable, + ThreeDimensionalVecVariable, ThreeDimensionalVector, }; use crate::{arithmetics::ceil_log2, tower_verifier::binding::PointVariable}; use itertools::Itertools; @@ -501,14 +501,12 @@ pub struct GKRClaimEvaluation { #[derive(DslVariable, Clone)] pub struct SepticExtensionVariable { - pub vs: Array> + pub vs: Array>, } impl From>> for SepticExtensionVariable { fn from(slice: Array>) -> Self { - Self { - vs: slice - } + Self { vs: slice } } } @@ -524,9 +522,9 @@ pub struct EccQuarkProofVariable { pub zerocheck_proof: IOPProverMessageVecVariable, pub num_instances: Usize, pub num_instances_minus_one_bit_decomposition: Array>, - pub num_vars: Usize, // next_pow2_instance_padding(proof.num_instances).ilog2() + pub num_vars: Usize, // next_pow2_instance_padding(proof.num_instances).ilog2() pub evals: Array>, pub rt: PointVariable, pub sum: SepticPointVariable, pub prefix_one_seq: Array>, -} \ No newline at end of file +} diff --git a/src/zkvm_verifier/verifier.rs b/src/zkvm_verifier/verifier.rs index 4ce13a0..5255471 100644 --- a/src/zkvm_verifier/verifier.rs +++ b/src/zkvm_verifier/verifier.rs @@ -3,7 +3,9 @@ use super::binding::{ ZKVMProofInputVariable, }; use crate::arithmetics::{ - arr_product, challenger_multi_observe, eq_eval, eval_ceno_expr_with_instance, eval_stacked_constant, eval_stacked_wellform_address_vec, mask_arr, reverse, PolyEvaluator, UniPolyExtrapolator + arr_product, challenger_multi_observe, eq_eval, eval_ceno_expr_with_instance, + eval_stacked_constant, eval_stacked_wellform_address_vec, mask_arr, reverse, PolyEvaluator, + UniPolyExtrapolator, }; use crate::basefold_verifier::basefold::{ BasefoldCommitmentVariable, RoundOpeningVariable, RoundVariable, @@ -16,7 +18,8 @@ use crate::basefold_verifier::verifier::batch_verify; use crate::tower_verifier::program::verify_tower_proof; use crate::transcript::transcript_observe_label; use crate::zkvm_verifier::binding::{ - EccQuarkProofVariable, GKRProofVariable, LayerProofVariable, SepticExtensionVariable, SumcheckLayerProofVariable + EccQuarkProofVariable, GKRProofVariable, LayerProofVariable, SepticExtensionVariable, + SumcheckLayerProofVariable, }; use crate::{ arithmetics::{ @@ -940,7 +943,12 @@ pub fn evaluate_selector( } SelectorType::Prefix(expr) => ( expr, - eq_eval_less_or_equal_than(builder, &opcode_proof.num_instances_minus_one_bit_decomposition, out_point, in_point), + eq_eval_less_or_equal_than( + builder, + &opcode_proof.num_instances_minus_one_bit_decomposition, + out_point, + in_point, + ), ), SelectorType::OrderedSparse32 { indices, @@ -970,7 +978,7 @@ pub fn evaluate_selector( builder.assign(&eval, eval * sel); (expression, eval) - }, + } _ => { unreachable!() } @@ -1006,36 +1014,50 @@ pub fn evaluate_ecc_selector( let res: Ext = builder.constant(C::EF::ZERO); let prefix_one_seq_0 = builder.get(&prefix_one_seq, 0); - builder.if_ne(prefix_one_seq_0.clone(), Usize::from(0)).then(|builder| { - builder.assert_usize_eq(prefix_one_seq_0.clone(), Usize::from(1)); - let out_point_0 = builder.get(out_point, 0); - let in_point_0 = builder.get(in_point, 0); - builder.assign(&res, (one - out_point_0) * (one - in_point_0)); - }); + builder + .if_ne(prefix_one_seq_0.clone(), Usize::from(0)) + .then(|builder| { + builder.assert_usize_eq(prefix_one_seq_0.clone(), Usize::from(1)); + let out_point_0 = builder.get(out_point, 0); + let in_point_0 = builder.get(in_point, 0); + builder.assign(&res, (one - out_point_0) * (one - in_point_0)); + }); - builder.range(1, out_point.len()).for_each(|idx_vec, builder| { - let i = idx_vec[0]; + builder + .range(1, out_point.len()) + .for_each(|idx_vec, builder| { + let i = idx_vec[0]; - let num_prefix_one_lhs = builder.get(&prefix_one_seq, i); - let out_point_i = builder.get(&out_point, i); - let in_point_i = builder.get(&in_point, i); + let num_prefix_one_lhs = builder.get(&prefix_one_seq, i); + let out_point_i = builder.get(&out_point, i); + let in_point_i = builder.get(&in_point, i); - let lhs_res: Ext = builder.constant(C::EF::ZERO); - builder.if_ne(num_prefix_one_lhs, Usize::from(0)).then(|builder| { - let out_point_slice = out_point.slice(builder, 0, i); - let in_point_slice = in_point.slice(builder, 0, i); + let lhs_res: Ext = builder.constant(C::EF::ZERO); + builder + .if_ne(num_prefix_one_lhs, Usize::from(0)) + .then(|builder| { + let out_point_slice = out_point.slice(builder, 0, i); + let in_point_slice = in_point.slice(builder, 0, i); - let eq_eval = eq_eval_less_or_equal_than(builder, &proof.num_instances_minus_one_bit_decomposition, &out_point_slice, &in_point_slice); - builder.assign(&lhs_res, (one - out_point_i) * (one - in_point_i) * eq_eval); + let eq_eval = eq_eval_less_or_equal_than( + builder, + &proof.num_instances_minus_one_bit_decomposition, + &out_point_slice, + &in_point_slice, + ); + builder.assign( + &lhs_res, + (one - out_point_i) * (one - in_point_i) * eq_eval, + ); + }); + + let rhs_res: Ext = builder.constant(C::EF::ZERO); + builder.assign(&rhs_res, out_point_i * in_point_i * res); + builder.assign(&res, lhs_res + rhs_res); }); - let rhs_res: Ext = builder.constant(C::EF::ZERO); - builder.assign(&rhs_res, out_point_i * in_point_i * res); - builder.assign(&res, lhs_res + rhs_res); - }); - (expr, res) - }, + } _ => { unreachable!() } @@ -1545,37 +1567,80 @@ pub fn verify_ecc_proof( // Derive out_rt transcript_observe_label(builder, challenger, b"ecc"); let out_rt: Array> = builder.dyn_array(num_vars.clone()); - builder.range(0, num_vars.clone()).for_each(|idx_vec, builder| { - let e = challenger.sample_ext(builder); - builder.set(&out_rt, idx_vec[0], e); - }); + builder + .range(0, num_vars.clone()) + .for_each(|idx_vec, builder| { + let e = challenger.sample_ext(builder); + builder.set(&out_rt, idx_vec[0], e); + }); // Derive alpha_pows transcript_observe_label(builder, challenger, b"ecc_alpha"); - let alpha_pows = gen_alpha_pows(builder, challenger, Usize::from(SEPTIC_EXTENSION_DEGREE * 3 + SEPTIC_EXTENSION_DEGREE * 2)); + let alpha_pows = gen_alpha_pows( + builder, + challenger, + Usize::from(SEPTIC_EXTENSION_DEGREE * 3 + SEPTIC_EXTENSION_DEGREE * 2), + ); let zero_ext: Ext = builder.constant(C::EF::ZERO); let three_f: Felt = builder.constant(C::F::from_canonical_u32(3)); let num_vars_f = builder.unsafe_cast_var_to_felt(num_vars.get_var()); let (rt, expected_evaluation) = iop_verifier_state_verify( - builder, - challenger, - &zero_ext, - &proof.zerocheck_proof, + builder, + challenger, + &zero_ext, + &proof.zerocheck_proof, num_vars_f, three_f, - unipoly_extrapolator + unipoly_extrapolator, ); // Calculate v1, v2, v3, v4, v5 let cord_slice = proof.evals.slice(builder, 2, proof.evals.len()); - let s0: SepticExtensionVariable = cord_slice.slice(builder, 0, SEPTIC_EXTENSION_DEGREE).into(); - let x0: SepticExtensionVariable = cord_slice.slice(builder, SEPTIC_EXTENSION_DEGREE, 2 * SEPTIC_EXTENSION_DEGREE).into(); - let y0: SepticExtensionVariable = cord_slice.slice(builder, 2 * SEPTIC_EXTENSION_DEGREE, 3 * SEPTIC_EXTENSION_DEGREE).into(); - let x1: SepticExtensionVariable = cord_slice.slice(builder, 3 * SEPTIC_EXTENSION_DEGREE, 4 * SEPTIC_EXTENSION_DEGREE).into(); - let y1: SepticExtensionVariable = cord_slice.slice(builder, 4 * SEPTIC_EXTENSION_DEGREE, 5 * SEPTIC_EXTENSION_DEGREE).into(); - let x3: SepticExtensionVariable = cord_slice.slice(builder, 5 * SEPTIC_EXTENSION_DEGREE, 6 * SEPTIC_EXTENSION_DEGREE).into(); - let y3: SepticExtensionVariable = cord_slice.slice(builder, 6 * SEPTIC_EXTENSION_DEGREE, 7 * SEPTIC_EXTENSION_DEGREE).into(); + let s0: SepticExtensionVariable = + cord_slice.slice(builder, 0, SEPTIC_EXTENSION_DEGREE).into(); + let x0: SepticExtensionVariable = cord_slice + .slice( + builder, + SEPTIC_EXTENSION_DEGREE, + 2 * SEPTIC_EXTENSION_DEGREE, + ) + .into(); + let y0: SepticExtensionVariable = cord_slice + .slice( + builder, + 2 * SEPTIC_EXTENSION_DEGREE, + 3 * SEPTIC_EXTENSION_DEGREE, + ) + .into(); + let x1: SepticExtensionVariable = cord_slice + .slice( + builder, + 3 * SEPTIC_EXTENSION_DEGREE, + 4 * SEPTIC_EXTENSION_DEGREE, + ) + .into(); + let y1: SepticExtensionVariable = cord_slice + .slice( + builder, + 4 * SEPTIC_EXTENSION_DEGREE, + 5 * SEPTIC_EXTENSION_DEGREE, + ) + .into(); + let x3: SepticExtensionVariable = cord_slice + .slice( + builder, + 5 * SEPTIC_EXTENSION_DEGREE, + 6 * SEPTIC_EXTENSION_DEGREE, + ) + .into(); + let y3: SepticExtensionVariable = cord_slice + .slice( + builder, + 6 * SEPTIC_EXTENSION_DEGREE, + 7 * SEPTIC_EXTENSION_DEGREE, + ) + .into(); let s0_squared = septic_ext_squared(builder, &s0); let v1: SepticExtensionVariable = builder.dyn_array(SEPTIC_EXTENSION_DEGREE).into(); @@ -1602,10 +1667,26 @@ pub fn verify_ecc_proof( } let mask1 = alpha_pows.slice(builder, 0, SEPTIC_EXTENSION_DEGREE); - let mask2 = alpha_pows.slice(builder, SEPTIC_EXTENSION_DEGREE, 2 * SEPTIC_EXTENSION_DEGREE); - let mask3 = alpha_pows.slice(builder, 2 * SEPTIC_EXTENSION_DEGREE, 3 * SEPTIC_EXTENSION_DEGREE); - let mask4 = alpha_pows.slice(builder, 3 * SEPTIC_EXTENSION_DEGREE, 4 * SEPTIC_EXTENSION_DEGREE); - let mask5 = alpha_pows.slice(builder, 4 * SEPTIC_EXTENSION_DEGREE, 5 * SEPTIC_EXTENSION_DEGREE); + let mask2 = alpha_pows.slice( + builder, + SEPTIC_EXTENSION_DEGREE, + 2 * SEPTIC_EXTENSION_DEGREE, + ); + let mask3 = alpha_pows.slice( + builder, + 2 * SEPTIC_EXTENSION_DEGREE, + 3 * SEPTIC_EXTENSION_DEGREE, + ); + let mask4 = alpha_pows.slice( + builder, + 3 * SEPTIC_EXTENSION_DEGREE, + 4 * SEPTIC_EXTENSION_DEGREE, + ); + let mask5 = alpha_pows.slice( + builder, + 4 * SEPTIC_EXTENSION_DEGREE, + 5 * SEPTIC_EXTENSION_DEGREE, + ); mask_arr(builder, &v1.vs, &mask1); mask_arr(builder, &v2.vs, &mask2); @@ -1620,15 +1701,7 @@ pub fn verify_ecc_proof( StackedConstantSequence { max_value: 0 }, )); let sel_evals: Array> = builder.dyn_array(1); - evaluate_ecc_selector( - builder, - &sel_add_expr, - &sel_evals, - &out_rt, - &rt, - &proof, - 0 - ); + evaluate_ecc_selector(builder, &sel_add_expr, &sel_evals, &out_rt, &rt, &proof, 0); let expected_sel_add = builder.get(&sel_evals, 0); // Assertions @@ -1639,7 +1712,10 @@ pub fn verify_ecc_proof( let out_rt_prod = arr_product(builder, &out_rt); let rt_prod = arr_product(builder, &rt); let expected_sel_bypass: Ext = builder.uninit(); - builder.assign(&expected_sel_bypass, e - expected_sel_add - (out_rt_prod * rt_prod)); + builder.assign( + &expected_sel_bypass, + e - expected_sel_add - (out_rt_prod * rt_prod), + ); let proof_eval_1 = builder.get(&proof.evals, 1); builder.assert_ext_eq(proof_eval_1, expected_sel_bypass); @@ -1659,13 +1735,16 @@ pub fn verify_ecc_proof( } let calculated_evaluation: Ext = builder.uninit(); - builder.assign(&calculated_evaluation, add_evaluations * expected_sel_add + bypass_evaluations * expected_sel_bypass); + builder.assign( + &calculated_evaluation, + add_evaluations * expected_sel_add + bypass_evaluations * expected_sel_bypass, + ); builder.assert_ext_eq(expected_evaluation, calculated_evaluation); } pub fn septic_ext_squared( - builder: &mut Builder, - a: &SepticExtensionVariable + builder: &mut Builder, + a: &SepticExtensionVariable, ) -> SepticExtensionVariable { let r: Array> = builder.dyn_array(SEPTIC_EXTENSION_DEGREE); @@ -1682,7 +1761,6 @@ pub fn septic_ext_squared( let term: Ext = builder.uninit(); builder.assign(&term, two_ext * i_term * j_term); - if index < 7 { let r_v = builder.get(&r, index); builder.set(&r, index, r_v + term); @@ -1699,4 +1777,4 @@ pub fn septic_ext_squared( } r.into() -} \ No newline at end of file +} From b2bfc03a2ac1af400b623f982baf257c206318b2 Mon Sep 17 00:00:00 2001 From: Ray Gao Date: Wed, 5 Nov 2025 16:49:19 -0500 Subject: [PATCH 24/24] Recursive Binary Tree Aggregation of Ceno Verifier (#69) - Test `test_aggregation` - See notes: https://www.notion.so/scrollzkp/Ceno-Recursion-Binary-Tree-Aggregation-Keccak-100-28c7792d22af80c795a2c09606945333 --------- Co-authored-by: Ray Gao --- .gitignore | 3 +- Cargo.lock | 1342 ++++++++++++++++++++++++++++----- Cargo.toml | 18 +- src/aggregation/mod.rs | 281 +++++++ src/aggregation/scheme.rs | 86 +++ src/lib.rs | 1 + src/zkvm_verifier/verifier.rs | 5 +- 7 files changed, 1546 insertions(+), 190 deletions(-) create mode 100644 src/aggregation/mod.rs create mode 100644 src/aggregation/scheme.rs diff --git a/.gitignore b/.gitignore index 20fd7be..fb549bb 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,8 @@ /target Cargo.lock vm_run_output.log -*.bin .DS_Store *.log build/ceno +*.bin +*.json \ No newline at end of file diff --git a/Cargo.lock b/Cargo.lock index 4cc5e8a..62c1f2d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -55,6 +55,15 @@ version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + [[package]] name = "ansi_term" version = "0.12.1" @@ -177,7 +186,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" dependencies = [ "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -203,7 +212,7 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -253,7 +262,7 @@ checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -288,6 +297,17 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" +[[package]] +name = "async-trait" +version = "0.1.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.109", +] + [[package]] name = "autocfg" version = "1.5.0" @@ -364,7 +384,7 @@ checksum = "ffebfc2d28a12b262c303cb3860ee77b91bd83b1f20f0bd2a9693008e2f55a9e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -456,6 +476,31 @@ dependencies = [ "subtle", ] +[[package]] +name = "bon" +version = "3.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebeb9aaf9329dff6ceb65c689ca3db33dbf15f324909c60e4e5eef5701ce31b1" +dependencies = [ + "bon-macros", + "rustversion", +] + +[[package]] +name = "bon-macros" +version = "3.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77e9d642a7e3a318e37c2c9427b5a6a48aa1ad55dcd986f3034ab2239045a645" +dependencies = [ + "darling", + "ident_case", + "prettyplease", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.109", +] + [[package]] name = "bumpalo" version = "3.19.0" @@ -488,7 +533,7 @@ checksum = "89385e82b5d1821d2219e0b095efa2cc1f246cbf99080f3be46a1a85c0d392d9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -509,11 +554,43 @@ version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" +[[package]] +name = "camino" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "276a59bf2b2c967788139340c9f0c5b12d7fd6630315c15c217e559de85d2609" +dependencies = [ + "serde_core", +] + +[[package]] +name = "cargo-platform" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e35af189006b9c0f00a064685c727031e3ed2d8020f7ba284d78cc2671bd36ea" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo_metadata" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" +dependencies = [ + "camino", + "cargo-platform", + "semver", + "serde", + "serde_json", + "thiserror 1.0.69", +] + [[package]] name = "cc" -version = "1.2.43" +version = "1.2.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "739eb0f94557554b3ca9a86d2d37bebd49c5e6d0c1d2bda35ba5bdac830befc2" +checksum = "37521ac7aabe3d13122dc382493e20c9416f299d2ccd5b3a5340a2570cdeb0f3" dependencies = [ "find-msvc-tools", "shlex", @@ -545,10 +622,13 @@ dependencies = [ "multilinear_extensions", "openvm", "openvm-circuit", + "openvm-continuations", "openvm-native-circuit", "openvm-native-compiler", "openvm-native-compiler-derive", "openvm-native-recursion", + "openvm-rv32im-circuit", + "openvm-sdk", "openvm-stark-backend", "openvm-stark-sdk", "p3-air", @@ -681,11 +761,23 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" +[[package]] +name = "chrono" +version = "0.4.42" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2" +dependencies = [ + "iana-time-zone", + "num-traits", + "serde", + "windows-link", +] + [[package]] name = "clap" -version = "4.5.50" +version = "4.5.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c2cfd7bf8a6017ddaa4e32ffe7403d547790db06bd171c1c53926faab501623" +checksum = "4c26d721170e0295f191a69bd9a1f93efcdb0aff38684b61ab5750468972e5f5" dependencies = [ "clap_builder", "clap_derive", @@ -693,9 +785,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.50" +version = "4.5.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a4c05b9e80c5ccd3a7ef080ad7b6ba7d6fc00a985b8b157197075677c82c7a0" +checksum = "75835f0c7bf681bfd05abe44e965760fea999a5286c6eb2d59883634fd02011a" dependencies = [ "anstream", "anstyle", @@ -712,7 +804,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -765,6 +857,12 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" +[[package]] +name = "core-foundation-sys" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" + [[package]] name = "cpufeatures" version = "0.2.17" @@ -848,6 +946,41 @@ dependencies = [ "memchr", ] +[[package]] +name = "darling" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 2.0.109", +] + +[[package]] +name = "darling_macro" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" +dependencies = [ + "darling_core", + "quote", + "syn 2.0.109", +] + [[package]] name = "dashu" version = "0.4.2" @@ -876,7 +1009,7 @@ checksum = "85078445a8dbd2e1bd21f04a816f352db8d333643f0c9b78ca7c3d1df71063e7" dependencies = [ "dashu-base", "dashu-int", - "num-modular", + "num-modular 0.6.1", "num-order", "rustversion", "static_assertions", @@ -890,7 +1023,7 @@ checksum = "ee99d08031ca34a4d044efbbb21dff9b8c54bb9d8c82a189187c0651ffdb9fbf" dependencies = [ "cfg-if", "dashu-base", - "num-modular", + "num-modular 0.6.1", "num-order", "rustversion", "static_assertions", @@ -921,7 +1054,7 @@ dependencies = [ "dashu-base", "dashu-float", "dashu-int", - "num-modular", + "num-modular 0.6.1", "num-order", "rustversion", ] @@ -937,6 +1070,16 @@ dependencies = [ "zeroize", ] +[[package]] +name = "deranged" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ececcb659e7ba858fb4f10388c250a7252eb0a27373f1a72b8748afdd248e587" +dependencies = [ + "powerfmt", + "serde_core", +] + [[package]] name = "derivative" version = "2.2.0" @@ -965,7 +1108,7 @@ checksum = "d150dea618e920167e5973d70ae6ece4385b7164e0d799fe7c122dd0a5d912ad" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -976,7 +1119,7 @@ checksum = "2cdc8d50f426189eef89dac62fabfa0abb27d5cc008f25bf4156a0203325becc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -989,7 +1132,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -1009,7 +1152,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", "unicode-xid", ] @@ -1052,6 +1195,12 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" +[[package]] +name = "dyn-clone" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" + [[package]] name = "ecdsa" version = "0.16.9" @@ -1075,7 +1224,7 @@ dependencies = [ "enum-ordinalize", "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -1142,7 +1291,7 @@ checksum = "8ca9601fb2d62598ee17836250842873a413586e5d7ed88b356e38ddbb0ec631" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -1154,7 +1303,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -1251,6 +1400,12 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "foldhash" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" + [[package]] name = "funty" version = "2.0.0" @@ -1326,7 +1481,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -1460,6 +1615,34 @@ dependencies = [ "unroll", ] +[[package]] +name = "halo2curves-axiom" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd8309e4638b4f1bcf6613d72265a84074d26034c35edc5d605b5688e580b8b8" +dependencies = [ + "blake2b_simd", + "digest", + "ff 0.13.1", + "group 0.13.0", + "hex", + "lazy_static", + "num-bigint 0.4.6", + "num-traits", + "pairing 0.23.0", + "pasta_curves 0.5.1", + "paste", + "rand", + "rand_core", + "rayon", + "serde", + "serde_arrays", + "sha2", + "static_assertions", + "subtle", + "unroll", +] + [[package]] name = "halo2derive" version = "0.1.0" @@ -1474,6 +1657,12 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + [[package]] name = "hashbrown" version = "0.14.5" @@ -1490,6 +1679,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" dependencies = [ "allocator-api2", + "equivalent", + "foldhash", ] [[package]] @@ -1528,6 +1719,12 @@ dependencies = [ "arrayvec", ] +[[package]] +name = "hex-literal" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" + [[package]] name = "hmac" version = "0.12.1" @@ -1537,6 +1734,36 @@ dependencies = [ "digest", ] +[[package]] +name = "iana-time-zone" +version = "0.1.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33e57f83510bb73707521ebaffa789ec8caf86f9657cad665b092b581d40e9fb" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "log", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + [[package]] name = "impl-trait-for-tuples" version = "0.2.3" @@ -1545,7 +1772,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -1554,6 +1781,17 @@ version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "964de6e86d545b246d84badc0fef527924ace5134f30641c203ef52ba83f58d5" +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", + "serde", +] + [[package]] name = "indexmap" version = "2.12.0" @@ -1562,6 +1800,8 @@ checksum = "6717a8d2a5a929a1a2eb43a12812498ed141a0bcfb7e8f7844fbdbe4303bba9f" dependencies = [ "equivalent", "hashbrown 0.16.0", + "serde", + "serde_core", ] [[package]] @@ -1710,6 +1950,15 @@ version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" +[[package]] +name = "lru" +version = "0.12.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" +dependencies = [ + "hashbrown 0.15.5", +] + [[package]] name = "matchers" version = "0.2.0" @@ -1757,7 +2006,7 @@ version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62a6a1f7141f1d9bc7a886b87536bbfc97752e08b369e1e0453a9acfab5f5da4" dependencies = [ - "indexmap", + "indexmap 2.12.0", "itoa", "lockfree-object-pool", "metrics", @@ -1778,7 +2027,7 @@ dependencies = [ "crossbeam-epoch", "crossbeam-utils", "hashbrown 0.14.5", - "indexmap", + "indexmap 2.12.0", "metrics", "num_cpus", "ordered-float", @@ -1852,14 +2101,14 @@ checksum = "4568f25ccbd45ab5d5603dc34318c1ec56b117531781260002151b8530a9f931" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] name = "ndarray" -version = "0.16.1" +version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "882ed72dce9365842bf196bdeedf5055305f11fc8c03dee7bb0194a6cad34841" +checksum = "0c7c9125e8f6f10c9da3aad044cc918cf8784fa34de857b1aa68038eb05a50a9" dependencies = [ "matrixmultiply", "num-complex", @@ -1922,6 +2171,7 @@ dependencies = [ "num-integer", "num-traits", "rand", + "serde", ] [[package]] @@ -1933,6 +2183,12 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + [[package]] name = "num-derive" version = "0.4.2" @@ -1941,7 +2197,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -1964,6 +2220,17 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-modular" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64a5fe11d4135c3bcdf3a95b18b194afa9608a5f6ff034f5d857bc9a27fb0119" +dependencies = [ + "num-bigint 0.4.6", + "num-integer", + "num-traits", +] + [[package]] name = "num-modular" version = "0.6.1" @@ -1976,7 +2243,23 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "537b596b97c40fcf8056d153049eb22f481c17ebce72a513ec9286e4986d1bb6" dependencies = [ - "num-modular", + "num-modular 0.6.1", +] + +[[package]] +name = "num-prime" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e238432a7881ec7164503ccc516c014bf009be7984cde1ba56837862543bdec3" +dependencies = [ + "bitvec", + "either", + "lru", + "num-bigint 0.4.6", + "num-integer", + "num-modular 0.5.1", + "num-traits", + "rand", ] [[package]] @@ -2066,7 +2349,7 @@ checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" [[package]] name = "openvm" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ "bytemuck", "num-bigint 0.4.6", @@ -2077,263 +2360,767 @@ dependencies = [ ] [[package]] -name = "openvm-circuit" +name = "openvm-algebra-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ - "backtrace", - "cfg-if", - "derivative", "derive-new 0.6.0", "derive_more 1.0.0", - "enum_dispatch", "eyre", - "getset", "itertools 0.14.0", - "metrics", + "num-bigint 0.4.6", + "num-traits", + "openvm-algebra-transpiler", + "openvm-circuit", "openvm-circuit-derive", "openvm-circuit-primitives", "openvm-circuit-primitives-derive", "openvm-instructions", - "openvm-poseidon2-air", + "openvm-mod-circuit-builder", + "openvm-rv32-adapters", + "openvm-rv32im-circuit", "openvm-stark-backend", - "p3-baby-bear", + "openvm-stark-sdk", "rand", - "rustc-hash", "serde", "serde-big-array", - "static_assertions", - "thiserror 1.0.69", - "tracing", + "serde_with", + "strum", ] [[package]] -name = "openvm-circuit-derive" +name = "openvm-algebra-complex-macros" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ - "itertools 0.14.0", + "openvm-macros-common", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] -name = "openvm-circuit-primitives" +name = "openvm-algebra-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ - "derive-new 0.6.0", - "itertools 0.14.0", + "halo2curves-axiom", "num-bigint 0.4.6", - "num-traits", - "openvm-circuit-primitives-derive", - "openvm-stark-backend", - "rand", - "tracing", + "once_cell", + "openvm-algebra-complex-macros", + "openvm-algebra-moduli-macros", + "openvm-custom-insn", + "openvm-rv32im-guest", + "serde-big-array", + "strum_macros", ] [[package]] -name = "openvm-circuit-primitives-derive" +name = "openvm-algebra-moduli-macros" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" -dependencies = [ - "itertools 0.14.0", - "quote", - "syn 2.0.108", -] - -[[package]] -name = "openvm-custom-insn" -version = "0.1.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ - "proc-macro2", + "num-bigint 0.4.6", + "num-prime", + "openvm-macros-common", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] -name = "openvm-instructions" +name = "openvm-algebra-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ - "backtrace", - "derive-new 0.6.0", - "itertools 0.14.0", - "num-bigint 0.4.6", - "num-traits", + "openvm-algebra-guest", + "openvm-instructions", "openvm-instructions-derive", "openvm-stark-backend", - "serde", + "openvm-transpiler", + "rrs-lib", "strum", - "strum_macros", ] [[package]] -name = "openvm-instructions-derive" +name = "openvm-bigint-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ - "quote", - "syn 2.0.108", -] - -[[package]] -name = "openvm-native-circuit" -version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" + "derive-new 0.6.0", + "derive_more 1.0.0", + "openvm-bigint-transpiler", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-instructions", + "openvm-rv32-adapters", + "openvm-rv32im-circuit", + "openvm-rv32im-transpiler", + "openvm-stark-backend", + "openvm-stark-sdk", + "rand", + "serde", +] + +[[package]] +name = "openvm-bigint-guest" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "openvm-platform", + "strum_macros", +] + +[[package]] +name = "openvm-bigint-transpiler" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "openvm-bigint-guest", + "openvm-instructions", + "openvm-instructions-derive", + "openvm-rv32im-transpiler", + "openvm-stark-backend", + "openvm-transpiler", + "rrs-lib", + "strum", +] + +[[package]] +name = "openvm-build" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "cargo_metadata", + "eyre", + "openvm-platform", + "serde", + "serde_json", +] + +[[package]] +name = "openvm-circuit" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "backtrace", + "cfg-if", + "derivative", + "derive-new 0.6.0", + "derive_more 1.0.0", + "enum_dispatch", + "eyre", + "getset", + "itertools 0.14.0", + "metrics", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-instructions", + "openvm-poseidon2-air", + "openvm-stark-backend", + "p3-baby-bear", + "rand", + "rustc-hash", + "serde", + "serde-big-array", + "static_assertions", + "thiserror 1.0.69", + "tracing", +] + +[[package]] +name = "openvm-circuit-derive" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "itertools 0.14.0", + "quote", + "syn 2.0.109", +] + +[[package]] +name = "openvm-circuit-primitives" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "derive-new 0.6.0", + "itertools 0.14.0", + "num-bigint 0.4.6", + "num-traits", + "openvm-circuit-primitives-derive", + "openvm-stark-backend", + "rand", + "tracing", +] + +[[package]] +name = "openvm-circuit-primitives-derive" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "itertools 0.14.0", + "quote", + "syn 2.0.109", +] + +[[package]] +name = "openvm-continuations" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "derivative", + "openvm-circuit", + "openvm-native-compiler", + "openvm-native-recursion", + "openvm-stark-backend", + "openvm-stark-sdk", + "serde", + "static_assertions", +] + +[[package]] +name = "openvm-custom-insn" +version = "0.1.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.109", +] + +[[package]] +name = "openvm-ecc-circuit" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "derive-new 0.6.0", + "derive_more 1.0.0", + "hex-literal", + "lazy_static", + "num-bigint 0.4.6", + "num-traits", + "once_cell", + "openvm-algebra-circuit", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-ecc-transpiler", + "openvm-instructions", + "openvm-mod-circuit-builder", + "openvm-rv32-adapters", + "openvm-rv32im-circuit", + "openvm-stark-backend", + "serde", + "serde_with", + "strum", +] + +[[package]] +name = "openvm-ecc-guest" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "ecdsa", + "elliptic-curve", + "group 0.13.0", + "halo2curves-axiom", + "once_cell", + "openvm", + "openvm-algebra-guest", + "openvm-custom-insn", + "openvm-ecc-sw-macros", + "openvm-rv32im-guest", + "serde", + "strum_macros", +] + +[[package]] +name = "openvm-ecc-sw-macros" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "openvm-macros-common", + "quote", + "syn 2.0.109", +] + +[[package]] +name = "openvm-ecc-transpiler" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "openvm-ecc-guest", + "openvm-instructions", + "openvm-instructions-derive", + "openvm-stark-backend", + "openvm-transpiler", + "rrs-lib", + "strum", +] + +[[package]] +name = "openvm-instructions" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "backtrace", + "derive-new 0.6.0", + "itertools 0.14.0", + "num-bigint 0.4.6", + "num-traits", + "openvm-instructions-derive", + "openvm-stark-backend", + "serde", + "strum", + "strum_macros", +] + +[[package]] +name = "openvm-instructions-derive" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "quote", + "syn 2.0.109", +] + +[[package]] +name = "openvm-keccak256-circuit" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "derive-new 0.6.0", + "derive_more 1.0.0", + "itertools 0.14.0", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-instructions", + "openvm-keccak256-transpiler", + "openvm-rv32im-circuit", + "openvm-stark-backend", + "openvm-stark-sdk", + "p3-keccak-air", + "rand", + "serde", + "serde-big-array", + "strum", + "tiny-keccak", + "tracing", +] + +[[package]] +name = "openvm-keccak256-guest" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "openvm-platform", +] + +[[package]] +name = "openvm-keccak256-transpiler" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "openvm-instructions", + "openvm-instructions-derive", + "openvm-keccak256-guest", + "openvm-stark-backend", + "openvm-transpiler", + "rrs-lib", + "strum", +] + +[[package]] +name = "openvm-macros-common" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "syn 2.0.109", +] + +[[package]] +name = "openvm-mod-circuit-builder" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "itertools 0.14.0", + "num-bigint 0.4.6", + "num-traits", + "openvm-circuit", + "openvm-circuit-primitives", + "openvm-instructions", + "openvm-stark-backend", + "openvm-stark-sdk", + "rand", + "serde", + "serde_with", + "tracing", +] + +[[package]] +name = "openvm-native-circuit" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "derive-new 0.6.0", + "derive_more 1.0.0", + "eyre", + "itertools 0.14.0", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-instructions", + "openvm-native-compiler", + "openvm-poseidon2-air", + "openvm-rv32im-circuit", + "openvm-stark-backend", + "openvm-stark-sdk", + "rand", + "serde", + "serde-big-array", + "static_assertions", + "strum", + "tracing", +] + +[[package]] +name = "openvm-native-compiler" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "backtrace", + "itertools 0.14.0", + "num-bigint 0.4.6", + "num-integer", + "openvm-circuit", + "openvm-instructions", + "openvm-instructions-derive", + "openvm-native-compiler-derive", + "openvm-rv32im-transpiler", + "openvm-stark-backend", + "openvm-stark-sdk", + "serde", + "strum", + "strum_macros", + "zkhash", +] + +[[package]] +name = "openvm-native-compiler-derive" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "quote", + "syn 2.0.109", +] + +[[package]] +name = "openvm-native-recursion" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "cfg-if", + "itertools 0.14.0", + "lazy_static", + "openvm-circuit", + "openvm-native-circuit", + "openvm-native-compiler", + "openvm-native-compiler-derive", + "openvm-stark-backend", + "openvm-stark-sdk", + "p3-dft", + "p3-fri", + "p3-merkle-tree", + "p3-symmetric", + "rand", + "serde", + "serde_json", + "tracing", +] + +[[package]] +name = "openvm-native-transpiler" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "openvm-instructions", + "openvm-transpiler", + "p3-field", +] + +[[package]] +name = "openvm-pairing-circuit" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "derive-new 0.6.0", + "derive_more 1.0.0", + "eyre", + "halo2curves-axiom", + "itertools 0.14.0", + "num-bigint 0.4.6", + "num-traits", + "openvm-algebra-circuit", + "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", + "openvm-ecc-circuit", + "openvm-ecc-guest", + "openvm-instructions", + "openvm-mod-circuit-builder", + "openvm-pairing-guest", + "openvm-pairing-transpiler", + "openvm-rv32-adapters", + "openvm-rv32im-circuit", + "openvm-stark-backend", + "rand", + "serde", + "strum", +] + +[[package]] +name = "openvm-pairing-guest" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "halo2curves-axiom", + "hex-literal", + "itertools 0.14.0", + "lazy_static", + "num-bigint 0.4.6", + "num-traits", + "openvm", + "openvm-algebra-guest", + "openvm-algebra-moduli-macros", + "openvm-custom-insn", + "openvm-ecc-guest", + "rand", + "serde", + "strum_macros", +] + +[[package]] +name = "openvm-pairing-transpiler" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "openvm-instructions", + "openvm-instructions-derive", + "openvm-pairing-guest", + "openvm-stark-backend", + "openvm-transpiler", + "rrs-lib", + "strum", +] + +[[package]] +name = "openvm-platform" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "libm", + "openvm-custom-insn", + "openvm-rv32im-guest", +] + +[[package]] +name = "openvm-poseidon2-air" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "derivative", + "lazy_static", + "openvm-stark-backend", + "openvm-stark-sdk", + "p3-monty-31", + "p3-poseidon2", + "p3-poseidon2-air", + "p3-symmetric", + "rand", + "zkhash", +] + +[[package]] +name = "openvm-rv32-adapters" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ "derive-new 0.6.0", - "derive_more 1.0.0", - "eyre", "itertools 0.14.0", "openvm-circuit", - "openvm-circuit-derive", "openvm-circuit-primitives", "openvm-circuit-primitives-derive", "openvm-instructions", - "openvm-native-compiler", - "openvm-poseidon2-air", "openvm-rv32im-circuit", "openvm-stark-backend", "openvm-stark-sdk", "rand", "serde", "serde-big-array", - "static_assertions", - "strum", - "tracing", + "serde_with", ] [[package]] -name = "openvm-native-compiler" +name = "openvm-rv32im-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ - "backtrace", - "itertools 0.14.0", + "derive-new 0.6.0", + "derive_more 1.0.0", + "eyre", "num-bigint 0.4.6", "num-integer", "openvm-circuit", + "openvm-circuit-derive", + "openvm-circuit-primitives", + "openvm-circuit-primitives-derive", "openvm-instructions", - "openvm-instructions-derive", - "openvm-native-compiler-derive", "openvm-rv32im-transpiler", "openvm-stark-backend", - "openvm-stark-sdk", + "rand", "serde", + "serde-big-array", "strum", +] + +[[package]] +name = "openvm-rv32im-guest" +version = "1.3.0" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" +dependencies = [ + "openvm-custom-insn", + "p3-field", "strum_macros", - "zkhash", ] [[package]] -name = "openvm-native-compiler-derive" +name = "openvm-rv32im-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ - "quote", - "syn 2.0.108", + "openvm-instructions", + "openvm-instructions-derive", + "openvm-rv32im-guest", + "openvm-stark-backend", + "openvm-transpiler", + "rrs-lib", + "serde", + "strum", + "tracing", ] [[package]] -name = "openvm-native-recursion" +name = "openvm-sdk" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ - "cfg-if", + "async-trait", + "bitcode", + "bon", + "clap", + "derivative", + "derive_more 1.0.0", + "eyre", + "getset", + "hex", "itertools 0.14.0", - "lazy_static", + "metrics", + "num-bigint 0.4.6", + "openvm", + "openvm-algebra-circuit", + "openvm-algebra-transpiler", + "openvm-bigint-circuit", + "openvm-bigint-transpiler", + "openvm-build", "openvm-circuit", + "openvm-continuations", + "openvm-ecc-circuit", + "openvm-ecc-transpiler", + "openvm-keccak256-circuit", + "openvm-keccak256-transpiler", "openvm-native-circuit", "openvm-native-compiler", - "openvm-native-compiler-derive", + "openvm-native-recursion", + "openvm-native-transpiler", + "openvm-pairing-circuit", + "openvm-pairing-transpiler", + "openvm-rv32im-circuit", + "openvm-rv32im-transpiler", + "openvm-sha256-circuit", + "openvm-sha256-transpiler", "openvm-stark-backend", "openvm-stark-sdk", - "p3-dft", + "openvm-transpiler", "p3-fri", - "p3-merkle-tree", - "p3-symmetric", - "rand", + "rrs-lib", "serde", "serde_json", + "serde_with", + "tempfile", + "thiserror 1.0.69", "tracing", ] [[package]] -name = "openvm-platform" -version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" -dependencies = [ - "libm", - "openvm-custom-insn", - "openvm-rv32im-guest", -] - -[[package]] -name = "openvm-poseidon2-air" +name = "openvm-sha256-air" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ - "derivative", - "lazy_static", + "openvm-circuit-primitives", "openvm-stark-backend", - "openvm-stark-sdk", - "p3-monty-31", - "p3-poseidon2", - "p3-poseidon2-air", - "p3-symmetric", "rand", - "zkhash", + "sha2", ] [[package]] -name = "openvm-rv32im-circuit" +name = "openvm-sha256-circuit" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ "derive-new 0.6.0", "derive_more 1.0.0", - "eyre", - "num-bigint 0.4.6", - "num-integer", "openvm-circuit", "openvm-circuit-derive", "openvm-circuit-primitives", "openvm-circuit-primitives-derive", "openvm-instructions", - "openvm-rv32im-transpiler", + "openvm-rv32im-circuit", + "openvm-sha256-air", + "openvm-sha256-transpiler", "openvm-stark-backend", + "openvm-stark-sdk", "rand", "serde", - "serde-big-array", + "sha2", "strum", ] [[package]] -name = "openvm-rv32im-guest" +name = "openvm-sha256-guest" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ - "openvm-custom-insn", - "p3-field", - "strum_macros", + "openvm-platform", ] [[package]] -name = "openvm-rv32im-transpiler" +name = "openvm-sha256-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ "openvm-instructions", "openvm-instructions-derive", - "openvm-rv32im-guest", + "openvm-sha256-guest", "openvm-stark-backend", "openvm-transpiler", "rrs-lib", - "serde", "strum", - "tracing", ] [[package]] @@ -2401,7 +3188,7 @@ dependencies = [ [[package]] name = "openvm-transpiler" version = "1.3.0" -source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fnative_sumcheck_layer_eval#2a4331b7026c4b61db4ca4da2f5d241376137c45" +source = "git+https://github.com/scroll-tech/openvm.git?branch=feat%2Fceno_leaves#caec16ae3bebef4390c6382095d86ae70b2936c0" dependencies = [ "elf", "eyre", @@ -2621,6 +3408,20 @@ dependencies = [ "tiny-keccak", ] +[[package]] +name = "p3-keccak-air" +version = "0.1.0" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=539bbc84085efb609f4f62cb03cf49588388abdb#539bbc84085efb609f4f62cb03cf49588388abdb" +dependencies = [ + "p3-air", + "p3-field", + "p3-matrix", + "p3-maybe-rayon", + "p3-util", + "rand", + "tracing", +] + [[package]] name = "p3-koala-bear" version = "0.1.0" @@ -2826,7 +3627,7 @@ dependencies = [ "proc-macro-crate 3.4.0", "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -2921,6 +3722,12 @@ dependencies = [ "serde", ] +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + [[package]] name = "ppv-lite86" version = "0.2.21" @@ -2930,6 +3737,16 @@ dependencies = [ "zerocopy", ] +[[package]] +name = "prettyplease" +version = "0.2.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" +dependencies = [ + "proc-macro2", + "syn 2.0.109", +] + [[package]] name = "prettytable-rs" version = "0.10.0" @@ -2991,7 +3808,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -3020,7 +3837,7 @@ checksum = "7347867d0a7e1208d93b46767be83e2b8f978c3dad35f775ac8d8847551d6fe1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -3155,6 +3972,26 @@ dependencies = [ "thiserror 1.0.69", ] +[[package]] +name = "ref-cast" +version = "1.0.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f354300ae66f76f1c85c5f84693f0ce81d747e2c3f21a45fef496d89c960bf7d" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.109", +] + [[package]] name = "regex-automata" version = "0.4.13" @@ -3200,7 +4037,7 @@ dependencies = [ "bytecheck", "bytes", "hashbrown 0.15.5", - "indexmap", + "indexmap 2.12.0", "munge", "ptr_meta", "rancor", @@ -3218,7 +4055,7 @@ checksum = "bd83f5f173ff41e00337d97f6572e416d022ef8a19f371817259ae960324c482" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -3327,7 +4164,31 @@ dependencies = [ "proc-macro-crate 3.4.0", "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", +] + +[[package]] +name = "schemars" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd191f9397d57d581cddd31014772520aa448f65ef991055d7f61582c65165f" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + +[[package]] +name = "schemars" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9558e172d4e8533736ba97870c4b2cd63f84b382a3d6eb063da41b91cce17289" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", ] [[package]] @@ -3381,6 +4242,10 @@ name = "semver" version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" +dependencies = [ + "serde", + "serde_core", +] [[package]] name = "serde" @@ -3427,7 +4292,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -3452,6 +4317,37 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_with" +version = "3.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa66c845eee442168b2c8134fec70ac50dc20e760769c8ba0ad1319ca1959b04" +dependencies = [ + "base64", + "chrono", + "hex", + "indexmap 1.9.3", + "indexmap 2.12.0", + "schemars 0.9.0", + "schemars 1.1.0", + "serde_core", + "serde_json", + "serde_with_macros", + "time", +] + +[[package]] +name = "serde_with_macros" +version = "3.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b91a903660542fced4e99881aa481bdbaec1634568ee02e0b8bd57c64cb38955" +dependencies = [ + "darling", + "proc-macro2", + "quote", + "syn 2.0.109", +] + [[package]] name = "sha2" version = "0.10.9" @@ -3604,7 +4500,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -3654,7 +4550,7 @@ dependencies = [ "proc-macro2", "quote", "rand", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -3670,9 +4566,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.108" +version = "2.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da58917d35242480a05c2897064da0a80589a2a0476c9a3f2fdc83b53502e917" +checksum = "2f17c7e013e88258aa9543dcbe81aca68a667a9ac37cd69c9fbc07858bfe0e2f" dependencies = [ "proc-macro2", "quote", @@ -3735,7 +4631,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -3746,7 +4642,7 @@ checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -3778,6 +4674,37 @@ dependencies = [ "tikv-jemalloc-sys", ] +[[package]] +name = "time" +version = "0.3.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91e7d9e3bb61134e77bde20dd4825b97c010155709965fedf0f49bb138e52a9d" +dependencies = [ + "deranged", + "itoa", + "num-conv", + "powerfmt", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b" + +[[package]] +name = "time-macros" +version = "0.2.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30cfb0125f12d9c277f35663a0a33f8c30190f4e4574868a330595412d34ebf3" +dependencies = [ + "num-conv", + "time-core", +] + [[package]] name = "tiny-keccak" version = "2.0.2" @@ -3838,7 +4765,7 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap", + "indexmap 2.12.0", "toml_datetime 0.6.11", "winnow 0.5.40", ] @@ -3849,7 +4776,7 @@ version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap", + "indexmap 2.12.0", "serde", "serde_spanned", "toml_datetime 0.6.11", @@ -3863,7 +4790,7 @@ version = "0.23.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6485ef6d0d9b5d0ec17244ff7eb05310113c3f316f2d14200d4de56b3cb98f8d" dependencies = [ - "indexmap", + "indexmap 2.12.0", "toml_datetime 0.7.3", "toml_parser", "winnow 0.7.13", @@ -3903,7 +4830,7 @@ checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -3987,9 +4914,9 @@ checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" [[package]] name = "unicode-ident" -version = "1.0.20" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "462eeb75aeb73aea900253ce739c8e18a67423fadf006037cd3ff27e82748a06" +checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5" [[package]] name = "unicode-width" @@ -4088,7 +5015,7 @@ dependencies = [ "bumpalo", "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", "wasm-bindgen-shared", ] @@ -4156,12 +5083,65 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows-core" +version = "0.62.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-link", + "windows-result", + "windows-strings", +] + +[[package]] +name = "windows-implement" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.109", +] + +[[package]] +name = "windows-interface" +version = "0.59.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.109", +] + [[package]] name = "windows-link" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" +[[package]] +name = "windows-result" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-strings" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" +dependencies = [ + "windows-link", +] + [[package]] name = "windows-sys" version = "0.60.2" @@ -4308,7 +5288,7 @@ checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] @@ -4328,7 +5308,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.108", + "syn 2.0.109", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index b55ce76..6e2dd0e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,19 +4,25 @@ version = "0.1.0" edition = "2021" [dependencies] -openvm = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/native_sumcheck_layer_eval", default-features = false } -openvm-circuit = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/native_sumcheck_layer_eval", default-features = false, features = ["bench-metrics"] } -openvm-native-circuit = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/native_sumcheck_layer_eval", default-features = false } -openvm-native-compiler = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/native_sumcheck_layer_eval", default-features = false } -openvm-native-compiler-derive = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/native_sumcheck_layer_eval", default-features = false } -openvm-native-recursion = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/native_sumcheck_layer_eval", default-features = false } +openvm = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/ceno_leaves", default-features = false } +openvm-circuit = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/ceno_leaves", default-features = false, features = ["bench-metrics"] } +openvm-native-circuit = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/ceno_leaves", default-features = false } +openvm-sdk = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/ceno_leaves", default-features = false } +openvm-native-compiler = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/ceno_leaves", default-features = false } +openvm-native-compiler-derive = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/ceno_leaves", default-features = false } +openvm-native-recursion = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/ceno_leaves", default-features = false } +openvm-continuations = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/ceno_leaves", default-features = false } +openvm-rv32im-circuit = { git = "https://github.com/scroll-tech/openvm.git", branch = "feat/ceno_leaves", default-features = false } # openvm = { path = "../openvm-scroll-tech/crates/toolchain/openvm", default-features = false } # openvm-circuit = { path = "../openvm-scroll-tech/crates/vm", default-features = false, features = ["bench-metrics"] } # openvm-native-circuit = { path = "../openvm-scroll-tech/extensions/native/circuit", default-features = false } +# openvm-sdk = { path = "../openvm-scroll-tech/crates/sdk", default-features = false } # openvm-native-compiler = { path = "../openvm-scroll-tech/extensions/native/compiler", default-features = false } # openvm-native-compiler-derive = { path = "../openvm-scroll-tech/extensions/native/compiler/derive", default-features = false } # openvm-native-recursion = { path = "../openvm-scroll-tech/extensions/native/recursion", default-features = false } +# openvm-continuations = { path = "../openvm-scroll-tech/crates/continuations", default-features = false } +# openvm-rv32im-circuit = { path = "../openvm-scroll-tech/extensions/rv32im/circuit", default-features = false } openvm-stark-backend = { git = "https://github.com/openvm-org/stark-backend.git", tag = "v1.1.1", default-features = false } openvm-stark-sdk = { git = "https://github.com/openvm-org/stark-backend.git", tag = "v1.1.1", default-features = false } diff --git a/src/aggregation/mod.rs b/src/aggregation/mod.rs new file mode 100644 index 0000000..1e65400 --- /dev/null +++ b/src/aggregation/mod.rs @@ -0,0 +1,281 @@ +pub mod scheme; + +#[cfg(test)] +mod tests { + use crate::e2e::{build_zkvm_verifier_program, parse_zkvm_proof_import}; + use crate::{ + aggregation::scheme::{CenoLeafVmVerifierConfig, RecursionProvingKeys}, + zkvm_verifier::binding::{E, F}, + }; + use ceno_zkvm::scheme::ZKVMProof; + use ceno_zkvm::structs::ZKVMVerifyingKey; + use mpcs::{Basefold, BasefoldRSParams}; + use openvm_circuit::arch::{instructions::exe::VmExe, SystemConfig}; + use openvm_native_circuit::NativeConfig; + use openvm_native_compiler::conversion::CompilerOptions; + use openvm_native_recursion::hints::Hintable; + use openvm_sdk::Sdk; + use openvm_stark_sdk::config::{baby_bear_poseidon2::BabyBearPoseidon2Engine, FriParameters}; + use std::fs::File; + use std::sync::Arc; + /* _debug: single proof verification + use openvm_stark_sdk::engine::StarkFriEngine; + use openvm_circuit::arch::verify_single; + use openvm_circuit::arch::VirtualMachine; + use openvm_native_circuit::{Native, NativeConfig}; + */ + use openvm_circuit::arch::VirtualMachine; + use openvm_circuit::system::program::trace::VmCommittedExe; + use openvm_circuit::{ + arch::{ + ExecutionBridge, InitFileGenerator, MemoryConfig, SystemPort, VmExtension, VmInventory, + VmInventoryBuilder, VmInventoryError, + }, + system::phantom::PhantomChip, + }; + use openvm_continuations::verifier::common::types::VmVerifierPvs; + use openvm_continuations::verifier::internal::types::InternalVmVerifierInput; + use openvm_continuations::verifier::internal::types::InternalVmVerifierPvs; + use openvm_continuations::verifier::internal::InternalVmVerifierConfig; + use openvm_sdk::prover::vm::types::VmProvingKey; + use openvm_sdk::{ + config::AggregationTreeConfig, + prover::{ + vm::{local::VmLocalProver, SingleSegmentVmProver}, + RootVerifierLocalProver, + }, + NonRootCommittedExe, RootSC, SC, + }; + use openvm_stark_sdk::config::setup_tracing_with_log_level; + use openvm_stark_sdk::{ + config::baby_bear_poseidon2_root::BabyBearPoseidon2RootEngine, + engine::StarkFriEngine, + openvm_stark_backend::{ + config::{Com, StarkGenericConfig}, + keygen::types::MultiStarkVerifyingKey, + proof::Proof, + Chip, + }, + p3_bn254_fr::Bn254Fr, + }; + use std::io::Write; + use std::time::Instant; + + const LEAF_LOG_BLOWUP: usize = 1; + const INTERNAL_LOG_BLOWUP: usize = 2; + const ROOT_LOG_BLOWUP: usize = 3; + const SBOX_SIZE: usize = 7; + + pub fn aggregation_inner_thread() { + setup_tracing_with_log_level(tracing::Level::WARN); + + let proof_path = "./src/e2e/encoded/proof.bin"; + let vk_path = "./src/e2e/encoded/vk.bin"; + + let zkvm_proof: ZKVMProof> = + bincode::deserialize_from(File::open(proof_path).expect("Failed to open proof file")) + .expect("Failed to deserialize proof file"); + + let vk: ZKVMVerifyingKey> = + bincode::deserialize_from(File::open(vk_path).expect("Failed to open vk file")) + .expect("Failed to deserialize vk file"); + + // Construct zkvm proof input + let zkvm_proof_input = parse_zkvm_proof_import(zkvm_proof, &vk); + let mut witness_stream: Vec> = Vec::new(); + witness_stream.extend(zkvm_proof_input.write()); + + let aggregation_start_timestamp = Instant::now(); + let sdk = Sdk::new(); + + let [leaf_fri_params, internal_fri_params, root_fri_params] = + [LEAF_LOG_BLOWUP, INTERNAL_LOG_BLOWUP, ROOT_LOG_BLOWUP] + .map(FriParameters::standard_with_100_bits_conjectured_security); + + let leaf_vm_config = NativeConfig { + system: SystemConfig::new( + SBOX_SIZE.min(leaf_fri_params.max_constraint_degree()), + MemoryConfig { + max_access_adapter_n: 16, + ..Default::default() + }, + VmVerifierPvs::::width(), + ) + .with_max_segment_len((1 << 24) - 100), + native: Default::default(), + }; + + let leaf_committed_exe = { + let leaf_engine = BabyBearPoseidon2Engine::new(leaf_fri_params); + let leaf_program = CenoLeafVmVerifierConfig { + vk, + compiler_options: CompilerOptions::default(), + } + .build_program(); + + Arc::new(VmCommittedExe::commit( + leaf_program.into(), + leaf_engine.config.pcs(), + )) + }; + + let recursion_proving_keys = RecursionProvingKeys::keygen(leaf_fri_params, leaf_vm_config); + let leaf_prover = VmLocalProver::::new( + recursion_proving_keys.ceno_leaf_vm_pk.clone(), + leaf_committed_exe, + ); + + println!( + "Aggregation - Start leaf proof at: {:?}", + aggregation_start_timestamp.elapsed() + ); + let leaf_proof = SingleSegmentVmProver::prove(&leaf_prover, witness_stream); + println!( + "Aggregation - Completed leaf proof at: {:?}", + aggregation_start_timestamp.elapsed() + ); + + // _debug: export leaf proof + let json = serde_json::to_string(&leaf_proof).unwrap(); + let mut file = + File::create(format!("leaf_proof_{:?}.json", 0)).expect("Create export proof file"); + file.write_all(json.as_bytes()).expect("Export proof"); + + // Internal engine and config + let internal_engine = BabyBearPoseidon2Engine::new(internal_fri_params); + let internal_vm_config = NativeConfig { + system: SystemConfig::new( + SBOX_SIZE.min(internal_fri_params.max_constraint_degree()), + MemoryConfig { + max_access_adapter_n: 8, + ..Default::default() + }, + InternalVmVerifierPvs::::width(), + ) + .with_max_segment_len((1 << 24) - 100), + native: Default::default(), + }; + + // Construct internal vm, pk and vk + let internal_vm = VirtualMachine::new(internal_engine, internal_vm_config.clone()); + let internal_vm_pk = Arc::new({ + let vm_pk = internal_vm.keygen(); + assert!(vm_pk.max_constraint_degree <= internal_fri_params.max_constraint_degree()); + VmProvingKey { + fri_params: internal_fri_params, + vm_config: internal_vm_config, + vm_pk, + } + }); + let internal_vm_vk = internal_vm_pk.vm_pk.get_vk(); + + // Commit internal program + let internal_program = InternalVmVerifierConfig { + leaf_fri_params: leaf_fri_params, + internal_fri_params: internal_fri_params, + compiler_options: CompilerOptions::default(), + } + .build_program( + &recursion_proving_keys.ceno_leaf_vm_pk.vm_pk.get_vk(), + &internal_vm_vk, + ); + let internal_committed_exe = Arc::new(VmCommittedExe::::commit( + internal_program.into(), + internal_vm.engine.config.pcs(), + )); + let internal_prover = VmLocalProver::::new( + internal_vm_pk, + internal_committed_exe, + ); + + // Aggregate tree to root proof + let mut internal_node_idx = -1; + let mut internal_node_height = 0; + let mut proofs = vec![leaf_proof]; + + println!( + "Aggregation - Start internal aggregation at: {:?}", + aggregation_start_timestamp.elapsed() + ); + // We will always generate at least one internal proof, even if there is only one leaf + // proof, in order to shrink the proof size + while proofs.len() > 1 || internal_node_height == 0 { + let internal_inputs = InternalVmVerifierInput::chunk_leaf_or_internal_proofs( + internal_prover.committed_exe.get_program_commit().into(), + &proofs, + 1, // _debug + ); + proofs = internal_inputs + .into_iter() + .map(|input| { + internal_node_idx += 1; + let internal_proof = + SingleSegmentVmProver::prove(&internal_prover, input.write()); + // println!("Aggregation - Completed internal node (idx: {:?}) at height {:?}: {:?}", internal_node_idx, internal_node_height, aggregation_start_timestamp.elapsed()); + + // _debug: export + let json = serde_json::to_string(&internal_proof).unwrap(); + let mut file = File::create(format!( + "internal_proof_{:?}_height_{:?}.json", + internal_node_idx, internal_node_height + )) + .expect("Create export proof file"); + file.write_all(json.as_bytes()).expect("Export proof"); + + internal_proof + }) + .collect(); + internal_node_height += 1; + } + println!( + "Aggregation - Completed internal aggregation at: {:?}", + aggregation_start_timestamp.elapsed() + ); + println!("Aggregation - Final height: {:?}", internal_node_height); + + // let root_stark_proof = VmStarkProof { + // proof: proofs.pop().unwrap(), + // user_public_values: public_values, + // }; + + /* _debug: verify single passes + let log_blowup = 1; + let poseidon2_max_constraint_degree: usize = 3; + let fri_params = if matches!(std::env::var("OPENVM_FAST_TEST"), Ok(x) if &x == "1") { + FriParameters { + log_blowup, + log_final_poly_len: 0, + num_queries: 10, + proof_of_work_bits: 0, + } + } else { + standard_fri_params_with_100_bits_conjectured_security(log_blowup) + }; + + let engine = BabyBearPoseidon2Engine::new(fri_params); + let mut config = NativeConfig::aggregation(0, poseidon2_max_constraint_degree); + config.system.memory_config.max_access_adapter_n = 16; + + let vm = VirtualMachine::new(engine, config); + + let pk = vm.keygen(); + let result = vm.execute_and_generate(program, witness_stream).unwrap(); + let proofs = vm.prove(&pk, result); + for proof in proofs { + verify_single(&vm.engine, &pk.get_vk(), &proof).expect("Verification failed"); + } + */ + } + + #[test] + pub fn test_aggregation() { + let stack_size = 256 * 1024 * 1024; // 64 MB + + let handler = std::thread::Builder::new() + .stack_size(stack_size) + .spawn(aggregation_inner_thread) + .expect("Failed to spawn thread"); + + handler.join().expect("Thread panicked"); + } +} diff --git a/src/aggregation/scheme.rs b/src/aggregation/scheme.rs new file mode 100644 index 0000000..de7d343 --- /dev/null +++ b/src/aggregation/scheme.rs @@ -0,0 +1,86 @@ +use std::sync::Arc; + +use crate::zkvm_verifier::binding::{ZKVMProofInput, E, F}; +use crate::zkvm_verifier::verifier::verify_zkvm_proof; +use ceno_zkvm::structs::ZKVMVerifyingKey; +use mpcs::{Basefold, BasefoldRSParams}; +use openvm_circuit::arch::VirtualMachine; +use openvm_circuit::arch::VmConfig; +use openvm_circuit::{ + arch::{instructions::program::Program, SystemConfig}, + system::memory::tree::public_values::PUBLIC_VALUES_ADDRESS_SPACE_OFFSET, +}; +use openvm_continuations::verifier::{ + internal::types::VmStarkProof, root::types::RootVmVerifierInput, +}; +use openvm_continuations::C; +use openvm_native_circuit::NativeConfig; +use openvm_native_compiler::{conversion::CompilerOptions, prelude::*}; +use openvm_native_recursion::hints::Hintable; +use openvm_sdk::prover::vm::types::VmProvingKey; +use openvm_sdk::{ + config::AggregationTreeConfig, + keygen::AggStarkProvingKey, + prover::{ + vm::{local::VmLocalProver, SingleSegmentVmProver}, + RootVerifierLocalProver, + }, + NonRootCommittedExe, RootSC, SC, +}; +use openvm_stark_backend::{proof::Proof, Chip}; +use openvm_stark_sdk::config::baby_bear_poseidon2::BabyBearPoseidon2Engine; +use openvm_stark_sdk::{config::FriParameters, engine::StarkFriEngine}; +use serde::{Deserialize, Serialize}; + +/// Config to generate leaf VM verifier program. +pub struct CenoLeafVmVerifierConfig { + pub vk: ZKVMVerifyingKey>, + pub compiler_options: CompilerOptions, +} + +impl CenoLeafVmVerifierConfig { + pub fn build_program(&self) -> Program { + let mut builder = Builder::::default(); + + { + builder.cycle_tracker_start("VerifyCenoProof"); + + let zkvm_proof_input_variables = ZKVMProofInput::read(&mut builder); + verify_zkvm_proof(&mut builder, zkvm_proof_input_variables, &self.vk); + + builder.cycle_tracker_end("VerifyCenoProof"); + builder.halt(); + } + + builder.compile_isa_with_options(self.compiler_options) + } +} + +#[derive(Clone, Serialize, Deserialize)] +pub struct RecursionProvingKeys { + pub ceno_leaf_vm_pk: Arc>, + // pub internal_vm_pk: Arc>, + // pub internal_committed_exe: Arc, + // pub root_verifier_pk: RootVerifierProvingKey, +} + +impl RecursionProvingKeys { + pub fn keygen(leaf_fri_params: FriParameters, leaf_vm_config: NativeConfig) -> Self { + // let internal_vm_config = config.internal_vm_config(); + // let root_vm_config = config.root_verifier_vm_config(); + + let ceno_leaf_engine = BabyBearPoseidon2Engine::new(leaf_fri_params); + let ceno_leaf_vm_pk = Arc::new({ + let vm = VirtualMachine::new(ceno_leaf_engine, leaf_vm_config.clone()); + let vm_pk = vm.keygen(); + assert!(vm_pk.max_constraint_degree <= leaf_fri_params.max_constraint_degree()); + VmProvingKey { + fri_params: leaf_fri_params, + vm_config: leaf_vm_config, + vm_pk, + } + }); + + Self { ceno_leaf_vm_pk } + } +} diff --git a/src/lib.rs b/src/lib.rs index 04165c2..7b9edd0 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -5,6 +5,7 @@ mod tower_verifier; mod transcript; pub mod zkvm_verifier; +mod aggregation; #[allow(dead_code)] mod e2e; mod extensions; diff --git a/src/zkvm_verifier/verifier.rs b/src/zkvm_verifier/verifier.rs index 5255471..5b5308b 100644 --- a/src/zkvm_verifier/verifier.rs +++ b/src/zkvm_verifier/verifier.rs @@ -223,6 +223,9 @@ pub fn verify_zkvm_proof>( }); for (i, (circuit_name, chip_vk)) in vk.circuit_vks.iter().enumerate() { + // _debug + println!("=> circuit_name: {:?}", circuit_name); + let chip_id: Var = builder.get(&chip_indices, num_chips_verified.get_var()); builder.if_eq(chip_id, RVar::from(i)).then(|builder| { @@ -359,7 +362,6 @@ pub fn verify_zkvm_proof>( }); } - /* _debug builder.assert_usize_eq(num_chips_have_fixed, Usize::from(num_fixed_opening)); builder.assert_eq::>(num_chips_verified, chip_indices.len()); @@ -435,7 +437,6 @@ pub fn verify_zkvm_proof>( // logup check let zero: Ext = builder.constant(C::EF::ZERO); builder.assert_ext_eq(logup_sum, zero); - */ } pub fn verify_opcode_proof(