mirror of https://github.com/zcash/zips.git
Merge pull request #712 from zancas/zip317
Mark each protocol-specific logical_action as such, and sum across them
This commit is contained in:
commit
265cd39c19
|
@ -118,12 +118,18 @@ Pull-Request: <<a href="https://github.com/zcash/zips/pull/631">https://githu
|
|||
</table>
|
||||
<p>Wallets implementing this specification SHOULD use a conventional fee calculated in zatoshis per the following formula:</p>
|
||||
<div class="math">\(\begin{array}{rcl}
|
||||
logical\_actions &=& \mathsf{max}\big(\mathsf{ceiling}\big(\frac{tx\_in\_total\_size}{p2pkh\_standard\_input\_size}\big),
|
||||
\mathsf{ceiling}\big(\frac{tx\_out\_total\_size}{p2pkh\_standard\_output\_size}\big)\big) \;+ \\
|
||||
& & 2 \cdot nJoinSplit \;+ \\
|
||||
& & \mathsf{max}(nSpendsSapling, nOutputsSapling) \;+ \\
|
||||
& & nActionsOrchard \\
|
||||
conventional\_fee &=& marginal\_fee \cdot \mathsf{max}(grace\_actions, logical\_actions)
|
||||
contribution_{\,\mathsf{Transparent}} &=&
|
||||
\mathsf{max}\big(\mathsf{ceiling}\big(\frac{tx\_in\_total\_size}{p2pkh\_standard\_input\_size}\big),\,
|
||||
\mathsf{ceiling}\big(\frac{tx\_out\_total\_size}{p2pkh\_standard\_output\_size}\big)\big) \\
|
||||
contribution_{\,\rlap{\mathsf{Sprout}}\phantom{\mathsf{Transparent}}} &=& 2 \cdot nJoinSplit \\
|
||||
contribution_{\,\rlap{\mathsf{Sapling}}\phantom{\mathsf{Transparent}}} &=& \mathsf{max}(nSpendsSapling,\, nOutputsSapling) \\
|
||||
contribution_{\,\rlap{\mathsf{Orchard}}\phantom{\mathsf{Transparent}}} &=& nActionsOrchard \\
|
||||
\\
|
||||
logical\_actions &=& contribution_{\,\mathsf{Transparent}} +
|
||||
contribution_{\,\mathsf{Sprout}} +
|
||||
contribution_{\,\mathsf{Sapling}} +
|
||||
contribution_{\,\mathsf{Orchard}} \\
|
||||
conventional\_fee &=& marginal\_fee \cdot \mathsf{max}(grace\_actions,\, logical\_actions)
|
||||
\end{array}\)</div>
|
||||
<p>The inputs to this formula are taken from transaction fields defined in the Zcash protocol specification <a id="footnote-reference-4" class="footnote_reference" href="#protocol-txnencoding">3</a>:</p>
|
||||
<table>
|
||||
|
|
18
zip-0317.rst
18
zip-0317.rst
|
@ -113,12 +113,18 @@ calculated in zatoshis per the following formula:
|
|||
.. math::
|
||||
|
||||
\begin{array}{rcl}
|
||||
logical\_actions &=& \mathsf{max}\big(\mathsf{ceiling}\big(\frac{tx\_in\_total\_size}{p2pkh\_standard\_input\_size}\big),
|
||||
\mathsf{ceiling}\big(\frac{tx\_out\_total\_size}{p2pkh\_standard\_output\_size}\big)\big) \;+ \\
|
||||
& & 2 \cdot nJoinSplit \;+ \\
|
||||
& & \mathsf{max}(nSpendsSapling, nOutputsSapling) \;+ \\
|
||||
& & nActionsOrchard \\
|
||||
conventional\_fee &=& marginal\_fee \cdot \mathsf{max}(grace\_actions, logical\_actions)
|
||||
contribution_{\,\mathsf{Transparent}} &=&
|
||||
\mathsf{max}\big(\mathsf{ceiling}\big(\frac{tx\_in\_total\_size}{p2pkh\_standard\_input\_size}\big),\,
|
||||
\mathsf{ceiling}\big(\frac{tx\_out\_total\_size}{p2pkh\_standard\_output\_size}\big)\big) \\
|
||||
contribution_{\,\rlap{\mathsf{Sprout}}\phantom{\mathsf{Transparent}}} &=& 2 \cdot nJoinSplit \\
|
||||
contribution_{\,\rlap{\mathsf{Sapling}}\phantom{\mathsf{Transparent}}} &=& \mathsf{max}(nSpendsSapling,\, nOutputsSapling) \\
|
||||
contribution_{\,\rlap{\mathsf{Orchard}}\phantom{\mathsf{Transparent}}} &=& nActionsOrchard \\
|
||||
\\
|
||||
logical\_actions &=& contribution_{\,\mathsf{Transparent}} +
|
||||
contribution_{\,\mathsf{Sprout}} +
|
||||
contribution_{\,\mathsf{Sapling}} +
|
||||
contribution_{\,\mathsf{Orchard}} \\
|
||||
conventional\_fee &=& marginal\_fee \cdot \mathsf{max}(grace\_actions,\, logical\_actions)
|
||||
\end{array}
|
||||
|
||||
The inputs to this formula are taken from transaction fields defined in the Zcash protocol
|
||||
|
|
Loading…
Reference in New Issue