Bitcoin Forum
June 22, 2024, 06:49:06 AM *
News: Voting for pizza day contest
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: 'Casting out nines' instead of leading zeros on Proof of Work  (Read 963 times)
remotemass (OP)
Legendary
*
Offline Offline

Activity: 1120
Merit: 1017


ASMR El Salvador


View Profile WWW
May 29, 2015, 05:34:00 AM
 #1

It would be interesting if PoW could be used to discover proprieties of numbers.
For that matter I propose this variation to the PoW method:
Instead of looking for a certain given number of leading zeros in the next hash, why not be looking for consecutive casting of nines in the hashes and their powers of 2,3,4,...
For a casting of nines of a number to be zero the sum of all the digits of that number has to be nine.
So, according to the difficulty set, we would be looking for hashes and their powers of 2,3,4,5,6... so that for each its digits added up to nine.
So miners would get a hash, and if the sum of all digits of its decimal representation was nine and so the cating of nines gave zero, the power of two of the hash would be calculated and if its casting of nines was also zero the power of three and its casting of nines would be calculated, and so on for power of 4, and so on, according to the difficulty set.
For instance, the difficulty could be saying the casting of nines of the hash has to be zero and the same for its square; its cube and so on till the power of 20. When the difficulty needed to increase we would go for power of 21 and further... Always adding more to the number of powers that also had its decimal representation's sum of digits the same.
Maybe more interesting number proprieties could be found but this is the best I can think of.
Imagine that for a given difficulty we had the hash and its powers of up to 20 all so that the sum of its digits was nine and so having a casting of nines of zero. As the difficulty increased we would find more improbable and interesting numbers with a specific propriety.

{ Imagine a sequence of bits generated from the first decimal place of the square roots of whole integers that are irrational numbers. If the decimal falls between 0 and 5, it's considered bit 0, and if it falls between 5 and 10, it's considered bit 1. This sequence from a simple integer count of contiguous irrationals and their logical decimal expansion of the first decimal place is called the 'main irrational stream.' Our goal is to design a physical and optical computing system system that can detect when this stream starts matching a specific pattern of a given size of bits. bitcointalk.org/index.php?topic=166760.0 } Satoshi did use a friend class in C++ and put a comment on the code saying: "This is why people hate C++".
e1ghtSpace
Legendary
*
Offline Offline

Activity: 1526
Merit: 1001


Crypto since 2014


View Profile WWW
May 29, 2015, 11:19:52 AM
 #2

That would be interesting. I think this is a cool little project someone could work on, maybe an altcoin.

I wonder if ASICs could still function efficiently. Does anyone know?
Maybe instead of leading, it could be ending in nines.
Soros Shorts
Donator
Legendary
*
Offline Offline

Activity: 1617
Merit: 1012



View Profile
May 29, 2015, 12:01:03 PM
 #3

As the difficulty increased we would find more improbable and interesting numbers with a specific propriety.

Can the difficulty be scaled up/down in a granular fashion so that we will always get 10 minute blocks? I.e., for a given global hash rate that is somewhat appropriate for the current difficulty we don't want large jumps in block times if the difficulty is incremented or decremented by one step.
remotemass (OP)
Legendary
*
Offline Offline

Activity: 1120
Merit: 1017


ASMR El Salvador


View Profile WWW
May 29, 2015, 12:34:04 PM
Last edit: May 29, 2015, 01:50:46 PM by remotemass
 #4

As the difficulty increased we would find more improbable and interesting numbers with a specific propriety.

Can the difficulty be scaled up/down in a granular fashion so that we will always get 10 minute blocks? I.e., for a given global hash rate that is somewhat appropriate for the current difficulty we don't want large jumps in block times if the difficulty is incremented or decremented by one step.

I think it is pretty much the same math.
When the miners hash the block - A - with a given nonce there is:
10% chance it will have one leading zero.
There is also 10% chance that the sum of all digits of the decimal representation of that block hash is 9.

The chance for two leading zeros is 1%
For the sum of all digits of A and of A^2 to be nine we also have 1% chance
and so on.

For each leading zero or next level of casting out nines we get 10 times less chance.
It is exponential in exactly the same way.

