Multi-Dimensional Blockchain Resource Pricing with Abdou Ndiaye | a16z crypto research talks

2 Dec 2022 · 1:10:12

Abdou Ndiaye, an assistant professor of economics at NYU Stern School of Business, presents research on multi-dimensional blockchain resource pricing for a16z crypto's research talks series. Ndiaye examines how validator incentive design and price controls on blockchain resources interact with elasticity, covering the pricing of intermediary versus necessary resources and how these results inform the design of multi-dimensional transaction fee mechanisms.

Speakers

Topics

Transcript

good morning everyone welcome to today's a16z crypto research seminar I'm very pleased to introduce uh professor at the business school in NYU at do enjoy and he'll be talking about a topic that's definitely quite near and dear to my heart namely pricing uh lots of space in particular multi-dimensional settings great uh thanks for having me um this is going to be a perspective of uh what public economics teaches us about blockchain resource pricing some old ideas we're going to see and also some new ideas um so the motivation for this talk is this free schedule that you can see uh in this yellow paper this is an example

of ethereum the blockchain and I I'm gonna say nothing here is investment advice though this disclosure need not be maybe set in the future but you can see there is a very extensive schedule at the very level of the operations of each of them having a price and here then by pricing we mean that this is something that is mattered at the protocol level this is not let people to bid on these items the protocol level these are prices that are set at the protocol level while these are coded just the ATM Foundation decides to put a number and developers are very well aware that something for example storage is very expensive is

twenty thousand why and there is this measure of why that is different and these are are set so there is some form of uh price uh controls here that are sent in place and what does public economics teach us about this so the motivation for this work is that minimum fees are needed in certain situations and this is the motivation for having minimum fees in many blockchains blockchains have scarce resource blockchain transactions provide private utility to the senders but they incur result social costs to the network as a whole so this is motivate the main motivation of vitalik when they made these change changes the protocol also might need to collect and diverse divert

the minimum revenue for security reasons and people like Tim here who have studied the security features of the EIP 1559 for instance find that the minor a part of the revenue need to be diverted either burned or uh used for another purpose but not give to the miners so this is motivated by the ip1559 ethereum case but broadly the lessons that we can get from the field of public economics that think of also price controls and taxes and so on for many other blockchains as we have seen there are multiple resources and there is a schedule level at the op code level and there are examples of denial of service attacks when these resources are

mattered but mispriced there are examples of the analysis attacks that have been proven uh to work so a few questions we're going to address to think of this framework will be first what should be the level of granularity when you think of multi-dimensional pricing should it be at the very low level of the op code or should we be at a higher level how do we think of the goods that we are actually pricing and then what are the priorities if you have multiple differential resources where should you focus on pricing these resources and let the others be resources on which people um senders will be bidding on and finally and we'll see that measures of price varies with quantity demanded is

important and these are things that need to get be good right can we find ways to have signals for price elasticities and these signals of course need to be delayed because we know that whenever some of these measures depend on the current block they can be they can create some very complex minor strategies so the key insights from this talk are three this is my preliminary thinking on these topics and I can summarize in the following way what do you want to think of what is the right level of granularity it is the level of think of the final consumer resources level of granularity and now and now what I mean by that what is the empirical Criterion

it is that are there some operations for which there are constant return to scale means that they are packaged in the same way to create one format of contract or operation that people are demanding when they are selling asking for transactions for example if you look at a mid-level maybe the contact creation is one group of uh of such combinations or message calls is another group or bulk operations of storage and bulk operations in general at a higher level it can be also you can think of token transfers and one form of final good that is demanded or various types of smart contracts that have their own feature that are directly demanded rather it's better to set a price a

minimum price at this level then at the up court level which seems to be the wrong level of granularity as these are mostly intermediary inputs and by putting a pricing across them that is differ you are gonna lose what's called productive efficiency and you have developers who are thinking of how to switch between uh storage versus using Merkel 3 is for local proofs for instance rather than just beating the right amount to have their transaction the second consideration then now is once we take this for given what should we prioritize as there are multiple resources should we let some of them be resources on which uh senders bid and what would be the ones to prioritize and

the main message here is to matter those resources that are necessary in the sense in the following sense in the empirical Criterion to measure this one is that those products that are in high dim man across user balances meaning that these ones whether it's small balances or larger balances balancing sense of the income that is in the wallet as a proxy this will will be still in high demands for instance what would tell you is maybe you want to have a metered pricing of certain types of token transfers and leave complex defy interactions to more of something that would be bid through the market of validators and finally so the question is

yes but yes versus the elect to the tip minor tip for instance right okay great and then the last point is now we will know that price elasticities matter and right now in current forms we have of adjustments there is no notion of price elasticity and it is hard to put such numbers that can vary within a protocol so I argue here that and this is more of the new part that you know of course your uh comments would be very welcome would be that we can have also measures of taton amount of of elasticities on chain in a sense what we want is you want to have some variation in Supply to measure uh elasticity of demand and we

can do this from the back so if you one way to think of this is that the process for the block size is currently some process for which we have either close to full blocks or close to empty blocks and it's a coward chaotic process so if we follow the adjustment process how it is I'm going to show you as EIP 1559 it should lead us to a more of a mean reverting process that has bounded variation so can we use some form of Randomness to get close to that mean reverting process that doesn't jump uh too much that would be the end of our talk and opening uh New Perspectives all right so now I'm going to start with one dimensional pricing here this is more of an economic stock so I'm going to just show some graphs to explain the

