freetrader said:



Bitcoin does not solve the general Byzantine Generals Problem, because it makes a simplifying assumption which turned out to be Good Enough So Far (TM) and that is that <50% of the computational power is in the hands of the attackers. @rocks , I was being a bit imprecise and pedantic. Here is what I was trying to say:Bitcoin does not solve the general Byzantine Generals Problem, because it makes a simplifying assumption which turned out to be Good Enough So Far (TM) and that is that <50% of the computational power is in the hands of the attackers. Click to expand...

satoshis_sockpuppet said:

@rocks

Bitcoin didn't solve the problem, it found an approximate solution. Which is good enough for the real world (or is it?).

There have been (too) many people in the space that can't live with or understand approximate solutions as solutions, e.g. Greg Maxwell.. Fork the thread if you don't like it.Bitcoin didn't solve the problem, it found an approximate solution. Which is good enough for the real world (or is it?).There have been (too) many people in the space that can't live with or understand approximate solutions as solutions, e.g. Greg Maxwell.. Click to expand...

First, I fully agree approximate solutions that work in the real world are good enough solutions. And also fully agree there are too many people in the space who don't understand that.I guess I disagree with PoW being an approximate solution, and instead see it as a complete solution.The Byzantine Generals Problem regards how to enable all parties to agree on a single strategy when some parties are unreliable. Bitcoin satisfies this question, it produces a single strategy (the current chain tip).A separate question is what represents the "truth" for a single strategy to agree to. Most people believe there is some "global truth", but truth is really an open ended question and open to interpretation. Even two people following the exact same rules can hold different views on what is true, for example consider if two people have access to the same keys and submit competing transactions at the same time, different people following the same rules can still come to see different truths. How do they agree and form consensus on how to proceed, that is the Byzantine Generals Problem.A solution to the Byzantine Generals Problem produces a single answer and provides a single statement on truth to all parties. Bitcoin is a complete solution here, not an approximate.So the real question is what is truth and who determines it? Is truth an ordering of transactions according to some global timeframe? Well that does not exist because of the theory of relativity, people on opposite sides of the earth cannot determine which transaction is "first" below a time threshold. Is truth majority agreement, in which case what determines the majority? The majority of individuals? The majority based on economic interests? The US determines truth through voting, but voting is a complicated equation that weights people differently based on location and is not 1 to 1 (some apparently disagree with this mechanism but not enough to form a new consensus on that).Bitcoin chooses a majority of real world consumed work as the basis on which consensus is created to determine truth. What some may call a >50% attack, is also just as easily framed as the majority determining what is truth. Hence Bitcoin is a complete solution.