simpleSym :: Gate g => Int -> Circuit g
simpleSym n = buildCircuit $ do
    xs <- symbol n
    ys <- symbol n
    zs <- zipWithM circXor xs ys
    output =<< circProd zs
simpleSym :: Gate g => Int -> Circuit g
simpleSym n = buildCircuit $ do
    xs <- symbol n
    ys <- symbol n
    zs <- zipWithM circXor xs ys
    output =<< circProd zs
simpleSym n = buildCircuit $ do
    xs <- symbol n
    ys <- symbol n
    zs <- zipWithM circXor xs ys
    output =<< circProd zs