intuition and insights behind what has motivated the one-dimensional pricing and also give homage to some people's work who have done some old ideas here so the idea behind the current most of the current uh thinking we have about one-dimensional pricing and use the price price controls in blockchains is an old idea that came from Marty Weitzman who passed away uh three years ago uh Mark Wiseman who was studying public economics and other ideas in also environmental economics are in fact uh vitalik who is the read this paper and came up with the idea of thinking of how to use the minimum base fee this paper

which is very famous prices and quantities so what is the idea behind this paper it is to think of when are quantity controls like for example setting a block size limit better and when is a price control meaning also adding prices price minimum prices better okay depending on the environment we're in knowing that there is uncertainty in demand and uncertainty in Social costs as well okay so let me just introduce the model here so this is going to be a very simple Bare Bones model just to give some language introduce some notation to capture ideas and I'm going to show you on graphs and how it will operate so for the purpose of this part A blockchain

when it comes to just the pricing it will just be a network of computers that include transactions with quantity of resources Q okay that is demanded there is a private benefit which is the benefit to the consumers which will determine the demand for the block space and there is a social cost so this social cost captures many things this these are not the cost only to the validator but the whole network it will be the cost of operating a node to the cost of centralization the cost of delays in Block propagation Etc now the idea is that there is uncertainty in Social benefits and private costs so there is a process there is some Randomness data in the

benefit that people can have from these transactions and which which will lead to Demand Being uncertain and there is uncertainty in the uh Private Car the social benefits and the private sorry the private benefits and the social costs in verse so now what is the value that we get from a quantity control so the value of that the social value here that we get from a quantity control will be expected benefits uh minus the social cost okay and this is a unique price control here it's in expectation so the price control can get it wrong it's not going to be just the uh what we call the first best optimum

that could be set if we knew what the you know exactly what the realization of these uh uncertainty is now what is the value of a price control now what happens is that once you control the price you said this is the price quantities will adjust as a function of the price the quantities will adjust in the following way the marginal benefit to the private benefit of that quantity should be equal to the price which is how people will want the quantity as long as this benefit is higher than the price and at the exact quantity that they will choose it will be equal to the price and at that given quantity now we can find the expected benefit from this price control so the question now yes so

it's not a private benefit is like the sum of every individuals so yes yes so this is just a one person model of fixed ideas the private benefit is the sum of every Indian benefit what matters in the end is going to be this private benefit is going to determine a demand for each individual person okay all right now let's go and look at the demand let me give an idea here in economics we're going to consider a situation where this example is one in which the the marginal social cost which is the cost to the network is pretty well known in a sense it's not elastic so the marginal social cost is just constant but the demand

is elastic okay meaning that the second derivative here if you think of this uh if this private benefit is going to be larger in absolute value than the second derivative of the marginal cost all right so this is the typical econ graphs you know that you have quantities here and price is there this is just to capture the ideas first okay now what we're gonna do let me introduce the notion of what a dead weight loss is so if you look at the private demand and the social cost the point a here is going to be what will be what called the social optimal meaning that if we were to internalize all the costs on the network that would be the

quantity at off the block size essentially or the quantity of resources used here but now imagine we introduce a quantity limit let's say here it's a lower than the what the block size could be optimally there will be B would be what what is the private Optimum because this would be the price the equilibrium price at which from the demand and this quantity choose and what would be the the price and this triangle here because we are losing we could get more quantity here and people would be willing to pay on the demand curve and this is the social cost so there is all this

triangle here that is lost which is what is called the deadweight loss okay so now let's think of how can we minimize the dead weight loss that is the idea behind to gain efficiency we try to minimize the Dead brain loss all right so this is a dead weight loss that arises from a quantity limit for instance now let's introduce some uncertainty yes exactly correctly yeah yeah if you specify it correctly you'll be fine but the thing is we don't know what the social uh cost is that's the tricky part you can even if you try to get demand

you don't know what the social uh cost is but here there can be uncertainty in demand there can be times in which there is no demand much demand for Block space and there is time that can be higher so supports now with probability one-half and one half now demand is lower but let's say it's lower such that even my quantity limit was fine so I wanted to be a principal of caution I want to make sure that my block size is not too large so that even if demand is low my quantity limit is fine but there can be demand that is higher okay with probability one-half okay so now in this situation looking at this quantity limit again we can assess what is the dead weight loss

when you have this uncertainty in demand okay we can do it this part there is nothing no dead weight loss from here your quantity limit is right but when we are on this line when demand is higher your Quantum limit is too low this is the a is here the social Optimum is the private Optimum this triangle will be our dead weight loss from yes um isn't this watch face example I guess what probably is is it not the case that sort of box space sort of once you determine the protocol is kind of fixed right so if you have an interlast perfectly inelastic supply curve I mean like then you actually don't have much time being lost right

why if if no but if you if you could access quality yes then there's you're always at the optimal volume like if if you just make that red line vertical then there's no triangle yeah yeah but here you could increase the quantity do you you think of the you think about the block side limit as a quantity limit that's the idea here you make the blocks bigger and there's less Vlog well okay yeah we will see we will see later when we talk about block bigger it all matters whether we have more uncertainty on the demand side or on the social cost side okay so so your science says yeah and when you're the way I'm interpreting what you're saying is