So if my math is correct, at present difficulty problem, we would be finding,
A such that:
casting out nines of A is 9
and
casting out nines of A^2 is 9
and
casting out nines of A^3 is 9
and
casting out nines of A^4 is 9
and
casting out nines of A^5 is 9
and
casting out nines of A^6 is 9
and
casting out nines of A^7 is 9
and
casting out nines of A^8 is 9
and
casting out nines of A^9 is 9
and
casting out nines of A^10 is 9
and
casting out nines of A^11 is 9
and
casting out nines of A^12 is 9
and
casting out nines of A^13 is 9
and
casting out nines of A^14 is 9
and
casting out nines of A^15 is 9
and
casting out nines of A^16 is 9
and
casting out nines of A^17 is 9

every 10 minutes...

The probability of finding it with only one nonce being tried out is:

0.000000000000001%
=1E-15%, in scientific notation.

In both cases.
(assuming the distribution of numbers divisible by 9 is normal)

{ Imagine a sequence of bits generated from the first decimal place of the square roots of whole integers that are irrational numbers. If the decimal falls between 0 and 5, it's considered bit 0, and if it falls between 5 and 10, it's considered bit 1. This sequence from a simple integer count of contiguous irrationals and their logical decimal expansion of the first decimal place is called the 'main irrational stream.' Our goal is to design a physical and optical computing system system that can detect when this stream starts matching a specific pattern of a given size of bits. bitcointalk.org/index.php?topic=166760.0 } Satoshi did use a friend class in C++ and put a comment on the code saying: "This is why people hate C++".
odolvlobo
Legendary
*
Offline Offline

Activity: 4354
Merit: 3273



View Profile
May 29, 2015, 03:55:06 PM
 #5

There are two issues:

First, in the current system, the solution is not a hash with a minimum number of leading zeros. That is a common misconception. The solution is a hash that is less than the target value. The current target value is 0x1686F5 x 2168.

Second, your system only allows a change in the difficulty by a factor of ten. That just won't work.

Join an anti-signature campaign: Click ignore on the members of signature campaigns.
PGP Fingerprint: 6B6BC26599EC24EF7E29A405EAF050539D0B2925 Signing address: 13GAVJo8YaAuenj6keiEykwxWUZ7jMoSLt
tspacepilot
Legendary
*
Offline Offline

Activity: 1456
Merit: 1078


I may write code in exchange for bitcoins.


View Profile
May 29, 2015, 04:42:05 PM
 #6

There are two issues:

First, in the current system, the solution is not a hash with a minimum number of leading zeros. That is a common misconception. The solution is a hash that is less than the target value. The current target value is 0x1686F5 x 2168.

Second, your system only allows a change in the difficulty by a factor of ten. That just won't work.

This post shows why this proposal would have less functionality than the current system, but even before this post, it wasn't clear to me how the proposal is any kind of improvement.  Why are the "casting of nines" any more interesting than a hash which sums to a value lower than the target?  I don't get it?

There was an altcoin called primecoin (I think) which claimed to be about exploring the prime number space.  I'm not sure if there was actually any interesting math in that one but at least on the fact of it, it seems more interesting than this thing with 9s.  Primecoin may still be around, FWIW, I don't know.  Also, sorry if I'm missing something about these nines, I'm not trying to be rude.
StevenS
Full Member
***
Offline Offline

Activity: 206
Merit: 100


View Profile
May 29, 2015, 07:47:59 PM
 #7

One problem with this proposed method is that it increases the time it takes to validate a block. Each Bitcoin node, whether it mines or not, needs to validate every block by computing its hash, then checking that this has is less than the current difficulty. The current method of checking against the current difficulty is trivial, but your proposed method would take more work.
pereira4
Legendary
*
Offline Offline

Activity: 1610
Merit: 1183


View Profile
May 29, 2015, 08:47:09 PM
 #8

Wouldn't such change on the PoW algorithm require a hard fork? seems like it should be tested with some alt first.
remotemass (OP)
Legendary
*
Offline Offline

Activity: 1120
Merit: 1017


ASMR El Salvador


View Profile WWW
May 29, 2015, 09:39:41 PM
 #9

You could still impose that the hashes and their powered values are lower than some target values, so it could be made to have blocks every 10 minutes also.

