You are viewing a single comment's thread from:

RE: Why every Blockchain needs a Constitution

in #blockchain8 years ago (edited)

Could a formal spec act as a constitution for a blockchain? Or should it be a yellow paper? Whatever form it takes it will have to take a form which everyone can understand and not only high priests. Countries have a constitution written in a way where only high judges can interpret it. In the United States we have a constitution which can only be interpreted by the Supreme Court and it's ultimately requires trusting a group of people who act as high priests.

The same could be said about scripture where only certain people are in the high priest position to decipher the true meaning of the scripture. This could lead to problems in the future if the community disagrees with the interpretation of the high priests. And formal specifications as they are currently are not done in a language we all understand.

The good news is technology is improving. There is a technology now called controlled natural language, which allows for Controlled English. A formal specification written in Controlled English would be readable by anyone who can speak English.

We have to avoid legalese because that opens us up to the same "obfuscated code is law" as we have currently with Ethereum smart contracts. Everyone has to act as the distributed high priest and if necessary vote up and down or reach consensus line by line on every block of controlled nature language which doesn't just have to be English but can be in every language and dynamically translated for all participants into their native language.

References

  1. https://en.wikipedia.org/wiki/Controlled_natural_language
  2. https://en.wikipedia.org/wiki/Attempto_Controlled_English
  3. https://en.wikipedia.org/wiki/Formal_specification
Sort:  

Could a formal spec act as a constitution for a blockchain?

I think you are missing the point. For me, the crucial role of a constitution is to cover areas which cannot be enforced by the code or achieved via economic incentives.

Apart from that, a constitution could serve as a formal declaration of intentions for the code, so that we can easily differentiate between bugs and features, but for me this is only a minor role, as the whitepaper does it quite effectively.

@dan , do I understand your approach correctly?

I never said the code enforces it. I said the formal specification can provide the most description clarity in terms of human communication of intention or rules. People know 1+1=2 not because I say it does, but because there is a formal proof which proves a+b=c and so on. These proofs are how we all agree that math is real, concrete, and that is why numbers and symbols have an absolute meaning.

My approach is to use the formal specification as the document which acts as the blockchain constitution or smart contract constitution. This is why I always was in favor of formal verification. What I do not want is an English document which can be interpreted any kind of way because natural language is horrible for determining meaning when compared to formal communications such as constrained or controlled natural language or formal specification.

The formal specification would make it so that every possible rule is formalized as mathematics. The Controlled English would make it so every English speaker could interpret the precise meaning without any ambiguity, doubt, or disagreement. 1+1=2 everywhere on the planet because of the formal proof behind the math. For the constitution, it should be as certain as 1+1=2 for each and every line and I can only think formal specification is the way to do it.

An interesting fact to note is you actually can encode the entire traditional legal system as mathematics. You can take the logic behind all forms of laws as well as contract types, and import it into software, and merge it. Legal ontologies exist such as LKIF.

In the formal specification you can always have dispute resolution capacity. This capacity could exist on a spectrum where the first resort is to resolve all disputes internally and only as the mechanisms fail should the final resort be to use off chain off cyberspace mechanisms which in my opinion should be included but should be the fallback mechanism of last resort.

a constitution could serve as a formal declaration of intentions for the code

We agree and that is what I was saying only what I'm saying is natural language isn't very formal. You can take a formal proof and every human on earth can interpret it exactly and precisely because it's the basis of math. On the other hand if you take natural language then you have so many different languages and within each language you have all sorts of dialects, buzzwords, and I want us to avoid the Tower of Babel effect we see elsewhere. Useful quote from Wolfram:

"So we’re slowly moving toward people being educated in the kind of computational paradigm. Which is good, because the way I see it, computation is going to become central to almost every field. Let's talk about two examples—classic professions: law and medicine. It's funny, when Leibniz was first thinking about computation at the end of the 1600s, the thing he wanted to do was to build a machine that would effectively answer legal questions. It was too early then. But now we’re almost ready, I think, for computational law. Where for example contracts become computational. They explicitly become algorithms that decide what's possible and what's not.You know, some pieces of this have already happened. Like with financial derivatives, like options and futures. In the past these used to just be natural language contracts. But then they got codified and parametrized. So they’re really just algorithms, which of course one can do meta-computations on, which is what has launched a thousand hedge funds, and so on. Well, eventually one's going to be able to make computational all sorts of legal things, from mortgages to tax codes to perhaps even patents. Now to actually achieve that, one has to have ways to represent many aspects of the real world, in all its messiness. Which is what the whole knowledge-based computing of Wolfram|Alpha is about."[29]

References

  1. https://en.wikipedia.org/wiki/Pythagorean_theorem
  2. https://en.wikipedia.org/wiki/Formal_proof
  3. https://en.wikipedia.org/wiki/Constructive_proof
  4. http://www.estrellaproject.org/lkif-core/
  5. https://github.com/RinkeHoekstra/lkif-core
  6. https://en.wikipedia.org/wiki/Tower_of_Babel
  7. https://sites.google.com/site/controllednaturallanguage/
  8. https://en.wikipedia.org/wiki/Computational_law

My background is not in mathematics, but it sounds to me that a proposed constitution written in a formal, mathematic language may be an idealistic impossibility.

Isn't this what Gödel proved impossible with his incompleteness theorem? Won't we inevitably have contradictions in any formal system of high enough complexity?

The U.S. constitution doesn't require judges to interpret it, that is propaganda used by the media to disempower individuals.

I agree that the terms need to be short, easily understood, and generally unambiguous.

If the Supreme Court does not interpret the constitution then how do we know which interpretation is the real one?

If it is "short, easily understood, and generally unambiguous" and well-written, then you wouldn't need a judicial arbiter. Even if a group of people is writing it and the document represents community consensus, the wording needs to be decisive rather than a compromise that looks like it was written by a committee. That alone would make it clearer than any law passed by the US Congress, most of which end up in court for interpretation because they were written in committee or because the writers overreached beyond their areas of expertise. I'd add that any constitution must be a broad statement of principles and not anything subject to enforcement.

Unfortunately it's not that simple. We can't even agree on if slavery ended in this country. The Thirteenth Amendment if you read it carefully puts in an exception which indicates not only has it not ended but it has been expanded.

These are the words:

Section 1. Neither slavery nor involuntary servitude, except as a punishment for crime whereof the party shall have been duly convicted, shall exist within the United States, or any place subject to their jurisdiction.

If anyone could just read the constitution and know exactly what it says then common sense would indicate that all prisoners are slaves to the government. Of course we know the government isn't going to admit that and instead people will use more ambiguous terms like "state property".

Do convicted criminals maintain citizenship status? Some cannot vote and cannot buy a gun even after they've served their time. If the constitution were so clear then these debates would not be happening.

Originally race was the justification for slavery. Now if you ask some of the best lawyers they cannot tell whether or not slavery has ended. Should we take the words from the constitution and assume we know the meaning as well as the experts in which case the US government looks evil or should we assume the experts know what those words really mean?

  1. http://www.newsweek.com/slavery-still-legal-united-states-365547
  2. https://en.wikipedia.org/wiki/Thirteenth_Amendment_to_the_United_States_Constitution
  3. http://www.usatoday.com/story/opinion/2014/08/14/slavery-legal-exception-prisoners-drugs-reform-column/14086227/

Coin Marketplace

STEEM 0.18
TRX 0.16
JST 0.033
BTC 59502.70
ETH 2577.84
USDT 1.00
SBD 2.43