Skip to content
Surf Wiki
Save to docs
general/arithmetic-dynamics

From Surf Wiki (app.surf) — the open knowledge base

Perfect digit-to-digit invariant

Munchausen number


Munchausen number

In number theory, a perfect digit-to-digit invariant (PDDI; also known as a Munchausen number) is a natural number in a given number base b that is equal to the sum of its digits each raised to the power of itself. An example in base 10 is 3435, because 3435 = 3^3 + 4^4 + 3^3 + 5^5. The term "Munchausen number" was coined by Dutch mathematician and software engineer Daan van Berkel in 2009, as this evokes the story of Baron Munchausen raising himself up by his own ponytail because each digit is raised to the power of itself.

Definition

Let n be a natural number which can be written in base b as the k-digit number d_{k-1}d_{k-2}...d_{1}d_{0} where each digit d_i is between 0 and b-1 inclusive, and n = \sum_{i=0}^{k-1} d_{i}b^{i}. We define the function F_b : \mathbb{N} \rightarrow \mathbb{N} as F_b(n) = \sum_{i=0}^{k - 1} {d_i}^{d_i}. (As 00 is usually undefined, there are typically two conventions used, one where it is taken to be equal to one, and another where it is taken to be equal to zero.{{cite book

F_b(1) = 1 for all b, and thus 1 is a trivial perfect digit-to-digit invariant in all bases, and all other perfect digit-to-digit invariants are nontrivial. For the second convention where 0^0 = 0, both 0 and 1 are trivial perfect digit-to-digit invariants.

A natural number n is a sociable digit-to-digit invariant if it is a periodic point for F_{b}, where F_{b}^k(n) = n for a positive integer k, and forms a cycle of period k. A perfect digit-to-digit invariant is a sociable digit-to-digit invariant with k = 1. An amicable digit-to-digit invariant is a sociable digit-to-digit invariant with k = 2.

All natural numbers n are preperiodic points for F_b, regardless of the base. This is because all natural numbers of base b with k digits satisfy b^{k-1} \leq n \leq (k){(b - 1)}^{b-1}. However, when k \geq b+1, then b^{k-1} (k){(b - 1)}^{b-1}, so any n will satisfy n F_b(n) until n . There are a finite number of natural numbers less than b^{b+1}, so the number is guaranteed to reach a periodic point or a fixed point less than b^{b+1}, making it a preperiodic point. This means also that there are a finite number of perfect digit-to-digit invariant and cycles for any given base b.

The number of iterations i needed for F_b^{i}(n) to reach a fixed point is the b-factorion function's persistence of n, and undefined if it never reaches a fixed point.

Perfect digit-to-digit invariants and cycles of Fb for specific b

All numbers are represented in base b.

Convention 00 = 1

BaseNontrivial perfect digit-to-digit invariants (n \neq 1)Cycles
210\varnothing
312, 222 → 11 → 2
4131, 3132 → 10 → 2
5\varnothing
622352, 23452
71345412066 → 536031 → 265204 → 265623 → 551155 → 51310 → 12125 → 12066
8\varnothing405 → 6466 → 421700 → 3110776 → 6354114 → 142222 → 421 → 405
931, 156262, 1656547
103435
1118453278, 18453487
123A67A54832
1333661, 2AA834668A, 4CA92A233518, 4CA92A233538
1423, 26036, 45A0A04513CC, A992B5D96720D
154B1648420DCD0, 5A99E538339A43, 5ACBC41C19E333, 5ACBC41C19E400, 5D0B197C25E056
16C4EF722B782C26F, C76712FFC311E6E
1733
18
19
206534
21
22
23
24
2513, 513

Convention 00 = 0

BaseNontrivial perfect digit-to-digit invariants (n \neq 0, n \neq 1)Cycles
2\varnothing\varnothing
312, 222 → 11 → 2
4130, 131, 313\varnothing
5103, 2024
622352, 23452
713454
8400, 401
930, 31, 156262, 1647063, 1656547, 34664084
103435, 438579088
11\varnothing\varnothing
123A67A54832

Programming examples

The following program in Python determines whether an integer number is a Munchausen Number / Perfect Digit to Digit Invariant or not, following the convention 0^0 = 1.

num = int(input("Enter number:"))
temp = num
s = 0.0
while num > 0:
     digit = num % 10
     num //= 10
     s+= pow(digit, digit)
     
if s == temp:
    print("Munchausen Number")
else:
    print("Not Munchausen Number")

The examples below implement the perfect digit-to-digit invariant function described in the definition above to search for perfect digit-to-digit invariants and cycles in Python for the two conventions.

Convention 00 = 1

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

def pddif_cycle(x: int, b: int) -> list[int]:
    seen = []
    while x not in seen:
        seen.append(x)
        x = pddif(x, b)
    cycle = []
    while x not in cycle:
        cycle.append(x)
        x = pddif(x, b)
    return cycle

Convention 00 = 0

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

def pddif_cycle(x: int, b: int) -> list[int]:
    seen = []
    while x not in seen:
        seen.append(x)
        x = pddif(x, b)
    cycle = []
    while x not in cycle:
        cycle.append(x)
        x = pddif(x, b)
    return cycle

References

References

  1. van Berkel, Daan. (2009). "On a curious property of 3435".
  2. Olry, Regis and Duane E. Haines. [https://books.google.com/books?id=h30pAgAAQBAJ&pg=PA136 "Historical and Literary Roots of Münchhausen Syndromes"], from Literature, Neurology, and Neuroscience: Neurological and Psychiatric Disorders, Stanley Finger, Francois Boller, Anne Stiles, eds. Elsevier, 2013. p.136.
  3. Daan van Berkel, [https://arxiv.org/abs/0911.3038 ''On a curious property of 3435.'']
  4. (2014). "Things to Make and Do in the Fourth Dimension". Penguin UK.
  5. [http://www.magic-squares.net/narciss.htm Narcisstic Number], Harvey Heinz
Info: Wikipedia Source

This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.

Want to explore this topic further?

Ask Mako anything about Perfect digit-to-digit invariant — get instant answers, deeper analysis, and related topics.

Research with Mako

Free with your Surf account

Content sourced from Wikipedia, available under CC BY-SA 4.0.

This content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.

Report