actually think of that capacity constraint or something it's basically just made a kind of a guess yeah as to like you know where it's a quantities you can sort of take a step back yeah well actually what if we got that yeah right right now I'm not even saying let's uh increase it too much right now so just to like think of that as a quantity limit I I absolutely agree with you yeah it's actually a really nice change in thinking how it's usually describe yeah normally it's kind of like oh this is the maximum use computers yeah I know so we can't go about this yeah and you're saying yeah it's really it's kind of a softer thing yeah it's just some social costs yeah and then you know think of the capacity as just trying to get it like yeah the perfect learning process

yes yeah it's a nice shipment yeah yeah so think of it now as a as a quantity limit okay so can we improve now this quantity limit right in this situation can you improve in this situation where the you know the social cost doesn't have is not the second derivative is not large meaning here is you know pretty flat we don't have like a catastrophic kind of environment right and can we improve over this by introducing a price limit so that's what we do here imagine now instead of the quantity limit okay on it I temporarily put a price minimum which is at that price the equilibrium price now at this price here

right I get rid of the quantity limit now and I just put the price which is exactly what is happening also in eip-5059 you adjust the price and you let now the quantity move right whether between twice zero times the Target or twice the Third what happens now let's look at compute now what is the deadweight loss so we can do it here again so if you make this price as I said the price limit now the quantity will adjust meaning if the demand is low right then the equilibrium quantity will be lower and the demand is high the equilibrium quantity would be higher so the quantity will adjust and what will be now your dead weight loss we can also look at this doing these triangles again we economies are

not sophisticated we all we can think of is triangles and graphs so the first in the case of the the the the slower demand our dead weight loss will be this triangle right because this will be the uh new optic uh private Optimum and this is the social Optimum so this will be this triangle and in the case of a higher demand this would be uh the new a private Optimum and this is the triangle so you see that the sum of these triangles is smaller than the bigger one okay by introducing now this price which is the price adjustment

right and then letting the quantities move you have reduced uh the dead weight loss in this situation where again in the situation where the marginal social cost meaning that the cost of you know having like too much of a big block size is too high and I will show you a graph later in terms of how uh this thinking goes we you can improve by making price adjustments so this is kind of one of the origin Motivation by having this adding this price controls of course we know also that it has nice properties when it comes to uh incentive compatibility absolutely so let me give you exactly

now the result so this is the result okay so this is the result so I showed you now earlier the demand so the demand is just the marginal benefit okay other quantity so now see here we do a Taylor approximation around that quantity limit Q so here there is a process there is a uncertainty this is better on the demand which was here Plus uh probability one half probably one half plus Delta minus Delta what happened this is the shift and here we have an uncertainty on the social cost right this adding up to zero so you can look at what is the competitive advantage of a price control over a quantity control which would be

the net benefit over the price control these queues are the keys are adjust minus the net benefit of the quantity control then we have that this benefit is actually proportional to this which is the slow here the marginal if the elasticity of the demand is larger like the case that I showed you where the demand is more elastic than the social cost then price controls can improve the intuition is the following imagine you were in a situation where the social cost was steeper in demand so they can be like a like an environmental economic a catastrophic situation where the block side is too high boom everything collapses then you don't want

to do price controls and that quantity adjusting you want to fix put a cap on the on the quantity a hard cap okay and then let that the price change he's not saying is that you want to control the variable for which getting the wrong costume exactly exactly that's the idea if you know if you know over you know if 30 megabytes would is catastrophic you you want to set it at 25 and then but you know at the same time if 10 would be too much of a cost on consumers then you you want to let the price adjust so that's like one of the original

thinking behind introducing uh the the so vitalik went and read Mark Weitzman 1974. so the mechanics now of EIP 1559 is how do we transform this insight into a 223 mechanism that has also other nice properties as we know first private auctions are not incentive compatible dsic and so on so you consider here a Target size so here this is just a target of 12.5 million gas you have a Max block size which is double that and you try to use whether the block is full or not having this variation but this variation note it is endogenous variation in the block size to adjust

the price meaning if you are above Target that means there is a lot of demand so you need to increase the price and if you are below Target you need to there is less demand you need to then decrease uh the price and let the car uh decrease the price quantity adjust here uh with this uh one over eight here which is a note it is just a parameter of 12.5 percent what you really want to capture is some sort of notion of price elasticity and it's hard to put those on chain and we're going to come back uh to them later okay then from these prices that are uh that are computed you add up from the

schedule that I showed you earlier you know the the gas limit right and we're gonna come to this in our second part of our talk that will be the multi-dimensional part and then the transaction send the pace that guys limit times this price and a tip to reflect the notion of competition as well up to a cap the base fee is diverted whether burned or put for other use but not given to the miner so then we have here Tom questions to ponder some I'm going to do today some I'm gonna just put to you to think two which is are there unchanged signals can we think of unchanged signals for better uh price that one more so I'm gonna try to

elaborate on that in the multi-dimensional okay so here just a 12.5 percent and I'm going to show you in graphs why it might not be the right way to think through that and then given the role off the burned base fee right I know that there is some history dependence and you want to have uh new upgrades that are compatible with the past how do you want to think of the block reward right and maybe this is a question everyone because the block reward should it maybe be more tied to the service that the validators are giving rather than something like because once you think of the burn the burned base fee and it is burned essentially could we be have a situation with a dsic mechanism