I'm just saying that would be slightly more interesting to be able to know about the distribution of these particular numbers. Nothing really impressive, for sure, but I think worth thinking and perhaps the spark for something better and more sound (and more like primecoin).

Yes, I think this would require to wait for a hard fork (with some other more important changes, possibly) because you could not use old clients anymore if this PoW was used. Certainly, ground for an altcoin, indeed. But who knows...

{ Imagine a sequence of bits generated from the first decimal place of the square roots of whole integers that are irrational numbers. If the decimal falls between 0 and 5, it's considered bit 0, and if it falls between 5 and 10, it's considered bit 1. This sequence from a simple integer count of contiguous irrationals and their logical decimal expansion of the first decimal place is called the 'main irrational stream.' Our goal is to design a physical and optical computing system system that can detect when this stream starts matching a specific pattern of a given size of bits. bitcointalk.org/index.php?topic=166760.0 } Satoshi did use a friend class in C++ and put a comment on the code saying: "This is why people hate C++".
remotemass (OP)
Legendary
*
Offline Offline

Activity: 1120
Merit: 1017


ASMR El Salvador


View Profile WWW
May 29, 2015, 10:47:08 PM
 #10

0x0000000000000000055555555555555555555555555555555555555555555555^17=

9567639692108043072811450028127400518281204094818345885318236555087134713804395 7298464973764356275103554879331415138053356424891863760353039671546154304315081 1566469523986070256935592964043364944268216023279526986939181898116614435967889 3616638606887122504304800352366090111525854262617481678198448227772673263250855 8000685531324347333260410651563340863148349582073424253019854463763099032912118 7652471312435535069526587697537625186126548091442969484731037914577069735859518 1412394471985250667465713838607113372333720574309575798121489470388950618234180 5940563991344157394076447656598555239895453208891176505721576013557444261355363 5928628909184421289989071553328104314106992525434339700388013380688641778490970 9293592938336469293401095932512404377328638497665080639978453085011547878346899 6745955324447707973205619438293306935554825314723008561120809590470039092678033 0189838168617004322658962332322688147473727239414890354831795951410908216094970 703125

Finding numbers this large with such described particularities - every 10 minutes - wouldn't be some impressive achievement?...

{ Imagine a sequence of bits generated from the first decimal place of the square roots of whole integers that are irrational numbers. If the decimal falls between 0 and 5, it's considered bit 0, and if it falls between 5 and 10, it's considered bit 1. This sequence from a simple integer count of contiguous irrationals and their logical decimal expansion of the first decimal place is called the 'main irrational stream.' Our goal is to design a physical and optical computing system system that can detect when this stream starts matching a specific pattern of a given size of bits. bitcointalk.org/index.php?topic=166760.0 } Satoshi did use a friend class in C++ and put a comment on the code saying: "This is why people hate C++".
tspacepilot
Legendary
*
Offline Offline

Activity: 1456
Merit: 1078


I may write code in exchange for bitcoins.


View Profile
May 30, 2015, 06:04:59 PM
 #11

You could still impose that the hashes and their powered values are lower than some target values, so it could be made to have blocks every 10 minutes also.

I'm just saying that would be slightly more interesting to be able to know about the distribution of these particular numbers.
I still don't get why.  Can you say why these particular numbers are any more interesting than sha256 hashes of transactions?  I don't really get it yet.
Quote
Nothing really impressive, for sure, but I think worth thinking and perhaps the spark for something better and more sound (and more like primecoin).

Yes, I think this would require to wait for a hard fork (with some other more important changes, possibly) because you could not use old clients anymore if this PoW was used. Certainly, ground for an altcoin, indeed. But who knows...

If you're a coinmaker, maybe it's time to make your 9coin and see who else is as interested in these numbers as you are! Smiley
remotemass (OP)
Legendary
*
Offline Offline

Activity: 1120
Merit: 1017


ASMR El Salvador


View Profile WWW
May 30, 2015, 06:40:15 PM
Last edit: May 30, 2015, 07:01:55 PM by remotemass
 #12

Can you say why these particular numbers are any more interesting than sha256 hashes of transactions?  I don't really get it yet.


