GOOB (Gradual Ownership Optimization, Better)

For context please read the GOO paper by Paradigm:

https://www.paradigm.xyz/2022/09/goo

This article is not a dig at paradigm or GOO. I enjoy the concept and it was fun to play with differential equations again. GOO is likely to be a stepping stone for future emission schedules but there are shortcomings. GOO is effective at solving the intended problems but creates new problems.

The Math

GOO is “emitted” by Art Gobblers by integrating across an instantaneous emission over time. Since the emission schedule is solely based on time the accounting is simple. There are no dynamic or lookup values. The code for determining GOO in a GOO tank is optimized to limit gas transactions with Ethereum because of the time based nature of the emissions. The basis on time would be considered “an elegant solution” if it were in the field of physics.

In terms of the theoretical mathematics, GOO is pretty brilliant in aligning ownership of Gobblers and GOO. The supply is increasing according to a quadratic equation. That means in the short term it rewards early adopters and causes a push to stake. In the long term, the GOO distribution will trend towards a proportional distribution amongst staked Gobblers. This trend is defined by a first order, differential equation.

Distribution of GOO according to the whitepaper
Distribution of GOO according to the whitepaper

The dominant term in this equation:

Goo Distribution dominant term
Goo Distribution dominant term

A dominant term leads to the largest distribution over the long term. You may remember that a Gobbler’s prospective distribution is related to this quadratic term.

Long term distribution
Long term distribution

However, in order to remain in step with the rest of the Gobbler’s, you will need to continue to have this amount remain in your Gobbler’s Goo tank. That means the effective distribution of goo is:

Effective Goo distribution
Effective Goo distribution

This is a really cool solution! Since this is not the dominant term in the distribution then it is not long-term important to earning GOO through staking. The GOO method has an effective linear distribution (mx+b) but Gobblers also have a strong incentive to remain staked. Otherwise, you will lose market share to other Gobblers. You mimic other successful token distribution (linear) with a strong incentive (quadratic).

Problem

Tokens based on NFTs are speculative and create a utility for which the base NFT can be valued. The primary utility of tokens at this moment is to give non-holders exposure, utility within an ecosystem created by the NFT team, and social arbitrage trading with higher liquidity than NFTs. This social arbitrage trading is a mix between speculation, technical trading and the social nature of NFTs.

The GOO distribution method removes the largest, current utilities of tokens while enabling a definitive valuation method for Gobblers. The NFT can be valued by the rate of GOO disbursement and the value of GOO is solely determined by the utility within the ecosystem. If the Gobbler founders are not creating tangible value for the ecosystem on a consistent basis then cumulative GOO will decline in value. The creation of value is needed to only maintain the value of GOO.

Most tokens can retain value by distributing the token to non-holders of NFTs. This gives those holders a piece of the action. It also creates sinks for the token which are social/marketing driven. Most projects rely on marketing in order to drive value to tokens and NFTs because that has been the easiest way to prop up price. This is removed for GOO. Real value will need to be infused into the ecosystem.

The decline in value of GOO can be alleviated without constant value creation, but that is only by correlating the GOO sinks with the issuance. This is known as inflation. Inflation of GOO creates an added incentive to stake early. If you do not then you will not be able to afford anything within the ecosystem. This is problematic for the long term success of the project.

GOO removes some of the primary drivers of value to tokens. In addition, most token driven projects are valued on the rate of value accrual to the NFTs. If the Gobbler team is not constantly driving value then they are inflating away the value of GOO and the Gobbler. The Gobbler team is additionally handicapped because outside holders do not have incentive to hold GOO. This means the easiest and most successful driver of perceived value is unavailable for the team. This is all assuming we are using the effective issuance rate (linear).

The final issue is the concern of hyper inflation. If Gobblers enter into a floor price free fall then all GOO will used from the tank in order to recoup value from the ecosystem. That would further devalue the Gobblers as vast sums of GOO enter the market to remove any available value. This hyper inflation event becomes more dangerous as time passes. The funds are only locked up on the continued addition of value to the GOO ecosystem and those funds are increasing at a quadratic rate. If this event happens 12 months instead of 1 month from now then the results would be 144x worse.

Solution

One of the most interesting parts of the GOO model is the dependence on time. This makes the GOO tank novel and easy to implement without using gas to update the GOO within the GOO tank. However, the easiest solution to the inflating GOO is to have a limit for GOO. I’d propose that this limit is based on the amount of GOO in the ecosystem. This makes the implementation within the contract slightly more difficult.