for which the block rebound would be tied to the collected Revenue essentially of course there is the question of backward compatibility but this is just something to put out there as something to think of now I want to talk about now and aside which is the block side limit like Anthony started thinking through so the motivation behind it and this is a graph of vitalik that I borrowed which is his uh thinking about what are these social costs so the argument is that up to the points where we are we are closer to this line here where the marginal social cost is the social cost is close to some uh the marginal social cost is one over

X so we are in a log log block size type of social cost so up to a certain point we are to 1 over X so this is not the second derivative is one of x square so not as large compared to what would be the demand elasticity so this is the thinking tool in this range you want to do price controls once you get into the potentially chaotic range of unknown unknowns you don't want to mess up with price controls anymore you want a hard cap limit before getting to here so just to understand this figure so should I be thinking about like this set of full nodes as a function of the block size and then the point is an initial

regime is a high cost because you're losing all of the handheld devices yes but then there's like this long stretch where like Raspberry Pi's can do it and it's just absolutely get to the point where you're losing Raspberry Pi and then you're losing a lot of uh validators yes and also the it takes more time for blocks to propagate in the network uh and so on yeah but why is it starting so high though like it's the blockchain loses a lot of functionality if you have such a small box I say oh okay so that's a great Point um I will just differ and say that I don't take any responsibility for this graph uh I'm there is no fundamental reason why starting from an asymptote that looks like Infinity think of that it's going

downwards pretty flat for the ranges in which they tried at least in the ethereum case The Atrium Foundation tries to estimate these and argue that we are closer to this space in the range that they took like 25 megabytes right to the point you have this B of Q and so a q isolable yes so right now we're probably near Detroit the bottom right now the argument is we are here yes if you increase the block side effects does the throughput of the whole system just proportionately increase effective uh like a slightly higher rate you know

yeah it is depends on how you define through but like a number of transactions or like yeah a number of transactions or number of like equal size transactions per second or something like that equalizer or like identical transactions how many is that can you do per second yeah it could be that it's the same number of transactions okay and stuff yeah all right cool okay so now let's go into the multi-dimensional case and I'm gonna

give a reason here for why in the first place you wanna make even different prices across two goods again using our graphs so think of two resources here right resource I and resource J I'm gonna give you a situation where imagine for a resource I you put a quantity limit right think of this as a bandwidth you know or memory you put a quantity limit that's low you want to be conservative and you put another quantity limit for resource J right imagine think of this as like State access for instance but you get it almost closed perfectly flows close to right you are close to uh where you are so that the dead weight

loss here is small so this is to an argument to explain why you can do cross price adjustments so here what you can do for example is you can minimize that weight loss so they did weight loss is here before you can minimize it by doing cross price adjustment the idea is for example for this for the good J you can increase you can now put the price floor increase the price adjustment okay instead of having the quantity limit what happens once you do this because these Goods are complements what does complements mean think of two goods complements means that when you when people want

more of the demand for this good the demand for the other good increases for example uh bread and butter okay now if the demand for the other Goods decrease this the demand for the other good decreases so here when you increase this price what happens now the new equilibrium price is going to be lower so price be higher sorry the equilibrium quantity will be lower so there is lower quantity for this good so let's think of this like State access and then the demand for the other good for which is the complement will shift okay the demand is going to be lower as well so there are two goods and these

two graph scores so a Q Bar could be different Q Bar could be different for each of them q i bar QJ bar as you say the complementary you have a drop in demand because the first group is going to be an induced drop in the other in the other good yeah exactly now by doing this price change here by doing this price adjustment which is a cross price adjustment you didn't even touch this price what happens you're introducing here the dead weight loss but when you are close to the optimum of the Dead weight loss is small it's in the square of the difference here the tie the size of the triangle but you can get a lot of gains here because this here is not going to be side return it's going to be linear in the price change okay and if this change is small so

you're gonna get a little bit lost so this is an argument for having differentiated price adjustments already and how cross prices affect each other okay so we need to think of then this in a more in a uh broader conceptual framework this is an argument for why we want to do this in the first place any questions okay so now let's go to the multi-dimensional uh pricing so here when I started working on this I started thinking of all the what the miners and all the validators will collect and then thinking of how this collection interacts with pricing all different things and then okay can I ask the

question actually about the cost curve the u-shaped thing I think I guess some metallic through that cost per can we think of the marginal cost in the flat region as positive but flat or positive or for zero in the sense that sort of in the reading well yes it's positive the question is whether yeah what's the social cost of increasing block size in that region yeah in that region so there are multiple costs that you know of course these are like fuzzy measures the main argument from what I've that they're thinking I think is the artist in in a sense in log log the log the either linear or log the social cost is either linear or log the

block size but the demand you see that clearly it has it can have spikes and so on and so that's the motivation behind they consider different uh form of this uh form of this we can talk about it later it's okay yes no but it's not it's not zero but it's it's smaller than demand certainly but again we are getting to the limits of the white man model that's why I want to tell us that we need to think of something more because this block this social cost is fuzzy that's yes to

distinct resources going on like there's the block size yes it relates to you know like uh the bandwidth and all that and then there's the gas which is the amount of computation you're asking every node to do do they generally think of both of those as being like binding and like increasing one increases the cost or like one of those is significantly more so my understanding is that Gaz is the intermediary unit that you then multiply with fry I don't think they think of pricing of the Gods that's where we're gonna go to the how they combine these different things right okay so now we're starting to see as you have probably anticipated some limits to

