Digital root

From HandWiki
Short description: Repeated sum of a number's digits

The digital root (also repeated digital sum) of a natural number in a given radix is the (single digit) value obtained by an iterative process of summing digits, on each iteration using the result from the previous iteration to compute a digit sum. The process continues until a single-digit number is reached. For example, in base 10, the digital root of the number 12345 is 6 because the sum of the digits in the number is 1 + 2 + 3 + 4 + 5 = 15, then the addition process is repeated again for the resulting number 15, so that the sum of 1 + 5 equals 6, which is the digital root of that number. In base 10, this is equivalent to taking the remainder upon division by 9 (except when the digital root is 9, where the remainder upon division by 9 will be 0), which allows it to be used as a divisibility rule.

Formal definition

Let [math]\displaystyle{ n }[/math] be a natural number. For base [math]\displaystyle{ b \gt 1 }[/math], we define the digit sum [math]\displaystyle{ F_{b} : \mathbb{N} \rightarrow \mathbb{N} }[/math] to be the following:

[math]\displaystyle{ F_{b}(n) = \sum_{i=0}^{k - 1} d_i }[/math]

where [math]\displaystyle{ k = \lfloor \log_{b}{n} \rfloor + 1 }[/math] is the number of digits in the number in base [math]\displaystyle{ b }[/math], and

[math]\displaystyle{ d_i = \frac{n \bmod{b^{i+1}} - n \bmod b^i}{b^i} }[/math]

is the value of each digit of the number. A natural number [math]\displaystyle{ n }[/math] is a digital root if it is a fixed point for [math]\displaystyle{ F_{b} }[/math], which occurs if [math]\displaystyle{ F_{b}(n) = n }[/math].

All natural numbers [math]\displaystyle{ n }[/math] are preperiodic points for [math]\displaystyle{ F_{b} }[/math], regardless of the base. This is because if [math]\displaystyle{ n \geq b }[/math], then

[math]\displaystyle{ n = \sum_{i=0}^{k - 1} d_i b^i }[/math]

and therefore

[math]\displaystyle{ F_{b}(n) = \sum_{i=0}^{k - 1} d_i \lt \sum_{i=0}^{k - 1} d_i b^i = n }[/math]

because [math]\displaystyle{ b \gt 1 }[/math]. If [math]\displaystyle{ n \lt b }[/math], then trivially

[math]\displaystyle{ F_{b}(n) = n }[/math]

Therefore, the only possible digital roots are the natural numbers [math]\displaystyle{ 0 \leq n \lt b }[/math], and there are no cycles other than the fixed points of [math]\displaystyle{ 0 \leq n \lt b }[/math].

Example

In base 12, 8 is the additive digital root of the base 10 number 3110, as for [math]\displaystyle{ n = 3110 }[/math]

[math]\displaystyle{ d_0 = \frac{3110 \bmod{12^{0+1}} - 3110 \bmod 12^0}{12^0} = \frac{3110 \bmod{12} - 3110 \bmod 1}{1} = \frac{2 - 0}{1} = \frac{2}{1} = 2 }[/math]
[math]\displaystyle{ d_1 = \frac{3110 \bmod{12^{1+1}} - 3110 \bmod 12^1}{12^1} = \frac{3110 \bmod{144} - 3110 \bmod 12}{12} = \frac{86 - 2}{12} = \frac{84}{12} = 7 }[/math]
[math]\displaystyle{ d_2 = \frac{3110 \bmod{12^{2+1}} - 3110 \bmod 12^2}{12^2} = \frac{3110 \bmod{1728} - 3110 \bmod 144}{144} = \frac{1382 - 86}{144} = \frac{1296}{144} = 9 }[/math]
[math]\displaystyle{ d_3 = \frac{3110 \bmod{12^{3+1}} - 3110 \bmod 12^3}{12^3} = \frac{3110 \bmod{20736} - 3110 \bmod 1728}{1728} = \frac{3110 - 1382}{1728} = \frac{1728}{1728} = 1 }[/math]
[math]\displaystyle{ F_{12}(3110) = \sum_{i=0}^{4 - 1} d_i = 2 + 7 + 9 + 1 = 19 }[/math]

This process shows that 3110 is 1972 in base 12. Now for [math]\displaystyle{ F_{12}(3110) = 19 }[/math]

