pub fn into_frame(&'t self, main_trace_columns: usize, step_size: usize) -> Frame<'t, F, F> {
        debug_assert!(self.height % step_size == 0);
        let steps = (0..self.height)
            .step_by(step_size)
            .map(|initial_row_idx| {
                let end_row_idx = initial_row_idx + step_size;

                let mut step_main_data: Vec<&'t [FieldElement<F>]> = Vec::new();
                let mut step_aux_data: Vec<&'t [FieldElement<F>]> = Vec::new();

                (initial_row_idx..end_row_idx).for_each(|row_idx| {
                    let row = self.get_row(row_idx);
                    step_main_data.push(&row[..main_trace_columns]);
                    step_aux_data.push(&row[main_trace_columns..]);
                });

                TableView::new(step_main_data, step_aux_data)
            })
            .collect();

        Frame::new(steps)
    }
Given a step size, converts the given table into a `Frame`.
crates/provers/stark/src/table.rs