You would still get sha256 hashes from mining blocks, but very particular ones, as you would get 9 out of the sum of its digits, in base 10, and of a few powers of them, as well.
It would be a bit like finding new digits of the number PI. Why do it? For research.  
It may prove useful in the future.
I think this would not be better than finding new digits of PI but also not worse. It is at least something you can show other people as an achievement.
Pretty much the same reason athletes and so, keep doing all sorts of efforts to beat records. Human achievement, curiosity about our limits, research...
This might not convince you but there you go, here is my answer.
We could then say that bitcoin is backed by something and has intrinsic value: it would be finding rare and precious numbers.
And in the end, it might even prove to be useful knowing such numbers. It's better than nothing, at least, I think.

Here is a story about a number:
~ The Hardy–Ramanujan number: 1729

This number got its start when British mathematician G. H. Hardy visited Indian mathematician Srinivasa Ramanujan while Ramanujan was ill in the hospital. Hardy later recalled:

"I remember once going to see him when he was ill at Putney. I had ridden in taxi cab number 1729 and remarked that the number seemed to me rather a dull one, and that I hoped it was not an unfavorable omen. ‘No,’ [Ramanujan] replied, ‘it is a very interesting number; it is the smallest number expressible as the sum of two cubes in two different ways.’ "

The two cubes are 1729 = 1^3 + 12^3 = 9^3 + 10^3. Numbers that are the smallest number expressible as the sum of two positive cubes in n distinct ways are called “taxicab numbers” for just this reason.

{ Imagine a sequence of bits generated from the first decimal place of the square roots of whole integers that are irrational numbers. If the decimal falls between 0 and 5, it's considered bit 0, and if it falls between 5 and 10, it's considered bit 1. This sequence from a simple integer count of contiguous irrationals and their logical decimal expansion of the first decimal place is called the 'main irrational stream.' Our goal is to design a physical and optical computing system system that can detect when this stream starts matching a specific pattern of a given size of bits. bitcointalk.org/index.php?topic=166760.0 } Satoshi did use a friend class in C++ and put a comment on the code saying: "This is why people hate C++".
tspacepilot
Legendary
*
Offline Offline

Activity: 1456
Merit: 1078


I may write code in exchange for bitcoins.


View Profile
June 01, 2015, 05:20:58 AM
 #13

Can you say why these particular numbers are any more interesting than sha256 hashes of transactions?  I don't really get it yet.


You would still get sha256 hashes from mining blocks, but very particular ones, as you would get 9 out of the sum of its digits, in base 10, and of a few powers of them, as well.
It would be a bit like finding new digits of the number PI. Why do it? For research.  
But PI is the natural ratio of the radius of a circle to it's circufrence---surely a useful thing to know more about.  I don't get it with these 9s yet.
Quote
It may prove useful in the future.
I think this would not be better than finding new digits of PI but also not worse. It is at least something you can show other people as an achievement.
Pretty much the same reason athletes and so, keep doing all sorts of efforts to beat records. Human achievement, curiosity about our limits, research...
This might not convince you but there you go, here is my answer.
We could then say that bitcoin is backed by something and has intrinsic value: it would be finding rare and precious numbers.
And in the end, it might even prove to be useful knowing such numbers. It's better than nothing, at least, I think.

Here is a story about a number:
~ The Hardy–Ramanujan number: 1729

This number got its start when British mathematician G. H. Hardy visited Indian mathematician Srinivasa Ramanujan while Ramanujan was ill in the hospital. Hardy later recalled:

"I remember once going to see him when he was ill at Putney. I had ridden in taxi cab number 1729 and remarked that the number seemed to me rather a dull one, and that I hoped it was not an unfavorable omen. ‘No,’ [Ramanujan] replied, ‘it is a very interesting number; it is the smallest number expressible as the sum of two cubes in two different ways.’ "

The two cubes are 1729 = 1^3 + 12^3 = 9^3 + 10^3. Numbers that are the smallest number expressible as the sum of two positive cubes in n distinct ways are called “taxicab numbers” for just this reason.

Well, maybe we'll have to agree to disagree.  I'm glad you find these 9s beautiful.  But it sems to me that the story of the 1729 is just a reminder of the fact that any number is sure to have a set of unique properties--that's what makes it different from every other number.  Maybe who finds which properties "beautiful" is just a matter for tastes, I dunno.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!