  A low-complexity tree search approach is presented that achieves the
maximum-likelihood (ML) decoding performance of Reed-Muller (RM) codes. The
proposed approach generates a bit-flipping tree that is traversed to find the
ML decoding result by performing successive-cancellation decoding after each
node visit. A depth-first search (DFS) and a breadth-first search (BFS) scheme
are developed and a log-likelihood-ratio-based bit-flipping metric is utilized
to avoid redundant node visits in the tree. Several enhancements to the
proposed algorithm are presented to further reduce the number of node visits.
Simulation results confirm that the BFS scheme provides a lower average number
of node visits than the existing tree search approach to decode RM codes.
