When implementing some of the later operations on dyadic digits, we sometimes generate a numeral , but cannot guarantee that (a,b) is a valid dyadic digit in its lowest term representation. Given a pair of integers (a,b) with the properties and , we show how to generate the dyadic digit (a',b') such that .The operation is performed by examining a. If a is zero or odd, the dyadic digit may be obtained directly as follows:
If a is even and not equal to zero, we observe that (b>0) because , and so:
In this case we simply recursively call the function with the arguments (a/2,b-1) in this case until a is zero or odd, at which point we can return the dyadic digit.