
Mysterious number 6174  - shii
http://plus.maths.org/content/os/issue38/features/nishiyama/index
======
alphaBetaGamma
I find Kaprekar's operation totally uninteresting because it is (or at least
seems to me) totally linked to base ten representation of numbers.

If at least you had a result like "in any base, the analogue of Kaprekar's
operation in that base has a fixed point for digits of length 3 or 4 only", it
would be mildly interesting. But as it is it's not math, just senseless symbol
manipulation.

~~~
JoachimSchipper
"Recreational mathematics". Don't take it too seriously, the practitioners
don't either.

But yes, the fact that this is bound to a decimal system suggests that there
are no deep wisdoms here.

~~~
alphaBetaGamma
I don't have anything against recreational math; I rather like it myself. But,
IMHO, the fact that something is tied to the representation of numbers removes
it from the realm of "math".

~~~
william42
I'd say that the representation of numbers is an important part of math.

That said, I'd agree that decimal is not a particularly _interesting_ part of
math. For reals, continued fractions are probably the most interesting
representation, and have nicer mathematical properties, at that.

~~~
_delirium
To the extent that 'regular' mathematicians pay attention to these things
(which a good number do), I don't think it's because decimal representations
are inherently that interesting, but more because some of the number-theoretic
and meta-mathematical questions are interesting and yet a bit puzzling. We
don't yet really have a great handle on proof techniques and understanding of
these kinds of problems: why should some simple-to-state claims about integers
and iterated operations on them be true, and others false, and why are some
seemingly true ones so hard to prove (like the Collatz conjecture)? The fact
that this one is about rearranging digits in base-10 integers is just an
intuitively-appealing way of stating simple properties, but the interesting
thing isn't really about the base-10-ness imo.

------
raganwald
It looks like this essay is saying that 6174 is a _fixed point_ for Kaprekar's
operation on four-digit numbers.

<http://en.wikipedia.org/wiki/Fixed_point_(mathematics)>

~~~
shou4577
In fact, it says that 6174 is more than just a fixed point, it is also the
only fixed point, and an attracting fixed point. That is, every four digit
number with transform to 6174 in finite (indeed, less than 7) steps under
Kaprekar's operation.

This is significantly stronger than just being a fixed point. As an analogy,
when modeling population dynamics, one often finds both stable and non-stable
equilibrium solutions. The stable ones are the only solutions that can occur
in nature, and so their stability is an important thing to note. This
stability often (I hesitate to say always) is the result of the solution
having the same attractive nature as 6174 does.

~~~
lotharbot
Another fixed point of the operation is zero, which is reached in a single
step if you start with a number with all the same digits (1111, for example.)
Zero is stable and attracting, it just has a very small basin of attraction.

~~~
waterhouse
If you want to see precisely which numbers lead to which fixed points, and in
how many steps, I've posted it here for all 4-digit numbers:

<http://pastebin.com/3iXT777N>

~~~
ableal
Thanks, but there's a bug in your code/results - for example, 1011 does not
converge to 0, it does hit 6174 in 5 steps. Only 1111, 2222, etc. yield 0.

I suspect the handling of 3-digit values. I also slipped there at first ;-)

~~~
waterhouse
For 1011, the next step is 1110 - 0111 = 999, and then... apparently you're
supposed to handle that as 9990 - 0999, rather than 999 - 999. Huh. I see.

But I'm inclined to consider that a bug in the definition, rather than in the
code. :-} The four-digit-ness came from applying the operation to four-digit
numbers, and saying "oh yeah and we'll zero-extend the results to four digits"
introduces an ugly element of redundancy.

However, we can make it not ugly anymore by making "zero-extend everything to
make it be 4 digits" the primary condition. Instead of applying it to 4-digit
numbers, we'll make every number have 4 digits and then apply the Kaprekar
procedure. So we'll now be working with the numbers 0000-9999, rather than
1000-9999. (There's no way to zero-extend numbers bigger than 9999 to be 4
digits, so that's all.) Here are the results for 0000-9999:

<http://pastebin.com/TQ3cMshV>

I think the frequencies of the number of steps to equilibrium are somewhat
nicer, as well, when you count 0000-0999. As a simple metric, they have more
factors of small primes, especially 2.

    
    
      1000-9999:
      0 steps:    1 =   1
      1 steps:  365 =   5 *  73
      2 steps:  519 =   3 * 173
      3 steps: 2124 = 2^2 * 3^2 *  59
      4 steps: 1124 = 2^2 * 281
      5 steps: 1379 =   7 * 197
      6 steps: 1508 = 2^2 *  13 *  29
      7 steps: 1980 = 2^2 * 3^2 *   5 *  11
    
      0000-9999:
      0 steps:    2 =   2
      1 steps:  392 = 2^3 * 7^2
      2 steps:  576 = 2^6 * 3^2
      3 steps: 2400 = 2^5 *   3 * 5^2
      4 steps: 1272 = 2^3 *   3 *  53
      5 steps: 1518 =   2 *   3 *  11 *  23
      6 steps: 1656 = 2^3 * 3^2 *  23
      7 steps: 2184 = 2^3 *   3 *   7 *  13

------
andrewflnr
This is indeed very interesting, but it's no surprise that it's just
incidental. This and similar phenomena are just artifacts of our base-10
number system.

------
GrangalanJr
Made a visualization: x coordinate is the initial numbers, y coordinates are
the "intermediate" numbers hit on the way to 6174. Diagonal is obviously the
plot of the starting numbers. :-)

