wirings_to_reroutings

Function wirings_to_reroutings 

Source
pub fn wirings_to_reroutings(
    wirings: &[(u16, u16, u16, u16)],
    src_arr_num_cols: usize,
    dest_arr_num_cols: usize,
) -> Vec<(u32, u32)>
Expand description

Wirings are a Vec of 4-tuples of u16s; each tuple maps a coordinate of the source matrix to a coordinate of the destination matrix. This function returns the corresponding Vec of 2-tuples of usize, which are the re-routings of the 1d MLEs. Input order is (src_row_idx, src_col_idx, dest_row_idx, dest_col_idx). Output order is (dest_idx, src_idx) (to match [remainder::layer::identity_gate::IdentityGate]).