Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(docs): replace gas fee refund formulas with LaTeX #564

Merged
merged 1 commit into from
Aug 23, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 29 additions & 11 deletions docs/flashbots-auction/advanced/gas-fee-refunds.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,27 +73,45 @@ Bundles sent by the same signer will be treated as non-competitive.

### The Flat Tax Rule

<div className="med caption-img">

![Flat tax rule](/img/flat-tax-rule.png)

Definition of the flat tax rule

</div>
- **$B(T)$** is the most profitable block produced from bundles in $T$.
- **$v(T)$** is the value of $B(T)$.
- **$b_i(T)$** is the payment of all bundles sent by identity $i$ if block $B(T)$ is realized.
- **$\mu_i(T) = \min\{b_i(T), v(T) - v(T \setminus \{i\})\}$** is the marginal contribution of all bundles sent by identity $i$ if $B(T)$ is realized. We bound the marginal contribution so that the net payment can't be negative.
odysseus0 marked this conversation as resolved.
Show resolved Hide resolved
- **$c$** is the amount the builder pays to the proposer to win the block.

$$
\phi_i(T, c) = \frac{\mu_i(T)}{\sum_j \mu_j(T)} \min\{v(B(T)) - c, \sum_j \mu_j(T)\}
$$

So the net payment per identity (assuming it's included) is $p_i(T) = b_i(B(T)) - \phi_i(T, c)$.

Notice that if the block generates enough value after paying the proposer, everyone should be refunded their contribution, meaning everyone pays the minimum they need to pay to beat competition.

### Identity constraint

To avoid the rule being gamed by submitting bundles from multiple identities, we impose an additional constraint that no set of identities can receive in total more refunds than they contribute to the block.

<div className="med caption-img">
For each set of identities $I$ we define

$$
\mu_I(T) = \min\{\sum_{i\in I} b_i(T), v(T) - v(T \setminus I)\},
$$

to be the joint marginal contribution of the identities in $I$ to the block. Then we choose rebates that are minimally different from the flat-tax rule subject to the constraint that they don't rebate a set of bundles more in total than its joint marginal contribution. This means the vector of rebates $\psi(T, c)$ solves

$$
\min_{r\in\mathbb{R}^n_+} \sum_i (r_i - \phi_i(T, c))^2
$$

![Identity constraint](/img/identity-constraint.png)
$$
\text{subject to} \sum_{i\in I} r_i \leq \mu_I(T) \text{ for each } I \subseteq B(T),
$$

Definition of the identity constraint
$$
\sum_i r_i \leq v(T) - c
$$

</div>
where $\phi(T, c)$ are the orginal flat-tax rebates as defined above.

## Who receives refunds

Expand Down
Loading