this white man approach a social cost seems very very so the device been only considered single dimension cases he considers multi-dimensional cases but thinks of again whether you want to choose just this this directional question whether price or quantity where the price or quantity just the directional question now we want to think of what should be the cross price adjustments for that you need to think of something else you need to have a notion of what a production function is essentially or how it blocks yes produce yes it's just hard to make sure I understand what you're proposing on Monday if I say right so then your design or a a possible design is block space is much more or less plot side is

more elastic to transactions advantage or something like the idea is that when there's low demand in the system you really want block size to scale that a lot so we put the skill that a lot is that kind of yeah so right now I just gave a justification for some of the thinking that has been the aside about blog space was just do you want to think of it more broadly for instance we can make some taton ma around it but I don't have any proposals other than what is already put in place for for one dimensional we can discuss that privately but I don't have any proposals I guess it seems like a great question proposal right but yeah this is just for people to think of more broadly once you know for the design of all spaces I'm happy

to talk about it because I want to just focus on you know one thing and then block size always we don't know what is the right block size um but at least what I one proposal is clearly is how do you want to think of this adjustment of prices and I'm going to give a proposal at the end how do you want to think of adjustment of prices okay so the West Man story was partially equilibrium what do you mean by partially clear of this it doesn't affect the feedback responses within the system for example there can be Revenue differences between the price and quantity control the revenue that are collected that should be diverted we need to understanding the of what is the block production function if it has any effects if any

right we have just this social uh cost and then we have no clear understanding of the marginal social objectives and I think that's the key thing why you can make some directional assessment but not relative price adjustment between quantities so you have the directional whether we should have price or quantity controls but you don't have the price adjustment so the approach we're going to take here is going to be the following so we're going to leave the incentive compatibility and OCA provenance type of uh questions to maybe future work work like Tim and we're going to focus on the fact that the protocol needs to divert some Revenue that we take for given and then we're going to ask given this need

to divert Revenue what will be the optimal way to minimize the deadweight loss given this uh Revenue Target and fine and summarize some insights that come from this problem okay this is also some idea similarities have been worked on so this is even an older idea by Peter diamond the dynamic mirrors two papers in economics published in the same year Anthony will probably know that this is closely impossible times have changed and games released uh both Nobel Prize winners uh so what is this idea so this is the all the ideas of proactive efficiency and thinking of commodity taxation so for the purposes of this talk they would be

very uh pretty pretty similar and of course I will go to caveats and add some caveats later on so let me introduce some notation again to fix ideas so in this situation there will be more notation because there are multiple Goods so I'm going to define a competitive equilibrium in the following way so I'm going to talk about taxes here just directly I'm going to talk about taxes to just give how much to the people who have worked on this but you can think of here as cross price uh base fees is the price here P which is the price essentially of the market that you'd be uh paid through the tip

and the total price that the uh sender faces which is the the tip and the base fee and the quantity of good such that this maximizes the utility of the agent so here I'm just in a one one agent model but you can think of multiple agent this utility function here if you don't like this fuzzy notion of Economics you can just think of this is just an intermediate step to have what it demand to have a demand curve that's what matters in the end such that what the agent pays in resources and the quantity they choose is less than what is in their balance I

okay so this is what the agent solves okay so these are given the quantities they given the prices they choose their quantities now the quantities that are produced Q will maximize the revenue that is collected okay the revenue of the miner which will be just the price here the tip times the quantities okay for each resource no t here is our base fee yes that's why I made taxes so t p is the tip it's the market essentially market price

okay so they so this is the tip subject to the production so the production function you can think of it as a convex function f of Q within a space so I'm going to assume constant return to scale constant return to scale means that there are certain operations that if you add more of them you're gonna have more contracts or more inputs so constant return to scale to fix ideas you can work with others and such that the protocol collects the minimum amount of Revenue which here I take for given so which are just the taxes times the quantities for each resource and finally it's clear so this is our notion here of equilibrium which is that the quantity

that the agents demand of each resource should be equal to the quantity produced and into added to the Chain by the the the the validators so you can think of the validator the object the validator what they are doing is a complex knapsack type of problem but for the purpose for us for what we're doing is just simple uh objective here that you can think of as a f production function of Q of course you know it can change and there could be some more work to think of uh this interaction between people writing contracts and the validator choosing which ones to work on this is the first approach okay so now let me give some results

again there is a lot of apparatus behind this but the general results that are robust when you're thinking of these type of problems the first one robust result is productive efficiency what we call productive efficiency which is the following is that at the optimum the allocation is at the not at the interior at the boundary of the production possibility frontier meaning that intermediate Goods if you think of something as an intermediate could here it should not be distorted intermediate how do you define here which rules that are neither direct inputs nor outputs for individual people to use as a something that they consume in the end

consumption here is the notion but you can think of it as a contract is something that they consume or a sort of a a a a transfer so intermediate goods for instance if you think of a car manufacturer you don't want to tax steel or a rubber you just want to tax the final car and you let the market take the price of the steel because you want to focus on the final good uh that would be the that should be the right level of granularity okay that's the first robust idea you get from this approach and I'm gonna explain how it relates to the example that I gave so you can think of either mid-level sorts of like storage or uh uh you know bulk operations are right way

and I'm gonna give here from a survey or someone posted certain types of contract that you have what would be one approach the other robust idea is less simple but it has some flavor here what I show here is I'm going to look at the demand change in demand when I change the total price of a good eye for quantity J in proportion scaled by the taxes is almost uniform so there is one single parameter data that determines them however this change the demand goes for that good is pushed to be lower when