[math]\displaystyle{ d_0 = \frac{19 \bmod{12^{0+1}} - 19 \bmod 12^0}{12^0} = \frac{19 \bmod{12} - 19 \bmod 1}{1} = \frac{7 - 0}{1} = \frac{7}{1} = 7 }[/math]
[math]\displaystyle{ d_1 = \frac{19 \bmod{12^{1+1}} - 19 \bmod 12^1}{12^1} = \frac{19 \bmod{144} - 19 \bmod 12}{12} = \frac{19 - 7}{12} = \frac{12}{12} = 1 }[/math]
[math]\displaystyle{ F_{12}(19) = \sum_{i=0}^{2 - 1} d_i = 1 + 7 = 8 }[/math]

shows that 19 is 17 in base 12. And as 8 is a 1-digit number in base 12,

[math]\displaystyle{ F_{12}(8) = 8 }[/math].

Direct formulas

We can define the digit root directly for base [math]\displaystyle{ b \gt 1 }[/math] [math]\displaystyle{ \operatorname{dr}_{b} : \mathbb{N} \rightarrow \mathbb{N} }[/math] in the following ways:

Congruence formula

The formula in base [math]\displaystyle{ b }[/math] is:

[math]\displaystyle{ \operatorname{dr}_{b}(n) = \begin{cases} 0 & \mbox{if}\ n = 0, \\ b - 1 & \mbox{if}\ n \neq 0,\ n\ \equiv 0 \bmod{b - 1},\\ n\ {\rm mod}\ (b - 1) & \mbox{if}\ n \not\equiv 0 \bmod{b - 1} \end{cases} }[/math]

or,

[math]\displaystyle{ \operatorname{dr}_{b}(n) = \begin{cases} 0 & \mbox{if}\ n = 0, \\ 1\ +\ ((n-1)\ {\rm mod}\ (b - 1)) & \mbox{if}\ n \neq 0. \end{cases} }[/math]

In base 10, the corresponding sequence is (sequence A010888 in the OEIS).

The digital root is the value modulo [math]\displaystyle{ b - 1 }[/math] because [math]\displaystyle{ b \equiv 1 \bmod{b - 1}, }[/math] and thus [math]\displaystyle{ b^k \equiv 1^k \equiv 1 \bmod{b - 1}, }[/math] so regardless of position, the value [math]\displaystyle{ n \bmod b - 1 }[/math] is the same – [math]\displaystyle{ a b^2 \equiv a b \equiv a \bmod{b - 1} }[/math] – which is why digits can be meaningfully added. Concretely, for a three-digit number [math]\displaystyle{ n = a_1 b^2 + a_2 b^1 + a_3 b^0 }[/math]

[math]\displaystyle{ \operatorname{dr}_{b}(n) \equiv a_1 b^2 + a_2 b^1 + a_3 b^0 \equiv a_1 (1) + a_2 (1) + a_3 (1) \equiv (a_1 + a_2 + a_3) \bmod{b - 1} }[/math].

To obtain the modular value with respect to other numbers [math]\displaystyle{ n }[/math], one can take weighted sums, where the weight on the [math]\displaystyle{ k }[/math]-th digit corresponds to the value of [math]\displaystyle{ b^k }[/math] modulo [math]\displaystyle{ n }[/math]. In base 10, this is simplest for 2, 5, and 10, where higher digits vanish (since 2 and 5 divide 10), which corresponds to the familiar fact that the divisibility of a decimal number with respect to 2, 5, and 10 can be checked by the last digit (even numbers end in 0, 2, 4, 6, or 8).

Also of note is the modulus [math]\displaystyle{ n = b + 1 }[/math]: since [math]\displaystyle{ b \equiv -1 \bmod{b + 1}, }[/math] and thus [math]\displaystyle{ b^2 \equiv (-1)^2 \equiv 1 \pmod{b + 1}, }[/math] taking the alternating sum of digits yields the value modulo [math]\displaystyle{ b + 1 }[/math].

Using the floor function

It helps to see the digital root of a positive integer as the position it holds with respect to the largest multiple of [math]\displaystyle{ b - 1 }[/math] less than the number itself. For example, in base 6 the digital root of 11 is 2, which means that 11 is the second number after [math]\displaystyle{ 6 - 1 = 5 }[/math]. Likewise, in base 10 the digital root of 2035 is 1, which means that [math]\displaystyle{ 2035 - 1 = 2034|9 }[/math]. If a number produces a digital root of exactly [math]\displaystyle{ b - 1 }[/math], then the number is a multiple of [math]\displaystyle{ b - 1 }[/math].

With this in mind the digital root of a positive integer [math]\displaystyle{ n }[/math] may be defined by using floor function [math]\displaystyle{ \lfloor x\rfloor }[/math], as

