One reason is that it may have been added deliberately to suppress transient glitches (thus causing a race condition) in the output signals by having two or more product terms overlap with a third one.The third term prevents a glitch since its value of 1 in this case is not affected by the transition of signalThis causes an unnecessary increase in network complexity, and possibly hampering the ability to test manufactured designs using traditional test methods (single stuck-at fault models).Redundancy, by definition, requires extra parts (in this case: logical terms) which raises the cost of implementation (either actual cost of physical parts or CPU time to process).Logic redundancy can be removed by several well-known techniques, such as Karnaugh maps, the Quine–McCluskey algorithm, and the heuristic computer method.To explain this in more concrete terms the Karnaugh map to the right shows the minterms for the following function: The boxes represent the minimal AND/OR terms needed to implement this function: The k-map visually shows where race conditions occur in the minimal expression by having gaps between minterms, for example, the gap between the blue and green rectangles.If the blue term switches off before the green turns on then the output will fluctuate and may register as 0.Both minterm race conditions are covered by addition of the yellow term
Above k-map with the
term added to avoid race hazards