By using a function of the GOO distributed in the denominator of the issuance rate, you can set a limit on the total amount of GOO distributed. As GOO increases, the issuance g’(t) will trend toward 0 assuming no GOO is burned:

Proposed Goo distribution
Proposed Goo distribution

GOO now varies based on the total distributed GOO and the burned GOO. “m” is some multiplier which influences total supply and distribution rate and is related to current Gobbler multiplier values. The issuance is still restrained to Gobblers but GOO disbursal is constrained if not used. This distribution can be used to maintain holder-founder alignment during the growth phase of the project.

New Problems

This solution would require a different method of accounting than is used in the GOO contract because the Circulating GOO is not solely based on time. Instead, it has aspects of a piecewise function. When holders spend GOO then the burned GOO will increase. An increase in burned supply creates an increase in the distribution of GOO.

Piecewise functions require a new integration event at every break interval. So every time someone spends GOO then there needs to be an accounting function which modifies the accrual rate of Gobblers. This is not insurmountable but is important to acknowledge. In effect, the GOO contract needs to update at least one lookup value whenever GOO is burned.

If we wanted to make this equation easier to solve then we should have two lookup values: distributed GOO and supply BURNED. This would define both f(GOO) and h(BURNED) to be piecewise functions which create a recursive sequence. The consequence of this solution is easier mathematics but a non-fixed limit. We know the limit is not fixed because the lookup values would only be updated when the contract has an interaction (or other specified event). This would make the recursive steps inconsistent. With inconsistent steps we could imagine a set of events that leads to longer periods of token accrual after large burn events which increases the effective limit.

The equation would look something like:

Piecewise Issuance
Piecewise Issuance

y in the above equation is a multiplier which influences the limit of GOO. There can be multipliers on both sum of GOO and sum of BURNED. I have simplified the equation but a couple expanded formulas can be found below:

This is an arbitrarily expanded example showing how you are applying different multipliers to all the variables through x and y
This is an arbitrarily expanded example showing how you are applying different multipliers to all the variables through x and y

Every time there is a transaction then GOO and BURNED will be updated. This solution is less pleasing from a pure math standpoint but more pleasing from an issuance standpoint. There are further modifications that can be used but this is the simplest form of a piecewise, lookup function.

The other problem with this distribution is this is no longer a GOO contract. GOO accomplishes most of its quoted goals by inflating away holders of the token who do not hold an NFT. Instead, this solution caps the amount of available tokens which could allow a future where token speculators are able to hold tokens without being inflated to zero. However, this system could allow you to have an initial inflation phase and then an adoption phase. There are some lost benefits of the GOO function.

GOOB

There were some interesting aspects of token accrual as a function of Gobbler and Token ownership like an effective distribution and enhanced alignment. So let’s add that back in. We are going to define our GOOB function as G(t) and allow GOO to be g(t). Thus we get:

GOOB Formula
GOOB Formula

However, we also know that between GOOB transactions that GOO and BURNED are static values. So we can define a value “q” such that:

post image

This formula is true between discrete points in time “a” and “b” where there are no transactions which update our lookup values. Simply, q is a static value for definable periods of time and can be replaced by a constant. We can now solve for G(t):

Total GOOB over a discrete time period
Total GOOB over a discrete time period

This will beg the question of whether or not this token emission schedule has a limit. To make this question easier to answer, we will only consider our equation with a few assumptions: BURNED is a insignificant value compared to GOO, the value x (from the definition of q) is equal to the square root of m; t increments by 1; our non-rigorous proof extends across discrete look up value periods; and we are only considering the positive values of G(t). Thus we need to show:

Derived from G'(t)
Derived from G'(t)

Expanding we get:

post image

Since t is assumed to increment by 1 we can use the definition:

post image

Here we have shown (in a non rigorous manner) that as long as n is greater than or equal to 2, our equation is dominated by (GOO). This is not an exact solution because the time integrals t are not constant. However, we are taking the limit as t → infinity. We would expect some real value of t such that the summation of GOO is larger than the value of mt. That value is an inflection point and since we are approaching infinity then GOO will dominate mt. I’m lazy so I encourage anyone to be more rigorous with this proof or generalize the proof.

Closing Thoughts

These formulas are no longer the GOO formula. Instead we have shown two methods of implementing a system that has a limit defined by usage and ownership. This method does not allow the token value to be inflated to zero. Our GOOB formulation would allow a GOO like distribution model which allows holders of token and Gobbler to earn higher levels of tokens.

This solution is not fully complete. I encourage everyone to think through edge scenarios and methods to improve this token disbursement model. This is a stepping stone for future endeavors.