Return-Path: Received: from smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by lists.linuxfoundation.org (Postfix) with ESMTP id 86847C002D for ; Thu, 28 Apr 2022 05:27:00 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id 7B8814028F for ; Thu, 28 Apr 2022 05:27:00 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -1.601 X-Spam-Level: X-Spam-Status: No, score=-1.601 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, FROM_LOCAL_NOVOWEL=0.5, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Authentication-Results: smtp4.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=protonmail.com Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mR5xL_ci7Q79 for ; Thu, 28 Apr 2022 05:26:57 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0 Received: from mail-40130.protonmail.ch (mail-40130.protonmail.ch [185.70.40.130]) by smtp4.osuosl.org (Postfix) with ESMTPS id C05AB40230 for ; Thu, 28 Apr 2022 05:26:56 +0000 (UTC) Date: Thu, 28 Apr 2022 05:26:48 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail2; t=1651123613; bh=m2uVa7cHfLSMYz8O29YCpTthuAaGX6xMXT9g2NkOlv4=; h=Date:To:From:Cc:Reply-To:Subject:Message-ID:In-Reply-To: References:Feedback-ID:From:To:Cc:Date:Subject:Reply-To: Feedback-ID:Message-ID; b=DL/Uj/YxLqpYVp9MxEEJ0OxKpq1x6GKnj8xmTQ8B2zx0Q4Vs7PjKRRxJiHtmSldFO ADVubvZIM2UVS0EPWuSw6JLrPjopX/Njpaabcm3xKPEMtZXNCRG8tHamN8G+eekpK0 bWmjtdmhZ4vSqEy8N4tKDm6ND8OGdUjnO9Bhq3Z8MaNSfUsaSNPqwYxHDJPyaM3nx7 nWnX0Uo8PsF14qLai3htrr7Vc3sViiWj1E9V0nNA+SPqDXr7bIRuXwT8UuO17UwP4X BUA68ZVNNrC9TyaNX4nMQhQvCeN7MVG4sJ2UJR9dhbgufqHISPViaJJaaLHpoPArnq bRMlRyibXfZDA== To: Keagan McClelland , Bitcoin Protocol Discussion From: ZmnSCPxj Reply-To: ZmnSCPxj Message-ID: In-Reply-To: References: Feedback-ID: 2872618:user:proton MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [bitcoin-dev] Towards a means of measuring user support for Soft Forks X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Apr 2022 05:27:00 -0000 Good morning Keagan, et al, > I think there are a few questions surrounding the issue of soft fork acti= vation. Perhaps it warrants zooming out beyond even what my proposal aims t= o solve. In my mind the most important questions surrounding this process a= re: > > 1. In an ideal world, assuming we could, with perfect certainty, know any= thing we wanted about the preferences of the user base, what would be the t= hreshold for saying "this consensus change is ready for activation"? > =C2=A0 =C2=A0 1a. Does that threshold change based on the nature of the c= onsensus change (new script type/opcode vs. block size reduction vs. blackl= isting UTXOs)? > =C2=A0 =C2=A0 1b. Do different constituencies (end users, wallets, exchan= ges, coinjoin coordinators, layer2 protocols, miners) have a desired minimu= m or maximum representation in this "threshold"? Ideally, in a consensus system, 100% should be the threshold. After all, the intent of the design of Bitcoin is that everyone should be a= ble to use it, and the objection of even 0.01%, who would actively refuse a= change, implies that set would not be able to use Bitcoin. i.e. "consensus means 'everyone agrees'" Against this position, the real world smashes our ideals. Zooming out, the number of Bitcoin users in the globe is far less than 100%= , and there are people who would object to the use of Bitcoin entirely. This implies that the position "consensus means 'everyone agrees'" would im= ply that Bitcoin should be shut down, as it cannot help users who oppose it= . Obviously, the continued use of Bitcoin, by us and others, is not in perfec= t agreement with this position. Let us reconsider the result of the blocksize debate. A group of former-Bitcoin-users forked themselves off the Bitcoin blockchai= n. But in effect: the opposers to SegWit were simply outright *evicted* from t= he set of people who are in 'everyone', in the "consensus means 'everyone a= grees'" sense. (That some of them changed their mind later is immaterial --- their accepta= nce back into the Bitcoin community is conditional on them accepting the cu= rrent Bitcoin rules.) So obviously there is *some* threshold, that is not 100%, that we would dee= m gives us "acceptable losses". So: what is the "acceptable loss"? -- More philosphically: the [Aumann Agreement Theorem](https://en.wikipedia.or= g/wiki/Aumann%27s_agreement_theorem) can be bastardized to: "if two people = are perfectly rational and start from the same information, they *will* agr= ee". If humans were perfectly rational and the information was complete and accu= rately available beforehand, we could abduct a single convenient human bein= g, feed them the information, and ask them what they think, and simply foll= ow that. It would be pointless to abduct a second human, since it would just agree w= ith the first (as per the Aumann Agreement Theorem), and abducting humans i= s not easy or cheap. If humans were perfectly rational and all information was complete, then th= ere would be no need for "representation", you just input "this is my goal"= and "this is the info" and get out "aye" or "nay", and whoever you gave th= ose inputs to would not matter, because everyone would agree on the same co= nclusion. All democracy/voting and consensus, stem from the real-world flaws of this = simple theorem. 1. No human is perfectly rational in the sense required by the Aumann Agre= ement Theorem. 2. Information may be ambiguous or lacking. 3. Humans do not want to reveal their *actual* goals and sub-goals, becaus= e their competitors may be able to block them if the competitors knew what = their goals/sub-goals were. Democracy, and the use of some kind of high "threshold" in a "consensus" (h= a, ha) system, depend on the following assumptions to "fix" the flaws of th= e Aumann Agreement Theorem: 1. With a large sample of humans, the flaws in rationality (hopefully, ha,= ha) cancel out, and if we ask them *Really Nicely* they may make an effort= to be a little nearer to the ideal perfect rationality. 2. With a large sample of humans, the incompleteness and obscureness of th= e necessary information may now become available in aggregate (hopefully, h= a, ha), which it might not be individually. 3. With a large sample of humans, hopefully those with similar goals get t= o aggregate their goals, and thus we can get the most good (achieved goals)= for the greatest number. Unfortunately, democracy itself (and therefore, any "consensus" ha ha syste= m that uses a high threshold, which is just a more restricted kind of democ= racy that overfavors the status quo) has these flaws in the above assumptio= ns: 1. Humans belong to a single species with pretty much a single brain desig= n ("foolish humans!"), thus flaws in their rationality tend to correlate, s= o aggregation will *increase* the error, not decrease it. 2. Humans have limited brain space ("puny humans!") which they often assig= n to more important things, like whether Johnny Depp is the victim or not, = and thus the information needed to make a good decision on inconsequential = things, like Bitcoin (the future of money and hopefully a key to more prosp= erity for our civilization), may still not be available. 3. Human goals and sub-goals may be so disparate and incompatible that the= result is instead an unfocused, scattered mess. In conclusion, what we need to do is to eliminate these humans and hand ove= r control of the world to an AI from outside of space and time. Unfortunately, we do not have access to such an AI, and instead must make d= o with mere humans. But in principle, *everything* other than "just ask some random human and d= o what they think is good" are simply attempts to work around the known iss= ues of real-world application of the Aumann Agreement Theorem. Instead of increasingly-complicated solutions, could we attack the issues d= irectly so we can settle for the simplest (but known flawed due to the issu= es with direct application of the Aumann Agreement Theorem) solution? 1. Can we improve the thinking of typical humans discussing this topic? 2. Can we gather all the relevant information? - This seems easiest to tackle. 3. Can we actually have the goals of all humans discussing this topic all = laid out, *accurately*? - This may be impossible, given that human brains are not introspective= enough to understand their own sub-conscious goals. Of note is that the reason why "democracy works" (and also that "consensus = ha ha works", given that we have already done eviction of some set of users= before in order to maintain "consensus") is that widespread agreement on s= ome topic, among more-rational-than-irrational humans, is evidence that a *= purely rational* computational entity would decide the same thing. That is, we assume that the minority whose view is rejected is either irrat= ional, uninformed, or malicious (i.e. has goals incompatible with the rest)= and therefore that if we evict them, the remainder achieves Aumann Agreeme= nt and the majority view is in fact, rational, well-informed, and goal-maxi= mizing. Regards, ZmnSCPxj