The principles of Boolean algebra and Boolean minimization are covered in many books on digital design. Recommended are those by Wakerly  and Hill and Peterson . De Micheli  describes the Espresso algorithm, which sits at the heart of many logic optimization software packages. Espresso may be downloaded from www-cad.eecs.berkeley.edu/.
Error detection and correction codes are widely used in communications systems. Descriptions of these codes can be found in, for example, Hamming .