Mark Miller: Agoric and the Decades-Long Quest for Secure Smart Contracts (#286)

7 May 2019 · 1:09:46

Mark S. Miller, chief scientist at Agoric, joins Epicenter to trace his decades-long work on secure smart contracts, starting with his 1988 Agoric papers on applying markets to software. He discusses how his approach to smart contracts as secure bilateral agreements complements blockchain design, and how Agoric's higher-order smart contracts build on that foundation.

Speakers

Topics

Transcript

[Music] this episode of epicenter is brought to you by Microsoft Azure do you have an idea for a blockchain app but are worried about the time and costs it will take to develop the new hash our blockchain dev kit is a free download that brings together the tools you need to get your first app running in less than 30 minutes learn more at a kms slash epicenter and buy cosmos cosmos is building the Internet of blockchains an ecosystem where thousands of flock chains can interoperate creating a foundation for a new token economy if you have an idea

for a DAP visit cosmos Network slash epicenter to learn more and to get in touch with the cosmos team I and welcome to Arizona my name is Brian Clement grain and my name is Sonny Agarwal so we're about to speak with Mark Miller somebody I've had I've been wanting to have on for a long time and we had a conversation about a gorrik so Sonny I think you are familiar with Mark Miller before as well so wait where did you learn about Mark and his work everyone probably knows where now you know I work on cosmos and we're focused on like sending you know interoperability between blockchains and sending assets between blockchains and so back when

crypto Kitty's first came out I had a question about cosmos which made me like I was asking myself okay I can send my crypto kitty from my like you know the theory on blockchain to another blockchain but how do I breathe my crypto kitty on the other blockchain and like you know if I want to breed microp because that's the whole point of the game right you want to like breed all these crypto kitties and stuff and so I realized oh wait every time I have to go back to aetherium and like then I kind of you know I think I've got who it was maybe Zakir he mentioned to me that like oh you know check out this Agora thing I think that's the key to this entire thing and so I I kind of like started deep diving into it and I just got so

amazed I've read this paper by Mark called financial instrument just capabilities and that paper I'm like whoa this is so cool and just like it got me really obsessed with it and then so you know I'm really happy that now you know goreck they've been actually very working very closely with Cosmo style they're helping us on the IBC specification and whatnot so you know it's great that you know Mark Miller has been like working on this stuff for like decades like him and like nick szabo and like you know these are how if anything these are like you know in my mind they were like considered like the greats of like the cyberpunk movement and so you know I'm just super excited to get the opportunity to work more closely with him nowadays yeah I mean there's

definitely so many interesting concepts here and it's not an easy it's not easy to understand I think but you know people who kind of want to get into the weeds of these different mechanisms and architectures of decentralize computing and it's kind of like digital economies I think will find it very interesting so before we get into the interview you're gonna be at New York blockchain me - no yes I am and I think Fredrika will be as well and so I will be giving an I'll be at token summit for sure and I'll be giving a talk there you might see me interspersing in and out of consensus every now and then and then cosmos is gonna be having a you know a meet-up

we're co-hosting a meet-up with the Avalanche team in New York on the 14th so if you're if you're free to come around for that please come check that out as well cool awesome and with that let's go to our conversation with mark so here today with Mark Miller and I actually tried to have mark on the show around four years ago in 2015 somewhere I had stumbled on his work so yet done this work on kind of smart contracts you know very long time ago much before Bitcoin and blockchain and all that and I you know that he wasn't working in the blockchain a Bitcoin space back then but I found his email and and I emailed him and he

was at Google at the time and he sent me a talk that he did in 1997 about smart contracts and the kind of legal ramifications and technology who are implicational smart contracts which was just amazingly prescient you'd watch the talk and it's astonishing how many of the ideas that later became you know kind of widely used were there so unfortunately didn't happen back then that we had them on but since then Marcus your transition he's left Google and he's working fully on kind of decentralized networks and digital money and kind of blocks in space in general so I'm really excited that you know finally the episode is happening and

having having your own mark well I'm very happy to be here so to start off I mean you've been part of this cypher pong cryptography world for a long time but like how did you originally became involved in that so I'm going to go all the way back to 1977 I was working with Ted Nelson on Xanadu Xanadu and augment were the two early hypertext projects well before the web and zan Adu was the one that had the vision of worldwide hypertext publishing as the new electronic medium for

Humanity and Ted and I were both very influenced by George Orwell on 1984 our Ministry of Truth and we understood that the coming world of electronic publishing could be a force for oppression and tyranny or it could be a great liberating force giving us all private privacy and freedom from censorship and we very much wanted to do to do the second we saw it as our mission to lead the world into the coming of electronic publishing as a liberating force and we didn't know how to do it in 1977 a Martin Gardner was editing a column for Scientific American

named mathematical games and one issue of that column explained the discovery of the first public key algorithm the RSA algorithm and he did not actually explain the algorithm he explained the the the logic of what you could do with a public key system both the asymmetric encryption for privacy and the asymmetric assigning for integrity he painted a very nice picture of the power of this I called Ted up in the middle of the night very excited Ted we can prevent the Ministry of Truth we wrote away for the paper the

paper did not arrive and we found out that the reason it did not arrive is because the u.s. national security apparatus some part of it I decided that the paper should not be publicly released they hundred court I'm going to say classified I don't know what the legal category is but they made it very clear that they would consider it to be illegal to distribute the paper I got really insensitive I got I got passionate and angry in a way that I have really not in my life before or since feeling quite literally they are going to classify this over my dead body

I went to MIT hung around campus managed to get my hands on a paper copy a rather gloves I was very careful to handle it only with gloves I took it to various copy shops there were no home copy machines I made lots of copies at different shops I put them anonymously into envelopes sending them from a variety of mailboxes sending them out to home and hobbyist computer organizations and magazines all across the country without any cover letter just the the article itself fortunately early in 1978 the US government decided to declassify they

gave the the green light for distribution of paper communications of the ACM immediately published a paper in February 78 issue and I will never have any idea whether the actions I took had any impact I don't have any particular reason to believe they did they did have an impact but the experience of doing that of for example of handing copies of the paper to my fractus and select friends saying if I disappeared make sure this gets out this was a really radicalizing moment for me of realizing the power of cryptography to change the

world to protect to protect us as individuals from large and oppressive institutions that this was worth fighting for such an amazing story and I think it's hard for people today - like conceive this right because today you have to okay somebody arrives at paper and mint some new science thing they can publish it right so the idea that like the government could like try to okay they say information is too important that you know the people shouldn't know about this that's it's pretty it's pretty amazing yeah there have been several phases of governments of the US government in particular impeding the progress of cryptography and impeding

the progress of decentralized markets more contract built on cryptography export controls lasted until about 1998 the e language my distributed a cryptographic object capability language that which a lot of the language based smart contracting ideas came together we came out with that language B during the era of export controls so we had to actually split the effort where we where we were distributing it from the US without the cryptography and then Tyler closed a collaborator living on Angela a

Canadian citizen then reverse-engineered how to put the crypto in and une which was actually distributed from and Gila during those days there was also you know the Clipper check trying to get trapped doors into mandatory trap doors into cryptography and then 1998 export controls were lifted and then after 2001 with 911 there was the Patriot Act and suddenly this big chill in the air where Doug Jackson from Eagle one of the first attempts at doing a cryptography cryptographically based a currency system in this case backed by physical

gold he was arrested so and that and there was a chilling of the work from that forward so there was a lot of fighting going on there was the RSA t-shirts where people would have the RSA algorithm written on a t-shirt and go across borders with it kind of dare daring people to arrest them because it's a free speech issue at that point this episode of epicenter is brought to you by Microsoft and the azure blockchain workbench getting your block team from the white board to production can be a big undertaking and something

as simple as connecting your blockchain to IOT devices or existing ERP systems is a project in itself well the folks at Microsoft had you covered you already know about the Azure blockchain workbench and how easy it makes bootstrapping your blockchain Network pre-configured with all the cloud services you need for your enterprise app their new development kit is the IFTTT for blockchains suppose you want to collect data from someone in a remote location via SMS and have that data packaged in a transaction for your hyper ledger fabric block team the development kit allows you to build this integration in just a few steps in a simple drag-and-drop interface here's another great example perhaps you're in institution working with aetherium and rely on CSV files sent by email one click in the dev kit and you can parse

these files and have two data embed it in transactions whatever you're working with the dev kit can read transfer and act on the data to learn more and to build your first application in less than 30 minutes visit a kms / epicenter and be sure to follow them on twitter at MSFT blockchain we'd like to thank Microsoft and Azure for their support of epicenter so you talked a little bit about Xanadu and how the thing that you guys saw there was this idea of censorship resistant publishing and dis amazing you know force it would be in creating freedom of course the parallels to a Bitcoin or like you know astonishing right because people would always speak about okay

censorship resist money and and basically speak about it in very very similar terms did you guys back then as early as you know when you started working on sana do already think about okay maybe this is this should also be something like censorship resistant money and what that could look like oh I don't know that my thinking about cryptographic Commerce all the way to cryptographic money goes back that far I think my first exposure to really strong crypto for money when did chance digit cash first come out yeah I think

that was in the 80s I think in the 80s okay at the time we wrote the Agora cup insistence papers on 1988 we assumed secure electronic money and micro payments without really exploring how to achieve that it was more of assuming that there is some solution to that then elaborating and exploring all of the kinds of smart contracts all the kinds of behavioral commercial institutions and auctions and and various kinds of incentive engineering we called it what's now called mechanism design we

explored all of that as computational embodiments of contractual arrangements and institutional arrangements as assuming that there would be an underlying money system I did do a in my my 1987 paper logical secrets a really terrible first attempt at a distributive secure money but the idea of doing a money with no central issuer like watching has I did not see anything like blockchain coming I was much more thinking in terms of like Hayek's paper

on the D nationalization of money where you have many separate currencies competing with each other and this is in general theme I'm going to come back to which is in general my approach was decentralized not the way in which people in the Bitcoin space in the blockchain space refer to decentralized which is neutrally suspicious parties all coordinating together to arrive at consensus on single decisions that's one form of decentralization let's call that coordinated decentralization I was much more thinking what I'll call loosely coupled decentralization which is what we see in the internet what we see in

the web where there's tremendous architectural diversity there's there's essentially no decisions that everyone has to jointly make and Hayek's the nationalization of money was basically saying the same thing with money but he's let many monies compete with each other let reputation feedback and competition drive the system towards emergent robustness so anyone money might fail but if it fails the competition and drive customers to other monies and we saw that as a model for for commerce in general right like Brian and I actually chatted once with James Dale Davidson who wrote the book the solving individual and a lot of people you know

try to draw a lot of parallels between his work that work and Bitcoin but you know that work he's actually talking you know talking about centralized money in a very similar way that you are now he talked about like cryptographic money but he actually really had the idea that like you know there'll be many many private issuances of money like a Swiss bank will issue its own money backed by gold and you know this people will issue their own money and then you know users will kind of choose which money they want to use yeah and in the mid-90s dean trouble who's now one of the founders with me of gorrik and that had been collaborating with me all the

way all the way back in the the late 80s Dean crebbil and norm Hardy creator of the Keiko's object capability operating system the two of them came out with a decentralized timmons proposal you can think of it as a decentralized money called the digital Silk Road which was basically routing payments through pairwise bilateral relationships which bilateral relationship has a credit window so I won't go into it it has many similarities to what inter ledger is now doing but the main point is that it really was this paper decentralized in a loosely coupled manner system of

payments but then the as as you accumulated imbalances for each bilateral relationship you have to clear the imbalance through something else and that something else was just so assumed to be of a variety of competing real world monies with no new insight as to how to to make those cryptographic so I want to to give us a special credit here to Nick Szabo because during this period of 90s first of all his vision of smart contract was of tremendous influence on me but also the kind of thing that we now understand from block Shipman Nick Szabo was trying to explain the power of

that to me and I wasn't understanding it and I did not understand it until I saw watching well I understood how Bitcoin in a theory work and then there is this aha so it was talking about all this time so while I was thinking about the emergent robustness from competition and reputation feedback you know loosely coupled network where any one point can fail looking at inspired by in the market the dynamics of the marketplace in terms of what happens between businesses Nick was very focused on the internal controls by which a large institution can by having internal controls and public audits and and

well-designed governance systems and separation of duties you can build an individual institution that can be much more trustworthy than any of the individuals in it and Nick understood that things like Byzantine fault tolerance like massive replication with cross-checking that were and consensus mechanisms is kind of the extreme form of internal control so that we can now build a logical individual institution that is much more trustworthy than anything humanity has been able to build before and the kind of contract there

are some kinds of contracts for which that's needed and the one for which it's most needed which was highest leverage is money and it's no accident I think that we saw it emerge first with cryptocurrency or specifically at least for money issuance like you said there's your vit the you know I like to call that the distributed version the distributed version kind of you know took you know the IntelliJ protocol is definitely I think it very sounds very very similar to what you're what you're talking about here but then you know in IntelliJ right it doesn't have like a native money and it kind of depends on the it assumes the existence of some other settlement mechanism while the but

on the Nick Szabo is vision like you know it seems that yes this is good for coin issuance but at the end of the day like you know maybe payments don't need to be on this right there you know what I think is actually really interesting is that like the Lightning Network seems like a combination of these two ideas where it's you get you you use a base redundant system for issuance and then you try to use a distributed system for payments and you can also use the base system along with issuance as a message board or like this reputation right one of the issues I always had with inter ledger is yes it assumes the existence of reputation but where does this reputation is there a bulletin board

where I can go tell everyone that hey look the sky screwed me over there isn't and so that's one of the things that ever done didn't block train also gives you that's kind of what lightning does where like you know if you want to challenge someone you can challenge them on the base chain so I think it's kind of cool to see that like you know both of the your vision and Nick Szabo's are kind of both correct and partially yeah it took me a long time to see that I think that's exactly correct I want to give a shout-out to the pork' Lopes who had studied both what was going on a blockchain as well as my old papers and he came to me with the integrated vision and then I saw that oh it's not that nick's vision and my vision are

alternatives or competing with each other they actually fit together and they're actually about different layers of the system and that very much inspired what a gorrik is now doing it my my new company so the way we see the combined vision is that you still want the overall system to be a loosely coupled network of mutually suspicious machines hosting mutually suspicious computation talking and talking to each other but now we can view a blockchain has a way to build a computer out of agreement rather than building it out of

heroin the by building it out of agreement you now have a logical computer that's much more trustworthy than any fit one physical piece of hardware can be but now it's still that logical computer is just one node on a much larger network and that larger network can include other communication secure communication between chains secure communication between chains and not chains so while the claims of coordination we were doing with cryptographic protocols in a loosely coupled distributed system we can now do that as well on top of block chains and include block chains within that overall fabric yeah no III think that's it's really nice how I explained this and one

of the ways that I that kind of comes to my mind when the way you speak about it is that you know you can think of you know often one talks with fluxions about you know removing a third party but in a way the blockchain is a third party right it's just a decentralized third party right so in many ways maybe the way the interactions economic interactions work is not that different from the existing world it's just that in self decentralize third party after decentralized third party whereas your work kind of goes into you know more in a way it's a more radical direction in that it's it's actually decentralizing you don't have to third party so much anymore and then of course if you bring the two together that you have maybe some of these architectural differences in in terms of

the way the interactions works and then when you need a third party you have a descent faster party so yeah I think it's super fascinating how you have this kind of different ideas and different ways that are playing out yeah I think that that there's there's some small number of institutions like money like augur is another great example world wide prediction market where you need world wide credibility without prior negotiation but most contracts are local and they don't need to run on a globally credible watching and the transactions that they do they can do against local representations of remotely pegged money

which is you know what several parties including doing what we're doing and what lightning is doing where the transactions that don't need to themselves be on the watch chain can happen much faster and much more privately and then the the outcome of the transactions can roll up into net inflows and net outflows and have those have them roll up the outcomes eventually roll up into public blockchains without having to reveal what the contracts word that they rolled up from so you wrote a set of paper called like a Greek open computing I think right and it was a three different

paper sent they they had quite a lot of you know widely read and had some impact I think so do you mind walking us through like what was the what what are the core ideas that you were exploring in these papers there are three papers the central paper is the one called markets and computation agaric open systems and that's the one where where we really go through all of the layers of our vision and how each layer builds on the previous layer and arguing for why our foundational layer was necessary to support the higher layers so at the lower layer we talked about

computational foundations distributed computation foundations with encapsulation and communication of information access and resources and that's encapsulation communication is very much sort of the centerpiece of object capabilities and capsulation is a form of property rights form of ownership communication is a form of rights transfer so together they form a core rights theory information access and resources Maps very cleanly to confidentiality integrity and availability integrity turned out to be the the core issue that most of our

later work through the decades has been all so object capabilities at the low level and then smart contracting and oh and markets and and auctions for dynamic price discovery and adaptive price based behavior including with regard to applying the invisible hand to resource allocation trees things like auctioning off the next CPU time slice having markets in space and network bandwidth and then on top of that a vision of how the coming of distributed decentralized market electronic markets covering the

world would be enmeshed with in part of the human economy and really changed the nature of the human economy so that was the central paper the incentive engineering paper that's the one where we actually sort of go into the to the detailed design of some core auction mechanisms for doing this allocation and some game theoretic analysis of it and we call the term incentive engineering we didn't know about the mechanism design literature but but that just our term for what has otherwise been called mechanism design and then the comparative ecology a computational perspective is another kind of big picture paper this one taking a look at

various complex adaptive systems that we see in the world the systems in which coherence emerges from some from a process that you would call some kind of evolutionary ecosystem so he looked at real world human marketplaces we looked at biological ecosystems we looked at some AI systems that were making internal use of evolutionary adaptation eurisko in particular and we were trying to compare and contrast them in order to to learn what is the framework that would best create the Selective pressure from

which distributed problem-solving would emerge and we very much supported the use of market mechanisms as a robust system of selective pressure to encourage this this emergent growth of problem-solving ability so those were the three papers what was the context of these papers and so you co-authored these with Eric Drexler and so you know for people who don't know he's like often called like the father of none of nanotechnology and so you know that seems like a very far off from some of the stuff that you were working on and so I guess how did you meet with Eric

Drexler and how did you guys decide to write these two papers these three papers together so Eric and I have very aligned visions of the future and Eric's work when I when I first met Eric he was working on white sails on basically solar sails for propulsion in space he was presenting it at a space conference I was working with Ted on Xanadu I think this was the late 70s 79 maybe the Princeton space industrialization conference and I explained to him about hypertext and about Xanadu and his his

draw kind of dropped open and he said do you know how important that is and I actually learned to appreciate hypertext through his view of it he saw value in hypertext that none of the rest of us had and really deepened our view of what was so great about it so we were talking about all sorts of things but we were thinking in terms of a much higher tech future a higher tech teacher that would have for example the scale of computation that we would have with nanotech based computers which is still many orders of magnitude beyond the scale of computation we have today and it was clear to us that at that scale of computation

the central planning approach to coordination would not work and that you needed something decentralized where the overall goodness of the system emerged through loosely coupled decentralization through a coherent framework of the rules and it was that future orientation and also our fascination there was not a critical breakthrough also which came from I was explaining to Eric my excitement about object-oriented programming and when I explained to Eric about the power of encapsulation in

object-oriented programming he said oh that's like Hayek's explanation of the utility of property rights and that was big aha moment for me is that aha moment I think more than anything else that led to the agora worked so there's many virtues and property rights but the one that Hayek explained is in terms of planet Earth it's a Hayek says that the central problem of economics is how is it that all of these separate creatures people with all their various intentions and mostly ignorant of each other formulate plans to where these plans are

to serve their interests and to unfold in a world that in which the plans of other agents that have been formulated in a mutual ignorance of each other are all unfolding together how do you keep these plans from interfering with each other and Hayek said well one element is that by dividing up the resources into separately owned parcels where each planning agent knows that there are some resources that he has exclusive access to he can formulate some plans minimizing planet you're friends with other agents well that's exactly

the object-oriented understanding of encapsulation is a way to enable programs that are formulated separately to be able to operate with on their own encapsulated data free from interference by each other and that enables these separately formulated plans to be composed together to realize cooperative opportunities from the composition while still minimizing the dangers of destructive interference with each other so that understanding made both of our both our understanding of Hayek's point and our understanding of object orientation deeper and led to the appreciation of object capabilities as a

form of encapsulation coordination that is not just minimizing the dangers of accidental interference but also minimizing the dangers of purposeful interference okay this so this is a very interesting concept so let me let me try to dive into this a little bit so you say that okay before all of these you know very powerful computers let's say with nano nano computers and stuff then the central planning approach wouldn't work anymore with computing but it seems like the way you're speaking about it is let's say I have let's have a company our company has various different

employees and you know resources and stuff like that now within that company obviously there is a kind of a central planning approach right that's sort of the nature of companies rather you say like okay there's markets between all the companies but then within each company there's the central planning approach and then I guess there was the you know work by you know Ronald Coase and stuff about you know what determines the size of these firms and the kind of transaction costs but are you are you basically saying that if you think of the different components of a computer program or computer architecture all of them should interact with some market mechanisms and and if that's the case like how does that align with property

rights like does it make sense let's say company to own all of these computing resources and then they're still being so market where all of these competing computing resources like interacting you know sort of making payments and trying to maximize their profits and stuff like that so that's a big question has many parts to it first part of answering it is that I think that prices and adaptive price behavior is not the important early step I think the important early step is a system of rights based coordination so that things that are

formulated separately mostly an ignorance of each other it can still be composed together that that that people can create reusable libraries where there's in the computational fabric a notion of separately owned data and resources so that we can compose reusable components and get larger outcomes and the modern richness of software I think has largely been based on kind of an informal hacky imperfect insecure rights-based theory of coordination this is the the encapsulation of conventional object-oriented programming and within a

company you also have imperfect systems of that are like prices you have you know for example in the on a single machine you have various funds of priority on a Google Data Center you've also got a various priority and and and urgency knobs and resource allocation knobs and all of these are self-reported there's you know some you can think of it if you want to think of it as a central planning scheduler you can do that or you can think of it as it as has an analogue of an auction mechanism but it's not a central plan

in the sense of it making the decisions about what priority other things should have rather all of the other things self-report their priority very much the way players in a market express priority by using money and and and produce price information so this is kind of a cheap analog of prices and the reason why you can get along with both with insecure encapsulation and imperfect price mechanisms within a company is because

the company has various kinds of sanction everyone within the company is trying to cooperate with each other if someone is seen as too abusive you're taking advantage then the company has other ways to react the companies have strong admission controls whereas as soon as you expose this to the to the outside market now you don't have those other forms of feedback need genuine protected objects protected boundaries and you need for example etherium with with gas with with the gas system has to have a genuinely robust system of

selling resources not so much in order to have efficient resource allocation but in order to have not horrible resource allocation it's not so much a question of optimizing it's a question in deep s amaizing it's a question of avoiding the really terrible behavior and companies internally have other ways to avoid the really terrible behavior this episode of epicenter is brought to you by cosmos the Internet of blockchains cosmos is live and we couldn't be more excited to see so many projects already building on it blockchain technologies are evolving fast and development shouldn't be one size fits all as a DAP developer you

need the tools that will allow your dad to scale grow and evolve over time the cosmos SDK is a user-friendly modular framework which allows you to customize or adapt to best suits your needs it's powered by tenement core an advanced implementation of the BFT proof of state protocol cosmos takes care of networking and consensus and allows you to focus on building your application in your language of choice if your iam smart contracts will be supported soon and the SDK makes it simple for you to connect to other blockchains in the cosmos network if you have an idea for a DAP and would like to learn more about the cosmos SDK or if you'd like to connect your existing data cosmos visit cosmos network slash epicenter for represent our listeners the cosmos team will reach out to answer your questions

and help you get started we'd like to thank cosmos for those supportive epicenter so I'm actually really glad you mentioned Google's data centers as an example here because I read an article actually a few weeks ago talking about how Google's actually using their deep mind AI to coordinate energy resources within its data centers and that this experiment of theirs actually reduced their cooling costs by 40 percent and so you know maybe do you think that like you know set essentially planned maybe humans aren't the best way of doing central planning but you know

maybe this leads into a larger political question but do you think a eyes are on the you know brink of being better central planners than both markets and human central planners so first of all I want to say I don't know the particular system that you're talking about I know a lot about how Google operates more conventionally before they started applying a deep mind technology to this issue but I also just want to mention reasoning by analogy back in the 1940s and 1950s in the socialist planning debate when Hayek and Mises would talk about the what what unfortunately came

to be known as the calculation problem what should have been known of it came to be known in later years as the knowledge problem but if the calculation problem it was when you can't centralize the knowledge needed for a central planner to act that's the knowledge part of it and then there's no possible way you can build a central planner you can you can create a central planning institution that would act and back then the advocates of central planning were pointing at look at these newfangled computers surely these computers will grow up into central planning agents and they can solve the calculation problem and now we can do central planning and

the thing that the east symmetry there is a false asymmetry that was assumed there which is they were imagining the market of the day with the complexity of the market that they knew and imagining that the planners were much more capable than planners could than the planners of the day because they were using computers but they didn't imagine that the markets would also have players that were using computers and therefore were all much more complex and interesting and in fact the knowledge problem gets worse not better as the individual players get more

sophisticated and embodied more knowledge that they're also not able to articulate you get almost torturing problem there where you know the central planner computer can't simulate all of the millions of computers in today's economy right so with regard to the deep mind thing once again I don't know that specifically but whatever what I'll react to is the thing that it's planning is - is about temperature and power and such things and that's also not a set of resource allocation decisions that programmers have been writing their programs to deal with it just hasn't been on the radar

traditionally so that so that there is no local decision-making by programs to try to be adaptive on those cut on those regards so it's essentially a situation where we had no decentralized planning and very poor centralized planning so it's a situation where we're planning so badly that even a central planner can do better once you've got that kind of sophistication in the the agents that are subject to the plans and they are now also as capable of reasoning about those issues then you have to again ask

does the asymmetry go away where the where the central planner has gotten special technology ahead of all of the agents that are subject to its control that's a really nicely how you explained this and I must say I find it like kind of encouraging knowing that it seems to it if this is true and you're gonna hold true then maybe there's something that will kind of work counter towards some of the centralizing aspects that come with AI and so then one last question I have about the papers before we you know I want to go back into talking about the core company but you know what about like the fact that like you know when hi he talks about you know part of the

issue I think is that humans are very complex beings that it's you know part of the measurement problem or information problem as you phrase it was how do you measure people whose utility functions right these like you know know what we don't have a way of doing that but when we're talking about BOTS here right like you know just computers like it's pretty I I feel like at least until we have very strong AI is like the they don't seem very complex creatures and so we can I think it might be possible to model these ballistic box rather than humans and so I don't know if some of Hayek's ideas around this like complexity of humans comes into play or not the notion of utility function is a I

think is is very much like the notion of the perfectly spherical cow it's there is this complex real world both for people and of programs where what you've got is behavior that has been shaped over time to be adaptive and served some interests and then you have outside the system using the concept of the utility function as one way of idealizing the behavior to reason about it but there is no representation in the person's head or in the program of a utility function

programs have complex behavior that are written by programmers and modified by programmers over time to adapt to whatever the complex job is that the program is doing um both with respect to what the job is and with respect to how the program is performing the job and programmers modify and change it in complex ways to just be more adaptive and it's very hard to reason about programs what we know is that it's impossible in general to predict what a program will do other than by running so

then our computer systems run the programs discover what they do by running them but I wouldn't call that central planning I would call that just a distributed system of the running programs cool and so kind of to go back into lead back into the blockchain stuff one of the things that you know kind of interested me about this property rights you know I think in the blockchain space we have two very prominent models of property rights and fees transaction fees that are kind of dominating right now and are very different you have the first one which is a dot you know kind of done by bit coin and

aetherium where you know there's a limited about a block space or gas limit and people use fees to basically it's essentially going in a constant auction where there's a limited amount of block space and if you want to get in you have to put in a fee and it you know the highest number of people get their fee McPhee's and you know there's a lot of innovation going around and that front like you know vitalik has a proposal for like you know doing different type of auction mechanisms and whatnot but then there's a complete other and which you know i think this is one of the few interesting things that the u.s.

actually did was they proposed a more property rights based model of fees so the more US tokens you have you get you know let's say you it's a little bit more complex but for simplicity sake you could say that if you own 5% of the US tokens you have the rights to use 5% of the u.s. blockchains resources you have 5% of the disk space 5% of the computation power and so that takes almost a more property rights approach rather than this constant auction so you know what are your thoughts on these two approaches and so yeah I don't know the ers approach I also don't know the talax recent proposals right now we don't have

good composable systems of electronic rights and I think that that's really sort of the prior issue so in that sense I'm responding positively to what you said about AOS over even though I don't know the actual u.s. system having a foundation in rights and rights transfer is I think the right conceptual starting point such that markets emerge from the interaction between multiple parties within a rules-based rights-based framework and obviously auctions is one way to do that

a proportional share ownership rights is another way to do that all of these things are worth exploring I don't have a strong opinion that one is better than the other I will say that that goreck is planning to implement the escalator algorithm for scheduling on the Agora blockchain but we're also want to encourage all sorts of different experiments there okay this is this is perfect cuz that's kind of leading us exactly where I wanted to go so I mean there were the papers many years ago which had to name a cork in it but then much more recently also you know you co-founded a new company that you know

is also called the quarks so can you tell us a little bit like what what is the the main vision of the company what are you guys trying to accomplish so what we're trying to accomplish is to bring the world economy online and right now there's a problem which is the blockchain space the world of smart contracting that we're seeing has not been successful at penetrating the mainstream economy that it's basically this separate world and the business activities in the mainstream economy see a barrier the area that they're not

getting over so markets are all about network effect we want to create a distributed system of objects in contracts on different platforms block chains not block non block chains permission quarren systems individual machines both publicly and within companies we want to to span that entire network of activity in a uniform framework of at the low-level object capabilities and then the high level the system of electronic rights and smart contracts that we want to build on top of that and the result is that we want to enable the mainstream

economy to be able to take incremental steps towards adoption of the technology where all of the steps towards per complete public participation are as smooth as possible I don't want to make a analogy here which is on the web of the web as we think of it is mostly a public thing but the fact that companies inside their firewalls have their own internal private websites and the content on those websites freely link into public pages and people inside the company following the links go from internal pages navigate to external pages in this completely seamless manner

that's good for the public web and it's good for the spread of the technology to apply to two things for which public visibility is not appropriate and so do you see a similar a similar function that the gorrik will have in that okay people can kind of seamlessly go from like traditional traditional means of doing commerce to blockchain base and it like this kind of friction goes away yes there are several barriers one of the the biggest ones is that smart contracting right now is too hard and too dangerous we've seen

smart contracts constructed by experts in which hundreds of millions of dollars have disappeared overnight with no recourse due to simple bugs and in order to open this world to the mainstream you have to make it much more reasonable for programmers who are not experts on smart contract and programmers whose experts lie in their subject matter to be able to create business arrangements contracts institutions with much greater confidence that their contracts mean

what they think they mean and our approach with object capabilities and you rights which I'll get back to in a moment helps tremendously in creating system of compositional reusable contract components that enable that kind of construction with confidence we did a lot of this exploration I mentioned in my language for the last for 10 years all started in 2007 have been on the JavaScript Standards Committee getting the enablers of that into the JavaScript standard so JavaScript now supports a subset which is an object capability

subset of JavaScript that essentially includes most of JavaScript such that many old JavaScript programs run in SES we call it secure atmospheric which comes out of work we did at Google and now it's work that agaric has has done in collaboration with Salesforce so the result is that were bringing this two programmers not just as an extension of the object-oriented paradigm that people already know so that they can extend the intuitions they already have about objects but we're even bringing it to them in a language that that 20 million programmers are already familiar with how does this relate to the language you guys have been creating with this Jessie idea is that is act related yes it is

yes it is so there's two subsets of JavaScript that we've defined a very a very large subset we call SES and a very small subset we call Jessie so jet and Jessie we're dressing itself as a subset of SES in doing secure programming there's sort of fundamental stances you can take with regard to country there's I want to protect myself from misbehavior by your code and I want to ensure that my code means what it thinks it means and in particular when I

express security policy in my code how my code should let's say enforce certain terms certain arrangements on your code that I want to know that my code is interacting with your code in the way that I think month that I think my code was designed so SES is designed to solve the first problem which is that I can run your code that I don't trust inside an SES if you want to call it a sandbox under object capability rules where I can confident that your code has only gotten the authority that I intended to give it that that your code cannot

escape the sandbox cannot do things with more authority than it was given and because jesse is a subset of SES your code might be ingesting but if I'm just protecting myself from your code I don't care whether you're stayed within Jesse or whether you're using full SES for my code javascript has many hazards you double equal for example a server the famous one that has crazy coercion so so everybody's programming style for JavaScript says avoid double equals so in Jesse we just define a subset that omits all of the the unnecessarily

dangerous only includes the best parts and the wonderful thing is that the best parts of JavaScript are a really good programming which so we've been essentially keeping our code in Jesse we expect to be also we've been doing we've been collaborating with academics on federal specification languages so that you can verify that capability code means what you think it means we think Jessie is the candidate to apply those tools to that's how those things put together okay great so yeah that's very interesting right so there's all your work on smart on JavaScript and secure JavaScript and how that's kind of coming together so yeah you spoke a bit

about a JavaScript and how you guys enable smart contracts there but like what is powerful about this approach and what are kind of the capability said the approach that you guys take a smart contracting casts so one of the things that makes our current world of software so rich and so composable is higher order composition and what I mean by that is we start with higher order functions where a functions can operate on data and compute things can operate on values but the functions themselves are values so higher-order functional programming is where functions operate

on functions with no limitation objects cause effects take actions and objects can also hold and manipulate other objects so a table can take it can store any kind of object but then when you reapply a concept like a table into an object then you enable the kinds of things that objects manipulate to be also the kind of thing that the that the reified manipulation is likewise in the marketplace much of the richness of the market interactions we have is the

reification of the reification nature of property rights that property rights started off very literal but then anytime you create a contract that unfolds over time the continued participation in the contract is itself valuable and by labeling that continued participation a property right then any contract building block that's generically parameterize Abell over that's described as a property right can now operate on the rights created by cut by other contracts and you can compose contracts together as an example like

you know so I can imagine an options contract where you know an options contract is basically me making a contract with you saying hey you know I want the ability to buy this from you at a later date but then I can turn this contract into an asset itself and I can go resell my end of the options contract and so you turn contracts into assets and you can make contracts out of those assets and you know you even have this iterative approach where contracts and assets are kind of interchangeable that's right so we talked about the duality of contracts and arise contracts manipulating rights and contracts that unfold over time create the rights and er TP the electronic rights transfer

protocol is the top protocol layer in our system and it's all it's essentially a set of object interfaces and specifications for generically representing a wide range of kinds of rights rights that are fungible and non fungible divisible so so many non fungible things and the right to continue participating in contracts within our framework are all reified as rights described by ER TP and then to the extent possible we create contract components that assume of the rights that manipulating that only assume that

they're described by era TP you can't always do that but we can do that for the exchange you can do that with options and futures you can do that with a variety of auctions single auctions continuous double auctions so we have this tremendous opportunity to create highly reusable generically parameterize above contract components that can in which you can feed any er TP described contract and then if that contract unfolds over time then it creates a new derivative right that in turn can be fed into other contracts right and so you know for our listeners who want to like get you know much better understanding of this I highly recommend

one of marks papers he wrote called financial instruments as capabilities and to me like you know when I was first I'm trying to understand this whole capability stuff it didn't make sense but then like after reading that paper I'm like oh like you know I had a little bit of pseudocode in there and it's like okay reading that I'm like okay now I see how this makes sense and I I can visualize how to put these pieces together the paper is the actual title is capability-based financial instruments it was published in a financial cryptography 2000 which by the way also occurred on end ela and Gillard became a little haven of crypto activity because initially because of the export controls yeah so we'll

definitely link to that in the show notes and so then the another question I wanted to ask was you know now that you have this er TP system and just Jesse smart contracting language you know you could have went ahead and created a simple smart contracting platform like a theory arm or tezo's or you know any of these systems but it seems you guys are not just creating a single blockchain contracting platforms could you talk a bit briefly about what the goal there is with that so so again it's it's network effect and it goes back to the differing early visions of hypertext I hadn't thought to make this analogy before but Doug Engelbart's augmented system was

kind of a single system for those who signed up to augment whereas Xanadu was a worldwide distributed loosely coupled hypertext publishing system where there's no one provider we want to enable contracts that span from the from the one extreme of completely permissionless globally credible block chains all the way to various systems that are more private but one of the things that I think is really important is most contracts are local most for contracts work almost actual real-world contract things local there's

no need for to create worldwide transparency into the internals of a contract that's done by a small set of parties and then there's a few arrangements which I would call more institutions than contracts that do need that credibility we want to span that whole range there is this large trade off space we want one uniform mechanism that can sit on top of that diversity and span it and enable contracts that started off being designed for one place in that fabric to be able to be moved and continue execution another place on that fabric cool well thanks so much

mark so I think that there's so much there to talk about that I've interned and there's a lot of resources we talked about that you know we'll put in the episode links so if people want to dive in there's definitely plenty to keep somebody busy for weeks or months and yeah we're very much looking forward to also seeing kind of what comes out in terms of practical use cases I work on a goreck and you know hopefully we can do another episode at some point in the future so thanks so much for joining us today yeah you're welcome it was a real pleasure we released new episodes of epicentre every week click here to subscribe for hundreds of insightful interviews with some of the leading minds in blockchain and crypto you can also listen to the audio version

of the podcast on iTunes Spotify stitcher and other podcast apps click here for a full list of places where you can listen thanks for watching at the center and we hope you'll join us for our next episode