Addition is the most important and frequently used arithmetic operation in computer systems. Generally, two methods can be used to speed up the addition operation. One is to explicitly shorten the carry-propagation chain by using circuit design techniques, such as detecting the completion of the carry chain as soon as possible, carry look-ahead, etc. Another is to convert the operands from the binary number system to a redundant number system, e.g. the signed-digit number system or the residue number system, so that the addition becomes Carry-Free (CF).