-
Notifications
You must be signed in to change notification settings - Fork 68
/
Copy pathdefinitions.tex
316 lines (297 loc) · 23.1 KB
/
definitions.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
\section{Index of Notation}\label{sec:definitions}
\subsection{Sets}
\subsubsection{Regular Notation}
\begin{description}
\item[$\N$] The set of non-negative integers. Subscript denotes one greater than the maximum. See section \ref{sec:numbers}.
\begin{description}
\item[$\N^+$] The set of positive integers (not including zero).
\item[$\N_B$] The set of balance values. Equivalent to $\N_{2^{64}}$. See equation \ref{eq:balance}.
\item[$\N_G$] The set of unsigned gas values. Equivalent to $\mathbb{N}_{2^{64}}$. See equation \ref{eq:gasregentry}.
\item[$\N_L$] The set of blob length values. Equivalent to $\N_{2^{32}}$. See section \ref{sec:numbers}.
\item[$\N_R$] The set of register values. Equivalent to $\N_{2^{64}}$. See equation \ref{eq:gasregentry}.
\item[$\N_S$] The set from which service indices are drawn. Equivalent to $\N_{2^{32}}$. See section \ref{eq:serviceaccounts}.
\item[$\N_T$] The set of timeslot values. Equivalent to $\N_{2^{32}}$. See equation \ref{eq:time}.
\end{description}
\item[$\mathbb{Q}$] The set of rational numbers. Unused.
\item[$\mathbb{R}$] The set of real numbers. Unused.
\item[$\mathbb{Z}$] The set of integers. Subscript denotes range. See section \ref{sec:numbers}.
\begin{description}
\item[$\Z_G$] The set of signed gas values. Equivalent to $\mathbb{Z}_{-2^{63}\dots2^{63}}$. See equation \ref{eq:gasregentry}.
\end{description}
\end{description}
\subsubsection{Custom Notation}
\begin{description}
\item[$\mathbb{A}$] The set of service accounts. See equation \ref{eq:serviceaccount}.
\item[$\mathbb{B}$] The set of Boolean sequences/bitstrings. Subscript denotes length. See section \ref{sec:sequences}.
\item[$\mathbb{C}$] The set of seal-key tickets. See equation \ref{eq:ticket}. \emph{Not used as the set of complex numbers.}
\item[$\mathbb{D}$] The set of dictionaries. See section \ref{sec:dictionaries}.
\begin{description}
\item[$\dict{K}{V}$] The set of dictionaries making a partial bijection of domain $K$ to range $V$. See section \ref{sec:dictionaries}.
\end{description}
\item[$\mathbb{E}$] The set of valid Ed25519 signatures. A subset of $\Y_{64}$. See section \ref{sec:cryptography}.
\begin{description}
\item[$\sig{K}{M}$] The set of valid Ed25519 signatures of the key $K$ and message $M$. A subset of $\mathbb{E}$. See section \ref{sec:cryptography}.
\end{description}
\item[$\mathbb{F}$] The set of Bandersnatch signatures. A subset of $\Y_{64}$. See section \ref{sec:cryptography}. \emph{NOTE: Not used as finite fields.}
\begin{description}
\item[$\bandersig{K}{C}{M}$] The set of Bandersnatch signatures of the public key $K$, context $C$ and message $M$. A subset of $\mathbb{F}$. See section \ref{sec:cryptography}.
\item[$\bar{\mathbb{F}}$] The set of Bandersnatch Ring\textsc{vrf} proofs. See section \ref{sec:cryptography}.
\item[$\bandersnatch{R}{C}{M}$] The set of Bandersnatch Ring\textsc{vrf} proofs of the root $R$, context $C$ and message $M$. A subset of $\bar{\mathbb{F}}$. See section \ref{sec:cryptography}.
\end{description}
\item[$\mathbb{G}$] The set of data segments, equivalent to octet sequences of length $\mathsf{W}_G$. See equation \ref{eq:segment}.
\item[$\H$] The set of 32-octet cryptographic values. A subset of $\Y_{32}$. $\H$ without a subscript generally implies a hash function result. See section \ref{sec:cryptography}. \emph{NOTE: Not used as quaternions.}
\begin{description}
\item[$\H_B$] The set of Bandersnatch public keys. A subset of $\Y_{32}$. See section \ref{sec:cryptography} and appendix \ref{sec:bandersnatch}.
\item[$\H_E$] The set of Ed25519 public keys. A subset of $\Y_{32}$. See section \ref{sec:signing}.
\end{description}
\item[$\mathbb{I}$] The set of work items. See equation \ref{eq:workitem}.
\item[$\mathbb{J}$] The set of work execution errors.
\item[$\mathbb{K}$] The set of validator key-sets. See equation \ref{eq:validatorkeys}.
\item[$\mathbb{L}$] The set of work results.
\item[$\mathbb{M}$] The set of \textsc{pvm} \textsc{ram} states. A superset of $\Y_{2^{32}}$. See appendix \ref{sec:virtualmachine}.
\item[$\mathbb{O}$] The accumulation operand element, corresponding to a single work result.
\item[$\mathbb{P}$] The set of work-packages. See equation \ref{eq:workpackage}.
\item[$\mathbb{S}$] The set of availability specifications.
\item[$\mathbb{T}$] The set of deferred transfers.
\item[$\mathbb{U}$] The set of partial state, used during accumulation. See equation \ref{eq:partialstate}. \item[$\mathbb{V}_{\memory}$] The set of validly readable indices for \textsc{pvm} \textsc{ram} $\memory$. See appendix \ref{sec:virtualmachine}.
\item[$\mathbb{V}^*_{\memory}$] The set of validly writable indices for \textsc{pvm} \textsc{ram} $\memory$. See appendix \ref{sec:virtualmachine}.
\item[$\mathbb{W}$] The set of work-reports.
\item[$\mathbb{X}$] The set of refinement contexts.
\item[$\Y$] The set of octet strings/``blobs''. Subscript denotes length. See section \ref{sec:sequences}.
\begin{description}
\item[$\Y_{BLS}$] The set of BLS public keys. A subset of $\Y_{144}$. See section \ref{sec:signing}.
\item[$\Y_R$] The set of Bandersnatch ring roots. A subset of $\Y_{144}$. See section \ref{sec:cryptography} and appendix \ref{sec:bandersnatch}.
\end{description}
\end{description}
\subsection{Functions}
\begin{description}
% \item[$\Gamma$] Unused. % Γ
\item[$\Delta$] The accumulation function; certain subscripts are used to denote helper functions: % Δ
\begin{description}
\item[$\Delta_1$] The single-step accumulation function.
\item[$\Delta_*$] The parallel accumulation function.
\item[$\Delta_+$] The full sequential accumulation function.
\end{description}
% \item[$\gascounter$] Unused. % Θ
% \item[$\Pi$] Unused. % Π
\item[$\Lambda$] The historical lookup function. See equation \ref{eq:historicallookup}. % Λ
\item[$\Xi$] The work result computation function. See equation \ref{eq:workresultfunction}. % Ξ
\item[$\Upsilon$] The general state transition function. See equations \ref{eq:statetransition}, \ref{eq:transitionfunctioncomposition}. % ϒ
% \item[$\Sigma$] Unused. % Σ
\item[$\Phi$] The key-nullifier function. See equation \ref{eq:blacklistfilter}. % Φ
\item[$\Psi$] The whole-program \textsc{pvm} machine state-transition function. See equation \ref{sec:virtualmachine}. % Ψ
\begin{description}
\item[$\Psi_1$] The single-step (\textsc{pvm}) machine state-transition function. See appendix \ref{sec:virtualmachine}. % Ψ
\item[$\Psi_A$] The Accumulate \textsc{pvm} invocation function. See appendix \ref{sec:virtualmachineinvocations}.
\item[$\Psi_H$] The host-function invocation (\textsc{pvm}) with host-function marshalling. See appendix \ref{sec:virtualmachine}. % Ψ
\item[$\Psi_I$] The Is-Authorized \textsc{pvm} invocation function. See appendix \ref{sec:virtualmachineinvocations}.
\item[$\Psi_M$] The marshalling whole-program \textsc{pvm} machine state-transition function. See appendix \ref{sec:virtualmachine}. % Ψ
\item[$\Psi_R$] The Refine \textsc{pvm} invocation function. See appendix \ref{sec:virtualmachineinvocations}.
\item[$\Psi_T$] The On-Transfer \textsc{pvm} invocation function. See appendix \ref{sec:virtualmachineinvocations}.
\end{description}
\item[$\Omega$] Virtual machine host-call functions. See appendix \ref{sec:virtualmachineinvocations}. % Ω
\begin{description}
\item[$\Omega_A$] Assign-core host-call.
\item[$\Omega_B$] Empower-service host-call.
\item[$\Omega_C$] Checkpoint host-call.
\item[$\Omega_D$] Designate-validators host-call.
\item[$\Omega_E$] Export segment host-call.
\item[$\Omega_F$] Forget-preimage host-call.
\item[$\Omega_G$] Gas-remaining host-call.
\item[$\Omega_H$] Historical-lookup-preimage host-call.
\item[$\Omega_I$] Information-on-service host-call.
\item[$\Omega_J$] Eject-service host-call.
\item[$\Omega_K$] Kickoff-\textsc{pvm} host-call.
\item[$\Omega_L$] Lookup-preimage host-call.
\item[$\Omega_M$] Make-\textsc{pvm} host-call.
\item[$\Omega_N$] New-service host-call.
\item[$\Omega_O$] Poke-\textsc{pvm} host-call.
\item[$\Omega_P$] Peek-\textsc{pvm} host-call.
\item[$\Omega_Q$] Query-preimage host-call.
\item[$\Omega_R$] Read-storage host-call.
\item[$\Omega_S$] Solicit-preimage host-call.
\item[$\Omega_T$] Transfer host-call.
\item[$\Omega_U$] Upgrade-service host-call.
\item[$\Omega_V$] Void inner-\textsc{pvm} memory host-call.
\item[$\Omega_W$] Write-storage host-call.
\item[$\Omega_X$] Expunge-\textsc{pvm} host-call.
\item[$\Omega_Y$] Fetch data host-call.
\item[$\Omega_Z$] Zero inner-\textsc{pvm} memory host-call.
\item[$\Omega_\Taurus$] Yield accumulation trie result host-call.
\end{description}
\end{description}
\subsection{Utilities, Externalities and Standard Functions}
\begin{description}
\item[$\mathcal{A}(\dots)$] The Merkle mountain range append function. See equation \ref{eq:mmrappend}.
\item[$\mathcal{B}_n(\dots)$] The octets-to-bits function for $n$ octets. Superscripted ${}^{-1}$ to denote the inverse. See equation \ref{eq:bitsfunc}.
\item[$\mathcal{C}(\dots)$] The group of erasure-coding functions.
\item[$\mathcal{C}_n(\dots)$] The erasure-coding functions for $n$ chunks. See equation \ref{eq:erasurecoding}.
% \item[$\mathcal{D}$] Unused.
\item[$\se(\dots)$] The octet-sequence encode function. Superscripted ${}^{-1}$ to denote the inverse. See appendix \ref{sec:serialization}.
\item[$\mathcal{F}(\dots)$] The Fisher-Yates shuffle function. See equation \ref{eq:suffle}.
\item[$\mathcal{H}(\dots)$] The Blake 2b 256-bit hash function. See section \ref{sec:cryptography}.
\item[$\mathcal{H}_K(\dots)$] The Keccak 256-bit hash function. See section \ref{sec:cryptography}.
% \item[$\mathcal{G}$] Unused.
% \item[$\mathcal{I}$] Unused.
\item[$\mathcal{J}_x$] The justification path to a specific $2^x$ size page of a constant-depth Merkle tree. See equation \ref{eq:constantdepthsubtreemerklejust}.
\item[$\mathcal{K}(\dots)$] The domain, or set of keys, of a dictionary. See section \ref{sec:dictionaries}.
\item[$\mathcal{L}_x$] The $2^x$ size page function for a constant-depth Merkle tree. See equation \ref{eq:constantdepthsubtreemerkleleafpage}.
\item[$\mathcal{M}(\dots)$] The constant-depth binary Merklization function. See appendix \ref{sec:merklization}.
\item[$\mathcal{M}_B(\dots)$] The well-balanced binary Merklization function. See appendix \ref{sec:merklization}.
\item[$\mathcal{M}_\sigma(\dots)$] The state Merklization function. See appendix \ref{sec:statemerklization}.
\item[$\mathcal{N}(\dots)$] The erasure-coding chunks function. See appendix \ref{sec:erasurecoding}.
\item[$\mathcal{O}(\dots)$] The Bandersnatch ring root function. See section \ref{sec:cryptography} and appendix \ref{sec:bandersnatch}.
\item[$\mathcal{P}_n(\dots)$] The octet-array zero-padding function. See equation \ref{eq:zeropadding}.
\item[$\mathcal{Q}(\dots)$] The numeric-sequence-from-hash function. See equation \ref{eq:sequencefromhash}.
\item[$\mathcal{R}$] The group of erasure-coding piece-recovery functions.
\item[$\mathcal{S}_k(\dots)$] The general signature function. See section \ref{sec:cryptography}.
\item[$\mathcal{T}$] The current time expressed in seconds after the start of the \Jam Common Era. See section \ref{sec:commonera}.
\item[$\mathcal{U}(\dots)$] The substitute-if-nothing function. See equation \ref{eq:substituteifnothing}.
\item[$\mathcal{V}(\dots)$] The range, or set of values, of a dictionary or sequence. See section \ref{sec:dictionaries}.
\item[$\mathcal{X}_n(\dots)$] The signed-extension function for a value in $\N_{2^{8n}}$. See equation \ref{eq:signedextension}.
\item[$\mathcal{Y}(\dots)$] The alias/output/entropy function of a Bandersnatch \textsc{vrf} signature/proof. See section \ref{sec:cryptography} and appendix \ref{sec:bandersnatch}.
\item[$\mathcal{Z}_n(\dots)$] The into-signed function for a value in $\N_{2^{8n}}$. Superscripted with ${}^{-1}$ to denote the inverse. See equation \ref{eq:signedfunc}.
\item[$\powset{\dots}$] Power set function.
\end{description}
\subsection{Values}
\subsubsection{Block-context Terms}
These terms are all contextualized to a single block. They may be superscripted with some other term to alter the context and reference some other block.
\begin{description}
\item[$\mathbf{A}$] The ancestor set of the block. See equation \ref{eq:ancestors}.
\item[$\mathbf{B}$] The block. See equation \ref{eq:block}.
\item[$\beefycommitmap$] The service accumulation-commitment, used to form the \textsc{Beefy} root. See equation \ref{eq:beefycommitment}.
\item[$\mathbf{E}$] The block extrinsic. See equation \ref{eq:extrinsic}.
\item[$\mathbf{F}_v$] The \textsc{Beefy} signed commitment of validator $v$. See equation \ref{eq:beefysignedcommitment}.
\item[$\mathbf{G}$] The mapping from cores to guarantor keys. See section \ref{sec:coresandvalidators}.
\item[$\mathbf{G^*}$] The mapping from cores to guarantor keys for the previous rotation. See section \ref{sec:coresandvalidators}.
\item[$\mathbf{H}$] The block header. See equation \ref{eq:header}.
\item[$\mathbf{I}$] The sequence of work-reports which were accumulated this in this block. See equation \ref{eq:accumulatedreports}.
\item[$\mathbf{Q}$] The selection of ready work-reports which a validator determined they must audit. See equation \ref{eq:auditselection}.
\item[$\mathbf{R}$] The set of Ed25519 guarantor keys who made a work-report. See equation \ref{eq:guarantorsig}.
\item[$\mathbf{S}$] The set of indices of services which have been accumulated (``progressed'') in the block. See equation \ref{eq:servicestoaccumulate}.
\item[$\mathbf{T}$] The ticketed condition, true if the block was sealed with a ticket signature rather than a fallback. See equations \ref{eq:ticketconditiontrue} and \ref{eq:ticketconditionfalse}.
\item[$\mathbf{U}$] The audit condition, equal to $\top$ once the block is audited. See section \ref{sec:auditing}.
\item[$\mathbf{V}$] The set of verdicts in the present block. See equation \ref{eq:verdicts}.\\
\item[$\mathbf{W}$] The sequence of work-reports which have now become available and ready for accumulation. See equation \ref{eq:availableworkreports}.
\item[$\mathbf{X}$] The sequence of transfers implied by the block's accumulations. See equation \ref{eq:deferredtransfers}.\\
\end{description}
Without any superscript, the block is assumed to the block being imported or, if no block is being imported, the head of the best chain (see section \ref{sec:bestchain}). Explicit block-contextualizing superscripts include:
\begin{description}
\item[$\mathbf{B}^\natural$] The latest finalized block. See equation \ref{sec:bestchain}.
\item[$\mathbf{B}^\flat$] The block at the head of the best chain. See equation \ref{sec:bestchain}.
\end{description}
\subsubsection{State components}
Here, the prime annotation indicates posterior state. Individual components may be identified with a letter subscript.
\begin{description}
\item[$\alpha$] The core $\alpha$uthorizations pool. See equation \ref{eq:authstatecomposition}. % α
\item[$\beta$] Information on the most recent $\beta$locks. % β
\item[$\gamma$] State concerning Safrole. See equation \ref{eq:consensusstatecomposition}. % γ
\begin{description}
\item[$\gamma_\mathbf{a}$] The sealing lottery ticket accumulator.
\item[$\gamma_\mathbf{k}$] The keys for the validators of the next epoch, equivalent to those keys which constitute $\gamma_z$.
\item[$\gamma_\mathbf{s}$] The sealing-key sequence of the current epoch.
\item[$\gamma_z$] The Bandersnatch root for the current epoch's ticket submissions.
\end{description}
\item[$\accountspre$] The (prior) state of the service accounts. % δ
\begin{description}
\item[$\accountspostacc$] The post-accumulation, pre-transfer intermediate state. % δ
\item[$\accountspostxfer$] The post-transfer, pre-preimage integration intermediate state. % δ
\end{description}
\item[$\eta$] The e$\eta$tropy accumulator and epochal ra$\eta$domness. % η
\item[$\iota$] The validator keys and metadata to be drawn from next. % ι
\item[$\kappa$] The validator $\kappa$eys and metadata currently active. % κ
\item[$\lambda$] The validator keys and metadata which were active in the prior epoch. % λ
\item[$\rho$] The $\rho$ending reports, per core, which are being made available prior to accumulation. % ρ
\begin{description}
\item[$\rho^\dagger$] The post-judgment, pre-guarantees-extrinsic intermediate state. % δ
\item[$\rho^\ddagger$] The post-guarantees-extrinsic, pre-assurances-extrinsic, intermediate state. % δ
\end{description}
\item[$\sigma$] The $\sigma$verall state of the system. See equations \ref{eq:statetransition}, \ref{eq:statecomposition}. % σ
\item[$\tau$] The most recent block's $\tau$imeslot. % τ
\item[$\varphi$] The authorization queue. % ϕ
\item[$\psi$] Past judgments on work-reports and validators. % ψ
\begin{description}
\item[$\badset$] Work-reports judged to be incorrect.
\item[$\goodset$] Work-reports judged to be correct.
\item[$\wonkyset$] Work-reports whose validity is judged to be unknowable.
\item[$\offenders$] Validators who made a judgment found to be incorrect.
\end{description}
\item[$\chi$] The privileged service indices. % χ
\begin{description}
\item[$\chi_m$] The index of the blessed service.
\item[$\chi_v$] The index of the designate service.
\item[$\chi_a$] The index of the assign service.
\item[$\chi_\mathbf{g}$] The always-accumulate service indices and their basic gas allowance.
\end{description}
\item[$\pi$] The activity statistics for the validators. % π
\item[$\vartheta$] The accumulation queue. % ϑ
\item[$\xi$] The accumulation history. % ξ
\end{description}
% θ
\subsubsection{Virtual Machine components}
\begin{description}
\item[$\varepsilon$] The exit-reason resulting from all machine state transitions. % ε
\item[$\nu$] The immediate values of an instruction. % ν
\item[$\memory$] The memory sequence; a member of the set $\mathbb{M}$. % μ
\item[$\gascounter$] The gas counter. % ϱ
\item[$\registers$] The registers. % ω
\item[$\zeta$] The instruction sequence. % ζ
\item[$\varpi$] The sequence of basic blocks of the program. % ϖ
\item[$\imath$] The instruction counter. % ı
\end{description}
\subsubsection{Constants}
\begin{description}
\item[$\mathsf{A} = 8$] The period, in seconds, between audit tranches.
\item[$\mathsf{B}_I = 10$] The additional minimum balance required per item of elective service state.
\item[$\mathsf{B}_L = 1$] The additional minimum balance required per octet of elective service state.
\item[$\mathsf{B}_S = 100$] The basic minimum balance which all services require.
\item[$\mathsf{C} = 341$] The total number of cores.
\item[$\mathsf{D} = 28,800$] The period in timeslots after which an unreferenced preimage may be expunged.
\item[$\mathsf{E} = 600$] The length of an epoch in timeslots.
\item[$\mathsf{F} = 2$] The audit bias factor, the expected number of additional validators who will audit a work-report in the following tranche for each no-show in the previous.
\item[$\mathsf{G}_A = 10,000,000$] The gas allocated to invoke a work-report's Accumulation logic.
\item[$\mathsf{G}_I = 50,000,000$] The gas allocated to invoke a work-package's Is-Authorized logic.
\item[$\mathsf{G}_R = 5,000,000,000$] The gas allocated to invoke a work-package's Refine logic.
\item[$\mathsf{G}_T = 3,500,000,000$] The total gas allocated across for all Accumulation. Should be no smaller than $\mathsf{G}_A\cdot\mathsf{C} + \sum_{g \in \mathcal{V}(\chi_\mathbf{g})}(g)$.
\item[$\mathsf{H} = 8$] The size of recent history, in blocks.
\item[$\mathsf{I} = 16$] The maximum amount of work items in a package.
\item[$\mathsf{J} = 8$] The maximum sum of dependency items in a work-report.
\item[$\mathsf{K} = 16$] The maximum number of tickets which may be submitted in a single extrinsic.
\item[$\mathsf{L} = 14,400$] The maximum age in timeslots of the lookup anchor.
\item[$\mathsf{N} = 2$] The number of ticket entries per validator.
\item[$\mathsf{O} = 8$] The maximum number of items in the authorizations pool.
\item[$\mathsf{P} = 6$] The slot period, in seconds.
\item[$\mathsf{Q} = 80$] The number of items in the authorizations queue.
\item[$\mathsf{R} = 10$] The rotation period of validator-core assignments, in timeslots.
\item[$\mathsf{S} = 1024$] The maximum number of entries in the accumulation queue.
\item[$\mathsf{T} = 128$] The maximum number of extrinsics in a work-package.
\item[$\mathsf{U} = 5$] The period in timeslots after which reported but unavailable work may be replaced.
\item[$\mathsf{V} = 1023$] The total number of validators.
\item[$\mathsf{W}_B = 12\cdot2^{20}$] The maximum size of an encoded work-package together with its extrinsic data and import implications, in octets.
\item[$\mathsf{W}_C = 4,000,000$] The maximum size of service code in octets.
\item[$\mathsf{W}_E = 684$] The basic size of erasure-coded pieces in octets. See equation \ref{eq:erasurecoding}.
\item[$\mathsf{W}_G = \mathsf{W}_P\mathsf{W}_E = 4104$] The size of a segment in octets.
\item[$\mathsf{W}_M = 3,072$] The maximum number of imports and exports in a work-package.
\item[$\mathsf{W}_P = 6$] The number of erasure-coded pieces in a segment.
\item[$\mathsf{W}_R = 48\cdot2^{10}$] The maximum total size of all output blobs in a work-report, in octets.
\item[$\mathsf{W}_T = 128$] The size of a transfer memo in octets.
\item[$\mathsf{X}$] Context strings, see below.
\item[$\mathsf{Y} = 500$] The number of slots into an epoch at which ticket-submission ends.
\item[$\mathsf{Z}_A = 2$] The \textsc{pvm} dynamic address alignment factor. See equation \ref{eq:jumptablealignment}.
\item[$\mathsf{Z}_I = 2^{24}$] The standard \textsc{pvm} program initialization input data size. See equation \ref{sec:standardprograminit}.
\item[$\mathsf{Z}_P = 2^{12}$] The \textsc{pvm} memory page size. See equation \ref{eq:pvmmemory}.
\item[$\mathsf{Z}_Z = 2^{16}$] The standard \textsc{pvm} program initialization zone size. See section \ref{sec:standardprograminit}.
\end{description}
\subsubsection{Signing Contexts}
\begin{description}
\item[$\mathsf{X}_A = \token{\$jam\_available}$] \emph{Ed25519} Availability assurances.
\item[$\mathsf{X}_B = \token{\$jam\_beefy}$] \emph{\textsc{bls}} Accumulate-result-root-\textsc{mmr} commitment.
\item[$\mathsf{X}_E = \token{\$jam\_entropy}$] On-chain entropy generation.
\item[$\mathsf{X}_F = \token{\$jam\_fallback\_seal}$] \emph{Bandersnatch} Fallback block seal.
\item[$\mathsf{X}_G = \token{\$jam\_guarantee}$] \emph{Ed25519} Guarantee statements.
\item[$\mathsf{X}_I = \token{\$jam\_announce}$] \emph{Ed25519} Audit announcement statements.
\item[$\mathsf{X}_T = \token{\$jam\_ticket\_seal}$] \emph{Bandersnatch Ring\textsc{vrf}} Ticket generation and regular block seal.
\item[$\mathsf{X}_U = \token{\$jam\_audit}$] \emph{Bandersnatch} Audit selection entropy.
\item[$\mathsf{X}_\top = \token{\$jam\_valid}$] \emph{Ed25519} Judgments for valid work-reports.
\item[$\mathsf{X}_\bot = \token{\$jam\_invalid}$] \emph{Ed25519} Judgments for invalid work-reports.
\end{description}