pub fn conjugate(coset: Self) -> Self {
        Coset {
            log_2_size: coset.log_2_size,
            shift: coset.shift.conjugate(),
        }
    }
Given a coset shift + G returns the coset -shift + G.
Note that (g_2n + <g_{n/2}>) U (-g_2n + <g_{n/2}>) = g_2n + <g_n>.
crates/math/src/circle/cosets.rs