the Inc the balance the elasticity of that good respect to the balance that people have or income here is uh uh is larger so this is what I meant this has the flavor of having a tie tax on Necessities even if this goes against in a sense Equity but we're not just concerned much if we actually hear efficiency is kind of the main argument in a sense if you look at this is what I call like a necessity the Criterion being that if you look at different balances and you see that this type of final good is pretty much in good in demand you want to do more of the pricing mattering on that good okay because it's a necessity you want

to take care of that one first and let the other ones like luxury defy interactions to be more adjusted to the the the the the the the the the minor tip as a lesson you would get from here okay so these are two of the most uh robust results in this setting now there is another result Which is less robust because it needs more assumptions but I'm just gonna show it here to explain the idea of what we want to measure when I go and think of elasticities now yes you need to assume some make some curvature assumptions yeah yeah absolutely so F like I said constant

return to scale so homogeneous degree one you concave that's like U concave meaning that the 100th Burger is going to be less good as the first one in terms of how much it adds yeah absolutely um and and this is where I feel like working with the idiosyncraties of the production function of blocks would be something that I would gain a lot from learning from and then you're going back between like equilibrium and Optimum that's just kind of like a first welfare theorem type argument you can go back and forth yes so great yeah so when I mean the competitive uh so here my definition of the objectives have to be in equilibrium in a sense it's not so I'm looking at really the decentral the effect on a

market I'm not looking at a planner the planner sets you know but I'm looking at equilibrium in a sense that right like in the last time yeah yeah fair this is like constrained Optimum right absolutely you're right uh yes note that here we are not it's exactly in the second welfare setting because we don't we're not having lump sum transfers okay all right so now this is just to capture some elements we would want to measure okay which would be like I showed price elasticities and cross price

elasticities where the goods are complement or how Goods respond to when you change the prices will matter so once you introduce price elasticity what is the price elasticity means when you increase the price so Epsilon i j means if you increase the price of J by how much does the quantity of I change right so if you assume that there is no interactions between these Goods they are independent completely isolated uh resources then you have the following but this is a heroic assumption that's why I'm just showing here is that you want to think of what you measure then you have that you want to tax uh uh inelastic Goods meaning that Goods that don't respond much to price you want to

tax them more so the way to capture another example also canonical example would be like tobacco for instance because people will not change much how much they smoke so you want to do more of the price control in that uh in that situation but this is not a uh again like I said it's another robust result one thing that you have again here that validates our uniform taxation of intermediate Goods or looking at the final good uh pricing point is that if you have this bundle essentially if you have images degree one if you can have a collection of resources that come together as one contract at one final good that people want and have utility on then you have a

wanna have a uniform base price or tax on these Goods so again essentially what's happening is that these Goods X1 xn they are playing they are akin to an intermediate good that produces G which is what we focus on here so the more robust angle here is that the level of blind Rarity should be looking at really what are those like um homogeneous return to scale that you have are there like some sort of operation that you just repeat up in contracts to have some uh defined uh uh products okay now let's go and do some discussion of the results that I showed in the last 10

minutes and do some elaboration so we want to think of final resources and I argue so from the model that I gave one Criterion that can go and looked at empirically to make this case is look at where do you have constants return to scale in resource combinations and some examples from discussing with many people here and and outside is that uh contact creation could be someone you think of the mid-level way or message calls or some bulk storage operations and bulk operations and at the higher level you can think of token transfers or various types of smart contracts as well certainly the it you know casual evidence and observation of how people

respond by thinking of all these Arbitrage rather than just letting uh expressing their preferences through how much they want to pay shows that the op code might be the wrong and the too low level of granularity for uh this base fee pricing so a survey that I show someone and this is the sources my sources here as you see there is not much data my sources are from at and for Moto on Twitter he made a survey of the contracts on ethereum case and you see that there is some sort of standardization that happens for example 70 of live contracts around 15 million are copies of one of 15 templates so there seem to be defined final goods 50 are destroyed contract and they are destroyed in certain way to

to Let's uh storage uh to really storage there are some gas talking contracts which is around 10 of the live contracts and there are forwarders that the centralized exchange uh you know Central exchange do which are around 50 of live contract of course this is subject to change but as we know that blockchains gets updated and so on there might be interest in using some resource to study uh these uh final goods more all right the other uh flavor of result which you have which you think of necessity resources and the empirical criter and to go to look at here would be that product that are in high demand across user balances and my presumption would be the token balance

token transfers would be a good fit for that over defy interactions which can be left uh expressed through how much people want to pay even though we know that we want to minimize certainly that uh the tip all right okay so now in the I'm gonna propose now just a multi-dimensional TFM and what would be some changes here so we are we have seven minutes left so the multimensional one would be like the EIP 1559 which we know has good properties but we're gonna Focus now we're gonna collect some subset some subset off after this Criterion or final and

necessary resources maybe a small number compared to all amount of resources m and then you're going to have a Target uh uh size for each and then you're gonna have a maximum size note that for now I haven't set the maximum size being double the Target and we're gonna come to it later you can to be safe you can put it less than twice the size or let's say up to four or whatever number would be empirically relevant and then you do the adjustment of prices like you did before so they have changed the schedule of adjustment to make an exponential one this makes more sense even before I saw it the linear one doesn't really reflect

