mirror of
https://github.com/lux-apps/papers.git
synced 2026-10-30 18:15:21 +00:00
Companion LaTeX papers to luxfi/LPs: - lp-200-zap-stack: full ZAP-as-substrate paper (10-layer model, deco- mplected concerns, performance). - lp-200-lux-vs-avalanche-diff: code-translation appendix. - lp-203-gpu-native-verify, lp-205-pipelined-quasar, lp-208-dag-mempool, lp-209-mysticeti-ordering, lp-210-block-stm, lp-211-cross-shard-atomic, lp-217-cert-profile-modes, lp-218-zap-p3q-pq-rollup, lp-220-p3q-corona-magnetar, lp-221-stark-fri-verifier, lp-300-schema-registry. Pitch / outreach decks (luxcover.sty templated): - blackrock-nahmii-pitch, corporate-dao-stack-analysis, nahmii-patent-acquisition, pq-patent-family-future-infringers, lux-substrate-platform-pitch, w3a-foundation-membership, multi-validator-scale, vfs-archive-cost-study. Edits aligning to LP-217 / LP-200: - lp-020-quasar-consensus 02-system-model + 08-performance. - lp-073-pulsar 11-quasar. - lp-103-omnichain-explorer 03-chain-support. - lp-104-graph-engine. - lp-201-zap-universal-wire/wire-inventory.csv. - lp-306-lx-social-dex sections/02. - lux-adoption-roadmap, lux-chain-architecture, lux-consensus-engines/08-composition, lux-crypto-agility, lux-evm-precompile-engineering/02, lux-fhe-smart-contracts/05, lux-quasar-composition/04+06+10, lux-reproducible-builds. - INDEX.md cross-links the new papers.
72 lines
2.9 KiB
TeX
72 lines
2.9 KiB
TeX
\section{The DAG Structure}
|
|
|
|
A continuously-growing directed acyclic graph. Vertices are headers;
|
|
edges are parent-pointers. The structure is replicated at every
|
|
validator and converges via the DHT.
|
|
|
|
\subsection{Vertex (header) properties}
|
|
|
|
\begin{itemize}[leftmargin=2em,nosep]
|
|
\item \textbf{Unique identifier:} \texttt{sha256(header.Bytes())}
|
|
\item \textbf{Validator-local:} each header is signed by exactly one
|
|
validator
|
|
\item \textbf{Self-stamped:} contains the validator's local wall-clock
|
|
at emission
|
|
\item \textbf{Parent-linked:} contains one parent-pointer per other
|
|
validator (best-effort -- see parent-linking discipline below)
|
|
\item \textbf{Tx-bearing:} carries a list of tx hashes for the txs
|
|
the validator admitted since its last header
|
|
\end{itemize}
|
|
|
|
\subsection{Edge properties}
|
|
|
|
\begin{itemize}[leftmargin=2em,nosep]
|
|
\item \textbf{Cross-validator:} a header from validator $V$ has
|
|
parent-pointers to recent headers from validators $\neq V$
|
|
\item \textbf{Antiquated-tolerant:} a parent-pointer to a header that
|
|
has aged out of the active DAG window is treated as a no-op; the
|
|
DAG remains acyclic
|
|
\item \textbf{Quorum-target:} each header attempts to point to at
|
|
least $\lceil 2N/3 \rceil + 1$ parents (validator-quorum), but
|
|
liveness is preserved if fewer parents are reachable
|
|
\end{itemize}
|
|
|
|
\subsection{Emission rate}
|
|
|
|
Each validator emits a new header every $K$ milliseconds.
|
|
|
|
\begin{itemize}[leftmargin=2em,nosep]
|
|
\item \textbf{Default $K$:} \SI{50}{\milli\second} (configurable per
|
|
chain via \texttt{dag.emission\_ms})
|
|
\item \textbf{Lower bound $K$:} bounded by network RTT among
|
|
validators; for an intra-region validator set, $K$ can be as low
|
|
as \SI{10}{\milli\second}; for a globally-distributed set, $K$ is
|
|
typically \SI{100}{\milli\second}--\SI{200}{\milli\second}
|
|
\item \textbf{Upper bound $K$:} bounded by the cert timeout in the
|
|
consumer consensus (LP-217 mode + LP-205 pipeline); $K$ must be
|
|
lower than the cert wall-clock to avoid serializing on header
|
|
emission
|
|
\end{itemize}
|
|
|
|
\subsection{Parent-linking discipline}
|
|
|
|
Each header from validator $V$ emitted at time $T$ contains parent
|
|
pointers chosen as follows:
|
|
|
|
\begin{enumerate}[leftmargin=2em,nosep]
|
|
\item For each other validator $W$ in the active validator set, $V$
|
|
maintains a ``freshest known header from $W$'' pointer.
|
|
\item At header-emit time $T$, $V$ snapshots its freshest-known set
|
|
and includes the hashes as \texttt{parent\_hashes}.
|
|
\item If $V$ has no fresh header from $W$ (e.g., $W$ is partitioned,
|
|
or $T$ is within the first $K$~ms of the epoch), the
|
|
corresponding slot is zero-padded.
|
|
\end{enumerate}
|
|
|
|
The discipline is \emph{honest-best-effort}. A byzantine $V$ can
|
|
omit parents, lie about freshness, or zero-pad maliciously; the
|
|
LP-209 total-ordering algorithm handles these adversarial cases.
|
|
This LP only specifies the honest validator's behavior;
|
|
adversarial robustness is a property of the consumer (LP-209) plus
|
|
the cert profile (LP-217 mode).
|