Function modNadder has 2*]log N[ inputs and 2*]log N[ outputs. Its input is a set of two modulo-N numbers A and B written in binary. Its output is the pair of modulo-N numbers (A, A+B mod N). Among such modulo adders only those with parameter N being a power of 2 are specified reversibly. Others are incompletely specified functions. However, a reversible specification for such (N is not a power of 2) functions can be trivially constructed without adding any garbage bits. For instance, any pair (X, Y) where binary number X>=N or Y>=N can be mapped into itself.
digital design, modulo adders are very useful functions and it is
important to have small circuits for them.
benchmark function is also a cycleT_T
benchmark function for any natural number T.