<http://i.imgur.com/DfxRB.png>

~~~
vorg
Have you compared this visualization with the one for 495 and with the two
digit numbers?

~~~
GrangalanJr
Three digits: <http://i.imgur.com/kQSGr.png>

And two: <http://i.imgur.com/OaynE.png>

------
caf
Kaprekar's operation on binary numbers behaves in a much more predictable
fashion - for example, under Kaprekar's operation on N digit binary numbers,
2^(N-1) - 1 is always a fixed point.

------
thesz
If you look close enough, all those "special" numbers are divisible by 9.

I made a quick experiment with other bases.

3-digits numbers, base 8 has fixed point 374_8=252_10. 252 `mod` 7 = 0.

base-9, base-11 and base 13 seem do not have fixed points.

base-12, 3 digits has (at least one) fixed point 5b6_12 = 858_10. 858 `mod` 11
= 0.

I think, it exploits some properties of positional notation of numbers so that
fixed points all divisible by (base-1).

~~~
davnola
Not just the special numbers.

Kaprekar's operation always results in a multiple of 9.

Given a > b > c > d. Kaprekar's operation gives:

    
    
        1000a + 100b + 10c + d - (1000d + 100c + 10b + a)
        =999(a - d) + 90(b - c)
        =9(111(a - d) + 10(b - c))
    

And so on for integers with other numbers of digits.

~~~
jimfl
Any number subtracted from a re-arrangement of the digits results in a
multiple of 9.

~~~
sesqu
Why?

~~~
jimfl
A number is the sum of its digits, raised to the appropriate powers

    
    
        Sum(i=0..n, a[i]*10^i)
    

123, for example is 3 + 2 * 10 + 1 * 100.

A power of 10 (10^n) can be re written as

    
    
        (1 + 9 * Sum(i=0..n-1, 10^i). 
    

For example: 1000 = 1 + 999 = 1 + 900 + 90 + 9

When you subtract two numbers with the same digits, you end up being able to
factor a nine out of these sums fairly easily.

I wrote a proof of the number - reverse(number) a while back. It can be found
on archive.org

[http://web.archive.org/web/20050314023901/http://jimfl.tense...](http://web.archive.org/web/20050314023901/http://jimfl.tensegrity.net/math/nines/)

------
clvv
Some related references:

<http://mathworld.wolfram.com/KaprekarRoutine.html>

<http://en.wikipedia.org/wiki/6174_(number)>

The Wolfram link contains a list of Kaprekar numbers and Kaprekar sequences in
common bases.

------
Luyt
_"The program, which was about 50 statements in Visual Basic, checked all of
8991 four digit numbers from 1000 to 9999..."_

Whoa, you need 50 statements in VB for that? I need 14 in Python:

    
    
        import collections
    
        def kaprekar(k):
            nr = 0
            while True:
                if k == 6174: return nr
                small = int("".join(sorted(list("%04d" % k))))
                large = int("".join(sorted(list("%04d" % k), reverse=True)))
                k = large - small
                nr += 1
        
        freqs = collections.defaultdict(int)        
        for i in range(1000, 10000):
            if not i % 1111: continue # skip 1111, 2222, etc...
            freqs[kaprekar(i)] += 1
    
        for k,v in freqs.items():
            print k, v
    

Outputs:

    
    
      0 1
      1 356 
      2 519
      3 2124
      4 1124
      5 1379
      6 1508
      7 1980

~~~
Sandman
And somebody programming in some other language might need even less lines.
What's your point?

------
Ruudjah
Every number is special. Every number has something on where you can apply
rules to, and thus makes it special. Is there a database containing all the
numbers and a list of atributes that make them special?

~~~
andrewflnr
All the numbers? ALL of them? :)

~~~
_delirium
There's an old mathematics joke proving by contradiction that there cannot
exist uninteresting integers:
<http://en.wikipedia.org/wiki/Interesting_number_paradox>

------
51Cards
Thanks for posting this, really enjoyed reading it.

------
mohsen
i appreciate posts that anyone can enjoy regardless of their profession

------
ChuckMcM
Its all fun and games until you think May 21st is the date the world will end.

More seriously, numbers, and number theory, can be quite interesting and often
leads to computational insight in algorithm computation or numerical solving.
But ultimately, unless you're a numbers geek, it [ edit: Kaprekar numbers [1]
] doesn't [ don't ] really _teach_ anything.

[1]Sheesh, this place has lost its sense of humor.

~~~
raganwald
Let's say you fancy yourself as a cryptographer. You come up with a black box,
it's a function that takes a number and produces another number. You figure
you can use it to build a pseudorandom stream of numbers that will be the
source of a cipher.

Your algorithm is to start with a random number (the key) and and feed it to
your function, producing another number. Which you feed to your function,
producing a third number. And so you go, generating a stream of numbers for
your cipher.

After reading how Kaprekar's operation leads to a fixed point for four digit
numbers and various cycles for other numbers, you might be nudged into
investigating to see if there are inputs for your function that lead to cycles
and fixed points. Which would pretty-much break your cipher entirely.

Is this interesting? Yes. Is there computational insight? There is for me.
Does it teach anything? I dunno, how is teaching something distinguished from
providing insight?

~~~
ChuckMcM
A fair point. The process of analyzing Kaprekar numbers could certainly be
applied to other numerical sequences.

------
akarambir
here are few more details of this magic number. This article was submitted to
HN but didn't get attention. <http://ennovates.com/engineering/6174-number/>

