@@ -70,9 +70,6 @@ pub struct MulAir<F, const D: usize = 1> {
7070}
7171
7272impl < F : Field + PrimeCharacteristicRing , const D : usize > MulAir < F , D > {
73- /// Number of base-field columns contributed by a single multiplication lane.
74- pub const LANE_WIDTH : usize = 3 * D + 3 ;
75-
7673 /// Constructor for base-field or non-binomial cases (`D == 1`).
7774 pub const fn new ( num_ops : usize , lanes : usize ) -> Self {
7875 assert ! ( lanes > 0 , "lane count must be non-zero" ) ;
@@ -97,8 +94,9 @@ impl<F: Field + PrimeCharacteristicRing, const D: usize> MulAir<F, D> {
9794 }
9895 }
9996
97+ /// Number of base-field columns contributed by a single multiplication lane.
10098 pub const fn lane_width ( ) -> usize {
101- Self :: LANE_WIDTH
99+ 3 * D + 3
102100 }
103101
104102 pub fn total_width ( & self ) -> usize {
@@ -128,13 +126,13 @@ impl<F: Field + PrimeCharacteristicRing, const D: usize> MulAir<F, D> {
128126 let lhs_coeffs = trace. lhs_values [ op_idx] . as_basis_coefficients_slice ( ) ;
129127 assert_eq ! ( lhs_coeffs. len( ) , D , "Extension degree mismatch for lhs" ) ;
130128 values. extend_from_slice ( lhs_coeffs) ;
131- values. push ( F :: from_u64 ( trace. lhs_index [ op_idx] . 0 as u64 ) ) ;
129+ values. push ( F :: from_u32 ( trace. lhs_index [ op_idx] . 0 ) ) ;
132130
133131 // RHS limbs + index
134132 let rhs_coeffs = trace. rhs_values [ op_idx] . as_basis_coefficients_slice ( ) ;
135133 assert_eq ! ( rhs_coeffs. len( ) , D , "Extension degree mismatch for rhs" ) ;
136134 values. extend_from_slice ( rhs_coeffs) ;
137- values. push ( F :: from_u64 ( trace. rhs_index [ op_idx] . 0 as u64 ) ) ;
135+ values. push ( F :: from_u32 ( trace. rhs_index [ op_idx] . 0 ) ) ;
138136
139137 // Result limbs + index
140138 let result_coeffs = trace. result_values [ op_idx] . as_basis_coefficients_slice ( ) ;
@@ -144,7 +142,7 @@ impl<F: Field + PrimeCharacteristicRing, const D: usize> MulAir<F, D> {
144142 "Extension degree mismatch for result" ,
145143 ) ;
146144 values. extend_from_slice ( result_coeffs) ;
147- values. push ( F :: from_u64 ( trace. result_index [ op_idx] . 0 as u64 ) ) ;
145+ values. push ( F :: from_u32 ( trace. result_index [ op_idx] . 0 ) ) ;
148146 } else {
149147 // Filler lane: append zeros for unused slot to keep the row width uniform.
150148 values. resize ( values. len ( ) + lane_width, F :: ZERO ) ;
0 commit comments