Evaluate a projected trace along F[X] -> F and return column-indexed
MLEs (Vec<DenseMultilinearExtension<F::Inner>>) for sumcheck
compatibility. Dispatches on the trace layout internally.
Project a multi-typed trace onto F[X], returning a row-indexed (transposed)
matrix. Result: trace[row][col] where columns are ordered as binary_poly,
arbitrary_poly, int.
Column-indexed trace matrix: trace[col][row].
Each column is a DenseMultilinearExtension over the hypercube.
Used by evaluate_combined_polynomials for linear constraints (MLE-first).
Row-indexed trace matrix: trace[row][col].
Each row contains all column values for that row.
Used by compute_combined_polynomials for non-linear constraints.