elasticity this is closer to a price elasticity the exponential schedule so gamma here is going to be a parameter to adjust and now for each transaction so you can think of transactions these are quantities that would for which there will be a base fee some others for which maybe we find that they are not that final or there is not as much reproducibility on them or that you know uh there there might not be as necessary we're not going to put a base fee on them we compute the base fee sorry this is just over little n so there is no big n there this will be directly in if so there is no more notion of gas here because each is everything is priced in it

and similarly the transaction sender pays the transaction which is the base fee and the tip and some part the base fee is collected and then and reverse and then the tip is given to the validator now the question is now the updating parameter gamma and the Max resource are very important and this should capture some of the elasticity that we have seen the question now how do we measure demand elasticities in economics is that you want some exogenous random variation in Supply that you can isolate okay not just

through natural experiments just some random variation in Supply but the problem the problem is that we know that the prices need to depend only on the previous blocks because if you start depending on the content of the current block there can be some complex strategies from the validators and the participants so what would we can one approach to this what do we have currently So currently what we have is these are the in the price adjustment dynamics that you have for the case of ethereum for example so this is by leonardus and others is that when it with the constant adjustment parameter the block size so you have the block size in the y-axis and uh the demand range for w here this is over time how they when they adjust

prices the block is often a full or empty okay and the block size is chaotic okay when this adjustment parameter is constant if this adjustment parameter is doing was doing its job in the right way and calibrate to the right essentially elasticity what you would have is that you would have a mean reverting process okay because you have this target and you have a mean reverting process around this target and this mean reversion should be in a way in which that wouldn't have that

much variation okay so people who have studied this find that you have these Dynamics where this adjustment parameter when it's constant you have this kind of chaotic Behavior so one approach to measure to have this exogenous variation is the following and this is something that an approach that I'm starting to think of and this is my conjecture is that you want this to be a mean very uh um mean reverting process let's generate what would be the block size okay that would still be not too high to avoid taking too many risks but that would be generated through a

mean reverting process okay to uh parameter or reversion here that depends on the previous price this is the realized block before this is our Target of mean reversion and we add some noise so we don't take the block size that is fixed we add some noise on purpose using just only information from previous block and this is computed at the end of the previous block and just announced as as just announced before the we come to the next block okay so the block size announced before we come to the next block you can

compute all these before and then from there what happens if they realize the block is less than full and higher than the target you still do the adjustment but you're going to decrease the adjustment parameter okay because the problem right now is that the adjustment parameter is constant and so you're going either too slow and it doesn't catch up you know or it too fast and you get the zero or one block so you're making here this adjustment parameter dependent on the B here before and if they realize the block is too low okay compared to the what block size you have and lower than the Target and then you increase the adjustment parameter

while you're doing the adjustment what is happening here is that then by the frequency assuming that demand doesn't just change uh within like let's say 10 minutes and there you might you will have many blocks right demand doesn't just abrupt your chain within 10 you will have a sizeable demand this exogenous variation here can tell you good information about on the change in Supply can tell you good information about the demand elasticity and this helps you adjust the adjustment parameter so my conjecture is that this type of operation could have nice properties and that would be that is my uh proposal when it comes to quantitative things that we could do to measure these uh cross elasticities so that's all I had to say I'm happy yes

to answer your question Anthony oh yeah [Music] oh yeah yes absolutely I guess so yeah that's why this what is by changing the adjustment parameter here you're capturing this short run elasticity which is what you what you're looking at here to make you the blocks to make the price reflect that shortcut elasticity but do we want to make the pressure I mean if you want to price things right right because of the products sorry oh the long run so what do you exactly mean maybe we have different conditions like on the system presumably like some

days a drop is coming and then for a day like command is high and then some days there's no drop and for a daily demand as well right yes so I guess sort of in a sense but I'm not trying like again what I'm trying to say here I'm not trying to just say oh this is the elasticity and it's not going to change forever that's the key thing up that's why I'm talking about the that's why I'm talking about short-run elasticities here what I'm just acknowledging I I feel like you want already no I mean if you are choosing one parameter if you're choosing one parameter and looking at a policy with an infinite Horizon model you want the longer elasticity here what I'm doing is the adjustment of the elasticity to reflect what is the demand conditions in that the sensitive demand in that time

frame the adjustment parameter is trying to capture what is demand in the time frame once you hit the block size all it tells you is to increase it I'm just telling you now let me add some variation on this block side to tell you what rate should I be increasing to capture that and because of this there is no elasticity I'm capturing elasticity in that moment condition in that moment it's there is no that's why this is my way if you put in elasticities on the blockchain you're gonna get it wrong and this is my Approach of thinking of how can you find a tattoo on Mount process that is better than the current internal process and uh happy to discuss all right it was a lot of fun thanks a

lot [Applause] one of the sort of comment um it comes up in two different places I mean one thing that's very tricky about blockchains which is not there and sort of any traditional economics application is kind of deliberate manipulation helps the mechanisms by those who right and so like in two places I see that popping up what is the most recent one right where somehow like any idea 559 I feel like the updated rule is kind of deliberately very coarse and hard just to like minimize the attack surface

right so just that you know you can kind of predict the ways people might try to manipulate it so if you get more complicated we updated really into worry about more manipulations the other places when this idea which you said which I found very intriguing which is somehow almost like think about price at the level of a transaction statement as opposed to like compiling it down it's just like this raw gas suppressing the gas but so there I mean so there again like I like the idea but I worry also about sort of adversarial attacks right so like because like for example when when ethereum like works with those you know the gas costs of various top codes like if if they get them wrong then all of a sudden they're sort of open to Now sort

