RE: Why Asimov's Laws of Robotics are not good enough and why smart contracts will require human intervention

You are viewing a single comment's thread from:

Why Asimov's Laws of Robotics are not good enough and why smart contracts will require human intervention

in ethereum •  8 years ago  (edited)
The necessity to amend the rules written in code.
The necessity to retroactively change the outcome of those rules.

The rules only exist to produce a desired outcome and when you get an outcome other than the outcome you desired and you have the ability to reverse the outcome then why wouldn't you? If a human were put in prison on false charges and you had the ability to rewind that outcome and restore the human being to his previous state then why wouldn't you?

If your computer downloaded a trojan which opened a backdoor and you happen to find it? You have the option to go back to a restore point and not only remove all traces of the trojan but restore all the corrupted files from backup? The ability to reverse an outcome is what gives resiliency and a computer which can reverse an outcome is fault tolerant. In security this is disaster recovery and it considered a feature and not a bug.

This is very unfortunate, as it obscures the picture. While I fully
agree with you on (1), I have the opposite view regarding (2). To be clear, the blockchain immutability issue refers only to situation (2). So please do not use arguments supporting situation (1) to support your case regarding situation (2).

I don't think every blockchain has to be immutable to be of utility. Bitcoin might have to be immutable because it's a cryptocurrency. Ethereum is a decentralized computer and being fault tolerant might be more important than being immutable. Being resilient might be what allows something like Ethereum to be of utility while for something like Bitcoin it might be censorship resistance.

If we look at something like Bitshares then we will see it doesn't function at all like Bitcoin. It has a design fit for purpose of being a decentralized exchange. It's not trying to be Bitcoin or trying to out Bitcoin Bitcoin. And that is pretty much my point, which is that specialized fit to purpose blockchains do not need to all be used as it's used in Bitcoin.

If we make immutability an axiom and do not allow to retroactively change the outcome of smart contracts, we run the risk of having clearly undesired situations similar to the DAO incident:
(a) People are unhappy because the smart contract executed in an unintended way and a significant part of their funds was lost as a result.
(b) One could argue that this option encourages hackers to constantly look for loopholes in smart contracts and make a morally questionable business out of it.

If we remove the axiom of immutability and allow to retroactively change the existing outcome, we remove the problem of unhappy users - a smart contract execution is undone and funds are returned to their original owners. But this comes at a big cost - we create two additional problems which you failed to mention:
(a) As it is practically impossible to salvage all smart contracts, we create a too-big-to-fail situation, which implies we establish some sort of financial elite which gets a special treatment.
(b) We encourage a business model based on irresponsibility ("we take a risk, if the outcome is good only we collect the profit and if the outcome is bad we get bailed out"), which in my view is a fundamental flaw of the current corporate culture.

I only follow some of what you say but I also see some assumptions which you have no data to prove. Under an ethics where the whole point of a technology is to bring happiness and safety then any axiom which violates that would violate the purpose of technology. So if technology exists to improve people's lives, satisfy the expectations of the owners, and generally be profitable for the people involved, then to have a technology which goes against the interests of the majority of users could mean the technology is never adopted. In theory you could go the approach of following the axiom of immutability but then you leave the door wide open for a competitor to do it without immutability, satisfy more people's preferences, and win.

Under the assumption that there are rational users who ask "what's in it for me?" then how do you pitch to them a risky platform which will likely take their money and which is completely amoral? You can't. Just like it's very hard to pitch Bitcoin to the masses precisely because what you may consider to be a feature another user might consider to be a bug. The ethics I speak of is called preference utilitarianism which I'll explain briefly.

Preference utilitarianism is a form of utilitarianism in contemporary philosophy.[1] Unlike classical utilitarianism, in which right actions are defined as those that maximize pleasure and minimize pain, preference utilitarianism entails promoting actions that fulfill the interests (preferences) of those beings involved.[2] The beings may be rational, that is to say, their interests may be carefully selected based on future projections, but this is not compulsory; here "beings" extends to all sentient beings, even those living solely in the present (that is, those without the intellectual capacity to contemplate long-term needs or consequences).[3] Since what is good and right depends solely on individual preferences, there can be nothing that is in itself good or bad: for preference utilitarians, the source of both morality and ethics in general is subjective preference.

