In number theory, the multiplicative digital root of a natural number in a given number base is found by multiplying the digits of together, then repeating this operation until only a single-digit remains, which is called the multiplicative digital root of . Multiplicative digital roots are the multiplicative equivalent of digital roots.
Let be a natural number. We define the digit product for base to be the following:
where is the number of digits in the number in base , and
is the value of each digit of the number. A natural number is a multiplicative digital root if it is a fixed point for , which occurs if .
For example, in base , 0 is the multiplicative digital root of 9876, as
All natural numbers are preperiodic points for , regardless of the base. This is because if , then
If , then trivially
Therefore, the only possible multiplicative digital roots are the natural numbers , and there are no cycles other than the fixed points of .
The number of iterations needed for to reach a fixed point is the multiplicative persistence of . The multiplicative persistence is undefined if it never reaches a fixed point.
In base 10, it is conjectured that there is no number with a multiplicative persistence : this is known to be true for numbers . The smallest numbers with persistence 0, 1, ... are:
The search for these numbers can be sped up by using additional properties of the decimal digits of these record-breaking numbers. These digits must be sorted, and, except for the first two digits, all digits must be 7, 8, or 9. There are also additional restrictions on the first two digits. Based on these restrictions, the number of candidates for -digit numbers with record-breaking persistence is only proportional to the square of , a tiny fraction of all possible -digit numbers. However, any number that is missing from the sequence above would have multiplicative persistence > 11; such numbers are believed not to exist, and would need to have over 20,000 digits if they do exist.
The multiplicative digital root can be extended to the negative integers by use of a signed-digit representation to represent each integer.
The example below implements the digit product described in the definition above to search for multiplicative digital roots and multiplicative persistences in Python.
def digit_product(x: int, b: int) -> int: if x == 0: return 0 total = 1 while x > 1: if x % b == 0: return 0 if x % b > 1: total = total * (x % b) x = x // b return total def multiplicative_digital_root(x: int, b :int) -> int: seen =  while x not in seen: seen.append(x) x = digit_product(x, b) return x def multiplicative_persistence(x: int, b: int) -> int: seen =  while x not in seen: seen.append(x) x = digit_product(x, b) return len(seen) - 1