@@ -131,6 +131,10 @@ where
131131/// Metadata from Round 1 commitments — stores Merkle trees, roots, and cached LDE evaluations.
132132/// LDE evaluations are cached from Phase A/C and consumed in Phase D (Rounds 2-4),
133133/// eliminating the expensive recomputation (iFFT + coset shift + FFT per column).
134+ ///
135+ /// Memory trade-off: all N tables' LDE columns are live simultaneously between Phase A/C
136+ /// and Phase D (O(N × cols × lde_size)), but pool pre-allocation is removed, so peak heap
137+ /// is lower overall (~70 GB vs ~220 GB at 8M cycles).
134138pub struct Round1Metadata < Field , FieldExtension >
135139where
136140 Field : IsFFTField + IsSubFieldOf < FieldExtension > ,
@@ -598,11 +602,11 @@ pub trait IsStarkProver<
598602 metadata
599603 . aux_merkle_tree
600604 . as_ref ( )
601- . expect ( "aux tree must exist when has_trace_interaction " ) ,
605+ . expect ( "aux tree must exist when has_aux_trace " ) ,
602606 ) ,
603607 lde_trace_merkle_root : metadata
604608 . aux_merkle_root
605- . expect ( "aux root must exist when has_trace_interaction " ) ,
609+ . expect ( "aux root must exist when has_aux_trace " ) ,
606610 precomputed_merkle_tree : None ,
607611 precomputed_merkle_root : None ,
608612 num_precomputed_cols : 0 ,
@@ -1866,11 +1870,11 @@ pub trait IsStarkProver<
18661870 metadata
18671871 . aux_merkle_tree
18681872 . as_ref ( )
1869- . expect ( "aux tree must exist when has_trace_interaction " ) ,
1873+ . expect ( "aux tree must exist when has_aux_trace " ) ,
18701874 ) ,
18711875 lde_trace_merkle_root : metadata
18721876 . aux_merkle_root
1873- . expect ( "aux root must exist when has_trace_interaction " ) ,
1877+ . expect ( "aux root must exist when has_aux_trace " ) ,
18741878 precomputed_merkle_tree : None ,
18751879 precomputed_merkle_root : None ,
18761880 num_precomputed_cols : 0 ,
0 commit comments