[math]\displaystyle{ \operatorname{dr}_{b}(n)=n-(b - 1)\left\lfloor\frac{n-1}{b - 1}\right\rfloor. }[/math]

Properties

  • The digital root of [math]\displaystyle{ a_1 + a_2 }[/math] in base [math]\displaystyle{ b }[/math] is the digital root of the sum of the digital root of [math]\displaystyle{ a_1 }[/math] and the digital root of [math]\displaystyle{ a_2 }[/math]. This property can be used as a sort of checksum, to check that a sum has been performed correctly.
[math]\displaystyle{ \operatorname{dr}_{b}(a_1 + a_2) = \operatorname{dr}_{b}(\operatorname{dr}_{b}(a_1)+\operatorname{dr}_{b}(a_2)). }[/math]
  • The digital root of [math]\displaystyle{ a_1 - a_2 }[/math] in base [math]\displaystyle{ b }[/math] is congruent to the difference of the digital root of [math]\displaystyle{ a_1 }[/math] and the digital root of [math]\displaystyle{ a_2 }[/math] modulo [math]\displaystyle{ b - 1 }[/math].
[math]\displaystyle{ \operatorname{dr}_{b}(a_1 - a_2) \equiv (\operatorname{dr}_{b}(a_1)-\operatorname{dr}_{b}(a_2)) \bmod{b - 1}. }[/math]
  • The digital root of [math]\displaystyle{ -n }[/math] in base [math]\displaystyle{ b }[/math] as follows:
[math]\displaystyle{ \operatorname{dr}_{b}(-n) \equiv -\operatorname{dr}_{b}(n) \bmod{b - 1}. }[/math]
  • The digital root of the product of nonzero single digit numbers [math]\displaystyle{ a_1 \cdot a_2 }[/math] in base [math]\displaystyle{ b }[/math] is given by the Vedic Square in base [math]\displaystyle{ b }[/math].
  • The digital root of [math]\displaystyle{ a_1 \cdot a_2 }[/math] in base [math]\displaystyle{ b }[/math] is the digital root of the product of the digital root of [math]\displaystyle{ a_1 }[/math] and the digital root of [math]\displaystyle{ a_2 }[/math].
[math]\displaystyle{ \operatorname{dr}_{b}(a_1 a_2) = \operatorname{dr}_{b}(\operatorname{dr}_{b}(a_1)\cdot\operatorname{dr}_{b}(a_2) ). }[/math]

Additive persistence

The additive persistence counts how many times we must sum its digits to arrive at its digital root.

For example, the additive persistence of 2718 in base 10 is 2: first we find that 2 + 7 + 1 + 8 = 18, then that 1 + 8 = 9.

There is no limit to the additive persistence of a number in a number base [math]\displaystyle{ b }[/math]. Proof: For a given number [math]\displaystyle{ n }[/math], the persistence of the number consisting of [math]\displaystyle{ n }[/math] repetitions of the digit 1 is 1 higher than that of [math]\displaystyle{ n }[/math]. The smallest numbers of additive persistence 0, 1, ... in base 10 are:

0, 10, 19, 199, 19 999 999 999 999 999 999 999, ... (sequence A006050 in the OEIS)

The next number in the sequence (the smallest number of additive persistence 5) is 2 × 102×(1022 − 1)/9 − 1 (that is, 1 followed by 2 222 222 222 222 222 222 222 nines). For any fixed base, the sum of the digits of a number is proportional to its logarithm; therefore, the additive persistence is proportional to the iterated logarithm.[1]

Programming example

The example below implements the digit sum described in the definition above to search for digital roots and additive persistences in Python.

def digit_sum(x: int, b: int) -> int:
    total = 0
    while x > 0:
        total = total + (x % b)
        x = x // b
    return total

def digital_root(x: int, b: int) -> int:
    seen = set()
    while x not in seen:
        seen.add(x)
        x = digit_sum(x, b)
    return x

def additive_persistence(x: int, b: int) -> int:
    seen = set()
    while x not in seen:
        seen.add(x)
        x = digit_sum(x, b)
    return len(seen) - 1

In popular culture

Digital roots are used in Western numerology, but certain numbers deemed to have occult significance (such as 11 and 22) are not always completely reduced to a single digit.

Digital roots form an important mechanic in the visual novel adventure game Nine Hours, Nine Persons, Nine Doors.

See also


References

External links

de:Quersumme#Einstellige (oder iterierte) Quersumme