Gray code is a binary numeral system where two successive numbers differ in only one bit.

This module provides an interface to encode/decode numbers
represented as lists of `Bool`

.

Algorithm: Haupt, R.L. and Haupt, S.E., Practical Genetic Algorithms, Second ed. (2004), 5.4. Gray Codes.

# Documentation

gray :: [Bool] -> [Bool]Source

Take a list of bits (most significant last) in binary encoding and convert them to Gray code.

binary :: [Bool] -> [Bool]Source

Take a list of bits in Gray code and convert them to binary encoding (most significant bit last).