Each of us have a set of preferences. The network must evolve to the sum of our preferences. In order to accomplish that you require the ultimate arbitrator to be the preferences of the stakeholders. Or in another model the preferences of the users trump all and the user is king. When the users are king and the users ask Ethereum "what can you do for me?" then Ethereum can answer "anything you want". In essence Ethereum is a computer which has no need for fixed axioms such as immutability or anything other than to always satisfy the preferences of it's current user base.

In the case where preferences split then a fork is an option. If not a fork then a clone of Ethereum such as Expanse. The point? If a blockchain is only a data structure and we are actually talking about a complex adaptive system then all of these technologies but particularly a general purpose computing technology is more like a genie while Bitcoin has a singular purpose and would not be Bitcoin if it breaks out of that purpose.

Finally I disagree with your point where you call it a bail out. The outcome was not the result of market forces unless you consider hacking to be a legitimate business and sabotage to be a legitimate business. If you're including underhanded tactics and all possible actions then you'd be exactly right. There would be a completely free market which is unregulatable by any means and anything goes.

Unfortunately I don't think even most anarchists want that. In addition the problem with the bail out wasn't that people avoided taking losses. The problem with the bailout was that the tax payer and everyone in the economy had to pay for it with inflation. So it's a false analogy when in Ethereum you can literally rewind time while in the bailout there was nothing anyone could do to rewind time without negatively effecting all participants.

In Ethereum there is no limit to how many times they can fork to save a defective smart contract. In fact if I were offering a competitor to Ethereum I could market it to the mainstream as being safe even if a smart contract is defective. I would simply say that there is a guarantee of safety and that our decentralized computer can protect funds in the case of a hack which gets reported in time if and only if the community decides to do it through the process of consensus.

This could very well be a feature. On Bitcoin it would not be a feature because if you rewind on Bitcoin you rewind everyone's transactions and it includes legitimate with illegitimate. On a platform where the consensus process allows the community to be the ultimate arbitrator then the community can define on a case by case basis what is or isn't legitimate. Depending on what the community thinks it might vote or decide to reverse time or not but the point is there is no reason why time can only go one way and you haven't given me any reason why having a restore point or reset/reboot function isn't useful even if used rarely.

Thus each approach has its upsides and downsides. For me the downsides of the first option (i.e. no immutability axiom) are significantly bigger than downsides of the second option (i.e. keep the immutability axiom), and that's why I support the latter.

We can disagree as to the importance of different axioms on different platforms. On Bitcoin I would be inclined to agree that immutability is necessary but this is only because Bitcoin isn't designed to do anything else except for censorship resistant value exchange transactions. Ethereum seems to have a much more ambitious roadmap and to follow the roadmap to become a decentralized computer it is going to have to act like a computer.

Can you give me an example of a computer which needs an immutable memory? It is used in Git and in many things but from what I know the computer must always obey it's owner trumps any particular configuration the computer happens to be in at any particular time. This means if the owner decides against immutability because the owner prefers other functions then the general purpose computer has to do that. On the other hand a calculator is designed only to do one specific thing and nothing else. While you can program a calculator to do certain things it is also memory limited and has a certain design which limits the owner.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  
  ·  8 years ago (edited)

It's hard to argue with you, as you use lots of concepts, terms and examples but generally avoid addressing precise arguments. So I'll rest my case at this stage.

To summarize my approach I'll say just this: I prefer to let a thief go free with the loot than tolerate acts of irresponsibility. For me, it will not be thieves or robots which will bring our demise but the growing culture of acceptance for irresponsibility. A thief is only a thief, they are a nuance but they don't do much harm to humankind. Whereas there is nothing more dangerous than a growing population of people not willing to take responsibility for their actions.

But again, that's a philosophical stance which cannot be defended on a rational basis.

Behavioral data could be used to develop a model that addresses the philosophical dispute.

Retail chains already deal with the issue in determining the dynamic balance between having liberal return policies and theft.