diff --git a/stwo_cairo_prover/crates/prover/src/cairo_air/debug_tools.rs b/stwo_cairo_prover/crates/prover/src/cairo_air/debug_tools.rs index ddbab97a..d90278e8 100644 --- a/stwo_cairo_prover/crates/prover/src/cairo_air/debug_tools.rs +++ b/stwo_cairo_prover/crates/prover/src/cairo_air/debug_tools.rs @@ -20,9 +20,8 @@ use crate::components::{ assert_eq_opcode_imm, call_opcode, call_opcode_op_1_base_fp, call_opcode_rel, generic_opcode, jnz_opcode, jnz_opcode_dst_base_fp, jnz_opcode_taken, jnz_opcode_taken_dst_base_fp, jump_opcode, jump_opcode_double_deref, jump_opcode_rel, jump_opcode_rel_imm, - memory_address_to_id, memory_id_to_big, mul_opcode_is_small_f_is_imm_f, - mul_opcode_is_small_f_is_imm_t, range_check_19, range_check_4_3, range_check_7_2_5, - range_check_9_9, ret_opcode, verify_instruction, + memory_address_to_id, memory_id_to_big, mul_opcode, mul_opcode_imm, range_check_19, + range_check_4_3, range_check_7_2_5, range_check_9_9, ret_opcode, verify_instruction, }; use crate::felt::split_f252; use crate::relations; @@ -402,11 +401,11 @@ where .entries(trace), ); } - for claim in claim.opcodes.mul_f_f.clone() { + for claim in claim.opcodes.mul.clone() { entries.extend( RelationTrackerComponent::new( tree_span_provider, - mul_opcode_is_small_f_is_imm_f::Eval { + mul_opcode::Eval { claim, memory_address_to_id_lookup_elements: relations::MemoryAddressToId::dummy(), memory_id_to_big_lookup_elements: relations::MemoryIdToBig::dummy(), @@ -419,11 +418,11 @@ where .entries(trace), ); } - for claim in claim.opcodes.mul_f_t.clone() { + for claim in claim.opcodes.mul_imm.clone() { entries.extend( RelationTrackerComponent::new( tree_span_provider, - mul_opcode_is_small_f_is_imm_t::Eval { + mul_opcode_imm::Eval { claim, memory_address_to_id_lookup_elements: relations::MemoryAddressToId::dummy(), memory_id_to_big_lookup_elements: relations::MemoryIdToBig::dummy(), diff --git a/stwo_cairo_prover/crates/prover/src/cairo_air/opcodes_air.rs b/stwo_cairo_prover/crates/prover/src/cairo_air/opcodes_air.rs index 9fd30240..b3ea55ce 100644 --- a/stwo_cairo_prover/crates/prover/src/cairo_air/opcodes_air.rs +++ b/stwo_cairo_prover/crates/prover/src/cairo_air/opcodes_air.rs @@ -18,9 +18,8 @@ use crate::components::{ assert_eq_opcode_imm, call_opcode, call_opcode_op_1_base_fp, call_opcode_rel, generic_opcode, jnz_opcode, jnz_opcode_dst_base_fp, jnz_opcode_taken, jnz_opcode_taken_dst_base_fp, jump_opcode, jump_opcode_double_deref, jump_opcode_rel, jump_opcode_rel_imm, - memory_address_to_id, memory_id_to_big, mul_opcode_is_small_f_is_imm_f, - mul_opcode_is_small_f_is_imm_t, range_check_19, range_check_9_9, ret_opcode, - verify_instruction, + memory_address_to_id, memory_id_to_big, mul_opcode, mul_opcode_imm, range_check_19, + range_check_9_9, ret_opcode, verify_instruction, }; use crate::input::state_transitions::StateTransitions; @@ -48,8 +47,8 @@ pub struct OpcodeClaim { pub jump_double_deref: Vec, pub jump_rel: Vec, pub jump_rel_imm: Vec, - pub mul_f_f: Vec, - pub mul_f_t: Vec, + pub mul: Vec, + pub mul_imm: Vec, pub ret: Vec, } impl OpcodeClaim { @@ -88,8 +87,8 @@ impl OpcodeClaim { .for_each(|c| c.mix_into(channel)); self.jump_rel.iter().for_each(|c| c.mix_into(channel)); self.jump_rel_imm.iter().for_each(|c| c.mix_into(channel)); - self.mul_f_f.iter().for_each(|c| c.mix_into(channel)); - self.mul_f_t.iter().for_each(|c| c.mix_into(channel)); + self.mul.iter().for_each(|c| c.mix_into(channel)); + self.mul_imm.iter().for_each(|c| c.mix_into(channel)); self.ret.iter().for_each(|c| c.mix_into(channel)); } @@ -117,8 +116,8 @@ impl OpcodeClaim { self.jump_double_deref.iter().map(|c| c.log_sizes()), self.jump_rel.iter().map(|c| c.log_sizes()), self.jump_rel_imm.iter().map(|c| c.log_sizes()), - self.mul_f_f.iter().map(|c| c.log_sizes()), - self.mul_f_t.iter().map(|c| c.log_sizes()), + self.mul.iter().map(|c| c.log_sizes()), + self.mul_imm.iter().map(|c| c.log_sizes()), self.ret.iter().map(|c| c.log_sizes()), )) } @@ -147,8 +146,8 @@ pub struct OpcodesClaimGenerator { jump_double_deref: Vec, jump_rel: Vec, jump_rel_imm: Vec, - mul_f_f: Vec, - mul_f_t: Vec, + mul: Vec, + mul_imm: Vec, ret: Vec, } impl OpcodesClaimGenerator { @@ -176,8 +175,8 @@ impl OpcodesClaimGenerator { let mut jump_double_deref = vec![]; let mut jump_rel = vec![]; let mut jump_rel_imm = vec![]; - let mut mul_f_f = vec![]; - let mut mul_f_t = vec![]; + let mut mul = vec![]; + let mut mul_imm = vec![]; let mut ret = vec![]; if !input.casm_states_by_opcode.add_opcode.is_empty() { add.push(add_opcode::ClaimGenerator::new( @@ -315,22 +314,14 @@ impl OpcodesClaimGenerator { } // Handle small mul in big mul component. Temporary until airs are written with Rc_3_6_6. // TODO(Ohad): mul small. - if !input - .casm_states_by_opcode - .mul_opcode_is_small_f_is_imm_f - .is_empty() - { - mul_f_f.push(mul_opcode_is_small_f_is_imm_f::ClaimGenerator::new( - input.casm_states_by_opcode.mul_opcode_is_small_f_is_imm_f, + if !input.casm_states_by_opcode.mul_opcode.is_empty() { + mul.push(mul_opcode::ClaimGenerator::new( + input.casm_states_by_opcode.mul_opcode, )); } - if !input - .casm_states_by_opcode - .mul_opcode_is_small_f_is_imm_t - .is_empty() - { - mul_f_t.push(mul_opcode_is_small_f_is_imm_t::ClaimGenerator::new( - input.casm_states_by_opcode.mul_opcode_is_small_f_is_imm_t, + if !input.casm_states_by_opcode.mul_opcode_imm.is_empty() { + mul_imm.push(mul_opcode_imm::ClaimGenerator::new( + input.casm_states_by_opcode.mul_opcode_imm, )); } if !input.casm_states_by_opcode.ret_opcode.is_empty() { @@ -361,8 +352,8 @@ impl OpcodesClaimGenerator { jump_double_deref, jump_rel, jump_rel_imm, - mul_f_f, - mul_f_t, + mul, + mul_imm, ret, } } @@ -645,8 +636,8 @@ impl OpcodesClaimGenerator { ) }) .unzip(); - let (mul_f_f_claims, mul_f_f_interaction_gens) = self - .mul_f_f + let (mul_claims, mul_interaction_gens) = self + .mul .into_iter() .map(|gen| { gen.write_trace( @@ -658,8 +649,8 @@ impl OpcodesClaimGenerator { ) }) .unzip(); - let (mul_f_t_claims, mul_f_t_interaction_gens) = self - .mul_f_t + let (mul_imm_claims, mul_imm_interaction_gens) = self + .mul_imm .into_iter() .map(|gen| { gen.write_trace( @@ -707,8 +698,8 @@ impl OpcodesClaimGenerator { jump_double_deref: jump_double_deref_claims, jump_rel: jump_rel_claims, jump_rel_imm: jump_rel_imm_claims, - mul_f_f: mul_f_f_claims, - mul_f_t: mul_f_t_claims, + mul: mul_claims, + mul_imm: mul_imm_claims, ret: ret_claims, }, OpcodesInteractionClaimGenerator { @@ -734,8 +725,8 @@ impl OpcodesClaimGenerator { jump_double_deref: jump_double_deref_interaction_gens, jump_rel: jump_rel_interaction_gens, jump_rel_imm: jump_rel_imm_interaction_gens, - mul_f_f: mul_f_f_interaction_gens, - mul_f_t: mul_f_t_interaction_gens, + mul: mul_interaction_gens, + mul_imm: mul_imm_interaction_gens, ret_interaction_gens, }, ) @@ -766,8 +757,8 @@ pub struct OpcodeInteractionClaim { jump_double_deref: Vec, jump_rel: Vec, jump_rel_imm: Vec, - mul_f_f: Vec, - mul_f_t: Vec, + mul: Vec, + mul_imm: Vec, ret: Vec, } impl OpcodeInteractionClaim { @@ -806,8 +797,8 @@ impl OpcodeInteractionClaim { .for_each(|c| c.mix_into(channel)); self.jump_rel.iter().for_each(|c| c.mix_into(channel)); self.jump_rel_imm.iter().for_each(|c| c.mix_into(channel)); - self.mul_f_f.iter().for_each(|c| c.mix_into(channel)); - self.mul_f_t.iter().for_each(|c| c.mix_into(channel)); + self.mul.iter().for_each(|c| c.mix_into(channel)); + self.mul_imm.iter().for_each(|c| c.mix_into(channel)); self.ret.iter().for_each(|c| c.mix_into(channel)); } @@ -967,14 +958,14 @@ impl OpcodeInteractionClaim { None => total_sum, }; } - for interaction_claim in &self.mul_f_f { + for interaction_claim in &self.mul { let (total_sum, claimed_sum) = interaction_claim.logup_sums; sum += match claimed_sum { Some((claimed_sum, ..)) => claimed_sum, None => total_sum, }; } - for interaction_claim in &self.mul_f_t { + for interaction_claim in &self.mul_imm { let (total_sum, claimed_sum) = interaction_claim.logup_sums; sum += match claimed_sum { Some((claimed_sum, ..)) => claimed_sum, @@ -1015,8 +1006,8 @@ pub struct OpcodesInteractionClaimGenerator { jump_double_deref: Vec, jump_rel: Vec, jump_rel_imm: Vec, - mul_f_f: Vec, - mul_f_t: Vec, + mul: Vec, + mul_imm: Vec, ret_interaction_gens: Vec, } impl OpcodesInteractionClaimGenerator { @@ -1314,8 +1305,8 @@ impl OpcodesInteractionClaimGenerator { ) }) .collect(); - let mul_f_f_interaction_claims = self - .mul_f_f + let mul_interaction_claims = self + .mul .into_iter() .map(|gen| { gen.write_interaction_trace( @@ -1328,8 +1319,8 @@ impl OpcodesInteractionClaimGenerator { ) }) .collect(); - let mul_f_t_interaction_claims = self - .mul_f_t + let mul_imm_interaction_claims = self + .mul_imm .into_iter() .map(|gen| { gen.write_interaction_trace( @@ -1378,8 +1369,8 @@ impl OpcodesInteractionClaimGenerator { jump_double_deref: jump_double_deref_interaction_claims, jump_rel: jump_rel_interaction_claims, jump_rel_imm: jump_rel_imm_interaction_claims, - mul_f_f: mul_f_f_interaction_claims, - mul_f_t: mul_f_t_interaction_claims, + mul: mul_interaction_claims, + mul_imm: mul_imm_interaction_claims, ret: ret_interaction_claims, } } @@ -1408,8 +1399,8 @@ pub struct OpcodeComponents { jump_double_deref: Vec, jump_rel: Vec, jump_rel_imm: Vec, - mul_f_f: Vec, - mul_f_t: Vec, + mul: Vec, + mul_imm: Vec, ret: Vec, } impl OpcodeComponents { @@ -1945,14 +1936,14 @@ impl OpcodeComponents { ) }) .collect(); - let mul_f_f_components = claim - .mul_f_f + let mul_components = claim + .mul .iter() - .zip(interaction_claim.mul_f_f.iter()) + .zip(interaction_claim.mul.iter()) .map(|(&claim, &interaction_claim)| { - mul_opcode_is_small_f_is_imm_f::Component::new( + mul_opcode::Component::new( tree_span_provider, - mul_opcode_is_small_f_is_imm_f::Eval { + mul_opcode::Eval { claim, memory_address_to_id_lookup_elements: interaction_elements .memory_address_to_id @@ -1970,14 +1961,14 @@ impl OpcodeComponents { ) }) .collect_vec(); - let mul_f_t_components = claim - .mul_f_t + let mul_imm_components = claim + .mul_imm .iter() - .zip(interaction_claim.mul_f_t.iter()) + .zip(interaction_claim.mul_imm.iter()) .map(|(&claim, &interaction_claim)| { - mul_opcode_is_small_f_is_imm_t::Component::new( + mul_opcode_imm::Component::new( tree_span_provider, - mul_opcode_is_small_f_is_imm_t::Eval { + mul_opcode_imm::Eval { claim, memory_address_to_id_lookup_elements: interaction_elements .memory_address_to_id @@ -2042,8 +2033,8 @@ impl OpcodeComponents { jump_double_deref: jump_double_deref_components, jump_rel: jump_rel_components, jump_rel_imm: jump_rel_imm_components, - mul_f_f: mul_f_f_components, - mul_f_t: mul_f_t_components, + mul: mul_components, + mul_imm: mul_imm_components, ret: ret_components, } } @@ -2161,12 +2152,12 @@ impl OpcodeComponents { .map(|component| component as &dyn ComponentProver), ); vec.extend( - self.mul_f_f + self.mul .iter() .map(|component| component as &dyn ComponentProver), ); vec.extend( - self.mul_f_t + self.mul_imm .iter() .map(|component| component as &dyn ComponentProver), ); @@ -2225,10 +2216,10 @@ impl std::fmt::Display for OpcodeComponents { writeln!(f, "{}", display_components(&self.jump_rel))?; writeln!(f, "jump_rel_imm:")?; writeln!(f, "{}", display_components(&self.jump_rel_imm))?; - writeln!(f, "mul_f_f:")?; - writeln!(f, "{}", display_components(&self.mul_f_f))?; - writeln!(f, "mul_f_t:")?; - writeln!(f, "{}", display_components(&self.mul_f_t))?; + writeln!(f, "mul:")?; + writeln!(f, "{}", display_components(&self.mul))?; + writeln!(f, "mul_imm:")?; + writeln!(f, "{}", display_components(&self.mul_imm))?; writeln!(f, "ret:")?; writeln!(f, "{}", display_components(&self.ret))?; Ok(()) diff --git a/stwo_cairo_prover/crates/prover/src/components/mod.rs b/stwo_cairo_prover/crates/prover/src/components/mod.rs index d8cdaf35..e8c5d5cc 100644 --- a/stwo_cairo_prover/crates/prover/src/components/mod.rs +++ b/stwo_cairo_prover/crates/prover/src/components/mod.rs @@ -27,8 +27,8 @@ pub mod utils; pub mod verify_instruction; // TODO(Ohad): mul small. -pub mod mul_opcode_is_small_f_is_imm_f; -pub mod mul_opcode_is_small_f_is_imm_t; +pub mod mul_opcode; +pub mod mul_opcode_imm; pub use memory::{memory_address_to_id, memory_id_to_big}; pub use range_check_vector::{range_check_19, range_check_4_3, range_check_7_2_5, range_check_9_9}; diff --git a/stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_f/component.rs b/stwo_cairo_prover/crates/prover/src/components/mul_opcode/component.rs similarity index 86% rename from stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_f/component.rs rename to stwo_cairo_prover/crates/prover/src/components/mul_opcode/component.rs index f871c81c..ee115b68 100644 --- a/stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_f/component.rs +++ b/stwo_cairo_prover/crates/prover/src/components/mul_opcode/component.rs @@ -4,6 +4,7 @@ use num_traits::{One, Zero}; use serde::{Deserialize, Serialize}; use stwo_cairo_serialize::CairoSerialize; use stwo_prover::constraint_framework::logup::{LogupAtRow, LogupSums, LookupElements}; +use stwo_prover::constraint_framework::preprocessed_columns::PreprocessedColumn; use stwo_prover::constraint_framework::{ EvalAtRow, FrameworkComponent, FrameworkEval, RelationEntry, }; @@ -414,29 +415,29 @@ impl FrameworkEval for Eval { // Verify Mul 252. - let conv_tmp_5a147_17 = eval.add_intermediate( + let conv_tmp_42314_17 = eval.add_intermediate( ((M31_0.clone() - dst_limb_0_col15.clone()) + (op0_limb_0_col44.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_18 = eval.add_intermediate( + let conv_tmp_42314_18 = eval.add_intermediate( (((M31_0.clone() - dst_limb_1_col16.clone()) + (op0_limb_0_col44.clone() * op1_limb_1_col74.clone())) + (op0_limb_1_col45.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_19 = eval.add_intermediate( + let conv_tmp_42314_19 = eval.add_intermediate( ((((M31_0.clone() - dst_limb_2_col17.clone()) + (op0_limb_0_col44.clone() * op1_limb_2_col75.clone())) + (op0_limb_1_col45.clone() * op1_limb_1_col74.clone())) + (op0_limb_2_col46.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_20 = eval.add_intermediate( + let conv_tmp_42314_20 = eval.add_intermediate( (((((M31_0.clone() - dst_limb_3_col18.clone()) + (op0_limb_0_col44.clone() * op1_limb_3_col76.clone())) + (op0_limb_1_col45.clone() * op1_limb_2_col75.clone())) + (op0_limb_2_col46.clone() * op1_limb_1_col74.clone())) + (op0_limb_3_col47.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_21 = eval.add_intermediate( + let conv_tmp_42314_21 = eval.add_intermediate( ((((((M31_0.clone() - dst_limb_4_col19.clone()) + (op0_limb_0_col44.clone() * op1_limb_4_col77.clone())) + (op0_limb_1_col45.clone() * op1_limb_3_col76.clone())) @@ -444,7 +445,7 @@ impl FrameworkEval for Eval { + (op0_limb_3_col47.clone() * op1_limb_1_col74.clone())) + (op0_limb_4_col48.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_22 = eval.add_intermediate( + let conv_tmp_42314_22 = eval.add_intermediate( (((((((M31_0.clone() - dst_limb_5_col20.clone()) + (op0_limb_0_col44.clone() * op1_limb_5_col78.clone())) + (op0_limb_1_col45.clone() * op1_limb_4_col77.clone())) @@ -453,7 +454,7 @@ impl FrameworkEval for Eval { + (op0_limb_4_col48.clone() * op1_limb_1_col74.clone())) + (op0_limb_5_col49.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_23 = eval.add_intermediate( + let conv_tmp_42314_23 = eval.add_intermediate( ((((((((M31_0.clone() - dst_limb_6_col21.clone()) + (op0_limb_0_col44.clone() * op1_limb_6_col79.clone())) + (op0_limb_1_col45.clone() * op1_limb_5_col78.clone())) @@ -463,7 +464,7 @@ impl FrameworkEval for Eval { + (op0_limb_5_col49.clone() * op1_limb_1_col74.clone())) + (op0_limb_6_col50.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_24 = eval.add_intermediate( + let conv_tmp_42314_24 = eval.add_intermediate( (((((((((M31_0.clone() - dst_limb_7_col22.clone()) + (op0_limb_0_col44.clone() * op1_limb_7_col80.clone())) + (op0_limb_1_col45.clone() * op1_limb_6_col79.clone())) @@ -474,7 +475,7 @@ impl FrameworkEval for Eval { + (op0_limb_6_col50.clone() * op1_limb_1_col74.clone())) + (op0_limb_7_col51.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_25 = eval.add_intermediate( + let conv_tmp_42314_25 = eval.add_intermediate( ((((((((((M31_0.clone() - dst_limb_8_col23.clone()) + (op0_limb_0_col44.clone() * op1_limb_8_col81.clone())) + (op0_limb_1_col45.clone() * op1_limb_7_col80.clone())) @@ -486,7 +487,7 @@ impl FrameworkEval for Eval { + (op0_limb_7_col51.clone() * op1_limb_1_col74.clone())) + (op0_limb_8_col52.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_26 = eval.add_intermediate( + let conv_tmp_42314_26 = eval.add_intermediate( (((((((((((M31_0.clone() - dst_limb_9_col24.clone()) + (op0_limb_0_col44.clone() * op1_limb_9_col82.clone())) + (op0_limb_1_col45.clone() * op1_limb_8_col81.clone())) @@ -499,7 +500,7 @@ impl FrameworkEval for Eval { + (op0_limb_8_col52.clone() * op1_limb_1_col74.clone())) + (op0_limb_9_col53.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_27 = eval.add_intermediate( + let conv_tmp_42314_27 = eval.add_intermediate( ((((((((((((M31_0.clone() - dst_limb_10_col25.clone()) + (op0_limb_0_col44.clone() * op1_limb_10_col83.clone())) + (op0_limb_1_col45.clone() * op1_limb_9_col82.clone())) @@ -513,7 +514,7 @@ impl FrameworkEval for Eval { + (op0_limb_9_col53.clone() * op1_limb_1_col74.clone())) + (op0_limb_10_col54.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_28 = eval.add_intermediate( + let conv_tmp_42314_28 = eval.add_intermediate( (((((((((((((M31_0.clone() - dst_limb_11_col26.clone()) + (op0_limb_0_col44.clone() * op1_limb_11_col84.clone())) + (op0_limb_1_col45.clone() * op1_limb_10_col83.clone())) @@ -528,7 +529,7 @@ impl FrameworkEval for Eval { + (op0_limb_10_col54.clone() * op1_limb_1_col74.clone())) + (op0_limb_11_col55.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_29 = eval.add_intermediate( + let conv_tmp_42314_29 = eval.add_intermediate( ((((((((((((((M31_0.clone() - dst_limb_12_col27.clone()) + (op0_limb_0_col44.clone() * op1_limb_12_col85.clone())) + (op0_limb_1_col45.clone() * op1_limb_11_col84.clone())) @@ -544,7 +545,7 @@ impl FrameworkEval for Eval { + (op0_limb_11_col55.clone() * op1_limb_1_col74.clone())) + (op0_limb_12_col56.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_30 = eval.add_intermediate( + let conv_tmp_42314_30 = eval.add_intermediate( (((((((((((((((M31_0.clone() - dst_limb_13_col28.clone()) + (op0_limb_0_col44.clone() * op1_limb_13_col86.clone())) + (op0_limb_1_col45.clone() * op1_limb_12_col85.clone())) @@ -561,7 +562,7 @@ impl FrameworkEval for Eval { + (op0_limb_12_col56.clone() * op1_limb_1_col74.clone())) + (op0_limb_13_col57.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_31 = eval.add_intermediate( + let conv_tmp_42314_31 = eval.add_intermediate( ((((((((((((((((M31_0.clone() - dst_limb_14_col29.clone()) + (op0_limb_0_col44.clone() * op1_limb_14_col87.clone())) + (op0_limb_1_col45.clone() * op1_limb_13_col86.clone())) @@ -579,7 +580,7 @@ impl FrameworkEval for Eval { + (op0_limb_13_col57.clone() * op1_limb_1_col74.clone())) + (op0_limb_14_col58.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_32 = eval.add_intermediate( + let conv_tmp_42314_32 = eval.add_intermediate( (((((((((((((((((M31_0.clone() - dst_limb_15_col30.clone()) + (op0_limb_0_col44.clone() * op1_limb_15_col88.clone())) + (op0_limb_1_col45.clone() * op1_limb_14_col87.clone())) @@ -598,7 +599,7 @@ impl FrameworkEval for Eval { + (op0_limb_14_col58.clone() * op1_limb_1_col74.clone())) + (op0_limb_15_col59.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_33 = eval.add_intermediate( + let conv_tmp_42314_33 = eval.add_intermediate( ((((((((((((((((((M31_0.clone() - dst_limb_16_col31.clone()) + (op0_limb_0_col44.clone() * op1_limb_16_col89.clone())) + (op0_limb_1_col45.clone() * op1_limb_15_col88.clone())) @@ -618,7 +619,7 @@ impl FrameworkEval for Eval { + (op0_limb_15_col59.clone() * op1_limb_1_col74.clone())) + (op0_limb_16_col60.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_34 = eval.add_intermediate( + let conv_tmp_42314_34 = eval.add_intermediate( (((((((((((((((((((M31_0.clone() - dst_limb_17_col32.clone()) + (op0_limb_0_col44.clone() * op1_limb_17_col90.clone())) + (op0_limb_1_col45.clone() * op1_limb_16_col89.clone())) @@ -639,7 +640,7 @@ impl FrameworkEval for Eval { + (op0_limb_16_col60.clone() * op1_limb_1_col74.clone())) + (op0_limb_17_col61.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_35 = eval.add_intermediate( + let conv_tmp_42314_35 = eval.add_intermediate( ((((((((((((((((((((M31_0.clone() - dst_limb_18_col33.clone()) + (op0_limb_0_col44.clone() * op1_limb_18_col91.clone())) + (op0_limb_1_col45.clone() * op1_limb_17_col90.clone())) @@ -661,7 +662,7 @@ impl FrameworkEval for Eval { + (op0_limb_17_col61.clone() * op1_limb_1_col74.clone())) + (op0_limb_18_col62.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_36 = eval.add_intermediate( + let conv_tmp_42314_36 = eval.add_intermediate( (((((((((((((((((((((M31_0.clone() - dst_limb_19_col34.clone()) + (op0_limb_0_col44.clone() * op1_limb_19_col92.clone())) + (op0_limb_1_col45.clone() * op1_limb_18_col91.clone())) @@ -684,7 +685,7 @@ impl FrameworkEval for Eval { + (op0_limb_18_col62.clone() * op1_limb_1_col74.clone())) + (op0_limb_19_col63.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_37 = eval.add_intermediate( + let conv_tmp_42314_37 = eval.add_intermediate( ((((((((((((((((((((((M31_0.clone() - dst_limb_20_col35.clone()) + (op0_limb_0_col44.clone() * op1_limb_20_col93.clone())) + (op0_limb_1_col45.clone() * op1_limb_19_col92.clone())) @@ -708,7 +709,7 @@ impl FrameworkEval for Eval { + (op0_limb_19_col63.clone() * op1_limb_1_col74.clone())) + (op0_limb_20_col64.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_38 = eval.add_intermediate( + let conv_tmp_42314_38 = eval.add_intermediate( (((((((((((((((((((((((M31_0.clone() - dst_limb_21_col36.clone()) + (op0_limb_0_col44.clone() * op1_limb_21_col94.clone())) + (op0_limb_1_col45.clone() * op1_limb_20_col93.clone())) @@ -733,7 +734,7 @@ impl FrameworkEval for Eval { + (op0_limb_20_col64.clone() * op1_limb_1_col74.clone())) + (op0_limb_21_col65.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_39 = eval.add_intermediate( + let conv_tmp_42314_39 = eval.add_intermediate( ((((((((((((((((((((((((M31_0.clone() - dst_limb_22_col37.clone()) + (op0_limb_0_col44.clone() * op1_limb_22_col95.clone())) @@ -760,7 +761,7 @@ impl FrameworkEval for Eval { + (op0_limb_21_col65.clone() * op1_limb_1_col74.clone())) + (op0_limb_22_col66.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_40 = eval.add_intermediate( + let conv_tmp_42314_40 = eval.add_intermediate( (((((((((((((((((((((((((M31_0.clone() - dst_limb_23_col38.clone()) + (op0_limb_0_col44.clone() * op1_limb_23_col96.clone())) @@ -788,7 +789,7 @@ impl FrameworkEval for Eval { + (op0_limb_22_col66.clone() * op1_limb_1_col74.clone())) + (op0_limb_23_col67.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_41 = eval.add_intermediate( + let conv_tmp_42314_41 = eval.add_intermediate( ((((((((((((((((((((((((((M31_0.clone() - dst_limb_24_col39.clone()) + (op0_limb_0_col44.clone() * op1_limb_24_col97.clone())) @@ -817,7 +818,7 @@ impl FrameworkEval for Eval { + (op0_limb_23_col67.clone() * op1_limb_1_col74.clone())) + (op0_limb_24_col68.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_42 = eval.add_intermediate( + let conv_tmp_42314_42 = eval.add_intermediate( (((((((((((((((((((((((((((M31_0.clone() - dst_limb_25_col40.clone()) + (op0_limb_0_col44.clone() * op1_limb_25_col98.clone())) @@ -847,7 +848,7 @@ impl FrameworkEval for Eval { + (op0_limb_24_col68.clone() * op1_limb_1_col74.clone())) + (op0_limb_25_col69.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_43 = eval.add_intermediate( + let conv_tmp_42314_43 = eval.add_intermediate( ((((((((((((((((((((((((((((M31_0.clone() - dst_limb_26_col41.clone()) + (op0_limb_0_col44.clone() * op1_limb_26_col99.clone())) @@ -878,7 +879,7 @@ impl FrameworkEval for Eval { + (op0_limb_25_col69.clone() * op1_limb_1_col74.clone())) + (op0_limb_26_col70.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_44 = eval.add_intermediate( + let conv_tmp_42314_44 = eval.add_intermediate( (((((((((((((((((((((((((((((M31_0.clone() - dst_limb_27_col42.clone()) + (op0_limb_0_col44.clone() @@ -911,7 +912,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_1_col74.clone())) + (op0_limb_27_col71.clone() * op1_limb_0_col73.clone())), ); - let conv_tmp_5a147_45 = eval.add_intermediate( + let conv_tmp_42314_45 = eval.add_intermediate( (((((((((((((((((((((((((((M31_0.clone() + (op0_limb_1_col45.clone() * op1_limb_27_col100.clone())) @@ -942,7 +943,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_2_col75.clone())) + (op0_limb_27_col71.clone() * op1_limb_1_col74.clone())), ); - let conv_tmp_5a147_46 = eval.add_intermediate( + let conv_tmp_42314_46 = eval.add_intermediate( ((((((((((((((((((((((((((M31_0.clone() + (op0_limb_2_col46.clone() * op1_limb_27_col100.clone())) + (op0_limb_3_col47.clone() * op1_limb_26_col99.clone())) @@ -971,7 +972,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_3_col76.clone())) + (op0_limb_27_col71.clone() * op1_limb_2_col75.clone())), ); - let conv_tmp_5a147_47 = eval.add_intermediate( + let conv_tmp_42314_47 = eval.add_intermediate( (((((((((((((((((((((((((M31_0.clone() + (op0_limb_3_col47.clone() * op1_limb_27_col100.clone())) + (op0_limb_4_col48.clone() * op1_limb_26_col99.clone())) @@ -999,7 +1000,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_4_col77.clone())) + (op0_limb_27_col71.clone() * op1_limb_3_col76.clone())), ); - let conv_tmp_5a147_48 = eval.add_intermediate( + let conv_tmp_42314_48 = eval.add_intermediate( ((((((((((((((((((((((((M31_0.clone() + (op0_limb_4_col48.clone() * op1_limb_27_col100.clone())) + (op0_limb_5_col49.clone() * op1_limb_26_col99.clone())) @@ -1026,7 +1027,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_5_col78.clone())) + (op0_limb_27_col71.clone() * op1_limb_4_col77.clone())), ); - let conv_tmp_5a147_49 = eval.add_intermediate( + let conv_tmp_42314_49 = eval.add_intermediate( (((((((((((((((((((((((M31_0.clone() + (op0_limb_5_col49.clone() * op1_limb_27_col100.clone())) + (op0_limb_6_col50.clone() * op1_limb_26_col99.clone())) @@ -1052,7 +1053,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_6_col79.clone())) + (op0_limb_27_col71.clone() * op1_limb_5_col78.clone())), ); - let conv_tmp_5a147_50 = eval.add_intermediate( + let conv_tmp_42314_50 = eval.add_intermediate( ((((((((((((((((((((((M31_0.clone() + (op0_limb_6_col50.clone() * op1_limb_27_col100.clone())) + (op0_limb_7_col51.clone() * op1_limb_26_col99.clone())) @@ -1077,7 +1078,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_7_col80.clone())) + (op0_limb_27_col71.clone() * op1_limb_6_col79.clone())), ); - let conv_tmp_5a147_51 = eval.add_intermediate( + let conv_tmp_42314_51 = eval.add_intermediate( (((((((((((((((((((((M31_0.clone() + (op0_limb_7_col51.clone() * op1_limb_27_col100.clone())) + (op0_limb_8_col52.clone() * op1_limb_26_col99.clone())) @@ -1101,7 +1102,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_8_col81.clone())) + (op0_limb_27_col71.clone() * op1_limb_7_col80.clone())), ); - let conv_tmp_5a147_52 = eval.add_intermediate( + let conv_tmp_42314_52 = eval.add_intermediate( ((((((((((((((((((((M31_0.clone() + (op0_limb_8_col52.clone() * op1_limb_27_col100.clone())) + (op0_limb_9_col53.clone() * op1_limb_26_col99.clone())) @@ -1124,7 +1125,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_9_col82.clone())) + (op0_limb_27_col71.clone() * op1_limb_8_col81.clone())), ); - let conv_tmp_5a147_53 = eval.add_intermediate( + let conv_tmp_42314_53 = eval.add_intermediate( (((((((((((((((((((M31_0.clone() + (op0_limb_9_col53.clone() * op1_limb_27_col100.clone())) + (op0_limb_10_col54.clone() * op1_limb_26_col99.clone())) @@ -1146,7 +1147,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_10_col83.clone())) + (op0_limb_27_col71.clone() * op1_limb_9_col82.clone())), ); - let conv_tmp_5a147_54 = eval.add_intermediate( + let conv_tmp_42314_54 = eval.add_intermediate( ((((((((((((((((((M31_0.clone() + (op0_limb_10_col54.clone() * op1_limb_27_col100.clone())) + (op0_limb_11_col55.clone() * op1_limb_26_col99.clone())) @@ -1167,7 +1168,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_11_col84.clone())) + (op0_limb_27_col71.clone() * op1_limb_10_col83.clone())), ); - let conv_tmp_5a147_55 = eval.add_intermediate( + let conv_tmp_42314_55 = eval.add_intermediate( (((((((((((((((((M31_0.clone() + (op0_limb_11_col55.clone() * op1_limb_27_col100.clone())) + (op0_limb_12_col56.clone() * op1_limb_26_col99.clone())) @@ -1187,7 +1188,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_12_col85.clone())) + (op0_limb_27_col71.clone() * op1_limb_11_col84.clone())), ); - let conv_tmp_5a147_56 = eval.add_intermediate( + let conv_tmp_42314_56 = eval.add_intermediate( ((((((((((((((((M31_0.clone() + (op0_limb_12_col56.clone() * op1_limb_27_col100.clone())) + (op0_limb_13_col57.clone() * op1_limb_26_col99.clone())) @@ -1206,7 +1207,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_13_col86.clone())) + (op0_limb_27_col71.clone() * op1_limb_12_col85.clone())), ); - let conv_tmp_5a147_57 = eval.add_intermediate( + let conv_tmp_42314_57 = eval.add_intermediate( (((((((((((((((M31_0.clone() + (op0_limb_13_col57.clone() * op1_limb_27_col100.clone())) + (op0_limb_14_col58.clone() * op1_limb_26_col99.clone())) @@ -1224,7 +1225,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_14_col87.clone())) + (op0_limb_27_col71.clone() * op1_limb_13_col86.clone())), ); - let conv_tmp_5a147_58 = eval.add_intermediate( + let conv_tmp_42314_58 = eval.add_intermediate( ((((((((((((((M31_0.clone() + (op0_limb_14_col58.clone() * op1_limb_27_col100.clone())) + (op0_limb_15_col59.clone() * op1_limb_26_col99.clone())) @@ -1241,7 +1242,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_15_col88.clone())) + (op0_limb_27_col71.clone() * op1_limb_14_col87.clone())), ); - let conv_tmp_5a147_59 = eval.add_intermediate( + let conv_tmp_42314_59 = eval.add_intermediate( (((((((((((((M31_0.clone() + (op0_limb_15_col59.clone() * op1_limb_27_col100.clone())) + (op0_limb_16_col60.clone() * op1_limb_26_col99.clone())) @@ -1257,7 +1258,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_16_col89.clone())) + (op0_limb_27_col71.clone() * op1_limb_15_col88.clone())), ); - let conv_tmp_5a147_60 = eval.add_intermediate( + let conv_tmp_42314_60 = eval.add_intermediate( ((((((((((((M31_0.clone() + (op0_limb_16_col60.clone() * op1_limb_27_col100.clone())) + (op0_limb_17_col61.clone() * op1_limb_26_col99.clone())) @@ -1272,7 +1273,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_17_col90.clone())) + (op0_limb_27_col71.clone() * op1_limb_16_col89.clone())), ); - let conv_tmp_5a147_61 = eval.add_intermediate( + let conv_tmp_42314_61 = eval.add_intermediate( (((((((((((M31_0.clone() + (op0_limb_17_col61.clone() * op1_limb_27_col100.clone())) + (op0_limb_18_col62.clone() * op1_limb_26_col99.clone())) @@ -1286,7 +1287,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_18_col91.clone())) + (op0_limb_27_col71.clone() * op1_limb_17_col90.clone())), ); - let conv_tmp_5a147_62 = eval.add_intermediate( + let conv_tmp_42314_62 = eval.add_intermediate( ((((((((((M31_0.clone() + (op0_limb_18_col62.clone() * op1_limb_27_col100.clone())) + (op0_limb_19_col63.clone() * op1_limb_26_col99.clone())) @@ -1299,7 +1300,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_19_col92.clone())) + (op0_limb_27_col71.clone() * op1_limb_18_col91.clone())), ); - let conv_tmp_5a147_63 = eval.add_intermediate( + let conv_tmp_42314_63 = eval.add_intermediate( (((((((((M31_0.clone() + (op0_limb_19_col63.clone() * op1_limb_27_col100.clone())) + (op0_limb_20_col64.clone() * op1_limb_26_col99.clone())) @@ -1311,7 +1312,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_20_col93.clone())) + (op0_limb_27_col71.clone() * op1_limb_19_col92.clone())), ); - let conv_tmp_5a147_64 = eval.add_intermediate( + let conv_tmp_42314_64 = eval.add_intermediate( ((((((((M31_0.clone() + (op0_limb_20_col64.clone() * op1_limb_27_col100.clone())) + (op0_limb_21_col65.clone() * op1_limb_26_col99.clone())) @@ -1322,7 +1323,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_21_col94.clone())) + (op0_limb_27_col71.clone() * op1_limb_20_col93.clone())), ); - let conv_tmp_5a147_65 = eval.add_intermediate( + let conv_tmp_42314_65 = eval.add_intermediate( (((((((M31_0.clone() + (op0_limb_21_col65.clone() * op1_limb_27_col100.clone())) + (op0_limb_22_col66.clone() * op1_limb_26_col99.clone())) + (op0_limb_23_col67.clone() * op1_limb_25_col98.clone())) @@ -1331,7 +1332,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_22_col95.clone())) + (op0_limb_27_col71.clone() * op1_limb_21_col94.clone())), ); - let conv_tmp_5a147_66 = eval.add_intermediate( + let conv_tmp_42314_66 = eval.add_intermediate( ((((((M31_0.clone() + (op0_limb_22_col66.clone() * op1_limb_27_col100.clone())) + (op0_limb_23_col67.clone() * op1_limb_26_col99.clone())) + (op0_limb_24_col68.clone() * op1_limb_25_col98.clone())) @@ -1339,195 +1340,195 @@ impl FrameworkEval for Eval { + (op0_limb_26_col70.clone() * op1_limb_23_col96.clone())) + (op0_limb_27_col71.clone() * op1_limb_22_col95.clone())), ); - let conv_tmp_5a147_67 = eval.add_intermediate( + let conv_tmp_42314_67 = eval.add_intermediate( (((((M31_0.clone() + (op0_limb_23_col67.clone() * op1_limb_27_col100.clone())) + (op0_limb_24_col68.clone() * op1_limb_26_col99.clone())) + (op0_limb_25_col69.clone() * op1_limb_25_col98.clone())) + (op0_limb_26_col70.clone() * op1_limb_24_col97.clone())) + (op0_limb_27_col71.clone() * op1_limb_23_col96.clone())), ); - let conv_tmp_5a147_68 = eval.add_intermediate( + let conv_tmp_42314_68 = eval.add_intermediate( ((((M31_0.clone() + (op0_limb_24_col68.clone() * op1_limb_27_col100.clone())) + (op0_limb_25_col69.clone() * op1_limb_26_col99.clone())) + (op0_limb_26_col70.clone() * op1_limb_25_col98.clone())) + (op0_limb_27_col71.clone() * op1_limb_24_col97.clone())), ); - let conv_tmp_5a147_69 = eval.add_intermediate( + let conv_tmp_42314_69 = eval.add_intermediate( (((M31_0.clone() + (op0_limb_25_col69.clone() * op1_limb_27_col100.clone())) + (op0_limb_26_col70.clone() * op1_limb_26_col99.clone())) + (op0_limb_27_col71.clone() * op1_limb_25_col98.clone())), ); - let conv_tmp_5a147_70 = eval.add_intermediate( + let conv_tmp_42314_70 = eval.add_intermediate( ((M31_0.clone() + (op0_limb_26_col70.clone() * op1_limb_27_col100.clone())) + (op0_limb_27_col71.clone() * op1_limb_26_col99.clone())), ); - let conv_tmp_5a147_71 = eval.add_intermediate( + let conv_tmp_42314_71 = eval.add_intermediate( (M31_0.clone() + (op0_limb_27_col71.clone() * op1_limb_27_col100.clone())), ); - let conv_mod_tmp_5a147_72 = eval.add_intermediate( - (((M31_0.clone() + (M31_32.clone() * conv_tmp_5a147_17.clone())) - - (M31_4.clone() * conv_tmp_5a147_38.clone())) - + (M31_8.clone() * conv_tmp_5a147_66.clone())), - ); - let conv_mod_tmp_5a147_73 = eval.add_intermediate( - ((((M31_0.clone() + (M31_1.clone() * conv_tmp_5a147_17.clone())) - + (M31_32.clone() * conv_tmp_5a147_18.clone())) - - (M31_4.clone() * conv_tmp_5a147_39.clone())) - + (M31_8.clone() * conv_tmp_5a147_67.clone())), - ); - let conv_mod_tmp_5a147_74 = eval.add_intermediate( - ((((M31_0.clone() + (M31_1.clone() * conv_tmp_5a147_18.clone())) - + (M31_32.clone() * conv_tmp_5a147_19.clone())) - - (M31_4.clone() * conv_tmp_5a147_40.clone())) - + (M31_8.clone() * conv_tmp_5a147_68.clone())), - ); - let conv_mod_tmp_5a147_75 = eval.add_intermediate( - ((((M31_0.clone() + (M31_1.clone() * conv_tmp_5a147_19.clone())) - + (M31_32.clone() * conv_tmp_5a147_20.clone())) - - (M31_4.clone() * conv_tmp_5a147_41.clone())) - + (M31_8.clone() * conv_tmp_5a147_69.clone())), - ); - let conv_mod_tmp_5a147_76 = eval.add_intermediate( - ((((M31_0.clone() + (M31_1.clone() * conv_tmp_5a147_20.clone())) - + (M31_32.clone() * conv_tmp_5a147_21.clone())) - - (M31_4.clone() * conv_tmp_5a147_42.clone())) - + (M31_8.clone() * conv_tmp_5a147_70.clone())), - ); - let conv_mod_tmp_5a147_77 = eval.add_intermediate( - ((((M31_0.clone() + (M31_1.clone() * conv_tmp_5a147_21.clone())) - + (M31_32.clone() * conv_tmp_5a147_22.clone())) - - (M31_4.clone() * conv_tmp_5a147_43.clone())) - + (M31_8.clone() * conv_tmp_5a147_71.clone())), - ); - let conv_mod_tmp_5a147_78 = eval.add_intermediate( - (((M31_0.clone() + (M31_1.clone() * conv_tmp_5a147_22.clone())) - + (M31_32.clone() * conv_tmp_5a147_23.clone())) - - (M31_4.clone() * conv_tmp_5a147_44.clone())), - ); - let conv_mod_tmp_5a147_79 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_17.clone())) - + (M31_1.clone() * conv_tmp_5a147_23.clone())) - + (M31_32.clone() * conv_tmp_5a147_24.clone())) - - (M31_4.clone() * conv_tmp_5a147_45.clone())), - ); - let conv_mod_tmp_5a147_80 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_18.clone())) - + (M31_1.clone() * conv_tmp_5a147_24.clone())) - + (M31_32.clone() * conv_tmp_5a147_25.clone())) - - (M31_4.clone() * conv_tmp_5a147_46.clone())), - ); - let conv_mod_tmp_5a147_81 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_19.clone())) - + (M31_1.clone() * conv_tmp_5a147_25.clone())) - + (M31_32.clone() * conv_tmp_5a147_26.clone())) - - (M31_4.clone() * conv_tmp_5a147_47.clone())), - ); - let conv_mod_tmp_5a147_82 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_20.clone())) - + (M31_1.clone() * conv_tmp_5a147_26.clone())) - + (M31_32.clone() * conv_tmp_5a147_27.clone())) - - (M31_4.clone() * conv_tmp_5a147_48.clone())), - ); - let conv_mod_tmp_5a147_83 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_21.clone())) - + (M31_1.clone() * conv_tmp_5a147_27.clone())) - + (M31_32.clone() * conv_tmp_5a147_28.clone())) - - (M31_4.clone() * conv_tmp_5a147_49.clone())), - ); - let conv_mod_tmp_5a147_84 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_22.clone())) - + (M31_1.clone() * conv_tmp_5a147_28.clone())) - + (M31_32.clone() * conv_tmp_5a147_29.clone())) - - (M31_4.clone() * conv_tmp_5a147_50.clone())), - ); - let conv_mod_tmp_5a147_85 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_23.clone())) - + (M31_1.clone() * conv_tmp_5a147_29.clone())) - + (M31_32.clone() * conv_tmp_5a147_30.clone())) - - (M31_4.clone() * conv_tmp_5a147_51.clone())), - ); - let conv_mod_tmp_5a147_86 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_24.clone())) - + (M31_1.clone() * conv_tmp_5a147_30.clone())) - + (M31_32.clone() * conv_tmp_5a147_31.clone())) - - (M31_4.clone() * conv_tmp_5a147_52.clone())), - ); - let conv_mod_tmp_5a147_87 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_25.clone())) - + (M31_1.clone() * conv_tmp_5a147_31.clone())) - + (M31_32.clone() * conv_tmp_5a147_32.clone())) - - (M31_4.clone() * conv_tmp_5a147_53.clone())), - ); - let conv_mod_tmp_5a147_88 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_26.clone())) - + (M31_1.clone() * conv_tmp_5a147_32.clone())) - + (M31_32.clone() * conv_tmp_5a147_33.clone())) - - (M31_4.clone() * conv_tmp_5a147_54.clone())), - ); - let conv_mod_tmp_5a147_89 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_27.clone())) - + (M31_1.clone() * conv_tmp_5a147_33.clone())) - + (M31_32.clone() * conv_tmp_5a147_34.clone())) - - (M31_4.clone() * conv_tmp_5a147_55.clone())), - ); - let conv_mod_tmp_5a147_90 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_28.clone())) - + (M31_1.clone() * conv_tmp_5a147_34.clone())) - + (M31_32.clone() * conv_tmp_5a147_35.clone())) - - (M31_4.clone() * conv_tmp_5a147_56.clone())), - ); - let conv_mod_tmp_5a147_91 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_29.clone())) - + (M31_1.clone() * conv_tmp_5a147_35.clone())) - + (M31_32.clone() * conv_tmp_5a147_36.clone())) - - (M31_4.clone() * conv_tmp_5a147_57.clone())), - ); - let conv_mod_tmp_5a147_92 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_30.clone())) - + (M31_1.clone() * conv_tmp_5a147_36.clone())) - + (M31_32.clone() * conv_tmp_5a147_37.clone())) - - (M31_4.clone() * conv_tmp_5a147_58.clone())), - ); - let conv_mod_tmp_5a147_93 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_31.clone())) - + (M31_1.clone() * conv_tmp_5a147_37.clone())) - - (M31_4.clone() * conv_tmp_5a147_59.clone())) - + (M31_64.clone() * conv_tmp_5a147_66.clone())), - ); - let conv_mod_tmp_5a147_94 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_32.clone())) - - (M31_4.clone() * conv_tmp_5a147_60.clone())) - + (M31_2.clone() * conv_tmp_5a147_66.clone())) - + (M31_64.clone() * conv_tmp_5a147_67.clone())), - ); - let conv_mod_tmp_5a147_95 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_33.clone())) - - (M31_4.clone() * conv_tmp_5a147_61.clone())) - + (M31_2.clone() * conv_tmp_5a147_67.clone())) - + (M31_64.clone() * conv_tmp_5a147_68.clone())), - ); - let conv_mod_tmp_5a147_96 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_34.clone())) - - (M31_4.clone() * conv_tmp_5a147_62.clone())) - + (M31_2.clone() * conv_tmp_5a147_68.clone())) - + (M31_64.clone() * conv_tmp_5a147_69.clone())), - ); - let conv_mod_tmp_5a147_97 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_35.clone())) - - (M31_4.clone() * conv_tmp_5a147_63.clone())) - + (M31_2.clone() * conv_tmp_5a147_69.clone())) - + (M31_64.clone() * conv_tmp_5a147_70.clone())), - ); - let conv_mod_tmp_5a147_98 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_36.clone())) - - (M31_4.clone() * conv_tmp_5a147_64.clone())) - + (M31_2.clone() * conv_tmp_5a147_70.clone())) - + (M31_64.clone() * conv_tmp_5a147_71.clone())), - ); - let conv_mod_tmp_5a147_99 = eval.add_intermediate( - (((M31_0.clone() + (M31_2.clone() * conv_tmp_5a147_37.clone())) - - (M31_4.clone() * conv_tmp_5a147_65.clone())) - + (M31_2.clone() * conv_tmp_5a147_71.clone())), + let conv_mod_tmp_42314_72 = eval.add_intermediate( + (((M31_0.clone() + (M31_32.clone() * conv_tmp_42314_17.clone())) + - (M31_4.clone() * conv_tmp_42314_38.clone())) + + (M31_8.clone() * conv_tmp_42314_66.clone())), + ); + let conv_mod_tmp_42314_73 = eval.add_intermediate( + ((((M31_0.clone() + (M31_1.clone() * conv_tmp_42314_17.clone())) + + (M31_32.clone() * conv_tmp_42314_18.clone())) + - (M31_4.clone() * conv_tmp_42314_39.clone())) + + (M31_8.clone() * conv_tmp_42314_67.clone())), + ); + let conv_mod_tmp_42314_74 = eval.add_intermediate( + ((((M31_0.clone() + (M31_1.clone() * conv_tmp_42314_18.clone())) + + (M31_32.clone() * conv_tmp_42314_19.clone())) + - (M31_4.clone() * conv_tmp_42314_40.clone())) + + (M31_8.clone() * conv_tmp_42314_68.clone())), + ); + let conv_mod_tmp_42314_75 = eval.add_intermediate( + ((((M31_0.clone() + (M31_1.clone() * conv_tmp_42314_19.clone())) + + (M31_32.clone() * conv_tmp_42314_20.clone())) + - (M31_4.clone() * conv_tmp_42314_41.clone())) + + (M31_8.clone() * conv_tmp_42314_69.clone())), + ); + let conv_mod_tmp_42314_76 = eval.add_intermediate( + ((((M31_0.clone() + (M31_1.clone() * conv_tmp_42314_20.clone())) + + (M31_32.clone() * conv_tmp_42314_21.clone())) + - (M31_4.clone() * conv_tmp_42314_42.clone())) + + (M31_8.clone() * conv_tmp_42314_70.clone())), + ); + let conv_mod_tmp_42314_77 = eval.add_intermediate( + ((((M31_0.clone() + (M31_1.clone() * conv_tmp_42314_21.clone())) + + (M31_32.clone() * conv_tmp_42314_22.clone())) + - (M31_4.clone() * conv_tmp_42314_43.clone())) + + (M31_8.clone() * conv_tmp_42314_71.clone())), + ); + let conv_mod_tmp_42314_78 = eval.add_intermediate( + (((M31_0.clone() + (M31_1.clone() * conv_tmp_42314_22.clone())) + + (M31_32.clone() * conv_tmp_42314_23.clone())) + - (M31_4.clone() * conv_tmp_42314_44.clone())), + ); + let conv_mod_tmp_42314_79 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_17.clone())) + + (M31_1.clone() * conv_tmp_42314_23.clone())) + + (M31_32.clone() * conv_tmp_42314_24.clone())) + - (M31_4.clone() * conv_tmp_42314_45.clone())), + ); + let conv_mod_tmp_42314_80 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_18.clone())) + + (M31_1.clone() * conv_tmp_42314_24.clone())) + + (M31_32.clone() * conv_tmp_42314_25.clone())) + - (M31_4.clone() * conv_tmp_42314_46.clone())), + ); + let conv_mod_tmp_42314_81 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_19.clone())) + + (M31_1.clone() * conv_tmp_42314_25.clone())) + + (M31_32.clone() * conv_tmp_42314_26.clone())) + - (M31_4.clone() * conv_tmp_42314_47.clone())), + ); + let conv_mod_tmp_42314_82 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_20.clone())) + + (M31_1.clone() * conv_tmp_42314_26.clone())) + + (M31_32.clone() * conv_tmp_42314_27.clone())) + - (M31_4.clone() * conv_tmp_42314_48.clone())), + ); + let conv_mod_tmp_42314_83 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_21.clone())) + + (M31_1.clone() * conv_tmp_42314_27.clone())) + + (M31_32.clone() * conv_tmp_42314_28.clone())) + - (M31_4.clone() * conv_tmp_42314_49.clone())), + ); + let conv_mod_tmp_42314_84 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_22.clone())) + + (M31_1.clone() * conv_tmp_42314_28.clone())) + + (M31_32.clone() * conv_tmp_42314_29.clone())) + - (M31_4.clone() * conv_tmp_42314_50.clone())), + ); + let conv_mod_tmp_42314_85 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_23.clone())) + + (M31_1.clone() * conv_tmp_42314_29.clone())) + + (M31_32.clone() * conv_tmp_42314_30.clone())) + - (M31_4.clone() * conv_tmp_42314_51.clone())), + ); + let conv_mod_tmp_42314_86 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_24.clone())) + + (M31_1.clone() * conv_tmp_42314_30.clone())) + + (M31_32.clone() * conv_tmp_42314_31.clone())) + - (M31_4.clone() * conv_tmp_42314_52.clone())), + ); + let conv_mod_tmp_42314_87 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_25.clone())) + + (M31_1.clone() * conv_tmp_42314_31.clone())) + + (M31_32.clone() * conv_tmp_42314_32.clone())) + - (M31_4.clone() * conv_tmp_42314_53.clone())), + ); + let conv_mod_tmp_42314_88 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_26.clone())) + + (M31_1.clone() * conv_tmp_42314_32.clone())) + + (M31_32.clone() * conv_tmp_42314_33.clone())) + - (M31_4.clone() * conv_tmp_42314_54.clone())), + ); + let conv_mod_tmp_42314_89 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_27.clone())) + + (M31_1.clone() * conv_tmp_42314_33.clone())) + + (M31_32.clone() * conv_tmp_42314_34.clone())) + - (M31_4.clone() * conv_tmp_42314_55.clone())), + ); + let conv_mod_tmp_42314_90 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_28.clone())) + + (M31_1.clone() * conv_tmp_42314_34.clone())) + + (M31_32.clone() * conv_tmp_42314_35.clone())) + - (M31_4.clone() * conv_tmp_42314_56.clone())), + ); + let conv_mod_tmp_42314_91 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_29.clone())) + + (M31_1.clone() * conv_tmp_42314_35.clone())) + + (M31_32.clone() * conv_tmp_42314_36.clone())) + - (M31_4.clone() * conv_tmp_42314_57.clone())), + ); + let conv_mod_tmp_42314_92 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_30.clone())) + + (M31_1.clone() * conv_tmp_42314_36.clone())) + + (M31_32.clone() * conv_tmp_42314_37.clone())) + - (M31_4.clone() * conv_tmp_42314_58.clone())), + ); + let conv_mod_tmp_42314_93 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_31.clone())) + + (M31_1.clone() * conv_tmp_42314_37.clone())) + - (M31_4.clone() * conv_tmp_42314_59.clone())) + + (M31_64.clone() * conv_tmp_42314_66.clone())), + ); + let conv_mod_tmp_42314_94 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_32.clone())) + - (M31_4.clone() * conv_tmp_42314_60.clone())) + + (M31_2.clone() * conv_tmp_42314_66.clone())) + + (M31_64.clone() * conv_tmp_42314_67.clone())), + ); + let conv_mod_tmp_42314_95 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_33.clone())) + - (M31_4.clone() * conv_tmp_42314_61.clone())) + + (M31_2.clone() * conv_tmp_42314_67.clone())) + + (M31_64.clone() * conv_tmp_42314_68.clone())), + ); + let conv_mod_tmp_42314_96 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_34.clone())) + - (M31_4.clone() * conv_tmp_42314_62.clone())) + + (M31_2.clone() * conv_tmp_42314_68.clone())) + + (M31_64.clone() * conv_tmp_42314_69.clone())), + ); + let conv_mod_tmp_42314_97 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_35.clone())) + - (M31_4.clone() * conv_tmp_42314_63.clone())) + + (M31_2.clone() * conv_tmp_42314_69.clone())) + + (M31_64.clone() * conv_tmp_42314_70.clone())), + ); + let conv_mod_tmp_42314_98 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_36.clone())) + - (M31_4.clone() * conv_tmp_42314_64.clone())) + + (M31_2.clone() * conv_tmp_42314_70.clone())) + + (M31_64.clone() * conv_tmp_42314_71.clone())), + ); + let conv_mod_tmp_42314_99 = eval.add_intermediate( + (((M31_0.clone() + (M31_2.clone() * conv_tmp_42314_37.clone())) + - (M31_4.clone() * conv_tmp_42314_65.clone())) + + (M31_2.clone() * conv_tmp_42314_71.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1537,7 +1538,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_0_col102.clone() * M31_512.clone()) - - ((conv_mod_tmp_5a147_72.clone() - (M31_1.clone() * k_col101.clone())) + - ((conv_mod_tmp_42314_72.clone() - (M31_1.clone() * k_col101.clone())) + M31_0.clone())), ); eval.add_to_relation(RelationEntry::new( @@ -1548,7 +1549,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_1_col103.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_73.clone() + carry_0_col102.clone())), + - (conv_mod_tmp_42314_73.clone() + carry_0_col102.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1558,7 +1559,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_2_col104.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_74.clone() + carry_1_col103.clone())), + - (conv_mod_tmp_42314_74.clone() + carry_1_col103.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1568,7 +1569,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_3_col105.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_75.clone() + carry_2_col104.clone())), + - (conv_mod_tmp_42314_75.clone() + carry_2_col104.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1578,7 +1579,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_4_col106.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_76.clone() + carry_3_col105.clone())), + - (conv_mod_tmp_42314_76.clone() + carry_3_col105.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1588,7 +1589,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_5_col107.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_77.clone() + carry_4_col106.clone())), + - (conv_mod_tmp_42314_77.clone() + carry_4_col106.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1598,7 +1599,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_6_col108.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_78.clone() + carry_5_col107.clone())), + - (conv_mod_tmp_42314_78.clone() + carry_5_col107.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1608,7 +1609,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_7_col109.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_79.clone() + carry_6_col108.clone())), + - (conv_mod_tmp_42314_79.clone() + carry_6_col108.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1618,7 +1619,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_8_col110.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_80.clone() + carry_7_col109.clone())), + - (conv_mod_tmp_42314_80.clone() + carry_7_col109.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1628,7 +1629,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_9_col111.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_81.clone() + carry_8_col110.clone())), + - (conv_mod_tmp_42314_81.clone() + carry_8_col110.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1638,7 +1639,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_10_col112.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_82.clone() + carry_9_col111.clone())), + - (conv_mod_tmp_42314_82.clone() + carry_9_col111.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1648,7 +1649,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_11_col113.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_83.clone() + carry_10_col112.clone())), + - (conv_mod_tmp_42314_83.clone() + carry_10_col112.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1658,7 +1659,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_12_col114.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_84.clone() + carry_11_col113.clone())), + - (conv_mod_tmp_42314_84.clone() + carry_11_col113.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1668,7 +1669,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_13_col115.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_85.clone() + carry_12_col114.clone())), + - (conv_mod_tmp_42314_85.clone() + carry_12_col114.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1678,7 +1679,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_14_col116.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_86.clone() + carry_13_col115.clone())), + - (conv_mod_tmp_42314_86.clone() + carry_13_col115.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1688,7 +1689,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_15_col117.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_87.clone() + carry_14_col116.clone())), + - (conv_mod_tmp_42314_87.clone() + carry_14_col116.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1698,7 +1699,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_16_col118.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_88.clone() + carry_15_col117.clone())), + - (conv_mod_tmp_42314_88.clone() + carry_15_col117.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1708,7 +1709,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_17_col119.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_89.clone() + carry_16_col118.clone())), + - (conv_mod_tmp_42314_89.clone() + carry_16_col118.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1718,7 +1719,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_18_col120.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_90.clone() + carry_17_col119.clone())), + - (conv_mod_tmp_42314_90.clone() + carry_17_col119.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1728,7 +1729,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_19_col121.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_91.clone() + carry_18_col120.clone())), + - (conv_mod_tmp_42314_91.clone() + carry_18_col120.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1738,7 +1739,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_20_col122.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_92.clone() + carry_19_col121.clone())), + - (conv_mod_tmp_42314_92.clone() + carry_19_col121.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1748,7 +1749,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_21_col123.clone() * M31_512.clone()) - - ((conv_mod_tmp_5a147_93.clone() - (M31_136.clone() * k_col101.clone())) + - ((conv_mod_tmp_42314_93.clone() - (M31_136.clone() * k_col101.clone())) + carry_20_col122.clone())), ); eval.add_to_relation(RelationEntry::new( @@ -1759,7 +1760,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_22_col124.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_94.clone() + carry_21_col123.clone())), + - (conv_mod_tmp_42314_94.clone() + carry_21_col123.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1769,7 +1770,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_23_col125.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_95.clone() + carry_22_col124.clone())), + - (conv_mod_tmp_42314_95.clone() + carry_22_col124.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1779,7 +1780,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_24_col126.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_96.clone() + carry_23_col125.clone())), + - (conv_mod_tmp_42314_96.clone() + carry_23_col125.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1789,7 +1790,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_25_col127.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_97.clone() + carry_24_col126.clone())), + - (conv_mod_tmp_42314_97.clone() + carry_24_col126.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1799,7 +1800,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_26_col128.clone() * M31_512.clone()) - - (conv_mod_tmp_5a147_98.clone() + carry_25_col127.clone())), + - (conv_mod_tmp_42314_98.clone() + carry_25_col127.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1808,7 +1809,7 @@ impl FrameworkEval for Eval { )); eval.add_constraint( - ((conv_mod_tmp_5a147_99.clone() - (M31_256.clone() * k_col101.clone())) + ((conv_mod_tmp_42314_99.clone() - (M31_256.clone() * k_col101.clone())) + carry_26_col128.clone()), ); diff --git a/stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_f/mod.rs b/stwo_cairo_prover/crates/prover/src/components/mul_opcode/mod.rs similarity index 100% rename from stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_f/mod.rs rename to stwo_cairo_prover/crates/prover/src/components/mul_opcode/mod.rs diff --git a/stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_f/prover.rs b/stwo_cairo_prover/crates/prover/src/components/mul_opcode/prover.rs similarity index 85% rename from stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_f/prover.rs rename to stwo_cairo_prover/crates/prover/src/components/mul_opcode/prover.rs index bc260409..649b2fbe 100644 --- a/stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_f/prover.rs +++ b/stwo_cairo_prover/crates/prover/src/components/mul_opcode/prover.rs @@ -7,10 +7,13 @@ use itertools::{chain, zip_eq, Itertools}; use num_traits::{One, Zero}; use prover_types::cpu::*; use prover_types::simd::*; -use rayon::iter::{IndexedParallelIterator, IntoParallelRefIterator, ParallelIterator}; +use rayon::iter::{ + IndexedParallelIterator, IntoParallelIterator, IntoParallelRefIterator, ParallelIterator, +}; use stwo_air_utils::trace::component_trace::ComponentTrace; use stwo_air_utils_derive::{IterMut, ParIterMut, Uninitialized}; use stwo_prover::constraint_framework::logup::LogupTraceGenerator; +use stwo_prover::constraint_framework::preprocessed_columns::PreprocessedColumn; use stwo_prover::constraint_framework::Relation; use stwo_prover::core::air::Component; use stwo_prover::core::backend::simd::column::BaseColumn; @@ -21,6 +24,7 @@ use stwo_prover::core::backend::simd::SimdBackend; use stwo_prover::core::backend::{BackendForChannel, Col, Column}; use stwo_prover::core::channel::{Channel, MerkleChannel}; use stwo_prover::core::fields::m31::M31; +use stwo_prover::core::fields::FieldExpOps; use stwo_prover::core::pcs::TreeBuilder; use stwo_prover::core::poly::circle::{CanonicCoset, CircleEvaluation}; use stwo_prover::core::poly::BitReversedOrder; @@ -69,6 +73,7 @@ impl ClaimGenerator { let packed_inputs = pack_values(&self.inputs); let (trace, mut sub_components_inputs, lookup_data) = write_trace_simd( + n_rows, packed_inputs, memory_address_to_id_state, memory_id_to_big_state, @@ -113,8 +118,8 @@ impl ClaimGenerator { ) } - pub fn add_inputs(&mut self, inputs: &[InputType]) { - self.inputs.extend(inputs); + pub fn add_inputs(&self, _inputs: &[InputType]) { + unimplemented!("Implement manually"); } } @@ -131,6 +136,7 @@ pub struct SubComponentInputs { #[allow(clippy::double_parens)] #[allow(non_snake_case)] fn write_trace_simd( + n_rows: usize, inputs: Vec, memory_address_to_id_state: &memory_address_to_id::ClaimGenerator, memory_id_to_big_state: &memory_id_to_big::ClaimGenerator, @@ -183,111 +189,108 @@ fn write_trace_simd( trace .par_iter_mut() - .zip(inputs.par_iter()) + .enumerate() + .zip(inputs.into_par_iter()) .zip(lookup_data.par_iter_mut()) .zip(sub_components_inputs.par_iter_mut().chunks(N_LANES)) .for_each( - |( - ((row, mul_opcode_is_small_f_is_imm_f_input), lookup_data), - mut sub_components_inputs, - )| { - let input_tmp_5a147_0 = mul_opcode_is_small_f_is_imm_f_input; - let input_pc_col0 = input_tmp_5a147_0.pc; + |((((row_index, row), mul_opcode_input), lookup_data), mut sub_components_inputs)| { + let input_tmp_42314_0 = mul_opcode_input; + let input_pc_col0 = input_tmp_42314_0.pc; *row[0] = input_pc_col0; - let input_ap_col1 = input_tmp_5a147_0.ap; + let input_ap_col1 = input_tmp_42314_0.ap; *row[1] = input_ap_col1; - let input_fp_col2 = input_tmp_5a147_0.fp; + let input_fp_col2 = input_tmp_42314_0.fp; *row[2] = input_fp_col2; // Decode Instruction. - let memory_address_to_id_value_tmp_5a147_1 = + let memory_address_to_id_value_tmp_42314_1 = memory_address_to_id_state.deduce_output(input_pc_col0); - let memory_id_to_big_value_tmp_5a147_2 = - memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_5a147_1); - let offset0_tmp_5a147_3 = - ((PackedUInt16::from_m31(memory_id_to_big_value_tmp_5a147_2.get_m31(0))) + let memory_id_to_big_value_tmp_42314_2 = + memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_42314_1); + let offset0_tmp_42314_3 = + ((PackedUInt16::from_m31(memory_id_to_big_value_tmp_42314_2.get_m31(0))) + (((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_5a147_2.get_m31(1), + memory_id_to_big_value_tmp_42314_2.get_m31(1), )) & (UInt16_127)) << (UInt16_9))); - let offset0_col3 = offset0_tmp_5a147_3.as_m31(); + let offset0_col3 = offset0_tmp_42314_3.as_m31(); *row[3] = offset0_col3; - let offset1_tmp_5a147_4 = - ((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_5a147_2.get_m31(1))) + let offset1_tmp_42314_4 = + ((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_42314_2.get_m31(1))) >> (UInt16_7)) + ((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_5a147_2.get_m31(2), + memory_id_to_big_value_tmp_42314_2.get_m31(2), )) << (UInt16_2))) + (((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_5a147_2.get_m31(3), + memory_id_to_big_value_tmp_42314_2.get_m31(3), )) & (UInt16_31)) << (UInt16_11))); - let offset1_col4 = offset1_tmp_5a147_4.as_m31(); + let offset1_col4 = offset1_tmp_42314_4.as_m31(); *row[4] = offset1_col4; - let offset2_tmp_5a147_5 = - ((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_5a147_2.get_m31(3))) + let offset2_tmp_42314_5 = + ((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_42314_2.get_m31(3))) >> (UInt16_5)) + ((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_5a147_2.get_m31(4), + memory_id_to_big_value_tmp_42314_2.get_m31(4), )) << (UInt16_4))) + (((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_5a147_2.get_m31(5), + memory_id_to_big_value_tmp_42314_2.get_m31(5), )) & (UInt16_7)) << (UInt16_13))); - let offset2_col5 = offset2_tmp_5a147_5.as_m31(); + let offset2_col5 = offset2_tmp_42314_5.as_m31(); *row[5] = offset2_col5; - let dst_base_fp_tmp_5a147_6 = - (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_5a147_2.get_m31(5))) + let dst_base_fp_tmp_42314_6 = + (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_42314_2.get_m31(5))) >> (UInt16_3)) + ((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_5a147_2.get_m31(6), + memory_id_to_big_value_tmp_42314_2.get_m31(6), )) << (UInt16_6))) >> (UInt16_0)) & (UInt16_1)); - let dst_base_fp_col6 = dst_base_fp_tmp_5a147_6.as_m31(); + let dst_base_fp_col6 = dst_base_fp_tmp_42314_6.as_m31(); *row[6] = dst_base_fp_col6; - let op0_base_fp_tmp_5a147_7 = - (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_5a147_2.get_m31(5))) + let op0_base_fp_tmp_42314_7 = + (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_42314_2.get_m31(5))) >> (UInt16_3)) + ((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_5a147_2.get_m31(6), + memory_id_to_big_value_tmp_42314_2.get_m31(6), )) << (UInt16_6))) >> (UInt16_1)) & (UInt16_1)); - let op0_base_fp_col7 = op0_base_fp_tmp_5a147_7.as_m31(); + let op0_base_fp_col7 = op0_base_fp_tmp_42314_7.as_m31(); *row[7] = op0_base_fp_col7; - let op1_base_fp_tmp_5a147_8 = - (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_5a147_2.get_m31(5))) + let op1_base_fp_tmp_42314_8 = + (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_42314_2.get_m31(5))) >> (UInt16_3)) + ((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_5a147_2.get_m31(6), + memory_id_to_big_value_tmp_42314_2.get_m31(6), )) << (UInt16_6))) >> (UInt16_3)) & (UInt16_1)); - let op1_base_fp_col8 = op1_base_fp_tmp_5a147_8.as_m31(); + let op1_base_fp_col8 = op1_base_fp_tmp_42314_8.as_m31(); *row[8] = op1_base_fp_col8; - let op1_base_ap_tmp_5a147_9 = - (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_5a147_2.get_m31(5))) + let op1_base_ap_tmp_42314_9 = + (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_42314_2.get_m31(5))) >> (UInt16_3)) + ((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_5a147_2.get_m31(6), + memory_id_to_big_value_tmp_42314_2.get_m31(6), )) << (UInt16_6))) >> (UInt16_4)) & (UInt16_1)); - let op1_base_ap_col9 = op1_base_ap_tmp_5a147_9.as_m31(); + let op1_base_ap_col9 = op1_base_ap_tmp_42314_9.as_m31(); *row[9] = op1_base_ap_col9; - let ap_update_add_1_tmp_5a147_10 = - (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_5a147_2.get_m31(5))) + let ap_update_add_1_tmp_42314_10 = + (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_42314_2.get_m31(5))) >> (UInt16_3)) + ((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_5a147_2.get_m31(6), + memory_id_to_big_value_tmp_42314_2.get_m31(6), )) << (UInt16_6))) >> (UInt16_11)) & (UInt16_1)); - let ap_update_add_1_col10 = ap_update_add_1_tmp_5a147_10.as_m31(); + let ap_update_add_1_col10 = ap_update_add_1_tmp_42314_10.as_m31(); *row[10] = ap_update_add_1_col10; - for (i, &input) in ( input_pc_col0, [offset0_col3, offset1_col4, offset2_col5], @@ -349,11 +352,11 @@ fn write_trace_simd( // Read Positive Num Bits 252. - let memory_address_to_id_value_tmp_5a147_11 = memory_address_to_id_state + let memory_address_to_id_value_tmp_42314_11 = memory_address_to_id_state .deduce_output(((mem_dst_base_col11) + ((offset0_col3) - (M31_32768)))); - let memory_id_to_big_value_tmp_5a147_12 = - memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_5a147_11); - let dst_id_col14 = memory_address_to_id_value_tmp_5a147_11; + let memory_id_to_big_value_tmp_42314_12 = + memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_42314_11); + let dst_id_col14 = memory_address_to_id_value_tmp_42314_11; *row[14] = dst_id_col14; for (i, &input) in ((mem_dst_base_col11) + ((offset0_col3) - (M31_32768))) .unpack() @@ -366,61 +369,61 @@ fn write_trace_simd( ((mem_dst_base_col11) + ((offset0_col3) - (M31_32768))), dst_id_col14, ]; - let dst_limb_0_col15 = memory_id_to_big_value_tmp_5a147_12.get_m31(0); + let dst_limb_0_col15 = memory_id_to_big_value_tmp_42314_12.get_m31(0); *row[15] = dst_limb_0_col15; - let dst_limb_1_col16 = memory_id_to_big_value_tmp_5a147_12.get_m31(1); + let dst_limb_1_col16 = memory_id_to_big_value_tmp_42314_12.get_m31(1); *row[16] = dst_limb_1_col16; - let dst_limb_2_col17 = memory_id_to_big_value_tmp_5a147_12.get_m31(2); + let dst_limb_2_col17 = memory_id_to_big_value_tmp_42314_12.get_m31(2); *row[17] = dst_limb_2_col17; - let dst_limb_3_col18 = memory_id_to_big_value_tmp_5a147_12.get_m31(3); + let dst_limb_3_col18 = memory_id_to_big_value_tmp_42314_12.get_m31(3); *row[18] = dst_limb_3_col18; - let dst_limb_4_col19 = memory_id_to_big_value_tmp_5a147_12.get_m31(4); + let dst_limb_4_col19 = memory_id_to_big_value_tmp_42314_12.get_m31(4); *row[19] = dst_limb_4_col19; - let dst_limb_5_col20 = memory_id_to_big_value_tmp_5a147_12.get_m31(5); + let dst_limb_5_col20 = memory_id_to_big_value_tmp_42314_12.get_m31(5); *row[20] = dst_limb_5_col20; - let dst_limb_6_col21 = memory_id_to_big_value_tmp_5a147_12.get_m31(6); + let dst_limb_6_col21 = memory_id_to_big_value_tmp_42314_12.get_m31(6); *row[21] = dst_limb_6_col21; - let dst_limb_7_col22 = memory_id_to_big_value_tmp_5a147_12.get_m31(7); + let dst_limb_7_col22 = memory_id_to_big_value_tmp_42314_12.get_m31(7); *row[22] = dst_limb_7_col22; - let dst_limb_8_col23 = memory_id_to_big_value_tmp_5a147_12.get_m31(8); + let dst_limb_8_col23 = memory_id_to_big_value_tmp_42314_12.get_m31(8); *row[23] = dst_limb_8_col23; - let dst_limb_9_col24 = memory_id_to_big_value_tmp_5a147_12.get_m31(9); + let dst_limb_9_col24 = memory_id_to_big_value_tmp_42314_12.get_m31(9); *row[24] = dst_limb_9_col24; - let dst_limb_10_col25 = memory_id_to_big_value_tmp_5a147_12.get_m31(10); + let dst_limb_10_col25 = memory_id_to_big_value_tmp_42314_12.get_m31(10); *row[25] = dst_limb_10_col25; - let dst_limb_11_col26 = memory_id_to_big_value_tmp_5a147_12.get_m31(11); + let dst_limb_11_col26 = memory_id_to_big_value_tmp_42314_12.get_m31(11); *row[26] = dst_limb_11_col26; - let dst_limb_12_col27 = memory_id_to_big_value_tmp_5a147_12.get_m31(12); + let dst_limb_12_col27 = memory_id_to_big_value_tmp_42314_12.get_m31(12); *row[27] = dst_limb_12_col27; - let dst_limb_13_col28 = memory_id_to_big_value_tmp_5a147_12.get_m31(13); + let dst_limb_13_col28 = memory_id_to_big_value_tmp_42314_12.get_m31(13); *row[28] = dst_limb_13_col28; - let dst_limb_14_col29 = memory_id_to_big_value_tmp_5a147_12.get_m31(14); + let dst_limb_14_col29 = memory_id_to_big_value_tmp_42314_12.get_m31(14); *row[29] = dst_limb_14_col29; - let dst_limb_15_col30 = memory_id_to_big_value_tmp_5a147_12.get_m31(15); + let dst_limb_15_col30 = memory_id_to_big_value_tmp_42314_12.get_m31(15); *row[30] = dst_limb_15_col30; - let dst_limb_16_col31 = memory_id_to_big_value_tmp_5a147_12.get_m31(16); + let dst_limb_16_col31 = memory_id_to_big_value_tmp_42314_12.get_m31(16); *row[31] = dst_limb_16_col31; - let dst_limb_17_col32 = memory_id_to_big_value_tmp_5a147_12.get_m31(17); + let dst_limb_17_col32 = memory_id_to_big_value_tmp_42314_12.get_m31(17); *row[32] = dst_limb_17_col32; - let dst_limb_18_col33 = memory_id_to_big_value_tmp_5a147_12.get_m31(18); + let dst_limb_18_col33 = memory_id_to_big_value_tmp_42314_12.get_m31(18); *row[33] = dst_limb_18_col33; - let dst_limb_19_col34 = memory_id_to_big_value_tmp_5a147_12.get_m31(19); + let dst_limb_19_col34 = memory_id_to_big_value_tmp_42314_12.get_m31(19); *row[34] = dst_limb_19_col34; - let dst_limb_20_col35 = memory_id_to_big_value_tmp_5a147_12.get_m31(20); + let dst_limb_20_col35 = memory_id_to_big_value_tmp_42314_12.get_m31(20); *row[35] = dst_limb_20_col35; - let dst_limb_21_col36 = memory_id_to_big_value_tmp_5a147_12.get_m31(21); + let dst_limb_21_col36 = memory_id_to_big_value_tmp_42314_12.get_m31(21); *row[36] = dst_limb_21_col36; - let dst_limb_22_col37 = memory_id_to_big_value_tmp_5a147_12.get_m31(22); + let dst_limb_22_col37 = memory_id_to_big_value_tmp_42314_12.get_m31(22); *row[37] = dst_limb_22_col37; - let dst_limb_23_col38 = memory_id_to_big_value_tmp_5a147_12.get_m31(23); + let dst_limb_23_col38 = memory_id_to_big_value_tmp_42314_12.get_m31(23); *row[38] = dst_limb_23_col38; - let dst_limb_24_col39 = memory_id_to_big_value_tmp_5a147_12.get_m31(24); + let dst_limb_24_col39 = memory_id_to_big_value_tmp_42314_12.get_m31(24); *row[39] = dst_limb_24_col39; - let dst_limb_25_col40 = memory_id_to_big_value_tmp_5a147_12.get_m31(25); + let dst_limb_25_col40 = memory_id_to_big_value_tmp_42314_12.get_m31(25); *row[40] = dst_limb_25_col40; - let dst_limb_26_col41 = memory_id_to_big_value_tmp_5a147_12.get_m31(26); + let dst_limb_26_col41 = memory_id_to_big_value_tmp_42314_12.get_m31(26); *row[41] = dst_limb_26_col41; - let dst_limb_27_col42 = memory_id_to_big_value_tmp_5a147_12.get_m31(27); + let dst_limb_27_col42 = memory_id_to_big_value_tmp_42314_12.get_m31(27); *row[42] = dst_limb_27_col42; for (i, &input) in dst_id_col14.unpack().iter().enumerate() { *sub_components_inputs[i].memory_id_to_big_inputs[0] = input; @@ -459,11 +462,11 @@ fn write_trace_simd( // Read Positive Num Bits 252. - let memory_address_to_id_value_tmp_5a147_13 = memory_address_to_id_state + let memory_address_to_id_value_tmp_42314_13 = memory_address_to_id_state .deduce_output(((mem0_base_col12) + ((offset1_col4) - (M31_32768)))); - let memory_id_to_big_value_tmp_5a147_14 = - memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_5a147_13); - let op0_id_col43 = memory_address_to_id_value_tmp_5a147_13; + let memory_id_to_big_value_tmp_42314_14 = + memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_42314_13); + let op0_id_col43 = memory_address_to_id_value_tmp_42314_13; *row[43] = op0_id_col43; for (i, &input) in ((mem0_base_col12) + ((offset1_col4) - (M31_32768))) .unpack() @@ -476,61 +479,61 @@ fn write_trace_simd( ((mem0_base_col12) + ((offset1_col4) - (M31_32768))), op0_id_col43, ]; - let op0_limb_0_col44 = memory_id_to_big_value_tmp_5a147_14.get_m31(0); + let op0_limb_0_col44 = memory_id_to_big_value_tmp_42314_14.get_m31(0); *row[44] = op0_limb_0_col44; - let op0_limb_1_col45 = memory_id_to_big_value_tmp_5a147_14.get_m31(1); + let op0_limb_1_col45 = memory_id_to_big_value_tmp_42314_14.get_m31(1); *row[45] = op0_limb_1_col45; - let op0_limb_2_col46 = memory_id_to_big_value_tmp_5a147_14.get_m31(2); + let op0_limb_2_col46 = memory_id_to_big_value_tmp_42314_14.get_m31(2); *row[46] = op0_limb_2_col46; - let op0_limb_3_col47 = memory_id_to_big_value_tmp_5a147_14.get_m31(3); + let op0_limb_3_col47 = memory_id_to_big_value_tmp_42314_14.get_m31(3); *row[47] = op0_limb_3_col47; - let op0_limb_4_col48 = memory_id_to_big_value_tmp_5a147_14.get_m31(4); + let op0_limb_4_col48 = memory_id_to_big_value_tmp_42314_14.get_m31(4); *row[48] = op0_limb_4_col48; - let op0_limb_5_col49 = memory_id_to_big_value_tmp_5a147_14.get_m31(5); + let op0_limb_5_col49 = memory_id_to_big_value_tmp_42314_14.get_m31(5); *row[49] = op0_limb_5_col49; - let op0_limb_6_col50 = memory_id_to_big_value_tmp_5a147_14.get_m31(6); + let op0_limb_6_col50 = memory_id_to_big_value_tmp_42314_14.get_m31(6); *row[50] = op0_limb_6_col50; - let op0_limb_7_col51 = memory_id_to_big_value_tmp_5a147_14.get_m31(7); + let op0_limb_7_col51 = memory_id_to_big_value_tmp_42314_14.get_m31(7); *row[51] = op0_limb_7_col51; - let op0_limb_8_col52 = memory_id_to_big_value_tmp_5a147_14.get_m31(8); + let op0_limb_8_col52 = memory_id_to_big_value_tmp_42314_14.get_m31(8); *row[52] = op0_limb_8_col52; - let op0_limb_9_col53 = memory_id_to_big_value_tmp_5a147_14.get_m31(9); + let op0_limb_9_col53 = memory_id_to_big_value_tmp_42314_14.get_m31(9); *row[53] = op0_limb_9_col53; - let op0_limb_10_col54 = memory_id_to_big_value_tmp_5a147_14.get_m31(10); + let op0_limb_10_col54 = memory_id_to_big_value_tmp_42314_14.get_m31(10); *row[54] = op0_limb_10_col54; - let op0_limb_11_col55 = memory_id_to_big_value_tmp_5a147_14.get_m31(11); + let op0_limb_11_col55 = memory_id_to_big_value_tmp_42314_14.get_m31(11); *row[55] = op0_limb_11_col55; - let op0_limb_12_col56 = memory_id_to_big_value_tmp_5a147_14.get_m31(12); + let op0_limb_12_col56 = memory_id_to_big_value_tmp_42314_14.get_m31(12); *row[56] = op0_limb_12_col56; - let op0_limb_13_col57 = memory_id_to_big_value_tmp_5a147_14.get_m31(13); + let op0_limb_13_col57 = memory_id_to_big_value_tmp_42314_14.get_m31(13); *row[57] = op0_limb_13_col57; - let op0_limb_14_col58 = memory_id_to_big_value_tmp_5a147_14.get_m31(14); + let op0_limb_14_col58 = memory_id_to_big_value_tmp_42314_14.get_m31(14); *row[58] = op0_limb_14_col58; - let op0_limb_15_col59 = memory_id_to_big_value_tmp_5a147_14.get_m31(15); + let op0_limb_15_col59 = memory_id_to_big_value_tmp_42314_14.get_m31(15); *row[59] = op0_limb_15_col59; - let op0_limb_16_col60 = memory_id_to_big_value_tmp_5a147_14.get_m31(16); + let op0_limb_16_col60 = memory_id_to_big_value_tmp_42314_14.get_m31(16); *row[60] = op0_limb_16_col60; - let op0_limb_17_col61 = memory_id_to_big_value_tmp_5a147_14.get_m31(17); + let op0_limb_17_col61 = memory_id_to_big_value_tmp_42314_14.get_m31(17); *row[61] = op0_limb_17_col61; - let op0_limb_18_col62 = memory_id_to_big_value_tmp_5a147_14.get_m31(18); + let op0_limb_18_col62 = memory_id_to_big_value_tmp_42314_14.get_m31(18); *row[62] = op0_limb_18_col62; - let op0_limb_19_col63 = memory_id_to_big_value_tmp_5a147_14.get_m31(19); + let op0_limb_19_col63 = memory_id_to_big_value_tmp_42314_14.get_m31(19); *row[63] = op0_limb_19_col63; - let op0_limb_20_col64 = memory_id_to_big_value_tmp_5a147_14.get_m31(20); + let op0_limb_20_col64 = memory_id_to_big_value_tmp_42314_14.get_m31(20); *row[64] = op0_limb_20_col64; - let op0_limb_21_col65 = memory_id_to_big_value_tmp_5a147_14.get_m31(21); + let op0_limb_21_col65 = memory_id_to_big_value_tmp_42314_14.get_m31(21); *row[65] = op0_limb_21_col65; - let op0_limb_22_col66 = memory_id_to_big_value_tmp_5a147_14.get_m31(22); + let op0_limb_22_col66 = memory_id_to_big_value_tmp_42314_14.get_m31(22); *row[66] = op0_limb_22_col66; - let op0_limb_23_col67 = memory_id_to_big_value_tmp_5a147_14.get_m31(23); + let op0_limb_23_col67 = memory_id_to_big_value_tmp_42314_14.get_m31(23); *row[67] = op0_limb_23_col67; - let op0_limb_24_col68 = memory_id_to_big_value_tmp_5a147_14.get_m31(24); + let op0_limb_24_col68 = memory_id_to_big_value_tmp_42314_14.get_m31(24); *row[68] = op0_limb_24_col68; - let op0_limb_25_col69 = memory_id_to_big_value_tmp_5a147_14.get_m31(25); + let op0_limb_25_col69 = memory_id_to_big_value_tmp_42314_14.get_m31(25); *row[69] = op0_limb_25_col69; - let op0_limb_26_col70 = memory_id_to_big_value_tmp_5a147_14.get_m31(26); + let op0_limb_26_col70 = memory_id_to_big_value_tmp_42314_14.get_m31(26); *row[70] = op0_limb_26_col70; - let op0_limb_27_col71 = memory_id_to_big_value_tmp_5a147_14.get_m31(27); + let op0_limb_27_col71 = memory_id_to_big_value_tmp_42314_14.get_m31(27); *row[71] = op0_limb_27_col71; for (i, &input) in op0_id_col43.unpack().iter().enumerate() { *sub_components_inputs[i].memory_id_to_big_inputs[1] = input; @@ -569,11 +572,11 @@ fn write_trace_simd( // Read Positive Num Bits 252. - let memory_address_to_id_value_tmp_5a147_15 = memory_address_to_id_state + let memory_address_to_id_value_tmp_42314_15 = memory_address_to_id_state .deduce_output(((mem1_base_col13) + ((offset2_col5) - (M31_32768)))); - let memory_id_to_big_value_tmp_5a147_16 = - memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_5a147_15); - let op1_id_col72 = memory_address_to_id_value_tmp_5a147_15; + let memory_id_to_big_value_tmp_42314_16 = + memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_42314_15); + let op1_id_col72 = memory_address_to_id_value_tmp_42314_15; *row[72] = op1_id_col72; for (i, &input) in ((mem1_base_col13) + ((offset2_col5) - (M31_32768))) .unpack() @@ -586,61 +589,61 @@ fn write_trace_simd( ((mem1_base_col13) + ((offset2_col5) - (M31_32768))), op1_id_col72, ]; - let op1_limb_0_col73 = memory_id_to_big_value_tmp_5a147_16.get_m31(0); + let op1_limb_0_col73 = memory_id_to_big_value_tmp_42314_16.get_m31(0); *row[73] = op1_limb_0_col73; - let op1_limb_1_col74 = memory_id_to_big_value_tmp_5a147_16.get_m31(1); + let op1_limb_1_col74 = memory_id_to_big_value_tmp_42314_16.get_m31(1); *row[74] = op1_limb_1_col74; - let op1_limb_2_col75 = memory_id_to_big_value_tmp_5a147_16.get_m31(2); + let op1_limb_2_col75 = memory_id_to_big_value_tmp_42314_16.get_m31(2); *row[75] = op1_limb_2_col75; - let op1_limb_3_col76 = memory_id_to_big_value_tmp_5a147_16.get_m31(3); + let op1_limb_3_col76 = memory_id_to_big_value_tmp_42314_16.get_m31(3); *row[76] = op1_limb_3_col76; - let op1_limb_4_col77 = memory_id_to_big_value_tmp_5a147_16.get_m31(4); + let op1_limb_4_col77 = memory_id_to_big_value_tmp_42314_16.get_m31(4); *row[77] = op1_limb_4_col77; - let op1_limb_5_col78 = memory_id_to_big_value_tmp_5a147_16.get_m31(5); + let op1_limb_5_col78 = memory_id_to_big_value_tmp_42314_16.get_m31(5); *row[78] = op1_limb_5_col78; - let op1_limb_6_col79 = memory_id_to_big_value_tmp_5a147_16.get_m31(6); + let op1_limb_6_col79 = memory_id_to_big_value_tmp_42314_16.get_m31(6); *row[79] = op1_limb_6_col79; - let op1_limb_7_col80 = memory_id_to_big_value_tmp_5a147_16.get_m31(7); + let op1_limb_7_col80 = memory_id_to_big_value_tmp_42314_16.get_m31(7); *row[80] = op1_limb_7_col80; - let op1_limb_8_col81 = memory_id_to_big_value_tmp_5a147_16.get_m31(8); + let op1_limb_8_col81 = memory_id_to_big_value_tmp_42314_16.get_m31(8); *row[81] = op1_limb_8_col81; - let op1_limb_9_col82 = memory_id_to_big_value_tmp_5a147_16.get_m31(9); + let op1_limb_9_col82 = memory_id_to_big_value_tmp_42314_16.get_m31(9); *row[82] = op1_limb_9_col82; - let op1_limb_10_col83 = memory_id_to_big_value_tmp_5a147_16.get_m31(10); + let op1_limb_10_col83 = memory_id_to_big_value_tmp_42314_16.get_m31(10); *row[83] = op1_limb_10_col83; - let op1_limb_11_col84 = memory_id_to_big_value_tmp_5a147_16.get_m31(11); + let op1_limb_11_col84 = memory_id_to_big_value_tmp_42314_16.get_m31(11); *row[84] = op1_limb_11_col84; - let op1_limb_12_col85 = memory_id_to_big_value_tmp_5a147_16.get_m31(12); + let op1_limb_12_col85 = memory_id_to_big_value_tmp_42314_16.get_m31(12); *row[85] = op1_limb_12_col85; - let op1_limb_13_col86 = memory_id_to_big_value_tmp_5a147_16.get_m31(13); + let op1_limb_13_col86 = memory_id_to_big_value_tmp_42314_16.get_m31(13); *row[86] = op1_limb_13_col86; - let op1_limb_14_col87 = memory_id_to_big_value_tmp_5a147_16.get_m31(14); + let op1_limb_14_col87 = memory_id_to_big_value_tmp_42314_16.get_m31(14); *row[87] = op1_limb_14_col87; - let op1_limb_15_col88 = memory_id_to_big_value_tmp_5a147_16.get_m31(15); + let op1_limb_15_col88 = memory_id_to_big_value_tmp_42314_16.get_m31(15); *row[88] = op1_limb_15_col88; - let op1_limb_16_col89 = memory_id_to_big_value_tmp_5a147_16.get_m31(16); + let op1_limb_16_col89 = memory_id_to_big_value_tmp_42314_16.get_m31(16); *row[89] = op1_limb_16_col89; - let op1_limb_17_col90 = memory_id_to_big_value_tmp_5a147_16.get_m31(17); + let op1_limb_17_col90 = memory_id_to_big_value_tmp_42314_16.get_m31(17); *row[90] = op1_limb_17_col90; - let op1_limb_18_col91 = memory_id_to_big_value_tmp_5a147_16.get_m31(18); + let op1_limb_18_col91 = memory_id_to_big_value_tmp_42314_16.get_m31(18); *row[91] = op1_limb_18_col91; - let op1_limb_19_col92 = memory_id_to_big_value_tmp_5a147_16.get_m31(19); + let op1_limb_19_col92 = memory_id_to_big_value_tmp_42314_16.get_m31(19); *row[92] = op1_limb_19_col92; - let op1_limb_20_col93 = memory_id_to_big_value_tmp_5a147_16.get_m31(20); + let op1_limb_20_col93 = memory_id_to_big_value_tmp_42314_16.get_m31(20); *row[93] = op1_limb_20_col93; - let op1_limb_21_col94 = memory_id_to_big_value_tmp_5a147_16.get_m31(21); + let op1_limb_21_col94 = memory_id_to_big_value_tmp_42314_16.get_m31(21); *row[94] = op1_limb_21_col94; - let op1_limb_22_col95 = memory_id_to_big_value_tmp_5a147_16.get_m31(22); + let op1_limb_22_col95 = memory_id_to_big_value_tmp_42314_16.get_m31(22); *row[95] = op1_limb_22_col95; - let op1_limb_23_col96 = memory_id_to_big_value_tmp_5a147_16.get_m31(23); + let op1_limb_23_col96 = memory_id_to_big_value_tmp_42314_16.get_m31(23); *row[96] = op1_limb_23_col96; - let op1_limb_24_col97 = memory_id_to_big_value_tmp_5a147_16.get_m31(24); + let op1_limb_24_col97 = memory_id_to_big_value_tmp_42314_16.get_m31(24); *row[97] = op1_limb_24_col97; - let op1_limb_25_col98 = memory_id_to_big_value_tmp_5a147_16.get_m31(25); + let op1_limb_25_col98 = memory_id_to_big_value_tmp_42314_16.get_m31(25); *row[98] = op1_limb_25_col98; - let op1_limb_26_col99 = memory_id_to_big_value_tmp_5a147_16.get_m31(26); + let op1_limb_26_col99 = memory_id_to_big_value_tmp_42314_16.get_m31(26); *row[99] = op1_limb_26_col99; - let op1_limb_27_col100 = memory_id_to_big_value_tmp_5a147_16.get_m31(27); + let op1_limb_27_col100 = memory_id_to_big_value_tmp_42314_16.get_m31(27); *row[100] = op1_limb_27_col100; for (i, &input) in op1_id_col72.unpack().iter().enumerate() { *sub_components_inputs[i].memory_id_to_big_inputs[2] = input; @@ -679,34 +682,34 @@ fn write_trace_simd( // Verify Mul 252. - let conv_tmp_5a147_17 = + let conv_tmp_42314_17 = (((M31_0) - (dst_limb_0_col15)) + ((op0_limb_0_col44) * (op1_limb_0_col73))); - let conv_tmp_5a147_18 = ((((M31_0) - (dst_limb_1_col16)) + let conv_tmp_42314_18 = ((((M31_0) - (dst_limb_1_col16)) + ((op0_limb_0_col44) * (op1_limb_1_col74))) + ((op0_limb_1_col45) * (op1_limb_0_col73))); - let conv_tmp_5a147_19 = (((((M31_0) - (dst_limb_2_col17)) + let conv_tmp_42314_19 = (((((M31_0) - (dst_limb_2_col17)) + ((op0_limb_0_col44) * (op1_limb_2_col75))) + ((op0_limb_1_col45) * (op1_limb_1_col74))) + ((op0_limb_2_col46) * (op1_limb_0_col73))); - let conv_tmp_5a147_20 = ((((((M31_0) - (dst_limb_3_col18)) + let conv_tmp_42314_20 = ((((((M31_0) - (dst_limb_3_col18)) + ((op0_limb_0_col44) * (op1_limb_3_col76))) + ((op0_limb_1_col45) * (op1_limb_2_col75))) + ((op0_limb_2_col46) * (op1_limb_1_col74))) + ((op0_limb_3_col47) * (op1_limb_0_col73))); - let conv_tmp_5a147_21 = (((((((M31_0) - (dst_limb_4_col19)) + let conv_tmp_42314_21 = (((((((M31_0) - (dst_limb_4_col19)) + ((op0_limb_0_col44) * (op1_limb_4_col77))) + ((op0_limb_1_col45) * (op1_limb_3_col76))) + ((op0_limb_2_col46) * (op1_limb_2_col75))) + ((op0_limb_3_col47) * (op1_limb_1_col74))) + ((op0_limb_4_col48) * (op1_limb_0_col73))); - let conv_tmp_5a147_22 = ((((((((M31_0) - (dst_limb_5_col20)) + let conv_tmp_42314_22 = ((((((((M31_0) - (dst_limb_5_col20)) + ((op0_limb_0_col44) * (op1_limb_5_col78))) + ((op0_limb_1_col45) * (op1_limb_4_col77))) + ((op0_limb_2_col46) * (op1_limb_3_col76))) + ((op0_limb_3_col47) * (op1_limb_2_col75))) + ((op0_limb_4_col48) * (op1_limb_1_col74))) + ((op0_limb_5_col49) * (op1_limb_0_col73))); - let conv_tmp_5a147_23 = (((((((((M31_0) - (dst_limb_6_col21)) + let conv_tmp_42314_23 = (((((((((M31_0) - (dst_limb_6_col21)) + ((op0_limb_0_col44) * (op1_limb_6_col79))) + ((op0_limb_1_col45) * (op1_limb_5_col78))) + ((op0_limb_2_col46) * (op1_limb_4_col77))) @@ -714,7 +717,7 @@ fn write_trace_simd( + ((op0_limb_4_col48) * (op1_limb_2_col75))) + ((op0_limb_5_col49) * (op1_limb_1_col74))) + ((op0_limb_6_col50) * (op1_limb_0_col73))); - let conv_tmp_5a147_24 = ((((((((((M31_0) - (dst_limb_7_col22)) + let conv_tmp_42314_24 = ((((((((((M31_0) - (dst_limb_7_col22)) + ((op0_limb_0_col44) * (op1_limb_7_col80))) + ((op0_limb_1_col45) * (op1_limb_6_col79))) + ((op0_limb_2_col46) * (op1_limb_5_col78))) @@ -723,7 +726,7 @@ fn write_trace_simd( + ((op0_limb_5_col49) * (op1_limb_2_col75))) + ((op0_limb_6_col50) * (op1_limb_1_col74))) + ((op0_limb_7_col51) * (op1_limb_0_col73))); - let conv_tmp_5a147_25 = (((((((((((M31_0) - (dst_limb_8_col23)) + let conv_tmp_42314_25 = (((((((((((M31_0) - (dst_limb_8_col23)) + ((op0_limb_0_col44) * (op1_limb_8_col81))) + ((op0_limb_1_col45) * (op1_limb_7_col80))) + ((op0_limb_2_col46) * (op1_limb_6_col79))) @@ -733,7 +736,7 @@ fn write_trace_simd( + ((op0_limb_6_col50) * (op1_limb_2_col75))) + ((op0_limb_7_col51) * (op1_limb_1_col74))) + ((op0_limb_8_col52) * (op1_limb_0_col73))); - let conv_tmp_5a147_26 = ((((((((((((M31_0) - (dst_limb_9_col24)) + let conv_tmp_42314_26 = ((((((((((((M31_0) - (dst_limb_9_col24)) + ((op0_limb_0_col44) * (op1_limb_9_col82))) + ((op0_limb_1_col45) * (op1_limb_8_col81))) + ((op0_limb_2_col46) * (op1_limb_7_col80))) @@ -744,7 +747,7 @@ fn write_trace_simd( + ((op0_limb_7_col51) * (op1_limb_2_col75))) + ((op0_limb_8_col52) * (op1_limb_1_col74))) + ((op0_limb_9_col53) * (op1_limb_0_col73))); - let conv_tmp_5a147_27 = (((((((((((((M31_0) - (dst_limb_10_col25)) + let conv_tmp_42314_27 = (((((((((((((M31_0) - (dst_limb_10_col25)) + ((op0_limb_0_col44) * (op1_limb_10_col83))) + ((op0_limb_1_col45) * (op1_limb_9_col82))) + ((op0_limb_2_col46) * (op1_limb_8_col81))) @@ -756,7 +759,7 @@ fn write_trace_simd( + ((op0_limb_8_col52) * (op1_limb_2_col75))) + ((op0_limb_9_col53) * (op1_limb_1_col74))) + ((op0_limb_10_col54) * (op1_limb_0_col73))); - let conv_tmp_5a147_28 = ((((((((((((((M31_0) - (dst_limb_11_col26)) + let conv_tmp_42314_28 = ((((((((((((((M31_0) - (dst_limb_11_col26)) + ((op0_limb_0_col44) * (op1_limb_11_col84))) + ((op0_limb_1_col45) * (op1_limb_10_col83))) + ((op0_limb_2_col46) * (op1_limb_9_col82))) @@ -769,7 +772,7 @@ fn write_trace_simd( + ((op0_limb_9_col53) * (op1_limb_2_col75))) + ((op0_limb_10_col54) * (op1_limb_1_col74))) + ((op0_limb_11_col55) * (op1_limb_0_col73))); - let conv_tmp_5a147_29 = (((((((((((((((M31_0) - (dst_limb_12_col27)) + let conv_tmp_42314_29 = (((((((((((((((M31_0) - (dst_limb_12_col27)) + ((op0_limb_0_col44) * (op1_limb_12_col85))) + ((op0_limb_1_col45) * (op1_limb_11_col84))) + ((op0_limb_2_col46) * (op1_limb_10_col83))) @@ -783,7 +786,7 @@ fn write_trace_simd( + ((op0_limb_10_col54) * (op1_limb_2_col75))) + ((op0_limb_11_col55) * (op1_limb_1_col74))) + ((op0_limb_12_col56) * (op1_limb_0_col73))); - let conv_tmp_5a147_30 = ((((((((((((((((M31_0) - (dst_limb_13_col28)) + let conv_tmp_42314_30 = ((((((((((((((((M31_0) - (dst_limb_13_col28)) + ((op0_limb_0_col44) * (op1_limb_13_col86))) + ((op0_limb_1_col45) * (op1_limb_12_col85))) + ((op0_limb_2_col46) * (op1_limb_11_col84))) @@ -798,7 +801,7 @@ fn write_trace_simd( + ((op0_limb_11_col55) * (op1_limb_2_col75))) + ((op0_limb_12_col56) * (op1_limb_1_col74))) + ((op0_limb_13_col57) * (op1_limb_0_col73))); - let conv_tmp_5a147_31 = (((((((((((((((((M31_0) + let conv_tmp_42314_31 = (((((((((((((((((M31_0) - (dst_limb_14_col29)) + ((op0_limb_0_col44) * (op1_limb_14_col87))) + ((op0_limb_1_col45) * (op1_limb_13_col86))) @@ -815,7 +818,7 @@ fn write_trace_simd( + ((op0_limb_12_col56) * (op1_limb_2_col75))) + ((op0_limb_13_col57) * (op1_limb_1_col74))) + ((op0_limb_14_col58) * (op1_limb_0_col73))); - let conv_tmp_5a147_32 = ((((((((((((((((((M31_0) + let conv_tmp_42314_32 = ((((((((((((((((((M31_0) - (dst_limb_15_col30)) + ((op0_limb_0_col44) * (op1_limb_15_col88))) + ((op0_limb_1_col45) * (op1_limb_14_col87))) @@ -833,7 +836,7 @@ fn write_trace_simd( + ((op0_limb_13_col57) * (op1_limb_2_col75))) + ((op0_limb_14_col58) * (op1_limb_1_col74))) + ((op0_limb_15_col59) * (op1_limb_0_col73))); - let conv_tmp_5a147_33 = (((((((((((((((((((M31_0) + let conv_tmp_42314_33 = (((((((((((((((((((M31_0) - (dst_limb_16_col31)) + ((op0_limb_0_col44) * (op1_limb_16_col89))) + ((op0_limb_1_col45) * (op1_limb_15_col88))) @@ -852,7 +855,7 @@ fn write_trace_simd( + ((op0_limb_14_col58) * (op1_limb_2_col75))) + ((op0_limb_15_col59) * (op1_limb_1_col74))) + ((op0_limb_16_col60) * (op1_limb_0_col73))); - let conv_tmp_5a147_34 = ((((((((((((((((((((M31_0) + let conv_tmp_42314_34 = ((((((((((((((((((((M31_0) - (dst_limb_17_col32)) + ((op0_limb_0_col44) * (op1_limb_17_col90))) + ((op0_limb_1_col45) * (op1_limb_16_col89))) @@ -872,7 +875,7 @@ fn write_trace_simd( + ((op0_limb_15_col59) * (op1_limb_2_col75))) + ((op0_limb_16_col60) * (op1_limb_1_col74))) + ((op0_limb_17_col61) * (op1_limb_0_col73))); - let conv_tmp_5a147_35 = (((((((((((((((((((((M31_0) + let conv_tmp_42314_35 = (((((((((((((((((((((M31_0) - (dst_limb_18_col33)) + ((op0_limb_0_col44) * (op1_limb_18_col91))) + ((op0_limb_1_col45) * (op1_limb_17_col90))) @@ -893,7 +896,7 @@ fn write_trace_simd( + ((op0_limb_16_col60) * (op1_limb_2_col75))) + ((op0_limb_17_col61) * (op1_limb_1_col74))) + ((op0_limb_18_col62) * (op1_limb_0_col73))); - let conv_tmp_5a147_36 = ((((((((((((((((((((((M31_0) + let conv_tmp_42314_36 = ((((((((((((((((((((((M31_0) - (dst_limb_19_col34)) + ((op0_limb_0_col44) * (op1_limb_19_col92))) + ((op0_limb_1_col45) * (op1_limb_18_col91))) @@ -915,7 +918,7 @@ fn write_trace_simd( + ((op0_limb_17_col61) * (op1_limb_2_col75))) + ((op0_limb_18_col62) * (op1_limb_1_col74))) + ((op0_limb_19_col63) * (op1_limb_0_col73))); - let conv_tmp_5a147_37 = (((((((((((((((((((((((M31_0) + let conv_tmp_42314_37 = (((((((((((((((((((((((M31_0) - (dst_limb_20_col35)) + ((op0_limb_0_col44) * (op1_limb_20_col93))) + ((op0_limb_1_col45) * (op1_limb_19_col92))) @@ -938,7 +941,7 @@ fn write_trace_simd( + ((op0_limb_18_col62) * (op1_limb_2_col75))) + ((op0_limb_19_col63) * (op1_limb_1_col74))) + ((op0_limb_20_col64) * (op1_limb_0_col73))); - let conv_tmp_5a147_38 = ((((((((((((((((((((((((M31_0) + let conv_tmp_42314_38 = ((((((((((((((((((((((((M31_0) - (dst_limb_21_col36)) + ((op0_limb_0_col44) * (op1_limb_21_col94))) + ((op0_limb_1_col45) * (op1_limb_20_col93))) @@ -962,7 +965,7 @@ fn write_trace_simd( + ((op0_limb_19_col63) * (op1_limb_2_col75))) + ((op0_limb_20_col64) * (op1_limb_1_col74))) + ((op0_limb_21_col65) * (op1_limb_0_col73))); - let conv_tmp_5a147_39 = (((((((((((((((((((((((((M31_0) + let conv_tmp_42314_39 = (((((((((((((((((((((((((M31_0) - (dst_limb_22_col37)) + ((op0_limb_0_col44) * (op1_limb_22_col95))) + ((op0_limb_1_col45) * (op1_limb_21_col94))) @@ -987,7 +990,7 @@ fn write_trace_simd( + ((op0_limb_20_col64) * (op1_limb_2_col75))) + ((op0_limb_21_col65) * (op1_limb_1_col74))) + ((op0_limb_22_col66) * (op1_limb_0_col73))); - let conv_tmp_5a147_40 = ((((((((((((((((((((((((((M31_0) + let conv_tmp_42314_40 = ((((((((((((((((((((((((((M31_0) - (dst_limb_23_col38)) + ((op0_limb_0_col44) * (op1_limb_23_col96))) + ((op0_limb_1_col45) * (op1_limb_22_col95))) @@ -1013,7 +1016,7 @@ fn write_trace_simd( + ((op0_limb_21_col65) * (op1_limb_2_col75))) + ((op0_limb_22_col66) * (op1_limb_1_col74))) + ((op0_limb_23_col67) * (op1_limb_0_col73))); - let conv_tmp_5a147_41 = (((((((((((((((((((((((((((M31_0) + let conv_tmp_42314_41 = (((((((((((((((((((((((((((M31_0) - (dst_limb_24_col39)) + ((op0_limb_0_col44) * (op1_limb_24_col97))) + ((op0_limb_1_col45) * (op1_limb_23_col96))) @@ -1040,7 +1043,7 @@ fn write_trace_simd( + ((op0_limb_22_col66) * (op1_limb_2_col75))) + ((op0_limb_23_col67) * (op1_limb_1_col74))) + ((op0_limb_24_col68) * (op1_limb_0_col73))); - let conv_tmp_5a147_42 = ((((((((((((((((((((((((((((M31_0) + let conv_tmp_42314_42 = ((((((((((((((((((((((((((((M31_0) - (dst_limb_25_col40)) + ((op0_limb_0_col44) * (op1_limb_25_col98))) + ((op0_limb_1_col45) * (op1_limb_24_col97))) @@ -1068,7 +1071,7 @@ fn write_trace_simd( + ((op0_limb_23_col67) * (op1_limb_2_col75))) + ((op0_limb_24_col68) * (op1_limb_1_col74))) + ((op0_limb_25_col69) * (op1_limb_0_col73))); - let conv_tmp_5a147_43 = (((((((((((((((((((((((((((((M31_0) + let conv_tmp_42314_43 = (((((((((((((((((((((((((((((M31_0) - (dst_limb_26_col41)) + ((op0_limb_0_col44) * (op1_limb_26_col99))) + ((op0_limb_1_col45) * (op1_limb_25_col98))) @@ -1097,7 +1100,7 @@ fn write_trace_simd( + ((op0_limb_24_col68) * (op1_limb_2_col75))) + ((op0_limb_25_col69) * (op1_limb_1_col74))) + ((op0_limb_26_col70) * (op1_limb_0_col73))); - let conv_tmp_5a147_44 = ((((((((((((((((((((((((((((((M31_0) + let conv_tmp_42314_44 = ((((((((((((((((((((((((((((((M31_0) - (dst_limb_27_col42)) + ((op0_limb_0_col44) * (op1_limb_27_col100))) + ((op0_limb_1_col45) * (op1_limb_26_col99))) @@ -1127,7 +1130,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_2_col75))) + ((op0_limb_26_col70) * (op1_limb_1_col74))) + ((op0_limb_27_col71) * (op1_limb_0_col73))); - let conv_tmp_5a147_45 = ((((((((((((((((((((((((((((M31_0) + let conv_tmp_42314_45 = ((((((((((((((((((((((((((((M31_0) + ((op0_limb_1_col45) * (op1_limb_27_col100))) + ((op0_limb_2_col46) * (op1_limb_26_col99))) + ((op0_limb_3_col47) * (op1_limb_25_col98))) @@ -1155,7 +1158,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_3_col76))) + ((op0_limb_26_col70) * (op1_limb_2_col75))) + ((op0_limb_27_col71) * (op1_limb_1_col74))); - let conv_tmp_5a147_46 = (((((((((((((((((((((((((((M31_0) + let conv_tmp_42314_46 = (((((((((((((((((((((((((((M31_0) + ((op0_limb_2_col46) * (op1_limb_27_col100))) + ((op0_limb_3_col47) * (op1_limb_26_col99))) + ((op0_limb_4_col48) * (op1_limb_25_col98))) @@ -1182,7 +1185,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_4_col77))) + ((op0_limb_26_col70) * (op1_limb_3_col76))) + ((op0_limb_27_col71) * (op1_limb_2_col75))); - let conv_tmp_5a147_47 = ((((((((((((((((((((((((((M31_0) + let conv_tmp_42314_47 = ((((((((((((((((((((((((((M31_0) + ((op0_limb_3_col47) * (op1_limb_27_col100))) + ((op0_limb_4_col48) * (op1_limb_26_col99))) + ((op0_limb_5_col49) * (op1_limb_25_col98))) @@ -1208,7 +1211,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_5_col78))) + ((op0_limb_26_col70) * (op1_limb_4_col77))) + ((op0_limb_27_col71) * (op1_limb_3_col76))); - let conv_tmp_5a147_48 = (((((((((((((((((((((((((M31_0) + let conv_tmp_42314_48 = (((((((((((((((((((((((((M31_0) + ((op0_limb_4_col48) * (op1_limb_27_col100))) + ((op0_limb_5_col49) * (op1_limb_26_col99))) + ((op0_limb_6_col50) * (op1_limb_25_col98))) @@ -1233,7 +1236,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_6_col79))) + ((op0_limb_26_col70) * (op1_limb_5_col78))) + ((op0_limb_27_col71) * (op1_limb_4_col77))); - let conv_tmp_5a147_49 = ((((((((((((((((((((((((M31_0) + let conv_tmp_42314_49 = ((((((((((((((((((((((((M31_0) + ((op0_limb_5_col49) * (op1_limb_27_col100))) + ((op0_limb_6_col50) * (op1_limb_26_col99))) + ((op0_limb_7_col51) * (op1_limb_25_col98))) @@ -1257,7 +1260,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_7_col80))) + ((op0_limb_26_col70) * (op1_limb_6_col79))) + ((op0_limb_27_col71) * (op1_limb_5_col78))); - let conv_tmp_5a147_50 = (((((((((((((((((((((((M31_0) + let conv_tmp_42314_50 = (((((((((((((((((((((((M31_0) + ((op0_limb_6_col50) * (op1_limb_27_col100))) + ((op0_limb_7_col51) * (op1_limb_26_col99))) + ((op0_limb_8_col52) * (op1_limb_25_col98))) @@ -1280,7 +1283,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_8_col81))) + ((op0_limb_26_col70) * (op1_limb_7_col80))) + ((op0_limb_27_col71) * (op1_limb_6_col79))); - let conv_tmp_5a147_51 = ((((((((((((((((((((((M31_0) + let conv_tmp_42314_51 = ((((((((((((((((((((((M31_0) + ((op0_limb_7_col51) * (op1_limb_27_col100))) + ((op0_limb_8_col52) * (op1_limb_26_col99))) + ((op0_limb_9_col53) * (op1_limb_25_col98))) @@ -1302,7 +1305,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_9_col82))) + ((op0_limb_26_col70) * (op1_limb_8_col81))) + ((op0_limb_27_col71) * (op1_limb_7_col80))); - let conv_tmp_5a147_52 = (((((((((((((((((((((M31_0) + let conv_tmp_42314_52 = (((((((((((((((((((((M31_0) + ((op0_limb_8_col52) * (op1_limb_27_col100))) + ((op0_limb_9_col53) * (op1_limb_26_col99))) + ((op0_limb_10_col54) * (op1_limb_25_col98))) @@ -1323,7 +1326,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_10_col83))) + ((op0_limb_26_col70) * (op1_limb_9_col82))) + ((op0_limb_27_col71) * (op1_limb_8_col81))); - let conv_tmp_5a147_53 = ((((((((((((((((((((M31_0) + let conv_tmp_42314_53 = ((((((((((((((((((((M31_0) + ((op0_limb_9_col53) * (op1_limb_27_col100))) + ((op0_limb_10_col54) * (op1_limb_26_col99))) + ((op0_limb_11_col55) * (op1_limb_25_col98))) @@ -1343,7 +1346,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_11_col84))) + ((op0_limb_26_col70) * (op1_limb_10_col83))) + ((op0_limb_27_col71) * (op1_limb_9_col82))); - let conv_tmp_5a147_54 = (((((((((((((((((((M31_0) + let conv_tmp_42314_54 = (((((((((((((((((((M31_0) + ((op0_limb_10_col54) * (op1_limb_27_col100))) + ((op0_limb_11_col55) * (op1_limb_26_col99))) + ((op0_limb_12_col56) * (op1_limb_25_col98))) @@ -1362,7 +1365,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_12_col85))) + ((op0_limb_26_col70) * (op1_limb_11_col84))) + ((op0_limb_27_col71) * (op1_limb_10_col83))); - let conv_tmp_5a147_55 = ((((((((((((((((((M31_0) + let conv_tmp_42314_55 = ((((((((((((((((((M31_0) + ((op0_limb_11_col55) * (op1_limb_27_col100))) + ((op0_limb_12_col56) * (op1_limb_26_col99))) + ((op0_limb_13_col57) * (op1_limb_25_col98))) @@ -1380,7 +1383,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_13_col86))) + ((op0_limb_26_col70) * (op1_limb_12_col85))) + ((op0_limb_27_col71) * (op1_limb_11_col84))); - let conv_tmp_5a147_56 = (((((((((((((((((M31_0) + let conv_tmp_42314_56 = (((((((((((((((((M31_0) + ((op0_limb_12_col56) * (op1_limb_27_col100))) + ((op0_limb_13_col57) * (op1_limb_26_col99))) + ((op0_limb_14_col58) * (op1_limb_25_col98))) @@ -1397,7 +1400,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_14_col87))) + ((op0_limb_26_col70) * (op1_limb_13_col86))) + ((op0_limb_27_col71) * (op1_limb_12_col85))); - let conv_tmp_5a147_57 = ((((((((((((((((M31_0) + let conv_tmp_42314_57 = ((((((((((((((((M31_0) + ((op0_limb_13_col57) * (op1_limb_27_col100))) + ((op0_limb_14_col58) * (op1_limb_26_col99))) + ((op0_limb_15_col59) * (op1_limb_25_col98))) @@ -1413,7 +1416,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_15_col88))) + ((op0_limb_26_col70) * (op1_limb_14_col87))) + ((op0_limb_27_col71) * (op1_limb_13_col86))); - let conv_tmp_5a147_58 = (((((((((((((((M31_0) + let conv_tmp_42314_58 = (((((((((((((((M31_0) + ((op0_limb_14_col58) * (op1_limb_27_col100))) + ((op0_limb_15_col59) * (op1_limb_26_col99))) + ((op0_limb_16_col60) * (op1_limb_25_col98))) @@ -1428,7 +1431,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_16_col89))) + ((op0_limb_26_col70) * (op1_limb_15_col88))) + ((op0_limb_27_col71) * (op1_limb_14_col87))); - let conv_tmp_5a147_59 = ((((((((((((((M31_0) + let conv_tmp_42314_59 = ((((((((((((((M31_0) + ((op0_limb_15_col59) * (op1_limb_27_col100))) + ((op0_limb_16_col60) * (op1_limb_26_col99))) + ((op0_limb_17_col61) * (op1_limb_25_col98))) @@ -1442,7 +1445,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_17_col90))) + ((op0_limb_26_col70) * (op1_limb_16_col89))) + ((op0_limb_27_col71) * (op1_limb_15_col88))); - let conv_tmp_5a147_60 = (((((((((((((M31_0) + let conv_tmp_42314_60 = (((((((((((((M31_0) + ((op0_limb_16_col60) * (op1_limb_27_col100))) + ((op0_limb_17_col61) * (op1_limb_26_col99))) + ((op0_limb_18_col62) * (op1_limb_25_col98))) @@ -1455,7 +1458,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_18_col91))) + ((op0_limb_26_col70) * (op1_limb_17_col90))) + ((op0_limb_27_col71) * (op1_limb_16_col89))); - let conv_tmp_5a147_61 = ((((((((((((M31_0) + let conv_tmp_42314_61 = ((((((((((((M31_0) + ((op0_limb_17_col61) * (op1_limb_27_col100))) + ((op0_limb_18_col62) * (op1_limb_26_col99))) + ((op0_limb_19_col63) * (op1_limb_25_col98))) @@ -1467,7 +1470,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_19_col92))) + ((op0_limb_26_col70) * (op1_limb_18_col91))) + ((op0_limb_27_col71) * (op1_limb_17_col90))); - let conv_tmp_5a147_62 = (((((((((((M31_0) + let conv_tmp_42314_62 = (((((((((((M31_0) + ((op0_limb_18_col62) * (op1_limb_27_col100))) + ((op0_limb_19_col63) * (op1_limb_26_col99))) + ((op0_limb_20_col64) * (op1_limb_25_col98))) @@ -1478,7 +1481,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_20_col93))) + ((op0_limb_26_col70) * (op1_limb_19_col92))) + ((op0_limb_27_col71) * (op1_limb_18_col91))); - let conv_tmp_5a147_63 = ((((((((((M31_0) + let conv_tmp_42314_63 = ((((((((((M31_0) + ((op0_limb_19_col63) * (op1_limb_27_col100))) + ((op0_limb_20_col64) * (op1_limb_26_col99))) + ((op0_limb_21_col65) * (op1_limb_25_col98))) @@ -1488,7 +1491,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_21_col94))) + ((op0_limb_26_col70) * (op1_limb_20_col93))) + ((op0_limb_27_col71) * (op1_limb_19_col92))); - let conv_tmp_5a147_64 = (((((((((M31_0) + let conv_tmp_42314_64 = (((((((((M31_0) + ((op0_limb_20_col64) * (op1_limb_27_col100))) + ((op0_limb_21_col65) * (op1_limb_26_col99))) + ((op0_limb_22_col66) * (op1_limb_25_col98))) @@ -1497,7 +1500,7 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_22_col95))) + ((op0_limb_26_col70) * (op1_limb_21_col94))) + ((op0_limb_27_col71) * (op1_limb_20_col93))); - let conv_tmp_5a147_65 = ((((((((M31_0) + let conv_tmp_42314_65 = ((((((((M31_0) + ((op0_limb_21_col65) * (op1_limb_27_col100))) + ((op0_limb_22_col66) * (op1_limb_26_col99))) + ((op0_limb_23_col67) * (op1_limb_25_col98))) @@ -1505,162 +1508,160 @@ fn write_trace_simd( + ((op0_limb_25_col69) * (op1_limb_23_col96))) + ((op0_limb_26_col70) * (op1_limb_22_col95))) + ((op0_limb_27_col71) * (op1_limb_21_col94))); - let conv_tmp_5a147_66 = (((((((M31_0) + let conv_tmp_42314_66 = (((((((M31_0) + ((op0_limb_22_col66) * (op1_limb_27_col100))) + ((op0_limb_23_col67) * (op1_limb_26_col99))) + ((op0_limb_24_col68) * (op1_limb_25_col98))) + ((op0_limb_25_col69) * (op1_limb_24_col97))) + ((op0_limb_26_col70) * (op1_limb_23_col96))) + ((op0_limb_27_col71) * (op1_limb_22_col95))); - let conv_tmp_5a147_67 = ((((((M31_0) + let conv_tmp_42314_67 = ((((((M31_0) + ((op0_limb_23_col67) * (op1_limb_27_col100))) + ((op0_limb_24_col68) * (op1_limb_26_col99))) + ((op0_limb_25_col69) * (op1_limb_25_col98))) + ((op0_limb_26_col70) * (op1_limb_24_col97))) + ((op0_limb_27_col71) * (op1_limb_23_col96))); - let conv_tmp_5a147_68 = (((((M31_0) + let conv_tmp_42314_68 = (((((M31_0) + ((op0_limb_24_col68) * (op1_limb_27_col100))) + ((op0_limb_25_col69) * (op1_limb_26_col99))) + ((op0_limb_26_col70) * (op1_limb_25_col98))) + ((op0_limb_27_col71) * (op1_limb_24_col97))); - let conv_tmp_5a147_69 = ((((M31_0) + let conv_tmp_42314_69 = ((((M31_0) + ((op0_limb_25_col69) * (op1_limb_27_col100))) + ((op0_limb_26_col70) * (op1_limb_26_col99))) + ((op0_limb_27_col71) * (op1_limb_25_col98))); - let conv_tmp_5a147_70 = (((M31_0) + ((op0_limb_26_col70) * (op1_limb_27_col100))) + let conv_tmp_42314_70 = (((M31_0) + ((op0_limb_26_col70) * (op1_limb_27_col100))) + ((op0_limb_27_col71) * (op1_limb_26_col99))); - let conv_tmp_5a147_71 = ((M31_0) + ((op0_limb_27_col71) * (op1_limb_27_col100))); - let conv_mod_tmp_5a147_72 = ((((M31_0) + ((M31_32) * (conv_tmp_5a147_17))) - - ((M31_4) * (conv_tmp_5a147_38))) - + ((M31_8) * (conv_tmp_5a147_66))); - let conv_mod_tmp_5a147_73 = (((((M31_0) + ((M31_1) * (conv_tmp_5a147_17))) - + ((M31_32) * (conv_tmp_5a147_18))) - - ((M31_4) * (conv_tmp_5a147_39))) - + ((M31_8) * (conv_tmp_5a147_67))); - let conv_mod_tmp_5a147_74 = (((((M31_0) + ((M31_1) * (conv_tmp_5a147_18))) - + ((M31_32) * (conv_tmp_5a147_19))) - - ((M31_4) * (conv_tmp_5a147_40))) - + ((M31_8) * (conv_tmp_5a147_68))); - let conv_mod_tmp_5a147_75 = (((((M31_0) + ((M31_1) * (conv_tmp_5a147_19))) - + ((M31_32) * (conv_tmp_5a147_20))) - - ((M31_4) * (conv_tmp_5a147_41))) - + ((M31_8) * (conv_tmp_5a147_69))); - let conv_mod_tmp_5a147_76 = (((((M31_0) + ((M31_1) * (conv_tmp_5a147_20))) - + ((M31_32) * (conv_tmp_5a147_21))) - - ((M31_4) * (conv_tmp_5a147_42))) - + ((M31_8) * (conv_tmp_5a147_70))); - let conv_mod_tmp_5a147_77 = (((((M31_0) + ((M31_1) * (conv_tmp_5a147_21))) - + ((M31_32) * (conv_tmp_5a147_22))) - - ((M31_4) * (conv_tmp_5a147_43))) - + ((M31_8) * (conv_tmp_5a147_71))); - let conv_mod_tmp_5a147_78 = ((((M31_0) + ((M31_1) * (conv_tmp_5a147_22))) - + ((M31_32) * (conv_tmp_5a147_23))) - - ((M31_4) * (conv_tmp_5a147_44))); - let conv_mod_tmp_5a147_79 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_17))) - + ((M31_1) * (conv_tmp_5a147_23))) - + ((M31_32) * (conv_tmp_5a147_24))) - - ((M31_4) * (conv_tmp_5a147_45))); - let conv_mod_tmp_5a147_80 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_18))) - + ((M31_1) * (conv_tmp_5a147_24))) - + ((M31_32) * (conv_tmp_5a147_25))) - - ((M31_4) * (conv_tmp_5a147_46))); - let conv_mod_tmp_5a147_81 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_19))) - + ((M31_1) * (conv_tmp_5a147_25))) - + ((M31_32) * (conv_tmp_5a147_26))) - - ((M31_4) * (conv_tmp_5a147_47))); - let conv_mod_tmp_5a147_82 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_20))) - + ((M31_1) * (conv_tmp_5a147_26))) - + ((M31_32) * (conv_tmp_5a147_27))) - - ((M31_4) * (conv_tmp_5a147_48))); - let conv_mod_tmp_5a147_83 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_21))) - + ((M31_1) * (conv_tmp_5a147_27))) - + ((M31_32) * (conv_tmp_5a147_28))) - - ((M31_4) * (conv_tmp_5a147_49))); - let conv_mod_tmp_5a147_84 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_22))) - + ((M31_1) * (conv_tmp_5a147_28))) - + ((M31_32) * (conv_tmp_5a147_29))) - - ((M31_4) * (conv_tmp_5a147_50))); - let conv_mod_tmp_5a147_85 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_23))) - + ((M31_1) * (conv_tmp_5a147_29))) - + ((M31_32) * (conv_tmp_5a147_30))) - - ((M31_4) * (conv_tmp_5a147_51))); - let conv_mod_tmp_5a147_86 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_24))) - + ((M31_1) * (conv_tmp_5a147_30))) - + ((M31_32) * (conv_tmp_5a147_31))) - - ((M31_4) * (conv_tmp_5a147_52))); - let conv_mod_tmp_5a147_87 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_25))) - + ((M31_1) * (conv_tmp_5a147_31))) - + ((M31_32) * (conv_tmp_5a147_32))) - - ((M31_4) * (conv_tmp_5a147_53))); - let conv_mod_tmp_5a147_88 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_26))) - + ((M31_1) * (conv_tmp_5a147_32))) - + ((M31_32) * (conv_tmp_5a147_33))) - - ((M31_4) * (conv_tmp_5a147_54))); - let conv_mod_tmp_5a147_89 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_27))) - + ((M31_1) * (conv_tmp_5a147_33))) - + ((M31_32) * (conv_tmp_5a147_34))) - - ((M31_4) * (conv_tmp_5a147_55))); - let conv_mod_tmp_5a147_90 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_28))) - + ((M31_1) * (conv_tmp_5a147_34))) - + ((M31_32) * (conv_tmp_5a147_35))) - - ((M31_4) * (conv_tmp_5a147_56))); - let conv_mod_tmp_5a147_91 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_29))) - + ((M31_1) * (conv_tmp_5a147_35))) - + ((M31_32) * (conv_tmp_5a147_36))) - - ((M31_4) * (conv_tmp_5a147_57))); - let conv_mod_tmp_5a147_92 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_30))) - + ((M31_1) * (conv_tmp_5a147_36))) - + ((M31_32) * (conv_tmp_5a147_37))) - - ((M31_4) * (conv_tmp_5a147_58))); - let conv_mod_tmp_5a147_93 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_31))) - + ((M31_1) * (conv_tmp_5a147_37))) - - ((M31_4) * (conv_tmp_5a147_59))) - + ((M31_64) * (conv_tmp_5a147_66))); - let conv_mod_tmp_5a147_94 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_32))) - - ((M31_4) * (conv_tmp_5a147_60))) - + ((M31_2) * (conv_tmp_5a147_66))) - + ((M31_64) * (conv_tmp_5a147_67))); - let conv_mod_tmp_5a147_95 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_33))) - - ((M31_4) * (conv_tmp_5a147_61))) - + ((M31_2) * (conv_tmp_5a147_67))) - + ((M31_64) * (conv_tmp_5a147_68))); - let conv_mod_tmp_5a147_96 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_34))) - - ((M31_4) * (conv_tmp_5a147_62))) - + ((M31_2) * (conv_tmp_5a147_68))) - + ((M31_64) * (conv_tmp_5a147_69))); - let conv_mod_tmp_5a147_97 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_35))) - - ((M31_4) * (conv_tmp_5a147_63))) - + ((M31_2) * (conv_tmp_5a147_69))) - + ((M31_64) * (conv_tmp_5a147_70))); - let conv_mod_tmp_5a147_98 = (((((M31_0) + ((M31_2) * (conv_tmp_5a147_36))) - - ((M31_4) * (conv_tmp_5a147_64))) - + ((M31_2) * (conv_tmp_5a147_70))) - + ((M31_64) * (conv_tmp_5a147_71))); - let conv_mod_tmp_5a147_99 = ((((M31_0) + ((M31_2) * (conv_tmp_5a147_37))) - - ((M31_4) * (conv_tmp_5a147_65))) - + ((M31_2) * (conv_tmp_5a147_71))); - let k_mod_2_18_biased_tmp_5a147_100 = - ((((PackedUInt32::from_m31(((conv_mod_tmp_5a147_72) + (M31_134217728)))) + let conv_tmp_42314_71 = ((M31_0) + ((op0_limb_27_col71) * (op1_limb_27_col100))); + let conv_mod_tmp_42314_72 = ((((M31_0) + ((M31_32) * (conv_tmp_42314_17))) + - ((M31_4) * (conv_tmp_42314_38))) + + ((M31_8) * (conv_tmp_42314_66))); + let conv_mod_tmp_42314_73 = (((((M31_0) + ((M31_1) * (conv_tmp_42314_17))) + + ((M31_32) * (conv_tmp_42314_18))) + - ((M31_4) * (conv_tmp_42314_39))) + + ((M31_8) * (conv_tmp_42314_67))); + let conv_mod_tmp_42314_74 = (((((M31_0) + ((M31_1) * (conv_tmp_42314_18))) + + ((M31_32) * (conv_tmp_42314_19))) + - ((M31_4) * (conv_tmp_42314_40))) + + ((M31_8) * (conv_tmp_42314_68))); + let conv_mod_tmp_42314_75 = (((((M31_0) + ((M31_1) * (conv_tmp_42314_19))) + + ((M31_32) * (conv_tmp_42314_20))) + - ((M31_4) * (conv_tmp_42314_41))) + + ((M31_8) * (conv_tmp_42314_69))); + let conv_mod_tmp_42314_76 = (((((M31_0) + ((M31_1) * (conv_tmp_42314_20))) + + ((M31_32) * (conv_tmp_42314_21))) + - ((M31_4) * (conv_tmp_42314_42))) + + ((M31_8) * (conv_tmp_42314_70))); + let conv_mod_tmp_42314_77 = (((((M31_0) + ((M31_1) * (conv_tmp_42314_21))) + + ((M31_32) * (conv_tmp_42314_22))) + - ((M31_4) * (conv_tmp_42314_43))) + + ((M31_8) * (conv_tmp_42314_71))); + let conv_mod_tmp_42314_78 = ((((M31_0) + ((M31_1) * (conv_tmp_42314_22))) + + ((M31_32) * (conv_tmp_42314_23))) + - ((M31_4) * (conv_tmp_42314_44))); + let conv_mod_tmp_42314_79 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_17))) + + ((M31_1) * (conv_tmp_42314_23))) + + ((M31_32) * (conv_tmp_42314_24))) + - ((M31_4) * (conv_tmp_42314_45))); + let conv_mod_tmp_42314_80 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_18))) + + ((M31_1) * (conv_tmp_42314_24))) + + ((M31_32) * (conv_tmp_42314_25))) + - ((M31_4) * (conv_tmp_42314_46))); + let conv_mod_tmp_42314_81 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_19))) + + ((M31_1) * (conv_tmp_42314_25))) + + ((M31_32) * (conv_tmp_42314_26))) + - ((M31_4) * (conv_tmp_42314_47))); + let conv_mod_tmp_42314_82 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_20))) + + ((M31_1) * (conv_tmp_42314_26))) + + ((M31_32) * (conv_tmp_42314_27))) + - ((M31_4) * (conv_tmp_42314_48))); + let conv_mod_tmp_42314_83 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_21))) + + ((M31_1) * (conv_tmp_42314_27))) + + ((M31_32) * (conv_tmp_42314_28))) + - ((M31_4) * (conv_tmp_42314_49))); + let conv_mod_tmp_42314_84 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_22))) + + ((M31_1) * (conv_tmp_42314_28))) + + ((M31_32) * (conv_tmp_42314_29))) + - ((M31_4) * (conv_tmp_42314_50))); + let conv_mod_tmp_42314_85 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_23))) + + ((M31_1) * (conv_tmp_42314_29))) + + ((M31_32) * (conv_tmp_42314_30))) + - ((M31_4) * (conv_tmp_42314_51))); + let conv_mod_tmp_42314_86 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_24))) + + ((M31_1) * (conv_tmp_42314_30))) + + ((M31_32) * (conv_tmp_42314_31))) + - ((M31_4) * (conv_tmp_42314_52))); + let conv_mod_tmp_42314_87 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_25))) + + ((M31_1) * (conv_tmp_42314_31))) + + ((M31_32) * (conv_tmp_42314_32))) + - ((M31_4) * (conv_tmp_42314_53))); + let conv_mod_tmp_42314_88 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_26))) + + ((M31_1) * (conv_tmp_42314_32))) + + ((M31_32) * (conv_tmp_42314_33))) + - ((M31_4) * (conv_tmp_42314_54))); + let conv_mod_tmp_42314_89 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_27))) + + ((M31_1) * (conv_tmp_42314_33))) + + ((M31_32) * (conv_tmp_42314_34))) + - ((M31_4) * (conv_tmp_42314_55))); + let conv_mod_tmp_42314_90 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_28))) + + ((M31_1) * (conv_tmp_42314_34))) + + ((M31_32) * (conv_tmp_42314_35))) + - ((M31_4) * (conv_tmp_42314_56))); + let conv_mod_tmp_42314_91 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_29))) + + ((M31_1) * (conv_tmp_42314_35))) + + ((M31_32) * (conv_tmp_42314_36))) + - ((M31_4) * (conv_tmp_42314_57))); + let conv_mod_tmp_42314_92 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_30))) + + ((M31_1) * (conv_tmp_42314_36))) + + ((M31_32) * (conv_tmp_42314_37))) + - ((M31_4) * (conv_tmp_42314_58))); + let conv_mod_tmp_42314_93 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_31))) + + ((M31_1) * (conv_tmp_42314_37))) + - ((M31_4) * (conv_tmp_42314_59))) + + ((M31_64) * (conv_tmp_42314_66))); + let conv_mod_tmp_42314_94 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_32))) + - ((M31_4) * (conv_tmp_42314_60))) + + ((M31_2) * (conv_tmp_42314_66))) + + ((M31_64) * (conv_tmp_42314_67))); + let conv_mod_tmp_42314_95 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_33))) + - ((M31_4) * (conv_tmp_42314_61))) + + ((M31_2) * (conv_tmp_42314_67))) + + ((M31_64) * (conv_tmp_42314_68))); + let conv_mod_tmp_42314_96 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_34))) + - ((M31_4) * (conv_tmp_42314_62))) + + ((M31_2) * (conv_tmp_42314_68))) + + ((M31_64) * (conv_tmp_42314_69))); + let conv_mod_tmp_42314_97 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_35))) + - ((M31_4) * (conv_tmp_42314_63))) + + ((M31_2) * (conv_tmp_42314_69))) + + ((M31_64) * (conv_tmp_42314_70))); + let conv_mod_tmp_42314_98 = (((((M31_0) + ((M31_2) * (conv_tmp_42314_36))) + - ((M31_4) * (conv_tmp_42314_64))) + + ((M31_2) * (conv_tmp_42314_70))) + + ((M31_64) * (conv_tmp_42314_71))); + let conv_mod_tmp_42314_99 = ((((M31_0) + ((M31_2) * (conv_tmp_42314_37))) + - ((M31_4) * (conv_tmp_42314_65))) + + ((M31_2) * (conv_tmp_42314_71))); + let k_mod_2_18_biased_tmp_42314_100 = + ((((PackedUInt32::from_m31(((conv_mod_tmp_42314_72) + (M31_134217728)))) + (((PackedUInt32::from_m31( - ((conv_mod_tmp_5a147_73) + (M31_134217728)), + ((conv_mod_tmp_42314_73) + (M31_134217728)), )) & (UInt32_511)) << (UInt32_9))) + (UInt32_65536)) & (UInt32_262143)); - let k_col101 = ((k_mod_2_18_biased_tmp_5a147_100.low().as_m31()) - + (((k_mod_2_18_biased_tmp_5a147_100.high().as_m31()) - (M31_1)) + let k_col101 = ((k_mod_2_18_biased_tmp_42314_100.low().as_m31()) + + (((k_mod_2_18_biased_tmp_42314_100.high().as_m31()) - (M31_1)) * (M31_65536))); *row[101] = k_col101; - for (i, &input) in [((k_col101) + (M31_262144))].unpack().iter().enumerate() { *sub_components_inputs[i].range_check_19_inputs[0] = input; } *lookup_data.range_check_19_0 = [((k_col101) + (M31_262144))]; - let carry_0_col102 = ((((conv_mod_tmp_5a147_72) - ((M31_1) * (k_col101))) + let carry_0_col102 = ((((conv_mod_tmp_42314_72) - ((M31_1) * (k_col101))) + (M31_0)) * (M31_4194304)); *row[102] = carry_0_col102; - for (i, &input) in [((carry_0_col102) + (M31_131072))] .unpack() .iter() @@ -1669,9 +1670,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[1] = input; } *lookup_data.range_check_19_1 = [((carry_0_col102) + (M31_131072))]; - let carry_1_col103 = (((conv_mod_tmp_5a147_73) + (carry_0_col102)) * (M31_4194304)); + let carry_1_col103 = (((conv_mod_tmp_42314_73) + (carry_0_col102)) * (M31_4194304)); *row[103] = carry_1_col103; - for (i, &input) in [((carry_1_col103) + (M31_131072))] .unpack() .iter() @@ -1680,9 +1680,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[2] = input; } *lookup_data.range_check_19_2 = [((carry_1_col103) + (M31_131072))]; - let carry_2_col104 = (((conv_mod_tmp_5a147_74) + (carry_1_col103)) * (M31_4194304)); + let carry_2_col104 = (((conv_mod_tmp_42314_74) + (carry_1_col103)) * (M31_4194304)); *row[104] = carry_2_col104; - for (i, &input) in [((carry_2_col104) + (M31_131072))] .unpack() .iter() @@ -1691,9 +1690,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[3] = input; } *lookup_data.range_check_19_3 = [((carry_2_col104) + (M31_131072))]; - let carry_3_col105 = (((conv_mod_tmp_5a147_75) + (carry_2_col104)) * (M31_4194304)); + let carry_3_col105 = (((conv_mod_tmp_42314_75) + (carry_2_col104)) * (M31_4194304)); *row[105] = carry_3_col105; - for (i, &input) in [((carry_3_col105) + (M31_131072))] .unpack() .iter() @@ -1702,9 +1700,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[4] = input; } *lookup_data.range_check_19_4 = [((carry_3_col105) + (M31_131072))]; - let carry_4_col106 = (((conv_mod_tmp_5a147_76) + (carry_3_col105)) * (M31_4194304)); + let carry_4_col106 = (((conv_mod_tmp_42314_76) + (carry_3_col105)) * (M31_4194304)); *row[106] = carry_4_col106; - for (i, &input) in [((carry_4_col106) + (M31_131072))] .unpack() .iter() @@ -1713,9 +1710,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[5] = input; } *lookup_data.range_check_19_5 = [((carry_4_col106) + (M31_131072))]; - let carry_5_col107 = (((conv_mod_tmp_5a147_77) + (carry_4_col106)) * (M31_4194304)); + let carry_5_col107 = (((conv_mod_tmp_42314_77) + (carry_4_col106)) * (M31_4194304)); *row[107] = carry_5_col107; - for (i, &input) in [((carry_5_col107) + (M31_131072))] .unpack() .iter() @@ -1724,9 +1720,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[6] = input; } *lookup_data.range_check_19_6 = [((carry_5_col107) + (M31_131072))]; - let carry_6_col108 = (((conv_mod_tmp_5a147_78) + (carry_5_col107)) * (M31_4194304)); + let carry_6_col108 = (((conv_mod_tmp_42314_78) + (carry_5_col107)) * (M31_4194304)); *row[108] = carry_6_col108; - for (i, &input) in [((carry_6_col108) + (M31_131072))] .unpack() .iter() @@ -1735,9 +1730,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[7] = input; } *lookup_data.range_check_19_7 = [((carry_6_col108) + (M31_131072))]; - let carry_7_col109 = (((conv_mod_tmp_5a147_79) + (carry_6_col108)) * (M31_4194304)); + let carry_7_col109 = (((conv_mod_tmp_42314_79) + (carry_6_col108)) * (M31_4194304)); *row[109] = carry_7_col109; - for (i, &input) in [((carry_7_col109) + (M31_131072))] .unpack() .iter() @@ -1746,9 +1740,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[8] = input; } *lookup_data.range_check_19_8 = [((carry_7_col109) + (M31_131072))]; - let carry_8_col110 = (((conv_mod_tmp_5a147_80) + (carry_7_col109)) * (M31_4194304)); + let carry_8_col110 = (((conv_mod_tmp_42314_80) + (carry_7_col109)) * (M31_4194304)); *row[110] = carry_8_col110; - for (i, &input) in [((carry_8_col110) + (M31_131072))] .unpack() .iter() @@ -1757,9 +1750,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[9] = input; } *lookup_data.range_check_19_9 = [((carry_8_col110) + (M31_131072))]; - let carry_9_col111 = (((conv_mod_tmp_5a147_81) + (carry_8_col110)) * (M31_4194304)); + let carry_9_col111 = (((conv_mod_tmp_42314_81) + (carry_8_col110)) * (M31_4194304)); *row[111] = carry_9_col111; - for (i, &input) in [((carry_9_col111) + (M31_131072))] .unpack() .iter() @@ -1769,9 +1761,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_10 = [((carry_9_col111) + (M31_131072))]; let carry_10_col112 = - (((conv_mod_tmp_5a147_82) + (carry_9_col111)) * (M31_4194304)); + (((conv_mod_tmp_42314_82) + (carry_9_col111)) * (M31_4194304)); *row[112] = carry_10_col112; - for (i, &input) in [((carry_10_col112) + (M31_131072))] .unpack() .iter() @@ -1781,9 +1772,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_11 = [((carry_10_col112) + (M31_131072))]; let carry_11_col113 = - (((conv_mod_tmp_5a147_83) + (carry_10_col112)) * (M31_4194304)); + (((conv_mod_tmp_42314_83) + (carry_10_col112)) * (M31_4194304)); *row[113] = carry_11_col113; - for (i, &input) in [((carry_11_col113) + (M31_131072))] .unpack() .iter() @@ -1793,9 +1783,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_12 = [((carry_11_col113) + (M31_131072))]; let carry_12_col114 = - (((conv_mod_tmp_5a147_84) + (carry_11_col113)) * (M31_4194304)); + (((conv_mod_tmp_42314_84) + (carry_11_col113)) * (M31_4194304)); *row[114] = carry_12_col114; - for (i, &input) in [((carry_12_col114) + (M31_131072))] .unpack() .iter() @@ -1805,9 +1794,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_13 = [((carry_12_col114) + (M31_131072))]; let carry_13_col115 = - (((conv_mod_tmp_5a147_85) + (carry_12_col114)) * (M31_4194304)); + (((conv_mod_tmp_42314_85) + (carry_12_col114)) * (M31_4194304)); *row[115] = carry_13_col115; - for (i, &input) in [((carry_13_col115) + (M31_131072))] .unpack() .iter() @@ -1817,9 +1805,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_14 = [((carry_13_col115) + (M31_131072))]; let carry_14_col116 = - (((conv_mod_tmp_5a147_86) + (carry_13_col115)) * (M31_4194304)); + (((conv_mod_tmp_42314_86) + (carry_13_col115)) * (M31_4194304)); *row[116] = carry_14_col116; - for (i, &input) in [((carry_14_col116) + (M31_131072))] .unpack() .iter() @@ -1829,9 +1816,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_15 = [((carry_14_col116) + (M31_131072))]; let carry_15_col117 = - (((conv_mod_tmp_5a147_87) + (carry_14_col116)) * (M31_4194304)); + (((conv_mod_tmp_42314_87) + (carry_14_col116)) * (M31_4194304)); *row[117] = carry_15_col117; - for (i, &input) in [((carry_15_col117) + (M31_131072))] .unpack() .iter() @@ -1841,9 +1827,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_16 = [((carry_15_col117) + (M31_131072))]; let carry_16_col118 = - (((conv_mod_tmp_5a147_88) + (carry_15_col117)) * (M31_4194304)); + (((conv_mod_tmp_42314_88) + (carry_15_col117)) * (M31_4194304)); *row[118] = carry_16_col118; - for (i, &input) in [((carry_16_col118) + (M31_131072))] .unpack() .iter() @@ -1853,9 +1838,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_17 = [((carry_16_col118) + (M31_131072))]; let carry_17_col119 = - (((conv_mod_tmp_5a147_89) + (carry_16_col118)) * (M31_4194304)); + (((conv_mod_tmp_42314_89) + (carry_16_col118)) * (M31_4194304)); *row[119] = carry_17_col119; - for (i, &input) in [((carry_17_col119) + (M31_131072))] .unpack() .iter() @@ -1865,9 +1849,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_18 = [((carry_17_col119) + (M31_131072))]; let carry_18_col120 = - (((conv_mod_tmp_5a147_90) + (carry_17_col119)) * (M31_4194304)); + (((conv_mod_tmp_42314_90) + (carry_17_col119)) * (M31_4194304)); *row[120] = carry_18_col120; - for (i, &input) in [((carry_18_col120) + (M31_131072))] .unpack() .iter() @@ -1877,9 +1860,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_19 = [((carry_18_col120) + (M31_131072))]; let carry_19_col121 = - (((conv_mod_tmp_5a147_91) + (carry_18_col120)) * (M31_4194304)); + (((conv_mod_tmp_42314_91) + (carry_18_col120)) * (M31_4194304)); *row[121] = carry_19_col121; - for (i, &input) in [((carry_19_col121) + (M31_131072))] .unpack() .iter() @@ -1889,9 +1871,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_20 = [((carry_19_col121) + (M31_131072))]; let carry_20_col122 = - (((conv_mod_tmp_5a147_92) + (carry_19_col121)) * (M31_4194304)); + (((conv_mod_tmp_42314_92) + (carry_19_col121)) * (M31_4194304)); *row[122] = carry_20_col122; - for (i, &input) in [((carry_20_col122) + (M31_131072))] .unpack() .iter() @@ -1900,11 +1881,10 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[21] = input; } *lookup_data.range_check_19_21 = [((carry_20_col122) + (M31_131072))]; - let carry_21_col123 = ((((conv_mod_tmp_5a147_93) - ((M31_136) * (k_col101))) + let carry_21_col123 = ((((conv_mod_tmp_42314_93) - ((M31_136) * (k_col101))) + (carry_20_col122)) * (M31_4194304)); *row[123] = carry_21_col123; - for (i, &input) in [((carry_21_col123) + (M31_131072))] .unpack() .iter() @@ -1914,9 +1894,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_22 = [((carry_21_col123) + (M31_131072))]; let carry_22_col124 = - (((conv_mod_tmp_5a147_94) + (carry_21_col123)) * (M31_4194304)); + (((conv_mod_tmp_42314_94) + (carry_21_col123)) * (M31_4194304)); *row[124] = carry_22_col124; - for (i, &input) in [((carry_22_col124) + (M31_131072))] .unpack() .iter() @@ -1926,9 +1905,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_23 = [((carry_22_col124) + (M31_131072))]; let carry_23_col125 = - (((conv_mod_tmp_5a147_95) + (carry_22_col124)) * (M31_4194304)); + (((conv_mod_tmp_42314_95) + (carry_22_col124)) * (M31_4194304)); *row[125] = carry_23_col125; - for (i, &input) in [((carry_23_col125) + (M31_131072))] .unpack() .iter() @@ -1938,9 +1916,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_24 = [((carry_23_col125) + (M31_131072))]; let carry_24_col126 = - (((conv_mod_tmp_5a147_96) + (carry_23_col125)) * (M31_4194304)); + (((conv_mod_tmp_42314_96) + (carry_23_col125)) * (M31_4194304)); *row[126] = carry_24_col126; - for (i, &input) in [((carry_24_col126) + (M31_131072))] .unpack() .iter() @@ -1950,9 +1927,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_25 = [((carry_24_col126) + (M31_131072))]; let carry_25_col127 = - (((conv_mod_tmp_5a147_97) + (carry_24_col126)) * (M31_4194304)); + (((conv_mod_tmp_42314_97) + (carry_24_col126)) * (M31_4194304)); *row[127] = carry_25_col127; - for (i, &input) in [((carry_25_col127) + (M31_131072))] .unpack() .iter() @@ -1962,9 +1938,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_26 = [((carry_25_col127) + (M31_131072))]; let carry_26_col128 = - (((conv_mod_tmp_5a147_98) + (carry_25_col127)) * (M31_4194304)); + (((conv_mod_tmp_42314_98) + (carry_25_col127)) * (M31_4194304)); *row[128] = carry_26_col128; - for (i, &input) in [((carry_26_col128) + (M31_131072))] .unpack() .iter() diff --git a/stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_t/component.rs b/stwo_cairo_prover/crates/prover/src/components/mul_opcode_imm/component.rs similarity index 86% rename from stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_t/component.rs rename to stwo_cairo_prover/crates/prover/src/components/mul_opcode_imm/component.rs index 3d52b08b..d9e87fe2 100644 --- a/stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_t/component.rs +++ b/stwo_cairo_prover/crates/prover/src/components/mul_opcode_imm/component.rs @@ -4,6 +4,7 @@ use num_traits::{One, Zero}; use serde::{Deserialize, Serialize}; use stwo_cairo_serialize::CairoSerialize; use stwo_prover::constraint_framework::logup::{LogupAtRow, LogupSums, LookupElements}; +use stwo_prover::constraint_framework::preprocessed_columns::PreprocessedColumn; use stwo_prover::constraint_framework::{ EvalAtRow, FrameworkComponent, FrameworkEval, RelationEntry, }; @@ -401,29 +402,29 @@ impl FrameworkEval for Eval { // Verify Mul 252. - let conv_tmp_31b3e_14 = eval.add_intermediate( + let conv_tmp_48d52_14 = eval.add_intermediate( ((M31_0.clone() - dst_limb_0_col11.clone()) + (op0_limb_0_col40.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_15 = eval.add_intermediate( + let conv_tmp_48d52_15 = eval.add_intermediate( (((M31_0.clone() - dst_limb_1_col12.clone()) + (op0_limb_0_col40.clone() * op1_limb_1_col70.clone())) + (op0_limb_1_col41.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_16 = eval.add_intermediate( + let conv_tmp_48d52_16 = eval.add_intermediate( ((((M31_0.clone() - dst_limb_2_col13.clone()) + (op0_limb_0_col40.clone() * op1_limb_2_col71.clone())) + (op0_limb_1_col41.clone() * op1_limb_1_col70.clone())) + (op0_limb_2_col42.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_17 = eval.add_intermediate( + let conv_tmp_48d52_17 = eval.add_intermediate( (((((M31_0.clone() - dst_limb_3_col14.clone()) + (op0_limb_0_col40.clone() * op1_limb_3_col72.clone())) + (op0_limb_1_col41.clone() * op1_limb_2_col71.clone())) + (op0_limb_2_col42.clone() * op1_limb_1_col70.clone())) + (op0_limb_3_col43.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_18 = eval.add_intermediate( + let conv_tmp_48d52_18 = eval.add_intermediate( ((((((M31_0.clone() - dst_limb_4_col15.clone()) + (op0_limb_0_col40.clone() * op1_limb_4_col73.clone())) + (op0_limb_1_col41.clone() * op1_limb_3_col72.clone())) @@ -431,7 +432,7 @@ impl FrameworkEval for Eval { + (op0_limb_3_col43.clone() * op1_limb_1_col70.clone())) + (op0_limb_4_col44.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_19 = eval.add_intermediate( + let conv_tmp_48d52_19 = eval.add_intermediate( (((((((M31_0.clone() - dst_limb_5_col16.clone()) + (op0_limb_0_col40.clone() * op1_limb_5_col74.clone())) + (op0_limb_1_col41.clone() * op1_limb_4_col73.clone())) @@ -440,7 +441,7 @@ impl FrameworkEval for Eval { + (op0_limb_4_col44.clone() * op1_limb_1_col70.clone())) + (op0_limb_5_col45.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_20 = eval.add_intermediate( + let conv_tmp_48d52_20 = eval.add_intermediate( ((((((((M31_0.clone() - dst_limb_6_col17.clone()) + (op0_limb_0_col40.clone() * op1_limb_6_col75.clone())) + (op0_limb_1_col41.clone() * op1_limb_5_col74.clone())) @@ -450,7 +451,7 @@ impl FrameworkEval for Eval { + (op0_limb_5_col45.clone() * op1_limb_1_col70.clone())) + (op0_limb_6_col46.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_21 = eval.add_intermediate( + let conv_tmp_48d52_21 = eval.add_intermediate( (((((((((M31_0.clone() - dst_limb_7_col18.clone()) + (op0_limb_0_col40.clone() * op1_limb_7_col76.clone())) + (op0_limb_1_col41.clone() * op1_limb_6_col75.clone())) @@ -461,7 +462,7 @@ impl FrameworkEval for Eval { + (op0_limb_6_col46.clone() * op1_limb_1_col70.clone())) + (op0_limb_7_col47.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_22 = eval.add_intermediate( + let conv_tmp_48d52_22 = eval.add_intermediate( ((((((((((M31_0.clone() - dst_limb_8_col19.clone()) + (op0_limb_0_col40.clone() * op1_limb_8_col77.clone())) + (op0_limb_1_col41.clone() * op1_limb_7_col76.clone())) @@ -473,7 +474,7 @@ impl FrameworkEval for Eval { + (op0_limb_7_col47.clone() * op1_limb_1_col70.clone())) + (op0_limb_8_col48.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_23 = eval.add_intermediate( + let conv_tmp_48d52_23 = eval.add_intermediate( (((((((((((M31_0.clone() - dst_limb_9_col20.clone()) + (op0_limb_0_col40.clone() * op1_limb_9_col78.clone())) + (op0_limb_1_col41.clone() * op1_limb_8_col77.clone())) @@ -486,7 +487,7 @@ impl FrameworkEval for Eval { + (op0_limb_8_col48.clone() * op1_limb_1_col70.clone())) + (op0_limb_9_col49.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_24 = eval.add_intermediate( + let conv_tmp_48d52_24 = eval.add_intermediate( ((((((((((((M31_0.clone() - dst_limb_10_col21.clone()) + (op0_limb_0_col40.clone() * op1_limb_10_col79.clone())) + (op0_limb_1_col41.clone() * op1_limb_9_col78.clone())) @@ -500,7 +501,7 @@ impl FrameworkEval for Eval { + (op0_limb_9_col49.clone() * op1_limb_1_col70.clone())) + (op0_limb_10_col50.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_25 = eval.add_intermediate( + let conv_tmp_48d52_25 = eval.add_intermediate( (((((((((((((M31_0.clone() - dst_limb_11_col22.clone()) + (op0_limb_0_col40.clone() * op1_limb_11_col80.clone())) + (op0_limb_1_col41.clone() * op1_limb_10_col79.clone())) @@ -515,7 +516,7 @@ impl FrameworkEval for Eval { + (op0_limb_10_col50.clone() * op1_limb_1_col70.clone())) + (op0_limb_11_col51.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_26 = eval.add_intermediate( + let conv_tmp_48d52_26 = eval.add_intermediate( ((((((((((((((M31_0.clone() - dst_limb_12_col23.clone()) + (op0_limb_0_col40.clone() * op1_limb_12_col81.clone())) + (op0_limb_1_col41.clone() * op1_limb_11_col80.clone())) @@ -531,7 +532,7 @@ impl FrameworkEval for Eval { + (op0_limb_11_col51.clone() * op1_limb_1_col70.clone())) + (op0_limb_12_col52.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_27 = eval.add_intermediate( + let conv_tmp_48d52_27 = eval.add_intermediate( (((((((((((((((M31_0.clone() - dst_limb_13_col24.clone()) + (op0_limb_0_col40.clone() * op1_limb_13_col82.clone())) + (op0_limb_1_col41.clone() * op1_limb_12_col81.clone())) @@ -548,7 +549,7 @@ impl FrameworkEval for Eval { + (op0_limb_12_col52.clone() * op1_limb_1_col70.clone())) + (op0_limb_13_col53.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_28 = eval.add_intermediate( + let conv_tmp_48d52_28 = eval.add_intermediate( ((((((((((((((((M31_0.clone() - dst_limb_14_col25.clone()) + (op0_limb_0_col40.clone() * op1_limb_14_col83.clone())) + (op0_limb_1_col41.clone() * op1_limb_13_col82.clone())) @@ -566,7 +567,7 @@ impl FrameworkEval for Eval { + (op0_limb_13_col53.clone() * op1_limb_1_col70.clone())) + (op0_limb_14_col54.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_29 = eval.add_intermediate( + let conv_tmp_48d52_29 = eval.add_intermediate( (((((((((((((((((M31_0.clone() - dst_limb_15_col26.clone()) + (op0_limb_0_col40.clone() * op1_limb_15_col84.clone())) + (op0_limb_1_col41.clone() * op1_limb_14_col83.clone())) @@ -585,7 +586,7 @@ impl FrameworkEval for Eval { + (op0_limb_14_col54.clone() * op1_limb_1_col70.clone())) + (op0_limb_15_col55.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_30 = eval.add_intermediate( + let conv_tmp_48d52_30 = eval.add_intermediate( ((((((((((((((((((M31_0.clone() - dst_limb_16_col27.clone()) + (op0_limb_0_col40.clone() * op1_limb_16_col85.clone())) + (op0_limb_1_col41.clone() * op1_limb_15_col84.clone())) @@ -605,7 +606,7 @@ impl FrameworkEval for Eval { + (op0_limb_15_col55.clone() * op1_limb_1_col70.clone())) + (op0_limb_16_col56.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_31 = eval.add_intermediate( + let conv_tmp_48d52_31 = eval.add_intermediate( (((((((((((((((((((M31_0.clone() - dst_limb_17_col28.clone()) + (op0_limb_0_col40.clone() * op1_limb_17_col86.clone())) + (op0_limb_1_col41.clone() * op1_limb_16_col85.clone())) @@ -626,7 +627,7 @@ impl FrameworkEval for Eval { + (op0_limb_16_col56.clone() * op1_limb_1_col70.clone())) + (op0_limb_17_col57.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_32 = eval.add_intermediate( + let conv_tmp_48d52_32 = eval.add_intermediate( ((((((((((((((((((((M31_0.clone() - dst_limb_18_col29.clone()) + (op0_limb_0_col40.clone() * op1_limb_18_col87.clone())) + (op0_limb_1_col41.clone() * op1_limb_17_col86.clone())) @@ -648,7 +649,7 @@ impl FrameworkEval for Eval { + (op0_limb_17_col57.clone() * op1_limb_1_col70.clone())) + (op0_limb_18_col58.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_33 = eval.add_intermediate( + let conv_tmp_48d52_33 = eval.add_intermediate( (((((((((((((((((((((M31_0.clone() - dst_limb_19_col30.clone()) + (op0_limb_0_col40.clone() * op1_limb_19_col88.clone())) + (op0_limb_1_col41.clone() * op1_limb_18_col87.clone())) @@ -671,7 +672,7 @@ impl FrameworkEval for Eval { + (op0_limb_18_col58.clone() * op1_limb_1_col70.clone())) + (op0_limb_19_col59.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_34 = eval.add_intermediate( + let conv_tmp_48d52_34 = eval.add_intermediate( ((((((((((((((((((((((M31_0.clone() - dst_limb_20_col31.clone()) + (op0_limb_0_col40.clone() * op1_limb_20_col89.clone())) + (op0_limb_1_col41.clone() * op1_limb_19_col88.clone())) @@ -695,7 +696,7 @@ impl FrameworkEval for Eval { + (op0_limb_19_col59.clone() * op1_limb_1_col70.clone())) + (op0_limb_20_col60.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_35 = eval.add_intermediate( + let conv_tmp_48d52_35 = eval.add_intermediate( (((((((((((((((((((((((M31_0.clone() - dst_limb_21_col32.clone()) + (op0_limb_0_col40.clone() * op1_limb_21_col90.clone())) + (op0_limb_1_col41.clone() * op1_limb_20_col89.clone())) @@ -720,7 +721,7 @@ impl FrameworkEval for Eval { + (op0_limb_20_col60.clone() * op1_limb_1_col70.clone())) + (op0_limb_21_col61.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_36 = eval.add_intermediate( + let conv_tmp_48d52_36 = eval.add_intermediate( ((((((((((((((((((((((((M31_0.clone() - dst_limb_22_col33.clone()) + (op0_limb_0_col40.clone() * op1_limb_22_col91.clone())) @@ -747,7 +748,7 @@ impl FrameworkEval for Eval { + (op0_limb_21_col61.clone() * op1_limb_1_col70.clone())) + (op0_limb_22_col62.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_37 = eval.add_intermediate( + let conv_tmp_48d52_37 = eval.add_intermediate( (((((((((((((((((((((((((M31_0.clone() - dst_limb_23_col34.clone()) + (op0_limb_0_col40.clone() * op1_limb_23_col92.clone())) @@ -775,7 +776,7 @@ impl FrameworkEval for Eval { + (op0_limb_22_col62.clone() * op1_limb_1_col70.clone())) + (op0_limb_23_col63.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_38 = eval.add_intermediate( + let conv_tmp_48d52_38 = eval.add_intermediate( ((((((((((((((((((((((((((M31_0.clone() - dst_limb_24_col35.clone()) + (op0_limb_0_col40.clone() * op1_limb_24_col93.clone())) @@ -804,7 +805,7 @@ impl FrameworkEval for Eval { + (op0_limb_23_col63.clone() * op1_limb_1_col70.clone())) + (op0_limb_24_col64.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_39 = eval.add_intermediate( + let conv_tmp_48d52_39 = eval.add_intermediate( (((((((((((((((((((((((((((M31_0.clone() - dst_limb_25_col36.clone()) + (op0_limb_0_col40.clone() * op1_limb_25_col94.clone())) @@ -834,7 +835,7 @@ impl FrameworkEval for Eval { + (op0_limb_24_col64.clone() * op1_limb_1_col70.clone())) + (op0_limb_25_col65.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_40 = eval.add_intermediate( + let conv_tmp_48d52_40 = eval.add_intermediate( ((((((((((((((((((((((((((((M31_0.clone() - dst_limb_26_col37.clone()) + (op0_limb_0_col40.clone() * op1_limb_26_col95.clone())) @@ -865,7 +866,7 @@ impl FrameworkEval for Eval { + (op0_limb_25_col65.clone() * op1_limb_1_col70.clone())) + (op0_limb_26_col66.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_41 = eval.add_intermediate( + let conv_tmp_48d52_41 = eval.add_intermediate( (((((((((((((((((((((((((((((M31_0.clone() - dst_limb_27_col38.clone()) + (op0_limb_0_col40.clone() @@ -898,7 +899,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_1_col70.clone())) + (op0_limb_27_col67.clone() * op1_limb_0_col69.clone())), ); - let conv_tmp_31b3e_42 = eval.add_intermediate( + let conv_tmp_48d52_42 = eval.add_intermediate( (((((((((((((((((((((((((((M31_0.clone() + (op0_limb_1_col41.clone() * op1_limb_27_col96.clone())) + (op0_limb_2_col42.clone() * op1_limb_26_col95.clone())) @@ -928,7 +929,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_2_col71.clone())) + (op0_limb_27_col67.clone() * op1_limb_1_col70.clone())), ); - let conv_tmp_31b3e_43 = eval.add_intermediate( + let conv_tmp_48d52_43 = eval.add_intermediate( ((((((((((((((((((((((((((M31_0.clone() + (op0_limb_2_col42.clone() * op1_limb_27_col96.clone())) + (op0_limb_3_col43.clone() * op1_limb_26_col95.clone())) @@ -957,7 +958,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_3_col72.clone())) + (op0_limb_27_col67.clone() * op1_limb_2_col71.clone())), ); - let conv_tmp_31b3e_44 = eval.add_intermediate( + let conv_tmp_48d52_44 = eval.add_intermediate( (((((((((((((((((((((((((M31_0.clone() + (op0_limb_3_col43.clone() * op1_limb_27_col96.clone())) + (op0_limb_4_col44.clone() * op1_limb_26_col95.clone())) @@ -985,7 +986,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_4_col73.clone())) + (op0_limb_27_col67.clone() * op1_limb_3_col72.clone())), ); - let conv_tmp_31b3e_45 = eval.add_intermediate( + let conv_tmp_48d52_45 = eval.add_intermediate( ((((((((((((((((((((((((M31_0.clone() + (op0_limb_4_col44.clone() * op1_limb_27_col96.clone())) + (op0_limb_5_col45.clone() * op1_limb_26_col95.clone())) @@ -1012,7 +1013,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_5_col74.clone())) + (op0_limb_27_col67.clone() * op1_limb_4_col73.clone())), ); - let conv_tmp_31b3e_46 = eval.add_intermediate( + let conv_tmp_48d52_46 = eval.add_intermediate( (((((((((((((((((((((((M31_0.clone() + (op0_limb_5_col45.clone() * op1_limb_27_col96.clone())) + (op0_limb_6_col46.clone() * op1_limb_26_col95.clone())) @@ -1038,7 +1039,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_6_col75.clone())) + (op0_limb_27_col67.clone() * op1_limb_5_col74.clone())), ); - let conv_tmp_31b3e_47 = eval.add_intermediate( + let conv_tmp_48d52_47 = eval.add_intermediate( ((((((((((((((((((((((M31_0.clone() + (op0_limb_6_col46.clone() * op1_limb_27_col96.clone())) + (op0_limb_7_col47.clone() * op1_limb_26_col95.clone())) @@ -1063,7 +1064,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_7_col76.clone())) + (op0_limb_27_col67.clone() * op1_limb_6_col75.clone())), ); - let conv_tmp_31b3e_48 = eval.add_intermediate( + let conv_tmp_48d52_48 = eval.add_intermediate( (((((((((((((((((((((M31_0.clone() + (op0_limb_7_col47.clone() * op1_limb_27_col96.clone())) + (op0_limb_8_col48.clone() * op1_limb_26_col95.clone())) @@ -1087,7 +1088,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_8_col77.clone())) + (op0_limb_27_col67.clone() * op1_limb_7_col76.clone())), ); - let conv_tmp_31b3e_49 = eval.add_intermediate( + let conv_tmp_48d52_49 = eval.add_intermediate( ((((((((((((((((((((M31_0.clone() + (op0_limb_8_col48.clone() * op1_limb_27_col96.clone())) + (op0_limb_9_col49.clone() * op1_limb_26_col95.clone())) @@ -1110,7 +1111,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_9_col78.clone())) + (op0_limb_27_col67.clone() * op1_limb_8_col77.clone())), ); - let conv_tmp_31b3e_50 = eval.add_intermediate( + let conv_tmp_48d52_50 = eval.add_intermediate( (((((((((((((((((((M31_0.clone() + (op0_limb_9_col49.clone() * op1_limb_27_col96.clone())) + (op0_limb_10_col50.clone() * op1_limb_26_col95.clone())) @@ -1132,7 +1133,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_10_col79.clone())) + (op0_limb_27_col67.clone() * op1_limb_9_col78.clone())), ); - let conv_tmp_31b3e_51 = eval.add_intermediate( + let conv_tmp_48d52_51 = eval.add_intermediate( ((((((((((((((((((M31_0.clone() + (op0_limb_10_col50.clone() * op1_limb_27_col96.clone())) + (op0_limb_11_col51.clone() * op1_limb_26_col95.clone())) @@ -1153,7 +1154,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_11_col80.clone())) + (op0_limb_27_col67.clone() * op1_limb_10_col79.clone())), ); - let conv_tmp_31b3e_52 = eval.add_intermediate( + let conv_tmp_48d52_52 = eval.add_intermediate( (((((((((((((((((M31_0.clone() + (op0_limb_11_col51.clone() * op1_limb_27_col96.clone())) + (op0_limb_12_col52.clone() * op1_limb_26_col95.clone())) @@ -1173,7 +1174,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_12_col81.clone())) + (op0_limb_27_col67.clone() * op1_limb_11_col80.clone())), ); - let conv_tmp_31b3e_53 = eval.add_intermediate( + let conv_tmp_48d52_53 = eval.add_intermediate( ((((((((((((((((M31_0.clone() + (op0_limb_12_col52.clone() * op1_limb_27_col96.clone())) + (op0_limb_13_col53.clone() * op1_limb_26_col95.clone())) @@ -1192,7 +1193,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_13_col82.clone())) + (op0_limb_27_col67.clone() * op1_limb_12_col81.clone())), ); - let conv_tmp_31b3e_54 = eval.add_intermediate( + let conv_tmp_48d52_54 = eval.add_intermediate( (((((((((((((((M31_0.clone() + (op0_limb_13_col53.clone() * op1_limb_27_col96.clone())) + (op0_limb_14_col54.clone() * op1_limb_26_col95.clone())) @@ -1210,7 +1211,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_14_col83.clone())) + (op0_limb_27_col67.clone() * op1_limb_13_col82.clone())), ); - let conv_tmp_31b3e_55 = eval.add_intermediate( + let conv_tmp_48d52_55 = eval.add_intermediate( ((((((((((((((M31_0.clone() + (op0_limb_14_col54.clone() * op1_limb_27_col96.clone())) + (op0_limb_15_col55.clone() * op1_limb_26_col95.clone())) @@ -1227,7 +1228,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_15_col84.clone())) + (op0_limb_27_col67.clone() * op1_limb_14_col83.clone())), ); - let conv_tmp_31b3e_56 = eval.add_intermediate( + let conv_tmp_48d52_56 = eval.add_intermediate( (((((((((((((M31_0.clone() + (op0_limb_15_col55.clone() * op1_limb_27_col96.clone())) + (op0_limb_16_col56.clone() * op1_limb_26_col95.clone())) @@ -1243,7 +1244,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_16_col85.clone())) + (op0_limb_27_col67.clone() * op1_limb_15_col84.clone())), ); - let conv_tmp_31b3e_57 = eval.add_intermediate( + let conv_tmp_48d52_57 = eval.add_intermediate( ((((((((((((M31_0.clone() + (op0_limb_16_col56.clone() * op1_limb_27_col96.clone())) + (op0_limb_17_col57.clone() * op1_limb_26_col95.clone())) @@ -1258,7 +1259,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_17_col86.clone())) + (op0_limb_27_col67.clone() * op1_limb_16_col85.clone())), ); - let conv_tmp_31b3e_58 = eval.add_intermediate( + let conv_tmp_48d52_58 = eval.add_intermediate( (((((((((((M31_0.clone() + (op0_limb_17_col57.clone() * op1_limb_27_col96.clone())) + (op0_limb_18_col58.clone() * op1_limb_26_col95.clone())) @@ -1272,7 +1273,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_18_col87.clone())) + (op0_limb_27_col67.clone() * op1_limb_17_col86.clone())), ); - let conv_tmp_31b3e_59 = eval.add_intermediate( + let conv_tmp_48d52_59 = eval.add_intermediate( ((((((((((M31_0.clone() + (op0_limb_18_col58.clone() * op1_limb_27_col96.clone())) + (op0_limb_19_col59.clone() * op1_limb_26_col95.clone())) @@ -1285,7 +1286,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_19_col88.clone())) + (op0_limb_27_col67.clone() * op1_limb_18_col87.clone())), ); - let conv_tmp_31b3e_60 = eval.add_intermediate( + let conv_tmp_48d52_60 = eval.add_intermediate( (((((((((M31_0.clone() + (op0_limb_19_col59.clone() * op1_limb_27_col96.clone())) + (op0_limb_20_col60.clone() * op1_limb_26_col95.clone())) @@ -1297,7 +1298,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_20_col89.clone())) + (op0_limb_27_col67.clone() * op1_limb_19_col88.clone())), ); - let conv_tmp_31b3e_61 = eval.add_intermediate( + let conv_tmp_48d52_61 = eval.add_intermediate( ((((((((M31_0.clone() + (op0_limb_20_col60.clone() * op1_limb_27_col96.clone())) + (op0_limb_21_col61.clone() * op1_limb_26_col95.clone())) + (op0_limb_22_col62.clone() * op1_limb_25_col94.clone())) @@ -1307,7 +1308,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_21_col90.clone())) + (op0_limb_27_col67.clone() * op1_limb_20_col89.clone())), ); - let conv_tmp_31b3e_62 = eval.add_intermediate( + let conv_tmp_48d52_62 = eval.add_intermediate( (((((((M31_0.clone() + (op0_limb_21_col61.clone() * op1_limb_27_col96.clone())) + (op0_limb_22_col62.clone() * op1_limb_26_col95.clone())) + (op0_limb_23_col63.clone() * op1_limb_25_col94.clone())) @@ -1316,7 +1317,7 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_22_col91.clone())) + (op0_limb_27_col67.clone() * op1_limb_21_col90.clone())), ); - let conv_tmp_31b3e_63 = eval.add_intermediate( + let conv_tmp_48d52_63 = eval.add_intermediate( ((((((M31_0.clone() + (op0_limb_22_col62.clone() * op1_limb_27_col96.clone())) + (op0_limb_23_col63.clone() * op1_limb_26_col95.clone())) + (op0_limb_24_col64.clone() * op1_limb_25_col94.clone())) @@ -1324,195 +1325,195 @@ impl FrameworkEval for Eval { + (op0_limb_26_col66.clone() * op1_limb_23_col92.clone())) + (op0_limb_27_col67.clone() * op1_limb_22_col91.clone())), ); - let conv_tmp_31b3e_64 = eval.add_intermediate( + let conv_tmp_48d52_64 = eval.add_intermediate( (((((M31_0.clone() + (op0_limb_23_col63.clone() * op1_limb_27_col96.clone())) + (op0_limb_24_col64.clone() * op1_limb_26_col95.clone())) + (op0_limb_25_col65.clone() * op1_limb_25_col94.clone())) + (op0_limb_26_col66.clone() * op1_limb_24_col93.clone())) + (op0_limb_27_col67.clone() * op1_limb_23_col92.clone())), ); - let conv_tmp_31b3e_65 = eval.add_intermediate( + let conv_tmp_48d52_65 = eval.add_intermediate( ((((M31_0.clone() + (op0_limb_24_col64.clone() * op1_limb_27_col96.clone())) + (op0_limb_25_col65.clone() * op1_limb_26_col95.clone())) + (op0_limb_26_col66.clone() * op1_limb_25_col94.clone())) + (op0_limb_27_col67.clone() * op1_limb_24_col93.clone())), ); - let conv_tmp_31b3e_66 = eval.add_intermediate( + let conv_tmp_48d52_66 = eval.add_intermediate( (((M31_0.clone() + (op0_limb_25_col65.clone() * op1_limb_27_col96.clone())) + (op0_limb_26_col66.clone() * op1_limb_26_col95.clone())) + (op0_limb_27_col67.clone() * op1_limb_25_col94.clone())), ); - let conv_tmp_31b3e_67 = eval.add_intermediate( + let conv_tmp_48d52_67 = eval.add_intermediate( ((M31_0.clone() + (op0_limb_26_col66.clone() * op1_limb_27_col96.clone())) + (op0_limb_27_col67.clone() * op1_limb_26_col95.clone())), ); - let conv_tmp_31b3e_68 = eval.add_intermediate( + let conv_tmp_48d52_68 = eval.add_intermediate( (M31_0.clone() + (op0_limb_27_col67.clone() * op1_limb_27_col96.clone())), ); - let conv_mod_tmp_31b3e_69 = eval.add_intermediate( - (((M31_0.clone() + (M31_32.clone() * conv_tmp_31b3e_14.clone())) - - (M31_4.clone() * conv_tmp_31b3e_35.clone())) - + (M31_8.clone() * conv_tmp_31b3e_63.clone())), - ); - let conv_mod_tmp_31b3e_70 = eval.add_intermediate( - ((((M31_0.clone() + (M31_1.clone() * conv_tmp_31b3e_14.clone())) - + (M31_32.clone() * conv_tmp_31b3e_15.clone())) - - (M31_4.clone() * conv_tmp_31b3e_36.clone())) - + (M31_8.clone() * conv_tmp_31b3e_64.clone())), - ); - let conv_mod_tmp_31b3e_71 = eval.add_intermediate( - ((((M31_0.clone() + (M31_1.clone() * conv_tmp_31b3e_15.clone())) - + (M31_32.clone() * conv_tmp_31b3e_16.clone())) - - (M31_4.clone() * conv_tmp_31b3e_37.clone())) - + (M31_8.clone() * conv_tmp_31b3e_65.clone())), - ); - let conv_mod_tmp_31b3e_72 = eval.add_intermediate( - ((((M31_0.clone() + (M31_1.clone() * conv_tmp_31b3e_16.clone())) - + (M31_32.clone() * conv_tmp_31b3e_17.clone())) - - (M31_4.clone() * conv_tmp_31b3e_38.clone())) - + (M31_8.clone() * conv_tmp_31b3e_66.clone())), - ); - let conv_mod_tmp_31b3e_73 = eval.add_intermediate( - ((((M31_0.clone() + (M31_1.clone() * conv_tmp_31b3e_17.clone())) - + (M31_32.clone() * conv_tmp_31b3e_18.clone())) - - (M31_4.clone() * conv_tmp_31b3e_39.clone())) - + (M31_8.clone() * conv_tmp_31b3e_67.clone())), - ); - let conv_mod_tmp_31b3e_74 = eval.add_intermediate( - ((((M31_0.clone() + (M31_1.clone() * conv_tmp_31b3e_18.clone())) - + (M31_32.clone() * conv_tmp_31b3e_19.clone())) - - (M31_4.clone() * conv_tmp_31b3e_40.clone())) - + (M31_8.clone() * conv_tmp_31b3e_68.clone())), - ); - let conv_mod_tmp_31b3e_75 = eval.add_intermediate( - (((M31_0.clone() + (M31_1.clone() * conv_tmp_31b3e_19.clone())) - + (M31_32.clone() * conv_tmp_31b3e_20.clone())) - - (M31_4.clone() * conv_tmp_31b3e_41.clone())), - ); - let conv_mod_tmp_31b3e_76 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_14.clone())) - + (M31_1.clone() * conv_tmp_31b3e_20.clone())) - + (M31_32.clone() * conv_tmp_31b3e_21.clone())) - - (M31_4.clone() * conv_tmp_31b3e_42.clone())), - ); - let conv_mod_tmp_31b3e_77 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_15.clone())) - + (M31_1.clone() * conv_tmp_31b3e_21.clone())) - + (M31_32.clone() * conv_tmp_31b3e_22.clone())) - - (M31_4.clone() * conv_tmp_31b3e_43.clone())), - ); - let conv_mod_tmp_31b3e_78 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_16.clone())) - + (M31_1.clone() * conv_tmp_31b3e_22.clone())) - + (M31_32.clone() * conv_tmp_31b3e_23.clone())) - - (M31_4.clone() * conv_tmp_31b3e_44.clone())), - ); - let conv_mod_tmp_31b3e_79 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_17.clone())) - + (M31_1.clone() * conv_tmp_31b3e_23.clone())) - + (M31_32.clone() * conv_tmp_31b3e_24.clone())) - - (M31_4.clone() * conv_tmp_31b3e_45.clone())), - ); - let conv_mod_tmp_31b3e_80 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_18.clone())) - + (M31_1.clone() * conv_tmp_31b3e_24.clone())) - + (M31_32.clone() * conv_tmp_31b3e_25.clone())) - - (M31_4.clone() * conv_tmp_31b3e_46.clone())), - ); - let conv_mod_tmp_31b3e_81 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_19.clone())) - + (M31_1.clone() * conv_tmp_31b3e_25.clone())) - + (M31_32.clone() * conv_tmp_31b3e_26.clone())) - - (M31_4.clone() * conv_tmp_31b3e_47.clone())), - ); - let conv_mod_tmp_31b3e_82 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_20.clone())) - + (M31_1.clone() * conv_tmp_31b3e_26.clone())) - + (M31_32.clone() * conv_tmp_31b3e_27.clone())) - - (M31_4.clone() * conv_tmp_31b3e_48.clone())), - ); - let conv_mod_tmp_31b3e_83 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_21.clone())) - + (M31_1.clone() * conv_tmp_31b3e_27.clone())) - + (M31_32.clone() * conv_tmp_31b3e_28.clone())) - - (M31_4.clone() * conv_tmp_31b3e_49.clone())), - ); - let conv_mod_tmp_31b3e_84 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_22.clone())) - + (M31_1.clone() * conv_tmp_31b3e_28.clone())) - + (M31_32.clone() * conv_tmp_31b3e_29.clone())) - - (M31_4.clone() * conv_tmp_31b3e_50.clone())), - ); - let conv_mod_tmp_31b3e_85 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_23.clone())) - + (M31_1.clone() * conv_tmp_31b3e_29.clone())) - + (M31_32.clone() * conv_tmp_31b3e_30.clone())) - - (M31_4.clone() * conv_tmp_31b3e_51.clone())), - ); - let conv_mod_tmp_31b3e_86 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_24.clone())) - + (M31_1.clone() * conv_tmp_31b3e_30.clone())) - + (M31_32.clone() * conv_tmp_31b3e_31.clone())) - - (M31_4.clone() * conv_tmp_31b3e_52.clone())), - ); - let conv_mod_tmp_31b3e_87 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_25.clone())) - + (M31_1.clone() * conv_tmp_31b3e_31.clone())) - + (M31_32.clone() * conv_tmp_31b3e_32.clone())) - - (M31_4.clone() * conv_tmp_31b3e_53.clone())), - ); - let conv_mod_tmp_31b3e_88 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_26.clone())) - + (M31_1.clone() * conv_tmp_31b3e_32.clone())) - + (M31_32.clone() * conv_tmp_31b3e_33.clone())) - - (M31_4.clone() * conv_tmp_31b3e_54.clone())), - ); - let conv_mod_tmp_31b3e_89 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_27.clone())) - + (M31_1.clone() * conv_tmp_31b3e_33.clone())) - + (M31_32.clone() * conv_tmp_31b3e_34.clone())) - - (M31_4.clone() * conv_tmp_31b3e_55.clone())), - ); - let conv_mod_tmp_31b3e_90 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_28.clone())) - + (M31_1.clone() * conv_tmp_31b3e_34.clone())) - - (M31_4.clone() * conv_tmp_31b3e_56.clone())) - + (M31_64.clone() * conv_tmp_31b3e_63.clone())), - ); - let conv_mod_tmp_31b3e_91 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_29.clone())) - - (M31_4.clone() * conv_tmp_31b3e_57.clone())) - + (M31_2.clone() * conv_tmp_31b3e_63.clone())) - + (M31_64.clone() * conv_tmp_31b3e_64.clone())), - ); - let conv_mod_tmp_31b3e_92 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_30.clone())) - - (M31_4.clone() * conv_tmp_31b3e_58.clone())) - + (M31_2.clone() * conv_tmp_31b3e_64.clone())) - + (M31_64.clone() * conv_tmp_31b3e_65.clone())), - ); - let conv_mod_tmp_31b3e_93 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_31.clone())) - - (M31_4.clone() * conv_tmp_31b3e_59.clone())) - + (M31_2.clone() * conv_tmp_31b3e_65.clone())) - + (M31_64.clone() * conv_tmp_31b3e_66.clone())), - ); - let conv_mod_tmp_31b3e_94 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_32.clone())) - - (M31_4.clone() * conv_tmp_31b3e_60.clone())) - + (M31_2.clone() * conv_tmp_31b3e_66.clone())) - + (M31_64.clone() * conv_tmp_31b3e_67.clone())), - ); - let conv_mod_tmp_31b3e_95 = eval.add_intermediate( - ((((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_33.clone())) - - (M31_4.clone() * conv_tmp_31b3e_61.clone())) - + (M31_2.clone() * conv_tmp_31b3e_67.clone())) - + (M31_64.clone() * conv_tmp_31b3e_68.clone())), - ); - let conv_mod_tmp_31b3e_96 = eval.add_intermediate( - (((M31_0.clone() + (M31_2.clone() * conv_tmp_31b3e_34.clone())) - - (M31_4.clone() * conv_tmp_31b3e_62.clone())) - + (M31_2.clone() * conv_tmp_31b3e_68.clone())), + let conv_mod_tmp_48d52_69 = eval.add_intermediate( + (((M31_0.clone() + (M31_32.clone() * conv_tmp_48d52_14.clone())) + - (M31_4.clone() * conv_tmp_48d52_35.clone())) + + (M31_8.clone() * conv_tmp_48d52_63.clone())), + ); + let conv_mod_tmp_48d52_70 = eval.add_intermediate( + ((((M31_0.clone() + (M31_1.clone() * conv_tmp_48d52_14.clone())) + + (M31_32.clone() * conv_tmp_48d52_15.clone())) + - (M31_4.clone() * conv_tmp_48d52_36.clone())) + + (M31_8.clone() * conv_tmp_48d52_64.clone())), + ); + let conv_mod_tmp_48d52_71 = eval.add_intermediate( + ((((M31_0.clone() + (M31_1.clone() * conv_tmp_48d52_15.clone())) + + (M31_32.clone() * conv_tmp_48d52_16.clone())) + - (M31_4.clone() * conv_tmp_48d52_37.clone())) + + (M31_8.clone() * conv_tmp_48d52_65.clone())), + ); + let conv_mod_tmp_48d52_72 = eval.add_intermediate( + ((((M31_0.clone() + (M31_1.clone() * conv_tmp_48d52_16.clone())) + + (M31_32.clone() * conv_tmp_48d52_17.clone())) + - (M31_4.clone() * conv_tmp_48d52_38.clone())) + + (M31_8.clone() * conv_tmp_48d52_66.clone())), + ); + let conv_mod_tmp_48d52_73 = eval.add_intermediate( + ((((M31_0.clone() + (M31_1.clone() * conv_tmp_48d52_17.clone())) + + (M31_32.clone() * conv_tmp_48d52_18.clone())) + - (M31_4.clone() * conv_tmp_48d52_39.clone())) + + (M31_8.clone() * conv_tmp_48d52_67.clone())), + ); + let conv_mod_tmp_48d52_74 = eval.add_intermediate( + ((((M31_0.clone() + (M31_1.clone() * conv_tmp_48d52_18.clone())) + + (M31_32.clone() * conv_tmp_48d52_19.clone())) + - (M31_4.clone() * conv_tmp_48d52_40.clone())) + + (M31_8.clone() * conv_tmp_48d52_68.clone())), + ); + let conv_mod_tmp_48d52_75 = eval.add_intermediate( + (((M31_0.clone() + (M31_1.clone() * conv_tmp_48d52_19.clone())) + + (M31_32.clone() * conv_tmp_48d52_20.clone())) + - (M31_4.clone() * conv_tmp_48d52_41.clone())), + ); + let conv_mod_tmp_48d52_76 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_14.clone())) + + (M31_1.clone() * conv_tmp_48d52_20.clone())) + + (M31_32.clone() * conv_tmp_48d52_21.clone())) + - (M31_4.clone() * conv_tmp_48d52_42.clone())), + ); + let conv_mod_tmp_48d52_77 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_15.clone())) + + (M31_1.clone() * conv_tmp_48d52_21.clone())) + + (M31_32.clone() * conv_tmp_48d52_22.clone())) + - (M31_4.clone() * conv_tmp_48d52_43.clone())), + ); + let conv_mod_tmp_48d52_78 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_16.clone())) + + (M31_1.clone() * conv_tmp_48d52_22.clone())) + + (M31_32.clone() * conv_tmp_48d52_23.clone())) + - (M31_4.clone() * conv_tmp_48d52_44.clone())), + ); + let conv_mod_tmp_48d52_79 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_17.clone())) + + (M31_1.clone() * conv_tmp_48d52_23.clone())) + + (M31_32.clone() * conv_tmp_48d52_24.clone())) + - (M31_4.clone() * conv_tmp_48d52_45.clone())), + ); + let conv_mod_tmp_48d52_80 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_18.clone())) + + (M31_1.clone() * conv_tmp_48d52_24.clone())) + + (M31_32.clone() * conv_tmp_48d52_25.clone())) + - (M31_4.clone() * conv_tmp_48d52_46.clone())), + ); + let conv_mod_tmp_48d52_81 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_19.clone())) + + (M31_1.clone() * conv_tmp_48d52_25.clone())) + + (M31_32.clone() * conv_tmp_48d52_26.clone())) + - (M31_4.clone() * conv_tmp_48d52_47.clone())), + ); + let conv_mod_tmp_48d52_82 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_20.clone())) + + (M31_1.clone() * conv_tmp_48d52_26.clone())) + + (M31_32.clone() * conv_tmp_48d52_27.clone())) + - (M31_4.clone() * conv_tmp_48d52_48.clone())), + ); + let conv_mod_tmp_48d52_83 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_21.clone())) + + (M31_1.clone() * conv_tmp_48d52_27.clone())) + + (M31_32.clone() * conv_tmp_48d52_28.clone())) + - (M31_4.clone() * conv_tmp_48d52_49.clone())), + ); + let conv_mod_tmp_48d52_84 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_22.clone())) + + (M31_1.clone() * conv_tmp_48d52_28.clone())) + + (M31_32.clone() * conv_tmp_48d52_29.clone())) + - (M31_4.clone() * conv_tmp_48d52_50.clone())), + ); + let conv_mod_tmp_48d52_85 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_23.clone())) + + (M31_1.clone() * conv_tmp_48d52_29.clone())) + + (M31_32.clone() * conv_tmp_48d52_30.clone())) + - (M31_4.clone() * conv_tmp_48d52_51.clone())), + ); + let conv_mod_tmp_48d52_86 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_24.clone())) + + (M31_1.clone() * conv_tmp_48d52_30.clone())) + + (M31_32.clone() * conv_tmp_48d52_31.clone())) + - (M31_4.clone() * conv_tmp_48d52_52.clone())), + ); + let conv_mod_tmp_48d52_87 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_25.clone())) + + (M31_1.clone() * conv_tmp_48d52_31.clone())) + + (M31_32.clone() * conv_tmp_48d52_32.clone())) + - (M31_4.clone() * conv_tmp_48d52_53.clone())), + ); + let conv_mod_tmp_48d52_88 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_26.clone())) + + (M31_1.clone() * conv_tmp_48d52_32.clone())) + + (M31_32.clone() * conv_tmp_48d52_33.clone())) + - (M31_4.clone() * conv_tmp_48d52_54.clone())), + ); + let conv_mod_tmp_48d52_89 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_27.clone())) + + (M31_1.clone() * conv_tmp_48d52_33.clone())) + + (M31_32.clone() * conv_tmp_48d52_34.clone())) + - (M31_4.clone() * conv_tmp_48d52_55.clone())), + ); + let conv_mod_tmp_48d52_90 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_28.clone())) + + (M31_1.clone() * conv_tmp_48d52_34.clone())) + - (M31_4.clone() * conv_tmp_48d52_56.clone())) + + (M31_64.clone() * conv_tmp_48d52_63.clone())), + ); + let conv_mod_tmp_48d52_91 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_29.clone())) + - (M31_4.clone() * conv_tmp_48d52_57.clone())) + + (M31_2.clone() * conv_tmp_48d52_63.clone())) + + (M31_64.clone() * conv_tmp_48d52_64.clone())), + ); + let conv_mod_tmp_48d52_92 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_30.clone())) + - (M31_4.clone() * conv_tmp_48d52_58.clone())) + + (M31_2.clone() * conv_tmp_48d52_64.clone())) + + (M31_64.clone() * conv_tmp_48d52_65.clone())), + ); + let conv_mod_tmp_48d52_93 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_31.clone())) + - (M31_4.clone() * conv_tmp_48d52_59.clone())) + + (M31_2.clone() * conv_tmp_48d52_65.clone())) + + (M31_64.clone() * conv_tmp_48d52_66.clone())), + ); + let conv_mod_tmp_48d52_94 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_32.clone())) + - (M31_4.clone() * conv_tmp_48d52_60.clone())) + + (M31_2.clone() * conv_tmp_48d52_66.clone())) + + (M31_64.clone() * conv_tmp_48d52_67.clone())), + ); + let conv_mod_tmp_48d52_95 = eval.add_intermediate( + ((((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_33.clone())) + - (M31_4.clone() * conv_tmp_48d52_61.clone())) + + (M31_2.clone() * conv_tmp_48d52_67.clone())) + + (M31_64.clone() * conv_tmp_48d52_68.clone())), + ); + let conv_mod_tmp_48d52_96 = eval.add_intermediate( + (((M31_0.clone() + (M31_2.clone() * conv_tmp_48d52_34.clone())) + - (M31_4.clone() * conv_tmp_48d52_62.clone())) + + (M31_2.clone() * conv_tmp_48d52_68.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1522,7 +1523,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_0_col98.clone() * M31_512.clone()) - - ((conv_mod_tmp_31b3e_69.clone() - (M31_1.clone() * k_col97.clone())) + - ((conv_mod_tmp_48d52_69.clone() - (M31_1.clone() * k_col97.clone())) + M31_0.clone())), ); eval.add_to_relation(RelationEntry::new( @@ -1533,7 +1534,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_1_col99.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_70.clone() + carry_0_col98.clone())), + - (conv_mod_tmp_48d52_70.clone() + carry_0_col98.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1543,7 +1544,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_2_col100.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_71.clone() + carry_1_col99.clone())), + - (conv_mod_tmp_48d52_71.clone() + carry_1_col99.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1553,7 +1554,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_3_col101.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_72.clone() + carry_2_col100.clone())), + - (conv_mod_tmp_48d52_72.clone() + carry_2_col100.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1563,7 +1564,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_4_col102.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_73.clone() + carry_3_col101.clone())), + - (conv_mod_tmp_48d52_73.clone() + carry_3_col101.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1573,7 +1574,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_5_col103.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_74.clone() + carry_4_col102.clone())), + - (conv_mod_tmp_48d52_74.clone() + carry_4_col102.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1583,7 +1584,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_6_col104.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_75.clone() + carry_5_col103.clone())), + - (conv_mod_tmp_48d52_75.clone() + carry_5_col103.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1593,7 +1594,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_7_col105.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_76.clone() + carry_6_col104.clone())), + - (conv_mod_tmp_48d52_76.clone() + carry_6_col104.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1603,7 +1604,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_8_col106.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_77.clone() + carry_7_col105.clone())), + - (conv_mod_tmp_48d52_77.clone() + carry_7_col105.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1613,7 +1614,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_9_col107.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_78.clone() + carry_8_col106.clone())), + - (conv_mod_tmp_48d52_78.clone() + carry_8_col106.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1623,7 +1624,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_10_col108.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_79.clone() + carry_9_col107.clone())), + - (conv_mod_tmp_48d52_79.clone() + carry_9_col107.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1633,7 +1634,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_11_col109.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_80.clone() + carry_10_col108.clone())), + - (conv_mod_tmp_48d52_80.clone() + carry_10_col108.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1643,7 +1644,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_12_col110.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_81.clone() + carry_11_col109.clone())), + - (conv_mod_tmp_48d52_81.clone() + carry_11_col109.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1653,7 +1654,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_13_col111.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_82.clone() + carry_12_col110.clone())), + - (conv_mod_tmp_48d52_82.clone() + carry_12_col110.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1663,7 +1664,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_14_col112.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_83.clone() + carry_13_col111.clone())), + - (conv_mod_tmp_48d52_83.clone() + carry_13_col111.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1673,7 +1674,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_15_col113.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_84.clone() + carry_14_col112.clone())), + - (conv_mod_tmp_48d52_84.clone() + carry_14_col112.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1683,7 +1684,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_16_col114.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_85.clone() + carry_15_col113.clone())), + - (conv_mod_tmp_48d52_85.clone() + carry_15_col113.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1693,7 +1694,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_17_col115.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_86.clone() + carry_16_col114.clone())), + - (conv_mod_tmp_48d52_86.clone() + carry_16_col114.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1703,7 +1704,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_18_col116.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_87.clone() + carry_17_col115.clone())), + - (conv_mod_tmp_48d52_87.clone() + carry_17_col115.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1713,7 +1714,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_19_col117.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_88.clone() + carry_18_col116.clone())), + - (conv_mod_tmp_48d52_88.clone() + carry_18_col116.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1723,7 +1724,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_20_col118.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_89.clone() + carry_19_col117.clone())), + - (conv_mod_tmp_48d52_89.clone() + carry_19_col117.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1733,7 +1734,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_21_col119.clone() * M31_512.clone()) - - ((conv_mod_tmp_31b3e_90.clone() - (M31_136.clone() * k_col97.clone())) + - ((conv_mod_tmp_48d52_90.clone() - (M31_136.clone() * k_col97.clone())) + carry_20_col118.clone())), ); eval.add_to_relation(RelationEntry::new( @@ -1744,7 +1745,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_22_col120.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_91.clone() + carry_21_col119.clone())), + - (conv_mod_tmp_48d52_91.clone() + carry_21_col119.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1754,7 +1755,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_23_col121.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_92.clone() + carry_22_col120.clone())), + - (conv_mod_tmp_48d52_92.clone() + carry_22_col120.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1764,7 +1765,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_24_col122.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_93.clone() + carry_23_col121.clone())), + - (conv_mod_tmp_48d52_93.clone() + carry_23_col121.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1774,7 +1775,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_25_col123.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_94.clone() + carry_24_col122.clone())), + - (conv_mod_tmp_48d52_94.clone() + carry_24_col122.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1784,7 +1785,7 @@ impl FrameworkEval for Eval { eval.add_constraint( ((carry_26_col124.clone() * M31_512.clone()) - - (conv_mod_tmp_31b3e_95.clone() + carry_25_col123.clone())), + - (conv_mod_tmp_48d52_95.clone() + carry_25_col123.clone())), ); eval.add_to_relation(RelationEntry::new( &self.range_check_19_lookup_elements, @@ -1793,7 +1794,7 @@ impl FrameworkEval for Eval { )); eval.add_constraint( - ((conv_mod_tmp_31b3e_96.clone() - (M31_256.clone() * k_col97.clone())) + ((conv_mod_tmp_48d52_96.clone() - (M31_256.clone() * k_col97.clone())) + carry_26_col124.clone()), ); diff --git a/stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_t/mod.rs b/stwo_cairo_prover/crates/prover/src/components/mul_opcode_imm/mod.rs similarity index 100% rename from stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_t/mod.rs rename to stwo_cairo_prover/crates/prover/src/components/mul_opcode_imm/mod.rs diff --git a/stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_t/prover.rs b/stwo_cairo_prover/crates/prover/src/components/mul_opcode_imm/prover.rs similarity index 86% rename from stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_t/prover.rs rename to stwo_cairo_prover/crates/prover/src/components/mul_opcode_imm/prover.rs index 9200923e..506b9fde 100644 --- a/stwo_cairo_prover/crates/prover/src/components/mul_opcode_is_small_f_is_imm_t/prover.rs +++ b/stwo_cairo_prover/crates/prover/src/components/mul_opcode_imm/prover.rs @@ -7,10 +7,13 @@ use itertools::{chain, zip_eq, Itertools}; use num_traits::{One, Zero}; use prover_types::cpu::*; use prover_types::simd::*; -use rayon::iter::{IndexedParallelIterator, IntoParallelRefIterator, ParallelIterator}; +use rayon::iter::{ + IndexedParallelIterator, IntoParallelIterator, IntoParallelRefIterator, ParallelIterator, +}; use stwo_air_utils::trace::component_trace::ComponentTrace; use stwo_air_utils_derive::{IterMut, ParIterMut, Uninitialized}; use stwo_prover::constraint_framework::logup::LogupTraceGenerator; +use stwo_prover::constraint_framework::preprocessed_columns::PreprocessedColumn; use stwo_prover::constraint_framework::Relation; use stwo_prover::core::air::Component; use stwo_prover::core::backend::simd::column::BaseColumn; @@ -21,6 +24,7 @@ use stwo_prover::core::backend::simd::SimdBackend; use stwo_prover::core::backend::{BackendForChannel, Col, Column}; use stwo_prover::core::channel::{Channel, MerkleChannel}; use stwo_prover::core::fields::m31::M31; +use stwo_prover::core::fields::FieldExpOps; use stwo_prover::core::pcs::TreeBuilder; use stwo_prover::core::poly::circle::{CanonicCoset, CircleEvaluation}; use stwo_prover::core::poly::BitReversedOrder; @@ -69,6 +73,7 @@ impl ClaimGenerator { let packed_inputs = pack_values(&self.inputs); let (trace, mut sub_components_inputs, lookup_data) = write_trace_simd( + n_rows, packed_inputs, memory_address_to_id_state, memory_id_to_big_state, @@ -113,8 +118,8 @@ impl ClaimGenerator { ) } - pub fn add_inputs(&mut self, inputs: &[InputType]) { - self.inputs.extend(inputs); + pub fn add_inputs(&self, _inputs: &[InputType]) { + unimplemented!("Implement manually"); } } @@ -131,6 +136,7 @@ pub struct SubComponentInputs { #[allow(clippy::double_parens)] #[allow(non_snake_case)] fn write_trace_simd( + n_rows: usize, inputs: Vec, memory_address_to_id_state: &memory_address_to_id::ClaimGenerator, memory_id_to_big_state: &memory_id_to_big::ClaimGenerator, @@ -181,79 +187,79 @@ fn write_trace_simd( trace .par_iter_mut() - .zip(inputs.par_iter()) + .enumerate() + .zip(inputs.into_par_iter()) .zip(lookup_data.par_iter_mut()) .zip(sub_components_inputs.par_iter_mut().chunks(N_LANES)) .for_each( |( - ((row, mul_opcode_is_small_f_is_imm_t_input), lookup_data), + (((row_index, row), mul_opcode_imm_input), lookup_data), mut sub_components_inputs, )| { - let input_tmp_31b3e_0 = mul_opcode_is_small_f_is_imm_t_input; - let input_pc_col0 = input_tmp_31b3e_0.pc; + let input_tmp_48d52_0 = mul_opcode_imm_input; + let input_pc_col0 = input_tmp_48d52_0.pc; *row[0] = input_pc_col0; - let input_ap_col1 = input_tmp_31b3e_0.ap; + let input_ap_col1 = input_tmp_48d52_0.ap; *row[1] = input_ap_col1; - let input_fp_col2 = input_tmp_31b3e_0.fp; + let input_fp_col2 = input_tmp_48d52_0.fp; *row[2] = input_fp_col2; // Decode Instruction. - let memory_address_to_id_value_tmp_31b3e_1 = + let memory_address_to_id_value_tmp_48d52_1 = memory_address_to_id_state.deduce_output(input_pc_col0); - let memory_id_to_big_value_tmp_31b3e_2 = - memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_31b3e_1); - let offset0_tmp_31b3e_3 = - ((PackedUInt16::from_m31(memory_id_to_big_value_tmp_31b3e_2.get_m31(0))) + let memory_id_to_big_value_tmp_48d52_2 = + memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_48d52_1); + let offset0_tmp_48d52_3 = + ((PackedUInt16::from_m31(memory_id_to_big_value_tmp_48d52_2.get_m31(0))) + (((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_31b3e_2.get_m31(1), + memory_id_to_big_value_tmp_48d52_2.get_m31(1), )) & (UInt16_127)) << (UInt16_9))); - let offset0_col3 = offset0_tmp_31b3e_3.as_m31(); + let offset0_col3 = offset0_tmp_48d52_3.as_m31(); *row[3] = offset0_col3; - let offset1_tmp_31b3e_4 = - ((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_31b3e_2.get_m31(1))) + let offset1_tmp_48d52_4 = + ((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_48d52_2.get_m31(1))) >> (UInt16_7)) + ((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_31b3e_2.get_m31(2), + memory_id_to_big_value_tmp_48d52_2.get_m31(2), )) << (UInt16_2))) + (((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_31b3e_2.get_m31(3), + memory_id_to_big_value_tmp_48d52_2.get_m31(3), )) & (UInt16_31)) << (UInt16_11))); - let offset1_col4 = offset1_tmp_31b3e_4.as_m31(); + let offset1_col4 = offset1_tmp_48d52_4.as_m31(); *row[4] = offset1_col4; - let dst_base_fp_tmp_31b3e_5 = - (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_31b3e_2.get_m31(5))) + let dst_base_fp_tmp_48d52_5 = + (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_48d52_2.get_m31(5))) >> (UInt16_3)) + ((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_31b3e_2.get_m31(6), + memory_id_to_big_value_tmp_48d52_2.get_m31(6), )) << (UInt16_6))) >> (UInt16_0)) & (UInt16_1)); - let dst_base_fp_col5 = dst_base_fp_tmp_31b3e_5.as_m31(); + let dst_base_fp_col5 = dst_base_fp_tmp_48d52_5.as_m31(); *row[5] = dst_base_fp_col5; - let op0_base_fp_tmp_31b3e_6 = - (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_31b3e_2.get_m31(5))) + let op0_base_fp_tmp_48d52_6 = + (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_48d52_2.get_m31(5))) >> (UInt16_3)) + ((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_31b3e_2.get_m31(6), + memory_id_to_big_value_tmp_48d52_2.get_m31(6), )) << (UInt16_6))) >> (UInt16_1)) & (UInt16_1)); - let op0_base_fp_col6 = op0_base_fp_tmp_31b3e_6.as_m31(); + let op0_base_fp_col6 = op0_base_fp_tmp_48d52_6.as_m31(); *row[6] = op0_base_fp_col6; - let ap_update_add_1_tmp_31b3e_7 = - (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_31b3e_2.get_m31(5))) + let ap_update_add_1_tmp_48d52_7 = + (((((PackedUInt16::from_m31(memory_id_to_big_value_tmp_48d52_2.get_m31(5))) >> (UInt16_3)) + ((PackedUInt16::from_m31( - memory_id_to_big_value_tmp_31b3e_2.get_m31(6), + memory_id_to_big_value_tmp_48d52_2.get_m31(6), )) << (UInt16_6))) >> (UInt16_11)) & (UInt16_1)); - let ap_update_add_1_col7 = ap_update_add_1_tmp_31b3e_7.as_m31(); + let ap_update_add_1_col7 = ap_update_add_1_tmp_48d52_7.as_m31(); *row[7] = ap_update_add_1_col7; - for (i, &input) in ( input_pc_col0, [offset0_col3, offset1_col4, M31_32769], @@ -312,11 +318,11 @@ fn write_trace_simd( // Read Positive Num Bits 252. - let memory_address_to_id_value_tmp_31b3e_8 = memory_address_to_id_state + let memory_address_to_id_value_tmp_48d52_8 = memory_address_to_id_state .deduce_output(((mem_dst_base_col8) + ((offset0_col3) - (M31_32768)))); - let memory_id_to_big_value_tmp_31b3e_9 = - memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_31b3e_8); - let dst_id_col10 = memory_address_to_id_value_tmp_31b3e_8; + let memory_id_to_big_value_tmp_48d52_9 = + memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_48d52_8); + let dst_id_col10 = memory_address_to_id_value_tmp_48d52_8; *row[10] = dst_id_col10; for (i, &input) in ((mem_dst_base_col8) + ((offset0_col3) - (M31_32768))) .unpack() @@ -329,61 +335,61 @@ fn write_trace_simd( ((mem_dst_base_col8) + ((offset0_col3) - (M31_32768))), dst_id_col10, ]; - let dst_limb_0_col11 = memory_id_to_big_value_tmp_31b3e_9.get_m31(0); + let dst_limb_0_col11 = memory_id_to_big_value_tmp_48d52_9.get_m31(0); *row[11] = dst_limb_0_col11; - let dst_limb_1_col12 = memory_id_to_big_value_tmp_31b3e_9.get_m31(1); + let dst_limb_1_col12 = memory_id_to_big_value_tmp_48d52_9.get_m31(1); *row[12] = dst_limb_1_col12; - let dst_limb_2_col13 = memory_id_to_big_value_tmp_31b3e_9.get_m31(2); + let dst_limb_2_col13 = memory_id_to_big_value_tmp_48d52_9.get_m31(2); *row[13] = dst_limb_2_col13; - let dst_limb_3_col14 = memory_id_to_big_value_tmp_31b3e_9.get_m31(3); + let dst_limb_3_col14 = memory_id_to_big_value_tmp_48d52_9.get_m31(3); *row[14] = dst_limb_3_col14; - let dst_limb_4_col15 = memory_id_to_big_value_tmp_31b3e_9.get_m31(4); + let dst_limb_4_col15 = memory_id_to_big_value_tmp_48d52_9.get_m31(4); *row[15] = dst_limb_4_col15; - let dst_limb_5_col16 = memory_id_to_big_value_tmp_31b3e_9.get_m31(5); + let dst_limb_5_col16 = memory_id_to_big_value_tmp_48d52_9.get_m31(5); *row[16] = dst_limb_5_col16; - let dst_limb_6_col17 = memory_id_to_big_value_tmp_31b3e_9.get_m31(6); + let dst_limb_6_col17 = memory_id_to_big_value_tmp_48d52_9.get_m31(6); *row[17] = dst_limb_6_col17; - let dst_limb_7_col18 = memory_id_to_big_value_tmp_31b3e_9.get_m31(7); + let dst_limb_7_col18 = memory_id_to_big_value_tmp_48d52_9.get_m31(7); *row[18] = dst_limb_7_col18; - let dst_limb_8_col19 = memory_id_to_big_value_tmp_31b3e_9.get_m31(8); + let dst_limb_8_col19 = memory_id_to_big_value_tmp_48d52_9.get_m31(8); *row[19] = dst_limb_8_col19; - let dst_limb_9_col20 = memory_id_to_big_value_tmp_31b3e_9.get_m31(9); + let dst_limb_9_col20 = memory_id_to_big_value_tmp_48d52_9.get_m31(9); *row[20] = dst_limb_9_col20; - let dst_limb_10_col21 = memory_id_to_big_value_tmp_31b3e_9.get_m31(10); + let dst_limb_10_col21 = memory_id_to_big_value_tmp_48d52_9.get_m31(10); *row[21] = dst_limb_10_col21; - let dst_limb_11_col22 = memory_id_to_big_value_tmp_31b3e_9.get_m31(11); + let dst_limb_11_col22 = memory_id_to_big_value_tmp_48d52_9.get_m31(11); *row[22] = dst_limb_11_col22; - let dst_limb_12_col23 = memory_id_to_big_value_tmp_31b3e_9.get_m31(12); + let dst_limb_12_col23 = memory_id_to_big_value_tmp_48d52_9.get_m31(12); *row[23] = dst_limb_12_col23; - let dst_limb_13_col24 = memory_id_to_big_value_tmp_31b3e_9.get_m31(13); + let dst_limb_13_col24 = memory_id_to_big_value_tmp_48d52_9.get_m31(13); *row[24] = dst_limb_13_col24; - let dst_limb_14_col25 = memory_id_to_big_value_tmp_31b3e_9.get_m31(14); + let dst_limb_14_col25 = memory_id_to_big_value_tmp_48d52_9.get_m31(14); *row[25] = dst_limb_14_col25; - let dst_limb_15_col26 = memory_id_to_big_value_tmp_31b3e_9.get_m31(15); + let dst_limb_15_col26 = memory_id_to_big_value_tmp_48d52_9.get_m31(15); *row[26] = dst_limb_15_col26; - let dst_limb_16_col27 = memory_id_to_big_value_tmp_31b3e_9.get_m31(16); + let dst_limb_16_col27 = memory_id_to_big_value_tmp_48d52_9.get_m31(16); *row[27] = dst_limb_16_col27; - let dst_limb_17_col28 = memory_id_to_big_value_tmp_31b3e_9.get_m31(17); + let dst_limb_17_col28 = memory_id_to_big_value_tmp_48d52_9.get_m31(17); *row[28] = dst_limb_17_col28; - let dst_limb_18_col29 = memory_id_to_big_value_tmp_31b3e_9.get_m31(18); + let dst_limb_18_col29 = memory_id_to_big_value_tmp_48d52_9.get_m31(18); *row[29] = dst_limb_18_col29; - let dst_limb_19_col30 = memory_id_to_big_value_tmp_31b3e_9.get_m31(19); + let dst_limb_19_col30 = memory_id_to_big_value_tmp_48d52_9.get_m31(19); *row[30] = dst_limb_19_col30; - let dst_limb_20_col31 = memory_id_to_big_value_tmp_31b3e_9.get_m31(20); + let dst_limb_20_col31 = memory_id_to_big_value_tmp_48d52_9.get_m31(20); *row[31] = dst_limb_20_col31; - let dst_limb_21_col32 = memory_id_to_big_value_tmp_31b3e_9.get_m31(21); + let dst_limb_21_col32 = memory_id_to_big_value_tmp_48d52_9.get_m31(21); *row[32] = dst_limb_21_col32; - let dst_limb_22_col33 = memory_id_to_big_value_tmp_31b3e_9.get_m31(22); + let dst_limb_22_col33 = memory_id_to_big_value_tmp_48d52_9.get_m31(22); *row[33] = dst_limb_22_col33; - let dst_limb_23_col34 = memory_id_to_big_value_tmp_31b3e_9.get_m31(23); + let dst_limb_23_col34 = memory_id_to_big_value_tmp_48d52_9.get_m31(23); *row[34] = dst_limb_23_col34; - let dst_limb_24_col35 = memory_id_to_big_value_tmp_31b3e_9.get_m31(24); + let dst_limb_24_col35 = memory_id_to_big_value_tmp_48d52_9.get_m31(24); *row[35] = dst_limb_24_col35; - let dst_limb_25_col36 = memory_id_to_big_value_tmp_31b3e_9.get_m31(25); + let dst_limb_25_col36 = memory_id_to_big_value_tmp_48d52_9.get_m31(25); *row[36] = dst_limb_25_col36; - let dst_limb_26_col37 = memory_id_to_big_value_tmp_31b3e_9.get_m31(26); + let dst_limb_26_col37 = memory_id_to_big_value_tmp_48d52_9.get_m31(26); *row[37] = dst_limb_26_col37; - let dst_limb_27_col38 = memory_id_to_big_value_tmp_31b3e_9.get_m31(27); + let dst_limb_27_col38 = memory_id_to_big_value_tmp_48d52_9.get_m31(27); *row[38] = dst_limb_27_col38; for (i, &input) in dst_id_col10.unpack().iter().enumerate() { *sub_components_inputs[i].memory_id_to_big_inputs[0] = input; @@ -422,11 +428,11 @@ fn write_trace_simd( // Read Positive Num Bits 252. - let memory_address_to_id_value_tmp_31b3e_10 = memory_address_to_id_state + let memory_address_to_id_value_tmp_48d52_10 = memory_address_to_id_state .deduce_output(((mem0_base_col9) + ((offset1_col4) - (M31_32768)))); - let memory_id_to_big_value_tmp_31b3e_11 = - memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_31b3e_10); - let op0_id_col39 = memory_address_to_id_value_tmp_31b3e_10; + let memory_id_to_big_value_tmp_48d52_11 = + memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_48d52_10); + let op0_id_col39 = memory_address_to_id_value_tmp_48d52_10; *row[39] = op0_id_col39; for (i, &input) in ((mem0_base_col9) + ((offset1_col4) - (M31_32768))) .unpack() @@ -439,61 +445,61 @@ fn write_trace_simd( ((mem0_base_col9) + ((offset1_col4) - (M31_32768))), op0_id_col39, ]; - let op0_limb_0_col40 = memory_id_to_big_value_tmp_31b3e_11.get_m31(0); + let op0_limb_0_col40 = memory_id_to_big_value_tmp_48d52_11.get_m31(0); *row[40] = op0_limb_0_col40; - let op0_limb_1_col41 = memory_id_to_big_value_tmp_31b3e_11.get_m31(1); + let op0_limb_1_col41 = memory_id_to_big_value_tmp_48d52_11.get_m31(1); *row[41] = op0_limb_1_col41; - let op0_limb_2_col42 = memory_id_to_big_value_tmp_31b3e_11.get_m31(2); + let op0_limb_2_col42 = memory_id_to_big_value_tmp_48d52_11.get_m31(2); *row[42] = op0_limb_2_col42; - let op0_limb_3_col43 = memory_id_to_big_value_tmp_31b3e_11.get_m31(3); + let op0_limb_3_col43 = memory_id_to_big_value_tmp_48d52_11.get_m31(3); *row[43] = op0_limb_3_col43; - let op0_limb_4_col44 = memory_id_to_big_value_tmp_31b3e_11.get_m31(4); + let op0_limb_4_col44 = memory_id_to_big_value_tmp_48d52_11.get_m31(4); *row[44] = op0_limb_4_col44; - let op0_limb_5_col45 = memory_id_to_big_value_tmp_31b3e_11.get_m31(5); + let op0_limb_5_col45 = memory_id_to_big_value_tmp_48d52_11.get_m31(5); *row[45] = op0_limb_5_col45; - let op0_limb_6_col46 = memory_id_to_big_value_tmp_31b3e_11.get_m31(6); + let op0_limb_6_col46 = memory_id_to_big_value_tmp_48d52_11.get_m31(6); *row[46] = op0_limb_6_col46; - let op0_limb_7_col47 = memory_id_to_big_value_tmp_31b3e_11.get_m31(7); + let op0_limb_7_col47 = memory_id_to_big_value_tmp_48d52_11.get_m31(7); *row[47] = op0_limb_7_col47; - let op0_limb_8_col48 = memory_id_to_big_value_tmp_31b3e_11.get_m31(8); + let op0_limb_8_col48 = memory_id_to_big_value_tmp_48d52_11.get_m31(8); *row[48] = op0_limb_8_col48; - let op0_limb_9_col49 = memory_id_to_big_value_tmp_31b3e_11.get_m31(9); + let op0_limb_9_col49 = memory_id_to_big_value_tmp_48d52_11.get_m31(9); *row[49] = op0_limb_9_col49; - let op0_limb_10_col50 = memory_id_to_big_value_tmp_31b3e_11.get_m31(10); + let op0_limb_10_col50 = memory_id_to_big_value_tmp_48d52_11.get_m31(10); *row[50] = op0_limb_10_col50; - let op0_limb_11_col51 = memory_id_to_big_value_tmp_31b3e_11.get_m31(11); + let op0_limb_11_col51 = memory_id_to_big_value_tmp_48d52_11.get_m31(11); *row[51] = op0_limb_11_col51; - let op0_limb_12_col52 = memory_id_to_big_value_tmp_31b3e_11.get_m31(12); + let op0_limb_12_col52 = memory_id_to_big_value_tmp_48d52_11.get_m31(12); *row[52] = op0_limb_12_col52; - let op0_limb_13_col53 = memory_id_to_big_value_tmp_31b3e_11.get_m31(13); + let op0_limb_13_col53 = memory_id_to_big_value_tmp_48d52_11.get_m31(13); *row[53] = op0_limb_13_col53; - let op0_limb_14_col54 = memory_id_to_big_value_tmp_31b3e_11.get_m31(14); + let op0_limb_14_col54 = memory_id_to_big_value_tmp_48d52_11.get_m31(14); *row[54] = op0_limb_14_col54; - let op0_limb_15_col55 = memory_id_to_big_value_tmp_31b3e_11.get_m31(15); + let op0_limb_15_col55 = memory_id_to_big_value_tmp_48d52_11.get_m31(15); *row[55] = op0_limb_15_col55; - let op0_limb_16_col56 = memory_id_to_big_value_tmp_31b3e_11.get_m31(16); + let op0_limb_16_col56 = memory_id_to_big_value_tmp_48d52_11.get_m31(16); *row[56] = op0_limb_16_col56; - let op0_limb_17_col57 = memory_id_to_big_value_tmp_31b3e_11.get_m31(17); + let op0_limb_17_col57 = memory_id_to_big_value_tmp_48d52_11.get_m31(17); *row[57] = op0_limb_17_col57; - let op0_limb_18_col58 = memory_id_to_big_value_tmp_31b3e_11.get_m31(18); + let op0_limb_18_col58 = memory_id_to_big_value_tmp_48d52_11.get_m31(18); *row[58] = op0_limb_18_col58; - let op0_limb_19_col59 = memory_id_to_big_value_tmp_31b3e_11.get_m31(19); + let op0_limb_19_col59 = memory_id_to_big_value_tmp_48d52_11.get_m31(19); *row[59] = op0_limb_19_col59; - let op0_limb_20_col60 = memory_id_to_big_value_tmp_31b3e_11.get_m31(20); + let op0_limb_20_col60 = memory_id_to_big_value_tmp_48d52_11.get_m31(20); *row[60] = op0_limb_20_col60; - let op0_limb_21_col61 = memory_id_to_big_value_tmp_31b3e_11.get_m31(21); + let op0_limb_21_col61 = memory_id_to_big_value_tmp_48d52_11.get_m31(21); *row[61] = op0_limb_21_col61; - let op0_limb_22_col62 = memory_id_to_big_value_tmp_31b3e_11.get_m31(22); + let op0_limb_22_col62 = memory_id_to_big_value_tmp_48d52_11.get_m31(22); *row[62] = op0_limb_22_col62; - let op0_limb_23_col63 = memory_id_to_big_value_tmp_31b3e_11.get_m31(23); + let op0_limb_23_col63 = memory_id_to_big_value_tmp_48d52_11.get_m31(23); *row[63] = op0_limb_23_col63; - let op0_limb_24_col64 = memory_id_to_big_value_tmp_31b3e_11.get_m31(24); + let op0_limb_24_col64 = memory_id_to_big_value_tmp_48d52_11.get_m31(24); *row[64] = op0_limb_24_col64; - let op0_limb_25_col65 = memory_id_to_big_value_tmp_31b3e_11.get_m31(25); + let op0_limb_25_col65 = memory_id_to_big_value_tmp_48d52_11.get_m31(25); *row[65] = op0_limb_25_col65; - let op0_limb_26_col66 = memory_id_to_big_value_tmp_31b3e_11.get_m31(26); + let op0_limb_26_col66 = memory_id_to_big_value_tmp_48d52_11.get_m31(26); *row[66] = op0_limb_26_col66; - let op0_limb_27_col67 = memory_id_to_big_value_tmp_31b3e_11.get_m31(27); + let op0_limb_27_col67 = memory_id_to_big_value_tmp_48d52_11.get_m31(27); *row[67] = op0_limb_27_col67; for (i, &input) in op0_id_col39.unpack().iter().enumerate() { *sub_components_inputs[i].memory_id_to_big_inputs[1] = input; @@ -532,71 +538,71 @@ fn write_trace_simd( // Read Positive Num Bits 252. - let memory_address_to_id_value_tmp_31b3e_12 = + let memory_address_to_id_value_tmp_48d52_12 = memory_address_to_id_state.deduce_output(((input_pc_col0) + (M31_1))); - let memory_id_to_big_value_tmp_31b3e_13 = - memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_31b3e_12); - let op1_id_col68 = memory_address_to_id_value_tmp_31b3e_12; + let memory_id_to_big_value_tmp_48d52_13 = + memory_id_to_big_state.deduce_output(memory_address_to_id_value_tmp_48d52_12); + let op1_id_col68 = memory_address_to_id_value_tmp_48d52_12; *row[68] = op1_id_col68; for (i, &input) in ((input_pc_col0) + (M31_1)).unpack().iter().enumerate() { *sub_components_inputs[i].memory_address_to_id_inputs[2] = input; } *lookup_data.memory_address_to_id_2 = [((input_pc_col0) + (M31_1)), op1_id_col68]; - let op1_limb_0_col69 = memory_id_to_big_value_tmp_31b3e_13.get_m31(0); + let op1_limb_0_col69 = memory_id_to_big_value_tmp_48d52_13.get_m31(0); *row[69] = op1_limb_0_col69; - let op1_limb_1_col70 = memory_id_to_big_value_tmp_31b3e_13.get_m31(1); + let op1_limb_1_col70 = memory_id_to_big_value_tmp_48d52_13.get_m31(1); *row[70] = op1_limb_1_col70; - let op1_limb_2_col71 = memory_id_to_big_value_tmp_31b3e_13.get_m31(2); + let op1_limb_2_col71 = memory_id_to_big_value_tmp_48d52_13.get_m31(2); *row[71] = op1_limb_2_col71; - let op1_limb_3_col72 = memory_id_to_big_value_tmp_31b3e_13.get_m31(3); + let op1_limb_3_col72 = memory_id_to_big_value_tmp_48d52_13.get_m31(3); *row[72] = op1_limb_3_col72; - let op1_limb_4_col73 = memory_id_to_big_value_tmp_31b3e_13.get_m31(4); + let op1_limb_4_col73 = memory_id_to_big_value_tmp_48d52_13.get_m31(4); *row[73] = op1_limb_4_col73; - let op1_limb_5_col74 = memory_id_to_big_value_tmp_31b3e_13.get_m31(5); + let op1_limb_5_col74 = memory_id_to_big_value_tmp_48d52_13.get_m31(5); *row[74] = op1_limb_5_col74; - let op1_limb_6_col75 = memory_id_to_big_value_tmp_31b3e_13.get_m31(6); + let op1_limb_6_col75 = memory_id_to_big_value_tmp_48d52_13.get_m31(6); *row[75] = op1_limb_6_col75; - let op1_limb_7_col76 = memory_id_to_big_value_tmp_31b3e_13.get_m31(7); + let op1_limb_7_col76 = memory_id_to_big_value_tmp_48d52_13.get_m31(7); *row[76] = op1_limb_7_col76; - let op1_limb_8_col77 = memory_id_to_big_value_tmp_31b3e_13.get_m31(8); + let op1_limb_8_col77 = memory_id_to_big_value_tmp_48d52_13.get_m31(8); *row[77] = op1_limb_8_col77; - let op1_limb_9_col78 = memory_id_to_big_value_tmp_31b3e_13.get_m31(9); + let op1_limb_9_col78 = memory_id_to_big_value_tmp_48d52_13.get_m31(9); *row[78] = op1_limb_9_col78; - let op1_limb_10_col79 = memory_id_to_big_value_tmp_31b3e_13.get_m31(10); + let op1_limb_10_col79 = memory_id_to_big_value_tmp_48d52_13.get_m31(10); *row[79] = op1_limb_10_col79; - let op1_limb_11_col80 = memory_id_to_big_value_tmp_31b3e_13.get_m31(11); + let op1_limb_11_col80 = memory_id_to_big_value_tmp_48d52_13.get_m31(11); *row[80] = op1_limb_11_col80; - let op1_limb_12_col81 = memory_id_to_big_value_tmp_31b3e_13.get_m31(12); + let op1_limb_12_col81 = memory_id_to_big_value_tmp_48d52_13.get_m31(12); *row[81] = op1_limb_12_col81; - let op1_limb_13_col82 = memory_id_to_big_value_tmp_31b3e_13.get_m31(13); + let op1_limb_13_col82 = memory_id_to_big_value_tmp_48d52_13.get_m31(13); *row[82] = op1_limb_13_col82; - let op1_limb_14_col83 = memory_id_to_big_value_tmp_31b3e_13.get_m31(14); + let op1_limb_14_col83 = memory_id_to_big_value_tmp_48d52_13.get_m31(14); *row[83] = op1_limb_14_col83; - let op1_limb_15_col84 = memory_id_to_big_value_tmp_31b3e_13.get_m31(15); + let op1_limb_15_col84 = memory_id_to_big_value_tmp_48d52_13.get_m31(15); *row[84] = op1_limb_15_col84; - let op1_limb_16_col85 = memory_id_to_big_value_tmp_31b3e_13.get_m31(16); + let op1_limb_16_col85 = memory_id_to_big_value_tmp_48d52_13.get_m31(16); *row[85] = op1_limb_16_col85; - let op1_limb_17_col86 = memory_id_to_big_value_tmp_31b3e_13.get_m31(17); + let op1_limb_17_col86 = memory_id_to_big_value_tmp_48d52_13.get_m31(17); *row[86] = op1_limb_17_col86; - let op1_limb_18_col87 = memory_id_to_big_value_tmp_31b3e_13.get_m31(18); + let op1_limb_18_col87 = memory_id_to_big_value_tmp_48d52_13.get_m31(18); *row[87] = op1_limb_18_col87; - let op1_limb_19_col88 = memory_id_to_big_value_tmp_31b3e_13.get_m31(19); + let op1_limb_19_col88 = memory_id_to_big_value_tmp_48d52_13.get_m31(19); *row[88] = op1_limb_19_col88; - let op1_limb_20_col89 = memory_id_to_big_value_tmp_31b3e_13.get_m31(20); + let op1_limb_20_col89 = memory_id_to_big_value_tmp_48d52_13.get_m31(20); *row[89] = op1_limb_20_col89; - let op1_limb_21_col90 = memory_id_to_big_value_tmp_31b3e_13.get_m31(21); + let op1_limb_21_col90 = memory_id_to_big_value_tmp_48d52_13.get_m31(21); *row[90] = op1_limb_21_col90; - let op1_limb_22_col91 = memory_id_to_big_value_tmp_31b3e_13.get_m31(22); + let op1_limb_22_col91 = memory_id_to_big_value_tmp_48d52_13.get_m31(22); *row[91] = op1_limb_22_col91; - let op1_limb_23_col92 = memory_id_to_big_value_tmp_31b3e_13.get_m31(23); + let op1_limb_23_col92 = memory_id_to_big_value_tmp_48d52_13.get_m31(23); *row[92] = op1_limb_23_col92; - let op1_limb_24_col93 = memory_id_to_big_value_tmp_31b3e_13.get_m31(24); + let op1_limb_24_col93 = memory_id_to_big_value_tmp_48d52_13.get_m31(24); *row[93] = op1_limb_24_col93; - let op1_limb_25_col94 = memory_id_to_big_value_tmp_31b3e_13.get_m31(25); + let op1_limb_25_col94 = memory_id_to_big_value_tmp_48d52_13.get_m31(25); *row[94] = op1_limb_25_col94; - let op1_limb_26_col95 = memory_id_to_big_value_tmp_31b3e_13.get_m31(26); + let op1_limb_26_col95 = memory_id_to_big_value_tmp_48d52_13.get_m31(26); *row[95] = op1_limb_26_col95; - let op1_limb_27_col96 = memory_id_to_big_value_tmp_31b3e_13.get_m31(27); + let op1_limb_27_col96 = memory_id_to_big_value_tmp_48d52_13.get_m31(27); *row[96] = op1_limb_27_col96; for (i, &input) in op1_id_col68.unpack().iter().enumerate() { *sub_components_inputs[i].memory_id_to_big_inputs[2] = input; @@ -635,34 +641,34 @@ fn write_trace_simd( // Verify Mul 252. - let conv_tmp_31b3e_14 = + let conv_tmp_48d52_14 = (((M31_0) - (dst_limb_0_col11)) + ((op0_limb_0_col40) * (op1_limb_0_col69))); - let conv_tmp_31b3e_15 = ((((M31_0) - (dst_limb_1_col12)) + let conv_tmp_48d52_15 = ((((M31_0) - (dst_limb_1_col12)) + ((op0_limb_0_col40) * (op1_limb_1_col70))) + ((op0_limb_1_col41) * (op1_limb_0_col69))); - let conv_tmp_31b3e_16 = (((((M31_0) - (dst_limb_2_col13)) + let conv_tmp_48d52_16 = (((((M31_0) - (dst_limb_2_col13)) + ((op0_limb_0_col40) * (op1_limb_2_col71))) + ((op0_limb_1_col41) * (op1_limb_1_col70))) + ((op0_limb_2_col42) * (op1_limb_0_col69))); - let conv_tmp_31b3e_17 = ((((((M31_0) - (dst_limb_3_col14)) + let conv_tmp_48d52_17 = ((((((M31_0) - (dst_limb_3_col14)) + ((op0_limb_0_col40) * (op1_limb_3_col72))) + ((op0_limb_1_col41) * (op1_limb_2_col71))) + ((op0_limb_2_col42) * (op1_limb_1_col70))) + ((op0_limb_3_col43) * (op1_limb_0_col69))); - let conv_tmp_31b3e_18 = (((((((M31_0) - (dst_limb_4_col15)) + let conv_tmp_48d52_18 = (((((((M31_0) - (dst_limb_4_col15)) + ((op0_limb_0_col40) * (op1_limb_4_col73))) + ((op0_limb_1_col41) * (op1_limb_3_col72))) + ((op0_limb_2_col42) * (op1_limb_2_col71))) + ((op0_limb_3_col43) * (op1_limb_1_col70))) + ((op0_limb_4_col44) * (op1_limb_0_col69))); - let conv_tmp_31b3e_19 = ((((((((M31_0) - (dst_limb_5_col16)) + let conv_tmp_48d52_19 = ((((((((M31_0) - (dst_limb_5_col16)) + ((op0_limb_0_col40) * (op1_limb_5_col74))) + ((op0_limb_1_col41) * (op1_limb_4_col73))) + ((op0_limb_2_col42) * (op1_limb_3_col72))) + ((op0_limb_3_col43) * (op1_limb_2_col71))) + ((op0_limb_4_col44) * (op1_limb_1_col70))) + ((op0_limb_5_col45) * (op1_limb_0_col69))); - let conv_tmp_31b3e_20 = (((((((((M31_0) - (dst_limb_6_col17)) + let conv_tmp_48d52_20 = (((((((((M31_0) - (dst_limb_6_col17)) + ((op0_limb_0_col40) * (op1_limb_6_col75))) + ((op0_limb_1_col41) * (op1_limb_5_col74))) + ((op0_limb_2_col42) * (op1_limb_4_col73))) @@ -670,7 +676,7 @@ fn write_trace_simd( + ((op0_limb_4_col44) * (op1_limb_2_col71))) + ((op0_limb_5_col45) * (op1_limb_1_col70))) + ((op0_limb_6_col46) * (op1_limb_0_col69))); - let conv_tmp_31b3e_21 = ((((((((((M31_0) - (dst_limb_7_col18)) + let conv_tmp_48d52_21 = ((((((((((M31_0) - (dst_limb_7_col18)) + ((op0_limb_0_col40) * (op1_limb_7_col76))) + ((op0_limb_1_col41) * (op1_limb_6_col75))) + ((op0_limb_2_col42) * (op1_limb_5_col74))) @@ -679,7 +685,7 @@ fn write_trace_simd( + ((op0_limb_5_col45) * (op1_limb_2_col71))) + ((op0_limb_6_col46) * (op1_limb_1_col70))) + ((op0_limb_7_col47) * (op1_limb_0_col69))); - let conv_tmp_31b3e_22 = (((((((((((M31_0) - (dst_limb_8_col19)) + let conv_tmp_48d52_22 = (((((((((((M31_0) - (dst_limb_8_col19)) + ((op0_limb_0_col40) * (op1_limb_8_col77))) + ((op0_limb_1_col41) * (op1_limb_7_col76))) + ((op0_limb_2_col42) * (op1_limb_6_col75))) @@ -689,7 +695,7 @@ fn write_trace_simd( + ((op0_limb_6_col46) * (op1_limb_2_col71))) + ((op0_limb_7_col47) * (op1_limb_1_col70))) + ((op0_limb_8_col48) * (op1_limb_0_col69))); - let conv_tmp_31b3e_23 = ((((((((((((M31_0) - (dst_limb_9_col20)) + let conv_tmp_48d52_23 = ((((((((((((M31_0) - (dst_limb_9_col20)) + ((op0_limb_0_col40) * (op1_limb_9_col78))) + ((op0_limb_1_col41) * (op1_limb_8_col77))) + ((op0_limb_2_col42) * (op1_limb_7_col76))) @@ -700,7 +706,7 @@ fn write_trace_simd( + ((op0_limb_7_col47) * (op1_limb_2_col71))) + ((op0_limb_8_col48) * (op1_limb_1_col70))) + ((op0_limb_9_col49) * (op1_limb_0_col69))); - let conv_tmp_31b3e_24 = (((((((((((((M31_0) - (dst_limb_10_col21)) + let conv_tmp_48d52_24 = (((((((((((((M31_0) - (dst_limb_10_col21)) + ((op0_limb_0_col40) * (op1_limb_10_col79))) + ((op0_limb_1_col41) * (op1_limb_9_col78))) + ((op0_limb_2_col42) * (op1_limb_8_col77))) @@ -712,7 +718,7 @@ fn write_trace_simd( + ((op0_limb_8_col48) * (op1_limb_2_col71))) + ((op0_limb_9_col49) * (op1_limb_1_col70))) + ((op0_limb_10_col50) * (op1_limb_0_col69))); - let conv_tmp_31b3e_25 = ((((((((((((((M31_0) - (dst_limb_11_col22)) + let conv_tmp_48d52_25 = ((((((((((((((M31_0) - (dst_limb_11_col22)) + ((op0_limb_0_col40) * (op1_limb_11_col80))) + ((op0_limb_1_col41) * (op1_limb_10_col79))) + ((op0_limb_2_col42) * (op1_limb_9_col78))) @@ -725,7 +731,7 @@ fn write_trace_simd( + ((op0_limb_9_col49) * (op1_limb_2_col71))) + ((op0_limb_10_col50) * (op1_limb_1_col70))) + ((op0_limb_11_col51) * (op1_limb_0_col69))); - let conv_tmp_31b3e_26 = (((((((((((((((M31_0) - (dst_limb_12_col23)) + let conv_tmp_48d52_26 = (((((((((((((((M31_0) - (dst_limb_12_col23)) + ((op0_limb_0_col40) * (op1_limb_12_col81))) + ((op0_limb_1_col41) * (op1_limb_11_col80))) + ((op0_limb_2_col42) * (op1_limb_10_col79))) @@ -739,7 +745,7 @@ fn write_trace_simd( + ((op0_limb_10_col50) * (op1_limb_2_col71))) + ((op0_limb_11_col51) * (op1_limb_1_col70))) + ((op0_limb_12_col52) * (op1_limb_0_col69))); - let conv_tmp_31b3e_27 = ((((((((((((((((M31_0) - (dst_limb_13_col24)) + let conv_tmp_48d52_27 = ((((((((((((((((M31_0) - (dst_limb_13_col24)) + ((op0_limb_0_col40) * (op1_limb_13_col82))) + ((op0_limb_1_col41) * (op1_limb_12_col81))) + ((op0_limb_2_col42) * (op1_limb_11_col80))) @@ -754,7 +760,7 @@ fn write_trace_simd( + ((op0_limb_11_col51) * (op1_limb_2_col71))) + ((op0_limb_12_col52) * (op1_limb_1_col70))) + ((op0_limb_13_col53) * (op1_limb_0_col69))); - let conv_tmp_31b3e_28 = (((((((((((((((((M31_0) + let conv_tmp_48d52_28 = (((((((((((((((((M31_0) - (dst_limb_14_col25)) + ((op0_limb_0_col40) * (op1_limb_14_col83))) + ((op0_limb_1_col41) * (op1_limb_13_col82))) @@ -771,7 +777,7 @@ fn write_trace_simd( + ((op0_limb_12_col52) * (op1_limb_2_col71))) + ((op0_limb_13_col53) * (op1_limb_1_col70))) + ((op0_limb_14_col54) * (op1_limb_0_col69))); - let conv_tmp_31b3e_29 = ((((((((((((((((((M31_0) + let conv_tmp_48d52_29 = ((((((((((((((((((M31_0) - (dst_limb_15_col26)) + ((op0_limb_0_col40) * (op1_limb_15_col84))) + ((op0_limb_1_col41) * (op1_limb_14_col83))) @@ -789,7 +795,7 @@ fn write_trace_simd( + ((op0_limb_13_col53) * (op1_limb_2_col71))) + ((op0_limb_14_col54) * (op1_limb_1_col70))) + ((op0_limb_15_col55) * (op1_limb_0_col69))); - let conv_tmp_31b3e_30 = (((((((((((((((((((M31_0) + let conv_tmp_48d52_30 = (((((((((((((((((((M31_0) - (dst_limb_16_col27)) + ((op0_limb_0_col40) * (op1_limb_16_col85))) + ((op0_limb_1_col41) * (op1_limb_15_col84))) @@ -808,7 +814,7 @@ fn write_trace_simd( + ((op0_limb_14_col54) * (op1_limb_2_col71))) + ((op0_limb_15_col55) * (op1_limb_1_col70))) + ((op0_limb_16_col56) * (op1_limb_0_col69))); - let conv_tmp_31b3e_31 = ((((((((((((((((((((M31_0) + let conv_tmp_48d52_31 = ((((((((((((((((((((M31_0) - (dst_limb_17_col28)) + ((op0_limb_0_col40) * (op1_limb_17_col86))) + ((op0_limb_1_col41) * (op1_limb_16_col85))) @@ -828,7 +834,7 @@ fn write_trace_simd( + ((op0_limb_15_col55) * (op1_limb_2_col71))) + ((op0_limb_16_col56) * (op1_limb_1_col70))) + ((op0_limb_17_col57) * (op1_limb_0_col69))); - let conv_tmp_31b3e_32 = (((((((((((((((((((((M31_0) + let conv_tmp_48d52_32 = (((((((((((((((((((((M31_0) - (dst_limb_18_col29)) + ((op0_limb_0_col40) * (op1_limb_18_col87))) + ((op0_limb_1_col41) * (op1_limb_17_col86))) @@ -849,7 +855,7 @@ fn write_trace_simd( + ((op0_limb_16_col56) * (op1_limb_2_col71))) + ((op0_limb_17_col57) * (op1_limb_1_col70))) + ((op0_limb_18_col58) * (op1_limb_0_col69))); - let conv_tmp_31b3e_33 = ((((((((((((((((((((((M31_0) + let conv_tmp_48d52_33 = ((((((((((((((((((((((M31_0) - (dst_limb_19_col30)) + ((op0_limb_0_col40) * (op1_limb_19_col88))) + ((op0_limb_1_col41) * (op1_limb_18_col87))) @@ -871,7 +877,7 @@ fn write_trace_simd( + ((op0_limb_17_col57) * (op1_limb_2_col71))) + ((op0_limb_18_col58) * (op1_limb_1_col70))) + ((op0_limb_19_col59) * (op1_limb_0_col69))); - let conv_tmp_31b3e_34 = (((((((((((((((((((((((M31_0) + let conv_tmp_48d52_34 = (((((((((((((((((((((((M31_0) - (dst_limb_20_col31)) + ((op0_limb_0_col40) * (op1_limb_20_col89))) + ((op0_limb_1_col41) * (op1_limb_19_col88))) @@ -894,7 +900,7 @@ fn write_trace_simd( + ((op0_limb_18_col58) * (op1_limb_2_col71))) + ((op0_limb_19_col59) * (op1_limb_1_col70))) + ((op0_limb_20_col60) * (op1_limb_0_col69))); - let conv_tmp_31b3e_35 = ((((((((((((((((((((((((M31_0) + let conv_tmp_48d52_35 = ((((((((((((((((((((((((M31_0) - (dst_limb_21_col32)) + ((op0_limb_0_col40) * (op1_limb_21_col90))) + ((op0_limb_1_col41) * (op1_limb_20_col89))) @@ -918,7 +924,7 @@ fn write_trace_simd( + ((op0_limb_19_col59) * (op1_limb_2_col71))) + ((op0_limb_20_col60) * (op1_limb_1_col70))) + ((op0_limb_21_col61) * (op1_limb_0_col69))); - let conv_tmp_31b3e_36 = (((((((((((((((((((((((((M31_0) + let conv_tmp_48d52_36 = (((((((((((((((((((((((((M31_0) - (dst_limb_22_col33)) + ((op0_limb_0_col40) * (op1_limb_22_col91))) + ((op0_limb_1_col41) * (op1_limb_21_col90))) @@ -943,7 +949,7 @@ fn write_trace_simd( + ((op0_limb_20_col60) * (op1_limb_2_col71))) + ((op0_limb_21_col61) * (op1_limb_1_col70))) + ((op0_limb_22_col62) * (op1_limb_0_col69))); - let conv_tmp_31b3e_37 = ((((((((((((((((((((((((((M31_0) + let conv_tmp_48d52_37 = ((((((((((((((((((((((((((M31_0) - (dst_limb_23_col34)) + ((op0_limb_0_col40) * (op1_limb_23_col92))) + ((op0_limb_1_col41) * (op1_limb_22_col91))) @@ -969,7 +975,7 @@ fn write_trace_simd( + ((op0_limb_21_col61) * (op1_limb_2_col71))) + ((op0_limb_22_col62) * (op1_limb_1_col70))) + ((op0_limb_23_col63) * (op1_limb_0_col69))); - let conv_tmp_31b3e_38 = (((((((((((((((((((((((((((M31_0) + let conv_tmp_48d52_38 = (((((((((((((((((((((((((((M31_0) - (dst_limb_24_col35)) + ((op0_limb_0_col40) * (op1_limb_24_col93))) + ((op0_limb_1_col41) * (op1_limb_23_col92))) @@ -996,7 +1002,7 @@ fn write_trace_simd( + ((op0_limb_22_col62) * (op1_limb_2_col71))) + ((op0_limb_23_col63) * (op1_limb_1_col70))) + ((op0_limb_24_col64) * (op1_limb_0_col69))); - let conv_tmp_31b3e_39 = ((((((((((((((((((((((((((((M31_0) + let conv_tmp_48d52_39 = ((((((((((((((((((((((((((((M31_0) - (dst_limb_25_col36)) + ((op0_limb_0_col40) * (op1_limb_25_col94))) + ((op0_limb_1_col41) * (op1_limb_24_col93))) @@ -1024,7 +1030,7 @@ fn write_trace_simd( + ((op0_limb_23_col63) * (op1_limb_2_col71))) + ((op0_limb_24_col64) * (op1_limb_1_col70))) + ((op0_limb_25_col65) * (op1_limb_0_col69))); - let conv_tmp_31b3e_40 = (((((((((((((((((((((((((((((M31_0) + let conv_tmp_48d52_40 = (((((((((((((((((((((((((((((M31_0) - (dst_limb_26_col37)) + ((op0_limb_0_col40) * (op1_limb_26_col95))) + ((op0_limb_1_col41) * (op1_limb_25_col94))) @@ -1053,7 +1059,7 @@ fn write_trace_simd( + ((op0_limb_24_col64) * (op1_limb_2_col71))) + ((op0_limb_25_col65) * (op1_limb_1_col70))) + ((op0_limb_26_col66) * (op1_limb_0_col69))); - let conv_tmp_31b3e_41 = ((((((((((((((((((((((((((((((M31_0) + let conv_tmp_48d52_41 = ((((((((((((((((((((((((((((((M31_0) - (dst_limb_27_col38)) + ((op0_limb_0_col40) * (op1_limb_27_col96))) + ((op0_limb_1_col41) * (op1_limb_26_col95))) @@ -1083,7 +1089,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_2_col71))) + ((op0_limb_26_col66) * (op1_limb_1_col70))) + ((op0_limb_27_col67) * (op1_limb_0_col69))); - let conv_tmp_31b3e_42 = ((((((((((((((((((((((((((((M31_0) + let conv_tmp_48d52_42 = ((((((((((((((((((((((((((((M31_0) + ((op0_limb_1_col41) * (op1_limb_27_col96))) + ((op0_limb_2_col42) * (op1_limb_26_col95))) + ((op0_limb_3_col43) * (op1_limb_25_col94))) @@ -1111,7 +1117,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_3_col72))) + ((op0_limb_26_col66) * (op1_limb_2_col71))) + ((op0_limb_27_col67) * (op1_limb_1_col70))); - let conv_tmp_31b3e_43 = (((((((((((((((((((((((((((M31_0) + let conv_tmp_48d52_43 = (((((((((((((((((((((((((((M31_0) + ((op0_limb_2_col42) * (op1_limb_27_col96))) + ((op0_limb_3_col43) * (op1_limb_26_col95))) + ((op0_limb_4_col44) * (op1_limb_25_col94))) @@ -1138,7 +1144,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_4_col73))) + ((op0_limb_26_col66) * (op1_limb_3_col72))) + ((op0_limb_27_col67) * (op1_limb_2_col71))); - let conv_tmp_31b3e_44 = ((((((((((((((((((((((((((M31_0) + let conv_tmp_48d52_44 = ((((((((((((((((((((((((((M31_0) + ((op0_limb_3_col43) * (op1_limb_27_col96))) + ((op0_limb_4_col44) * (op1_limb_26_col95))) + ((op0_limb_5_col45) * (op1_limb_25_col94))) @@ -1164,7 +1170,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_5_col74))) + ((op0_limb_26_col66) * (op1_limb_4_col73))) + ((op0_limb_27_col67) * (op1_limb_3_col72))); - let conv_tmp_31b3e_45 = (((((((((((((((((((((((((M31_0) + let conv_tmp_48d52_45 = (((((((((((((((((((((((((M31_0) + ((op0_limb_4_col44) * (op1_limb_27_col96))) + ((op0_limb_5_col45) * (op1_limb_26_col95))) + ((op0_limb_6_col46) * (op1_limb_25_col94))) @@ -1189,7 +1195,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_6_col75))) + ((op0_limb_26_col66) * (op1_limb_5_col74))) + ((op0_limb_27_col67) * (op1_limb_4_col73))); - let conv_tmp_31b3e_46 = ((((((((((((((((((((((((M31_0) + let conv_tmp_48d52_46 = ((((((((((((((((((((((((M31_0) + ((op0_limb_5_col45) * (op1_limb_27_col96))) + ((op0_limb_6_col46) * (op1_limb_26_col95))) + ((op0_limb_7_col47) * (op1_limb_25_col94))) @@ -1213,7 +1219,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_7_col76))) + ((op0_limb_26_col66) * (op1_limb_6_col75))) + ((op0_limb_27_col67) * (op1_limb_5_col74))); - let conv_tmp_31b3e_47 = (((((((((((((((((((((((M31_0) + let conv_tmp_48d52_47 = (((((((((((((((((((((((M31_0) + ((op0_limb_6_col46) * (op1_limb_27_col96))) + ((op0_limb_7_col47) * (op1_limb_26_col95))) + ((op0_limb_8_col48) * (op1_limb_25_col94))) @@ -1236,7 +1242,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_8_col77))) + ((op0_limb_26_col66) * (op1_limb_7_col76))) + ((op0_limb_27_col67) * (op1_limb_6_col75))); - let conv_tmp_31b3e_48 = ((((((((((((((((((((((M31_0) + let conv_tmp_48d52_48 = ((((((((((((((((((((((M31_0) + ((op0_limb_7_col47) * (op1_limb_27_col96))) + ((op0_limb_8_col48) * (op1_limb_26_col95))) + ((op0_limb_9_col49) * (op1_limb_25_col94))) @@ -1258,7 +1264,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_9_col78))) + ((op0_limb_26_col66) * (op1_limb_8_col77))) + ((op0_limb_27_col67) * (op1_limb_7_col76))); - let conv_tmp_31b3e_49 = (((((((((((((((((((((M31_0) + let conv_tmp_48d52_49 = (((((((((((((((((((((M31_0) + ((op0_limb_8_col48) * (op1_limb_27_col96))) + ((op0_limb_9_col49) * (op1_limb_26_col95))) + ((op0_limb_10_col50) * (op1_limb_25_col94))) @@ -1279,7 +1285,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_10_col79))) + ((op0_limb_26_col66) * (op1_limb_9_col78))) + ((op0_limb_27_col67) * (op1_limb_8_col77))); - let conv_tmp_31b3e_50 = ((((((((((((((((((((M31_0) + let conv_tmp_48d52_50 = ((((((((((((((((((((M31_0) + ((op0_limb_9_col49) * (op1_limb_27_col96))) + ((op0_limb_10_col50) * (op1_limb_26_col95))) + ((op0_limb_11_col51) * (op1_limb_25_col94))) @@ -1299,7 +1305,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_11_col80))) + ((op0_limb_26_col66) * (op1_limb_10_col79))) + ((op0_limb_27_col67) * (op1_limb_9_col78))); - let conv_tmp_31b3e_51 = (((((((((((((((((((M31_0) + let conv_tmp_48d52_51 = (((((((((((((((((((M31_0) + ((op0_limb_10_col50) * (op1_limb_27_col96))) + ((op0_limb_11_col51) * (op1_limb_26_col95))) + ((op0_limb_12_col52) * (op1_limb_25_col94))) @@ -1318,7 +1324,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_12_col81))) + ((op0_limb_26_col66) * (op1_limb_11_col80))) + ((op0_limb_27_col67) * (op1_limb_10_col79))); - let conv_tmp_31b3e_52 = ((((((((((((((((((M31_0) + let conv_tmp_48d52_52 = ((((((((((((((((((M31_0) + ((op0_limb_11_col51) * (op1_limb_27_col96))) + ((op0_limb_12_col52) * (op1_limb_26_col95))) + ((op0_limb_13_col53) * (op1_limb_25_col94))) @@ -1336,7 +1342,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_13_col82))) + ((op0_limb_26_col66) * (op1_limb_12_col81))) + ((op0_limb_27_col67) * (op1_limb_11_col80))); - let conv_tmp_31b3e_53 = (((((((((((((((((M31_0) + let conv_tmp_48d52_53 = (((((((((((((((((M31_0) + ((op0_limb_12_col52) * (op1_limb_27_col96))) + ((op0_limb_13_col53) * (op1_limb_26_col95))) + ((op0_limb_14_col54) * (op1_limb_25_col94))) @@ -1353,7 +1359,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_14_col83))) + ((op0_limb_26_col66) * (op1_limb_13_col82))) + ((op0_limb_27_col67) * (op1_limb_12_col81))); - let conv_tmp_31b3e_54 = ((((((((((((((((M31_0) + let conv_tmp_48d52_54 = ((((((((((((((((M31_0) + ((op0_limb_13_col53) * (op1_limb_27_col96))) + ((op0_limb_14_col54) * (op1_limb_26_col95))) + ((op0_limb_15_col55) * (op1_limb_25_col94))) @@ -1369,7 +1375,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_15_col84))) + ((op0_limb_26_col66) * (op1_limb_14_col83))) + ((op0_limb_27_col67) * (op1_limb_13_col82))); - let conv_tmp_31b3e_55 = (((((((((((((((M31_0) + let conv_tmp_48d52_55 = (((((((((((((((M31_0) + ((op0_limb_14_col54) * (op1_limb_27_col96))) + ((op0_limb_15_col55) * (op1_limb_26_col95))) + ((op0_limb_16_col56) * (op1_limb_25_col94))) @@ -1384,7 +1390,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_16_col85))) + ((op0_limb_26_col66) * (op1_limb_15_col84))) + ((op0_limb_27_col67) * (op1_limb_14_col83))); - let conv_tmp_31b3e_56 = ((((((((((((((M31_0) + let conv_tmp_48d52_56 = ((((((((((((((M31_0) + ((op0_limb_15_col55) * (op1_limb_27_col96))) + ((op0_limb_16_col56) * (op1_limb_26_col95))) + ((op0_limb_17_col57) * (op1_limb_25_col94))) @@ -1398,7 +1404,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_17_col86))) + ((op0_limb_26_col66) * (op1_limb_16_col85))) + ((op0_limb_27_col67) * (op1_limb_15_col84))); - let conv_tmp_31b3e_57 = (((((((((((((M31_0) + let conv_tmp_48d52_57 = (((((((((((((M31_0) + ((op0_limb_16_col56) * (op1_limb_27_col96))) + ((op0_limb_17_col57) * (op1_limb_26_col95))) + ((op0_limb_18_col58) * (op1_limb_25_col94))) @@ -1411,7 +1417,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_18_col87))) + ((op0_limb_26_col66) * (op1_limb_17_col86))) + ((op0_limb_27_col67) * (op1_limb_16_col85))); - let conv_tmp_31b3e_58 = ((((((((((((M31_0) + let conv_tmp_48d52_58 = ((((((((((((M31_0) + ((op0_limb_17_col57) * (op1_limb_27_col96))) + ((op0_limb_18_col58) * (op1_limb_26_col95))) + ((op0_limb_19_col59) * (op1_limb_25_col94))) @@ -1423,7 +1429,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_19_col88))) + ((op0_limb_26_col66) * (op1_limb_18_col87))) + ((op0_limb_27_col67) * (op1_limb_17_col86))); - let conv_tmp_31b3e_59 = (((((((((((M31_0) + let conv_tmp_48d52_59 = (((((((((((M31_0) + ((op0_limb_18_col58) * (op1_limb_27_col96))) + ((op0_limb_19_col59) * (op1_limb_26_col95))) + ((op0_limb_20_col60) * (op1_limb_25_col94))) @@ -1434,7 +1440,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_20_col89))) + ((op0_limb_26_col66) * (op1_limb_19_col88))) + ((op0_limb_27_col67) * (op1_limb_18_col87))); - let conv_tmp_31b3e_60 = ((((((((((M31_0) + let conv_tmp_48d52_60 = ((((((((((M31_0) + ((op0_limb_19_col59) * (op1_limb_27_col96))) + ((op0_limb_20_col60) * (op1_limb_26_col95))) + ((op0_limb_21_col61) * (op1_limb_25_col94))) @@ -1444,7 +1450,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_21_col90))) + ((op0_limb_26_col66) * (op1_limb_20_col89))) + ((op0_limb_27_col67) * (op1_limb_19_col88))); - let conv_tmp_31b3e_61 = (((((((((M31_0) + let conv_tmp_48d52_61 = (((((((((M31_0) + ((op0_limb_20_col60) * (op1_limb_27_col96))) + ((op0_limb_21_col61) * (op1_limb_26_col95))) + ((op0_limb_22_col62) * (op1_limb_25_col94))) @@ -1453,7 +1459,7 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_22_col91))) + ((op0_limb_26_col66) * (op1_limb_21_col90))) + ((op0_limb_27_col67) * (op1_limb_20_col89))); - let conv_tmp_31b3e_62 = ((((((((M31_0) + let conv_tmp_48d52_62 = ((((((((M31_0) + ((op0_limb_21_col61) * (op1_limb_27_col96))) + ((op0_limb_22_col62) * (op1_limb_26_col95))) + ((op0_limb_23_col63) * (op1_limb_25_col94))) @@ -1461,159 +1467,157 @@ fn write_trace_simd( + ((op0_limb_25_col65) * (op1_limb_23_col92))) + ((op0_limb_26_col66) * (op1_limb_22_col91))) + ((op0_limb_27_col67) * (op1_limb_21_col90))); - let conv_tmp_31b3e_63 = (((((((M31_0) + let conv_tmp_48d52_63 = (((((((M31_0) + ((op0_limb_22_col62) * (op1_limb_27_col96))) + ((op0_limb_23_col63) * (op1_limb_26_col95))) + ((op0_limb_24_col64) * (op1_limb_25_col94))) + ((op0_limb_25_col65) * (op1_limb_24_col93))) + ((op0_limb_26_col66) * (op1_limb_23_col92))) + ((op0_limb_27_col67) * (op1_limb_22_col91))); - let conv_tmp_31b3e_64 = ((((((M31_0) + let conv_tmp_48d52_64 = ((((((M31_0) + ((op0_limb_23_col63) * (op1_limb_27_col96))) + ((op0_limb_24_col64) * (op1_limb_26_col95))) + ((op0_limb_25_col65) * (op1_limb_25_col94))) + ((op0_limb_26_col66) * (op1_limb_24_col93))) + ((op0_limb_27_col67) * (op1_limb_23_col92))); - let conv_tmp_31b3e_65 = (((((M31_0) + let conv_tmp_48d52_65 = (((((M31_0) + ((op0_limb_24_col64) * (op1_limb_27_col96))) + ((op0_limb_25_col65) * (op1_limb_26_col95))) + ((op0_limb_26_col66) * (op1_limb_25_col94))) + ((op0_limb_27_col67) * (op1_limb_24_col93))); - let conv_tmp_31b3e_66 = ((((M31_0) + ((op0_limb_25_col65) * (op1_limb_27_col96))) + let conv_tmp_48d52_66 = ((((M31_0) + ((op0_limb_25_col65) * (op1_limb_27_col96))) + ((op0_limb_26_col66) * (op1_limb_26_col95))) + ((op0_limb_27_col67) * (op1_limb_25_col94))); - let conv_tmp_31b3e_67 = (((M31_0) + ((op0_limb_26_col66) * (op1_limb_27_col96))) + let conv_tmp_48d52_67 = (((M31_0) + ((op0_limb_26_col66) * (op1_limb_27_col96))) + ((op0_limb_27_col67) * (op1_limb_26_col95))); - let conv_tmp_31b3e_68 = ((M31_0) + ((op0_limb_27_col67) * (op1_limb_27_col96))); - let conv_mod_tmp_31b3e_69 = ((((M31_0) + ((M31_32) * (conv_tmp_31b3e_14))) - - ((M31_4) * (conv_tmp_31b3e_35))) - + ((M31_8) * (conv_tmp_31b3e_63))); - let conv_mod_tmp_31b3e_70 = (((((M31_0) + ((M31_1) * (conv_tmp_31b3e_14))) - + ((M31_32) * (conv_tmp_31b3e_15))) - - ((M31_4) * (conv_tmp_31b3e_36))) - + ((M31_8) * (conv_tmp_31b3e_64))); - let conv_mod_tmp_31b3e_71 = (((((M31_0) + ((M31_1) * (conv_tmp_31b3e_15))) - + ((M31_32) * (conv_tmp_31b3e_16))) - - ((M31_4) * (conv_tmp_31b3e_37))) - + ((M31_8) * (conv_tmp_31b3e_65))); - let conv_mod_tmp_31b3e_72 = (((((M31_0) + ((M31_1) * (conv_tmp_31b3e_16))) - + ((M31_32) * (conv_tmp_31b3e_17))) - - ((M31_4) * (conv_tmp_31b3e_38))) - + ((M31_8) * (conv_tmp_31b3e_66))); - let conv_mod_tmp_31b3e_73 = (((((M31_0) + ((M31_1) * (conv_tmp_31b3e_17))) - + ((M31_32) * (conv_tmp_31b3e_18))) - - ((M31_4) * (conv_tmp_31b3e_39))) - + ((M31_8) * (conv_tmp_31b3e_67))); - let conv_mod_tmp_31b3e_74 = (((((M31_0) + ((M31_1) * (conv_tmp_31b3e_18))) - + ((M31_32) * (conv_tmp_31b3e_19))) - - ((M31_4) * (conv_tmp_31b3e_40))) - + ((M31_8) * (conv_tmp_31b3e_68))); - let conv_mod_tmp_31b3e_75 = ((((M31_0) + ((M31_1) * (conv_tmp_31b3e_19))) - + ((M31_32) * (conv_tmp_31b3e_20))) - - ((M31_4) * (conv_tmp_31b3e_41))); - let conv_mod_tmp_31b3e_76 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_14))) - + ((M31_1) * (conv_tmp_31b3e_20))) - + ((M31_32) * (conv_tmp_31b3e_21))) - - ((M31_4) * (conv_tmp_31b3e_42))); - let conv_mod_tmp_31b3e_77 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_15))) - + ((M31_1) * (conv_tmp_31b3e_21))) - + ((M31_32) * (conv_tmp_31b3e_22))) - - ((M31_4) * (conv_tmp_31b3e_43))); - let conv_mod_tmp_31b3e_78 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_16))) - + ((M31_1) * (conv_tmp_31b3e_22))) - + ((M31_32) * (conv_tmp_31b3e_23))) - - ((M31_4) * (conv_tmp_31b3e_44))); - let conv_mod_tmp_31b3e_79 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_17))) - + ((M31_1) * (conv_tmp_31b3e_23))) - + ((M31_32) * (conv_tmp_31b3e_24))) - - ((M31_4) * (conv_tmp_31b3e_45))); - let conv_mod_tmp_31b3e_80 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_18))) - + ((M31_1) * (conv_tmp_31b3e_24))) - + ((M31_32) * (conv_tmp_31b3e_25))) - - ((M31_4) * (conv_tmp_31b3e_46))); - let conv_mod_tmp_31b3e_81 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_19))) - + ((M31_1) * (conv_tmp_31b3e_25))) - + ((M31_32) * (conv_tmp_31b3e_26))) - - ((M31_4) * (conv_tmp_31b3e_47))); - let conv_mod_tmp_31b3e_82 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_20))) - + ((M31_1) * (conv_tmp_31b3e_26))) - + ((M31_32) * (conv_tmp_31b3e_27))) - - ((M31_4) * (conv_tmp_31b3e_48))); - let conv_mod_tmp_31b3e_83 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_21))) - + ((M31_1) * (conv_tmp_31b3e_27))) - + ((M31_32) * (conv_tmp_31b3e_28))) - - ((M31_4) * (conv_tmp_31b3e_49))); - let conv_mod_tmp_31b3e_84 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_22))) - + ((M31_1) * (conv_tmp_31b3e_28))) - + ((M31_32) * (conv_tmp_31b3e_29))) - - ((M31_4) * (conv_tmp_31b3e_50))); - let conv_mod_tmp_31b3e_85 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_23))) - + ((M31_1) * (conv_tmp_31b3e_29))) - + ((M31_32) * (conv_tmp_31b3e_30))) - - ((M31_4) * (conv_tmp_31b3e_51))); - let conv_mod_tmp_31b3e_86 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_24))) - + ((M31_1) * (conv_tmp_31b3e_30))) - + ((M31_32) * (conv_tmp_31b3e_31))) - - ((M31_4) * (conv_tmp_31b3e_52))); - let conv_mod_tmp_31b3e_87 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_25))) - + ((M31_1) * (conv_tmp_31b3e_31))) - + ((M31_32) * (conv_tmp_31b3e_32))) - - ((M31_4) * (conv_tmp_31b3e_53))); - let conv_mod_tmp_31b3e_88 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_26))) - + ((M31_1) * (conv_tmp_31b3e_32))) - + ((M31_32) * (conv_tmp_31b3e_33))) - - ((M31_4) * (conv_tmp_31b3e_54))); - let conv_mod_tmp_31b3e_89 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_27))) - + ((M31_1) * (conv_tmp_31b3e_33))) - + ((M31_32) * (conv_tmp_31b3e_34))) - - ((M31_4) * (conv_tmp_31b3e_55))); - let conv_mod_tmp_31b3e_90 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_28))) - + ((M31_1) * (conv_tmp_31b3e_34))) - - ((M31_4) * (conv_tmp_31b3e_56))) - + ((M31_64) * (conv_tmp_31b3e_63))); - let conv_mod_tmp_31b3e_91 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_29))) - - ((M31_4) * (conv_tmp_31b3e_57))) - + ((M31_2) * (conv_tmp_31b3e_63))) - + ((M31_64) * (conv_tmp_31b3e_64))); - let conv_mod_tmp_31b3e_92 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_30))) - - ((M31_4) * (conv_tmp_31b3e_58))) - + ((M31_2) * (conv_tmp_31b3e_64))) - + ((M31_64) * (conv_tmp_31b3e_65))); - let conv_mod_tmp_31b3e_93 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_31))) - - ((M31_4) * (conv_tmp_31b3e_59))) - + ((M31_2) * (conv_tmp_31b3e_65))) - + ((M31_64) * (conv_tmp_31b3e_66))); - let conv_mod_tmp_31b3e_94 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_32))) - - ((M31_4) * (conv_tmp_31b3e_60))) - + ((M31_2) * (conv_tmp_31b3e_66))) - + ((M31_64) * (conv_tmp_31b3e_67))); - let conv_mod_tmp_31b3e_95 = (((((M31_0) + ((M31_2) * (conv_tmp_31b3e_33))) - - ((M31_4) * (conv_tmp_31b3e_61))) - + ((M31_2) * (conv_tmp_31b3e_67))) - + ((M31_64) * (conv_tmp_31b3e_68))); - let conv_mod_tmp_31b3e_96 = ((((M31_0) + ((M31_2) * (conv_tmp_31b3e_34))) - - ((M31_4) * (conv_tmp_31b3e_62))) - + ((M31_2) * (conv_tmp_31b3e_68))); - let k_mod_2_18_biased_tmp_31b3e_97 = - ((((PackedUInt32::from_m31(((conv_mod_tmp_31b3e_69) + (M31_134217728)))) + let conv_tmp_48d52_68 = ((M31_0) + ((op0_limb_27_col67) * (op1_limb_27_col96))); + let conv_mod_tmp_48d52_69 = ((((M31_0) + ((M31_32) * (conv_tmp_48d52_14))) + - ((M31_4) * (conv_tmp_48d52_35))) + + ((M31_8) * (conv_tmp_48d52_63))); + let conv_mod_tmp_48d52_70 = (((((M31_0) + ((M31_1) * (conv_tmp_48d52_14))) + + ((M31_32) * (conv_tmp_48d52_15))) + - ((M31_4) * (conv_tmp_48d52_36))) + + ((M31_8) * (conv_tmp_48d52_64))); + let conv_mod_tmp_48d52_71 = (((((M31_0) + ((M31_1) * (conv_tmp_48d52_15))) + + ((M31_32) * (conv_tmp_48d52_16))) + - ((M31_4) * (conv_tmp_48d52_37))) + + ((M31_8) * (conv_tmp_48d52_65))); + let conv_mod_tmp_48d52_72 = (((((M31_0) + ((M31_1) * (conv_tmp_48d52_16))) + + ((M31_32) * (conv_tmp_48d52_17))) + - ((M31_4) * (conv_tmp_48d52_38))) + + ((M31_8) * (conv_tmp_48d52_66))); + let conv_mod_tmp_48d52_73 = (((((M31_0) + ((M31_1) * (conv_tmp_48d52_17))) + + ((M31_32) * (conv_tmp_48d52_18))) + - ((M31_4) * (conv_tmp_48d52_39))) + + ((M31_8) * (conv_tmp_48d52_67))); + let conv_mod_tmp_48d52_74 = (((((M31_0) + ((M31_1) * (conv_tmp_48d52_18))) + + ((M31_32) * (conv_tmp_48d52_19))) + - ((M31_4) * (conv_tmp_48d52_40))) + + ((M31_8) * (conv_tmp_48d52_68))); + let conv_mod_tmp_48d52_75 = ((((M31_0) + ((M31_1) * (conv_tmp_48d52_19))) + + ((M31_32) * (conv_tmp_48d52_20))) + - ((M31_4) * (conv_tmp_48d52_41))); + let conv_mod_tmp_48d52_76 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_14))) + + ((M31_1) * (conv_tmp_48d52_20))) + + ((M31_32) * (conv_tmp_48d52_21))) + - ((M31_4) * (conv_tmp_48d52_42))); + let conv_mod_tmp_48d52_77 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_15))) + + ((M31_1) * (conv_tmp_48d52_21))) + + ((M31_32) * (conv_tmp_48d52_22))) + - ((M31_4) * (conv_tmp_48d52_43))); + let conv_mod_tmp_48d52_78 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_16))) + + ((M31_1) * (conv_tmp_48d52_22))) + + ((M31_32) * (conv_tmp_48d52_23))) + - ((M31_4) * (conv_tmp_48d52_44))); + let conv_mod_tmp_48d52_79 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_17))) + + ((M31_1) * (conv_tmp_48d52_23))) + + ((M31_32) * (conv_tmp_48d52_24))) + - ((M31_4) * (conv_tmp_48d52_45))); + let conv_mod_tmp_48d52_80 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_18))) + + ((M31_1) * (conv_tmp_48d52_24))) + + ((M31_32) * (conv_tmp_48d52_25))) + - ((M31_4) * (conv_tmp_48d52_46))); + let conv_mod_tmp_48d52_81 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_19))) + + ((M31_1) * (conv_tmp_48d52_25))) + + ((M31_32) * (conv_tmp_48d52_26))) + - ((M31_4) * (conv_tmp_48d52_47))); + let conv_mod_tmp_48d52_82 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_20))) + + ((M31_1) * (conv_tmp_48d52_26))) + + ((M31_32) * (conv_tmp_48d52_27))) + - ((M31_4) * (conv_tmp_48d52_48))); + let conv_mod_tmp_48d52_83 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_21))) + + ((M31_1) * (conv_tmp_48d52_27))) + + ((M31_32) * (conv_tmp_48d52_28))) + - ((M31_4) * (conv_tmp_48d52_49))); + let conv_mod_tmp_48d52_84 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_22))) + + ((M31_1) * (conv_tmp_48d52_28))) + + ((M31_32) * (conv_tmp_48d52_29))) + - ((M31_4) * (conv_tmp_48d52_50))); + let conv_mod_tmp_48d52_85 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_23))) + + ((M31_1) * (conv_tmp_48d52_29))) + + ((M31_32) * (conv_tmp_48d52_30))) + - ((M31_4) * (conv_tmp_48d52_51))); + let conv_mod_tmp_48d52_86 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_24))) + + ((M31_1) * (conv_tmp_48d52_30))) + + ((M31_32) * (conv_tmp_48d52_31))) + - ((M31_4) * (conv_tmp_48d52_52))); + let conv_mod_tmp_48d52_87 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_25))) + + ((M31_1) * (conv_tmp_48d52_31))) + + ((M31_32) * (conv_tmp_48d52_32))) + - ((M31_4) * (conv_tmp_48d52_53))); + let conv_mod_tmp_48d52_88 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_26))) + + ((M31_1) * (conv_tmp_48d52_32))) + + ((M31_32) * (conv_tmp_48d52_33))) + - ((M31_4) * (conv_tmp_48d52_54))); + let conv_mod_tmp_48d52_89 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_27))) + + ((M31_1) * (conv_tmp_48d52_33))) + + ((M31_32) * (conv_tmp_48d52_34))) + - ((M31_4) * (conv_tmp_48d52_55))); + let conv_mod_tmp_48d52_90 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_28))) + + ((M31_1) * (conv_tmp_48d52_34))) + - ((M31_4) * (conv_tmp_48d52_56))) + + ((M31_64) * (conv_tmp_48d52_63))); + let conv_mod_tmp_48d52_91 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_29))) + - ((M31_4) * (conv_tmp_48d52_57))) + + ((M31_2) * (conv_tmp_48d52_63))) + + ((M31_64) * (conv_tmp_48d52_64))); + let conv_mod_tmp_48d52_92 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_30))) + - ((M31_4) * (conv_tmp_48d52_58))) + + ((M31_2) * (conv_tmp_48d52_64))) + + ((M31_64) * (conv_tmp_48d52_65))); + let conv_mod_tmp_48d52_93 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_31))) + - ((M31_4) * (conv_tmp_48d52_59))) + + ((M31_2) * (conv_tmp_48d52_65))) + + ((M31_64) * (conv_tmp_48d52_66))); + let conv_mod_tmp_48d52_94 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_32))) + - ((M31_4) * (conv_tmp_48d52_60))) + + ((M31_2) * (conv_tmp_48d52_66))) + + ((M31_64) * (conv_tmp_48d52_67))); + let conv_mod_tmp_48d52_95 = (((((M31_0) + ((M31_2) * (conv_tmp_48d52_33))) + - ((M31_4) * (conv_tmp_48d52_61))) + + ((M31_2) * (conv_tmp_48d52_67))) + + ((M31_64) * (conv_tmp_48d52_68))); + let conv_mod_tmp_48d52_96 = ((((M31_0) + ((M31_2) * (conv_tmp_48d52_34))) + - ((M31_4) * (conv_tmp_48d52_62))) + + ((M31_2) * (conv_tmp_48d52_68))); + let k_mod_2_18_biased_tmp_48d52_97 = + ((((PackedUInt32::from_m31(((conv_mod_tmp_48d52_69) + (M31_134217728)))) + (((PackedUInt32::from_m31( - ((conv_mod_tmp_31b3e_70) + (M31_134217728)), + ((conv_mod_tmp_48d52_70) + (M31_134217728)), )) & (UInt32_511)) << (UInt32_9))) + (UInt32_65536)) & (UInt32_262143)); - let k_col97 = ((k_mod_2_18_biased_tmp_31b3e_97.low().as_m31()) - + (((k_mod_2_18_biased_tmp_31b3e_97.high().as_m31()) - (M31_1)) * (M31_65536))); + let k_col97 = ((k_mod_2_18_biased_tmp_48d52_97.low().as_m31()) + + (((k_mod_2_18_biased_tmp_48d52_97.high().as_m31()) - (M31_1)) * (M31_65536))); *row[97] = k_col97; - for (i, &input) in [((k_col97) + (M31_262144))].unpack().iter().enumerate() { *sub_components_inputs[i].range_check_19_inputs[0] = input; } *lookup_data.range_check_19_0 = [((k_col97) + (M31_262144))]; let carry_0_col98 = - ((((conv_mod_tmp_31b3e_69) - ((M31_1) * (k_col97))) + (M31_0)) * (M31_4194304)); + ((((conv_mod_tmp_48d52_69) - ((M31_1) * (k_col97))) + (M31_0)) * (M31_4194304)); *row[98] = carry_0_col98; - for (i, &input) in [((carry_0_col98) + (M31_131072))] .unpack() .iter() @@ -1622,9 +1626,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[1] = input; } *lookup_data.range_check_19_1 = [((carry_0_col98) + (M31_131072))]; - let carry_1_col99 = (((conv_mod_tmp_31b3e_70) + (carry_0_col98)) * (M31_4194304)); + let carry_1_col99 = (((conv_mod_tmp_48d52_70) + (carry_0_col98)) * (M31_4194304)); *row[99] = carry_1_col99; - for (i, &input) in [((carry_1_col99) + (M31_131072))] .unpack() .iter() @@ -1633,9 +1636,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[2] = input; } *lookup_data.range_check_19_2 = [((carry_1_col99) + (M31_131072))]; - let carry_2_col100 = (((conv_mod_tmp_31b3e_71) + (carry_1_col99)) * (M31_4194304)); + let carry_2_col100 = (((conv_mod_tmp_48d52_71) + (carry_1_col99)) * (M31_4194304)); *row[100] = carry_2_col100; - for (i, &input) in [((carry_2_col100) + (M31_131072))] .unpack() .iter() @@ -1644,9 +1646,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[3] = input; } *lookup_data.range_check_19_3 = [((carry_2_col100) + (M31_131072))]; - let carry_3_col101 = (((conv_mod_tmp_31b3e_72) + (carry_2_col100)) * (M31_4194304)); + let carry_3_col101 = (((conv_mod_tmp_48d52_72) + (carry_2_col100)) * (M31_4194304)); *row[101] = carry_3_col101; - for (i, &input) in [((carry_3_col101) + (M31_131072))] .unpack() .iter() @@ -1655,9 +1656,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[4] = input; } *lookup_data.range_check_19_4 = [((carry_3_col101) + (M31_131072))]; - let carry_4_col102 = (((conv_mod_tmp_31b3e_73) + (carry_3_col101)) * (M31_4194304)); + let carry_4_col102 = (((conv_mod_tmp_48d52_73) + (carry_3_col101)) * (M31_4194304)); *row[102] = carry_4_col102; - for (i, &input) in [((carry_4_col102) + (M31_131072))] .unpack() .iter() @@ -1666,9 +1666,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[5] = input; } *lookup_data.range_check_19_5 = [((carry_4_col102) + (M31_131072))]; - let carry_5_col103 = (((conv_mod_tmp_31b3e_74) + (carry_4_col102)) * (M31_4194304)); + let carry_5_col103 = (((conv_mod_tmp_48d52_74) + (carry_4_col102)) * (M31_4194304)); *row[103] = carry_5_col103; - for (i, &input) in [((carry_5_col103) + (M31_131072))] .unpack() .iter() @@ -1677,9 +1676,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[6] = input; } *lookup_data.range_check_19_6 = [((carry_5_col103) + (M31_131072))]; - let carry_6_col104 = (((conv_mod_tmp_31b3e_75) + (carry_5_col103)) * (M31_4194304)); + let carry_6_col104 = (((conv_mod_tmp_48d52_75) + (carry_5_col103)) * (M31_4194304)); *row[104] = carry_6_col104; - for (i, &input) in [((carry_6_col104) + (M31_131072))] .unpack() .iter() @@ -1688,9 +1686,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[7] = input; } *lookup_data.range_check_19_7 = [((carry_6_col104) + (M31_131072))]; - let carry_7_col105 = (((conv_mod_tmp_31b3e_76) + (carry_6_col104)) * (M31_4194304)); + let carry_7_col105 = (((conv_mod_tmp_48d52_76) + (carry_6_col104)) * (M31_4194304)); *row[105] = carry_7_col105; - for (i, &input) in [((carry_7_col105) + (M31_131072))] .unpack() .iter() @@ -1699,9 +1696,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[8] = input; } *lookup_data.range_check_19_8 = [((carry_7_col105) + (M31_131072))]; - let carry_8_col106 = (((conv_mod_tmp_31b3e_77) + (carry_7_col105)) * (M31_4194304)); + let carry_8_col106 = (((conv_mod_tmp_48d52_77) + (carry_7_col105)) * (M31_4194304)); *row[106] = carry_8_col106; - for (i, &input) in [((carry_8_col106) + (M31_131072))] .unpack() .iter() @@ -1710,9 +1706,8 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[9] = input; } *lookup_data.range_check_19_9 = [((carry_8_col106) + (M31_131072))]; - let carry_9_col107 = (((conv_mod_tmp_31b3e_78) + (carry_8_col106)) * (M31_4194304)); + let carry_9_col107 = (((conv_mod_tmp_48d52_78) + (carry_8_col106)) * (M31_4194304)); *row[107] = carry_9_col107; - for (i, &input) in [((carry_9_col107) + (M31_131072))] .unpack() .iter() @@ -1722,9 +1717,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_10 = [((carry_9_col107) + (M31_131072))]; let carry_10_col108 = - (((conv_mod_tmp_31b3e_79) + (carry_9_col107)) * (M31_4194304)); + (((conv_mod_tmp_48d52_79) + (carry_9_col107)) * (M31_4194304)); *row[108] = carry_10_col108; - for (i, &input) in [((carry_10_col108) + (M31_131072))] .unpack() .iter() @@ -1734,9 +1728,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_11 = [((carry_10_col108) + (M31_131072))]; let carry_11_col109 = - (((conv_mod_tmp_31b3e_80) + (carry_10_col108)) * (M31_4194304)); + (((conv_mod_tmp_48d52_80) + (carry_10_col108)) * (M31_4194304)); *row[109] = carry_11_col109; - for (i, &input) in [((carry_11_col109) + (M31_131072))] .unpack() .iter() @@ -1746,9 +1739,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_12 = [((carry_11_col109) + (M31_131072))]; let carry_12_col110 = - (((conv_mod_tmp_31b3e_81) + (carry_11_col109)) * (M31_4194304)); + (((conv_mod_tmp_48d52_81) + (carry_11_col109)) * (M31_4194304)); *row[110] = carry_12_col110; - for (i, &input) in [((carry_12_col110) + (M31_131072))] .unpack() .iter() @@ -1758,9 +1750,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_13 = [((carry_12_col110) + (M31_131072))]; let carry_13_col111 = - (((conv_mod_tmp_31b3e_82) + (carry_12_col110)) * (M31_4194304)); + (((conv_mod_tmp_48d52_82) + (carry_12_col110)) * (M31_4194304)); *row[111] = carry_13_col111; - for (i, &input) in [((carry_13_col111) + (M31_131072))] .unpack() .iter() @@ -1770,9 +1761,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_14 = [((carry_13_col111) + (M31_131072))]; let carry_14_col112 = - (((conv_mod_tmp_31b3e_83) + (carry_13_col111)) * (M31_4194304)); + (((conv_mod_tmp_48d52_83) + (carry_13_col111)) * (M31_4194304)); *row[112] = carry_14_col112; - for (i, &input) in [((carry_14_col112) + (M31_131072))] .unpack() .iter() @@ -1782,9 +1772,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_15 = [((carry_14_col112) + (M31_131072))]; let carry_15_col113 = - (((conv_mod_tmp_31b3e_84) + (carry_14_col112)) * (M31_4194304)); + (((conv_mod_tmp_48d52_84) + (carry_14_col112)) * (M31_4194304)); *row[113] = carry_15_col113; - for (i, &input) in [((carry_15_col113) + (M31_131072))] .unpack() .iter() @@ -1794,9 +1783,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_16 = [((carry_15_col113) + (M31_131072))]; let carry_16_col114 = - (((conv_mod_tmp_31b3e_85) + (carry_15_col113)) * (M31_4194304)); + (((conv_mod_tmp_48d52_85) + (carry_15_col113)) * (M31_4194304)); *row[114] = carry_16_col114; - for (i, &input) in [((carry_16_col114) + (M31_131072))] .unpack() .iter() @@ -1806,9 +1794,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_17 = [((carry_16_col114) + (M31_131072))]; let carry_17_col115 = - (((conv_mod_tmp_31b3e_86) + (carry_16_col114)) * (M31_4194304)); + (((conv_mod_tmp_48d52_86) + (carry_16_col114)) * (M31_4194304)); *row[115] = carry_17_col115; - for (i, &input) in [((carry_17_col115) + (M31_131072))] .unpack() .iter() @@ -1818,9 +1805,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_18 = [((carry_17_col115) + (M31_131072))]; let carry_18_col116 = - (((conv_mod_tmp_31b3e_87) + (carry_17_col115)) * (M31_4194304)); + (((conv_mod_tmp_48d52_87) + (carry_17_col115)) * (M31_4194304)); *row[116] = carry_18_col116; - for (i, &input) in [((carry_18_col116) + (M31_131072))] .unpack() .iter() @@ -1830,9 +1816,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_19 = [((carry_18_col116) + (M31_131072))]; let carry_19_col117 = - (((conv_mod_tmp_31b3e_88) + (carry_18_col116)) * (M31_4194304)); + (((conv_mod_tmp_48d52_88) + (carry_18_col116)) * (M31_4194304)); *row[117] = carry_19_col117; - for (i, &input) in [((carry_19_col117) + (M31_131072))] .unpack() .iter() @@ -1842,9 +1827,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_20 = [((carry_19_col117) + (M31_131072))]; let carry_20_col118 = - (((conv_mod_tmp_31b3e_89) + (carry_19_col117)) * (M31_4194304)); + (((conv_mod_tmp_48d52_89) + (carry_19_col117)) * (M31_4194304)); *row[118] = carry_20_col118; - for (i, &input) in [((carry_20_col118) + (M31_131072))] .unpack() .iter() @@ -1853,11 +1837,10 @@ fn write_trace_simd( *sub_components_inputs[i].range_check_19_inputs[21] = input; } *lookup_data.range_check_19_21 = [((carry_20_col118) + (M31_131072))]; - let carry_21_col119 = ((((conv_mod_tmp_31b3e_90) - ((M31_136) * (k_col97))) + let carry_21_col119 = ((((conv_mod_tmp_48d52_90) - ((M31_136) * (k_col97))) + (carry_20_col118)) * (M31_4194304)); *row[119] = carry_21_col119; - for (i, &input) in [((carry_21_col119) + (M31_131072))] .unpack() .iter() @@ -1867,9 +1850,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_22 = [((carry_21_col119) + (M31_131072))]; let carry_22_col120 = - (((conv_mod_tmp_31b3e_91) + (carry_21_col119)) * (M31_4194304)); + (((conv_mod_tmp_48d52_91) + (carry_21_col119)) * (M31_4194304)); *row[120] = carry_22_col120; - for (i, &input) in [((carry_22_col120) + (M31_131072))] .unpack() .iter() @@ -1879,9 +1861,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_23 = [((carry_22_col120) + (M31_131072))]; let carry_23_col121 = - (((conv_mod_tmp_31b3e_92) + (carry_22_col120)) * (M31_4194304)); + (((conv_mod_tmp_48d52_92) + (carry_22_col120)) * (M31_4194304)); *row[121] = carry_23_col121; - for (i, &input) in [((carry_23_col121) + (M31_131072))] .unpack() .iter() @@ -1891,9 +1872,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_24 = [((carry_23_col121) + (M31_131072))]; let carry_24_col122 = - (((conv_mod_tmp_31b3e_93) + (carry_23_col121)) * (M31_4194304)); + (((conv_mod_tmp_48d52_93) + (carry_23_col121)) * (M31_4194304)); *row[122] = carry_24_col122; - for (i, &input) in [((carry_24_col122) + (M31_131072))] .unpack() .iter() @@ -1903,9 +1883,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_25 = [((carry_24_col122) + (M31_131072))]; let carry_25_col123 = - (((conv_mod_tmp_31b3e_94) + (carry_24_col122)) * (M31_4194304)); + (((conv_mod_tmp_48d52_94) + (carry_24_col122)) * (M31_4194304)); *row[123] = carry_25_col123; - for (i, &input) in [((carry_25_col123) + (M31_131072))] .unpack() .iter() @@ -1915,9 +1894,8 @@ fn write_trace_simd( } *lookup_data.range_check_19_26 = [((carry_25_col123) + (M31_131072))]; let carry_26_col124 = - (((conv_mod_tmp_31b3e_95) + (carry_25_col123)) * (M31_4194304)); + (((conv_mod_tmp_48d52_95) + (carry_25_col123)) * (M31_4194304)); *row[124] = carry_26_col124; - for (i, &input) in [((carry_26_col124) + (M31_131072))] .unpack() .iter() diff --git a/stwo_cairo_prover/crates/prover/src/input/state_transitions.rs b/stwo_cairo_prover/crates/prover/src/input/state_transitions.rs index 68d6d223..c2c6135d 100644 --- a/stwo_cairo_prover/crates/prover/src/input/state_transitions.rs +++ b/stwo_cairo_prover/crates/prover/src/input/state_transitions.rs @@ -44,10 +44,10 @@ pub struct CasmStatesByOpcode { pub jump_opcode_rel: Vec, pub jump_opcode_double_deref: Vec, pub jump_opcode: Vec, - pub mul_opcode_is_small_t_is_imm_t: Vec, - pub mul_opcode_is_small_t_is_imm_f: Vec, - pub mul_opcode_is_small_f_is_imm_f: Vec, - pub mul_opcode_is_small_f_is_imm_t: Vec, + pub mul_opcode_small_imm: Vec, + pub mul_opcode_small: Vec, + pub mul_opcode: Vec, + pub mul_opcode_imm: Vec, pub ret_opcode: Vec, } @@ -91,22 +91,10 @@ impl CasmStatesByOpcode { self.jump_opcode_double_deref.len(), ), ("jump_opcode", self.jump_opcode.len()), - ( - "mul_opcode_is_small_t_is_imm_t", - self.mul_opcode_is_small_t_is_imm_t.len(), - ), - ( - "mul_opcode_is_small_t_is_imm_f", - self.mul_opcode_is_small_t_is_imm_f.len(), - ), - ( - "mul_opcode_is_small_f_is_imm_f", - self.mul_opcode_is_small_f_is_imm_f.len(), - ), - ( - "mul_opcode_is_small_f_is_imm_t", - self.mul_opcode_is_small_f_is_imm_t.len(), - ), + ("mul_opcode_small_imm", self.mul_opcode_small_imm.len()), + ("mul_opcode_small", self.mul_opcode_small.len()), + ("mul_opcode", self.mul_opcode.len()), + ("mul_opcode_imm", self.mul_opcode_imm.len()), ("ret_opcode", self.ret_opcode.len()), ] } @@ -483,34 +471,22 @@ impl StateTransitions { assert!(!op_1_base_fp && !op_1_base_ap && offset2 == 1); // TODO(Ohad): remove when mul small is implemented. if dev_mode { - self.casm_states_by_opcode - .mul_opcode_is_small_f_is_imm_t - .push(state); + self.casm_states_by_opcode.mul_opcode_imm.push(state); } else if is_small_mul(op0, op_1) { - self.casm_states_by_opcode - .mul_opcode_is_small_t_is_imm_t - .push(state); + self.casm_states_by_opcode.mul_opcode_small_imm.push(state); } else { - self.casm_states_by_opcode - .mul_opcode_is_small_f_is_imm_t - .push(state); + self.casm_states_by_opcode.mul_opcode_imm.push(state); }; } else { // [ap/fp + offset0] = [ap/fp + offset1] * [ap/fp + offset2]. assert!((op_1_base_fp || op_1_base_ap)); // TODO(Ohad): remove when mul small is implemented. if dev_mode { - self.casm_states_by_opcode - .mul_opcode_is_small_f_is_imm_f - .push(state); + self.casm_states_by_opcode.mul_opcode.push(state); } else if is_small_mul(op0, op_1) { - self.casm_states_by_opcode - .mul_opcode_is_small_t_is_imm_f - .push(state); + self.casm_states_by_opcode.mul_opcode_small.push(state); } else { - self.casm_states_by_opcode - .mul_opcode_is_small_f_is_imm_f - .push(state); + self.casm_states_by_opcode.mul_opcode.push(state); } } } @@ -826,14 +802,8 @@ mod mappings_tests { let input = input_from_plain_casm(instructions, false); let casm_states_by_opcode = input.state_transitions.casm_states_by_opcode; - assert_eq!( - casm_states_by_opcode.mul_opcode_is_small_t_is_imm_f.len(), - 1 - ); - assert_eq!( - casm_states_by_opcode.mul_opcode_is_small_t_is_imm_t.len(), - 2 - ); + assert_eq!(casm_states_by_opcode.mul_opcode_small.len(), 1); + assert_eq!(casm_states_by_opcode.mul_opcode_small_imm.len(), 2); } #[test] @@ -851,18 +821,9 @@ mod mappings_tests { let input = input_from_plain_casm(instructions, false); let casm_states_by_opcode = input.state_transitions.casm_states_by_opcode; - assert_eq!( - casm_states_by_opcode.mul_opcode_is_small_f_is_imm_f.len(), - 1 - ); - assert_eq!( - casm_states_by_opcode.mul_opcode_is_small_f_is_imm_t.len(), - 1 - ); - assert_eq!( - casm_states_by_opcode.mul_opcode_is_small_t_is_imm_t.len(), - 1 - ); + assert_eq!(casm_states_by_opcode.mul_opcode.len(), 1); + assert_eq!(casm_states_by_opcode.mul_opcode_imm.len(), 1); + assert_eq!(casm_states_by_opcode.mul_opcode_small_imm.len(), 1); } #[test] diff --git a/stwo_cairo_prover/crates/prover/src/input/vm_import/mod.rs b/stwo_cairo_prover/crates/prover/src/input/vm_import/mod.rs index 72356d37..25ad6379 100644 --- a/stwo_cairo_prover/crates/prover/src/input/vm_import/mod.rs +++ b/stwo_cairo_prover/crates/prover/src/input/vm_import/mod.rs @@ -216,10 +216,10 @@ pub mod tests { assert_eq!(components.jump_opcode_rel.len(), 500); assert_eq!(components.jump_opcode_double_deref.len(), 32); assert_eq!(components.jump_opcode.len(), 0); - assert_eq!(components.mul_opcode_is_small_t_is_imm_t.len(), 7234); - assert_eq!(components.mul_opcode_is_small_t_is_imm_f.len(), 7203); - assert_eq!(components.mul_opcode_is_small_f_is_imm_f.len(), 3943); - assert_eq!(components.mul_opcode_is_small_f_is_imm_t.len(), 10809); + assert_eq!(components.mul_opcode_small_imm.len(), 7234); + assert_eq!(components.mul_opcode_small.len(), 7203); + assert_eq!(components.mul_opcode.len(), 3943); + assert_eq!(components.mul_opcode_imm.len(), 10809); assert_eq!(components.ret_opcode.len(), 49472); // Test builtins. @@ -271,10 +271,10 @@ pub mod tests { assert_eq!(components.jump_opcode_rel.len(), 0); assert_eq!(components.jump_opcode_double_deref.len(), 0); assert_eq!(components.jump_opcode.len(), 0); - assert_eq!(components.mul_opcode_is_small_t_is_imm_t.len(), 0); - assert_eq!(components.mul_opcode_is_small_t_is_imm_f.len(), 0); - assert_eq!(components.mul_opcode_is_small_f_is_imm_f.len(), 0); - assert_eq!(components.mul_opcode_is_small_f_is_imm_t.len(), 0); + assert_eq!(components.mul_opcode_small_imm.len(), 0); + assert_eq!(components.mul_opcode_small.len(), 0); + assert_eq!(components.mul_opcode.len(), 0); + assert_eq!(components.mul_opcode_imm.len(), 0); assert_eq!(components.ret_opcode.len(), 462); // Test builtins.