of synthetics like there's like bad people and bad minors in like a simple blocks which actually wind up taking any more resources than the gas cost would suggest right so so I do worry a little bit that if you just use only kind of the economics and not the engineering to sort of set those prices that there's going to be holes that can be exploited absolutely I 100 agree with that in fact you know I think but also one of the things to recognize now is there is multi-dimensional pricing right now but it's centralized one and and that's key thing too so there are already denial of service attacks because of the the actual pricing so I think the way to think about this is actually saying oh we should do less

pricing we should be more robust to this to these to these things there is already the multi-dimensional pricing what is what he's saying is like what are dimension in which maybe you want to do it right right so that so um on the point of on yeah on like uh yeah attacks I think one thing that I that's kind of was coming out is so here in our in this production function it captures strategic Behavior meaning people choosing what are they going to introduce in the block but it doesn't introduce but it's considering the block producer and the person who's writing the smart contract as one entity that's where I feel like there could be

some engineering gains as well and of course where economists also should learn a lot more about how to introduce the computer science aspects in it uh I will keep the following that the for the cross price adjustments I feel like this some of these insights I feel like are very robust for incentives and all other stuff over the whole payment I think that would be why where some some of like one of your Works did could be a lot of but we still always think of how you know not to set parameters in and I think this variation also on the supply in by introducing in ways of course I know randomization is tricky but announcing it before the block and using

some of the work of joke would maybe help and analyzing that more yes how this can be made the first part the one day pricing can be made into a proposal yeah do you think the cost curve looks like that you see right it seems you can approximate that usually by like uh sort of like like a square usage right yeah and you could like have a mechanism which rather than a block size Target yeah it just kind of feels like that like what that would do is have some elasticity with a block side increases when Gatsby's overall gases are higher right if you take that seriously it feels like that pretty decent you could decently approximate the like so the

optimum if you had a reasonable sense of what this cocktail looks like so you need a signal of when are you are and this is something I've discussed with Eddie and others think of what would be a good signal for oh my block size is too high right and costs can change and that is the issue you need yeah is because you're right now targeting a number I'm just saying you can replace the number of no I'm not targeting but they are yeah yeah yeah [Music] no they think it's they think it's a principle of caution I think you know you're not talking with people what they say is that when the block says high you can even have you know you can be a situation where you have a block that's higher and the harsh rate is higher because I thought heart rate would be a

good measure but you could have more specialized miners so Eddie was thinking maybe the topology and number of miners would be a good signal but the cost can change and so um like if the demand is higher you want to move around the curve right so I'm just saying that rather than always revert to the same block side when Soda yeah but what if you revert and you are here and then the social cost is very high at that moment we might be there anyway yeah so what are we there already so the same applies for fixing one block size right so yeah I mean look I agree that I agree that there is no theoretical reason why the blocks has to be fixed in fact the example that I showed were purposefully showing sums in which the block size that is chosen or two is too

small but uh you know yeah I agree that there could be more experimentation to do on this front as well yes so uh in one of your first Insight was that maybe we shouldn't price transactions as a sum of their health codes right so suppose ethereum had like a half of the transactions for token transfers and uh we want to make it cheaper for more people to do it and if we decrease the cost of just one token transfer to less than the sum of the top codes so what part of your analysis like what do you think will happen then like with the the demand for total transfers would increase because it's cheaper um so uh like what are the lessons learned from here so so I think so what what is imagine

there's half of token points first others are different the idea is kind of you want to put a price on token transfers the the leftover they're still priced by the market and competition but you're not going to control that right if you lower the base fee naturally I think what would happen is there would there might be more demand for for for that okay this so here it's like in the example of the principle of saying you want more of these Goods that are more like in a sense of necessity that's where you want to put more of a price it's not telling you no it depends on it depends on there is a Formula that I gave of course you need to think more deeply on the production function but it doesn't tell you or that

you should put a less price if you have Equity concerns which is not from here you would want to have less of a price on that but that's not like it would be a bad thing right if such an essential function then you'd want to make it more accessible and decrease the price rate yeah I'm saying you need to you want to set a price on it I'm not saying you need to have a lower price on it okay okay uh you need to yeah so okay sorry let me clarify so the the notion of the the necessity thing it's true like so it's like a you're gonna have a let me I I misspoke they are essential but if you care about that's like kind of I would say Equity concerns if you

just care about the revenue that you need to collect it's better to collect it from there because they are essential right and uh we don't have here a strong uh Equity kind of motive we're just looking at uh yeah more like efficiency it doesn't make sense but I agree with you in fact you know yeah one is one last thing about that so if we decrease the price of a token transfer by year definitions the individual benefit would increase but the marginal social cost would also increase because uh people now have to consider more token transfers for the cheaper gas price is that so if you decrease the price of a very popular transaction the marginal

social cost like the social cost would decrease right because uh now if you decrease the price there will be more of it so the social cost would increase no but miners would have to do the same check for a cheaper pricing you're if you decrease the gas no the price doesn't it's not the price is not what they are it's just the resources they're going to collect gonna be using which will determine the social cost they will be using more of it so they will they will be they will be using more of that resource that there will be larger cost to it for the whole network yes yes so the social class would increase yes yeah and uh in summary kind of when I was talking about the cross-dimensional I

think it's good to think of in terms of production rather than social costs and how it affects production social code doesn't tell us the how do you arbitr do the cross differences okay great all right thank you [Applause]