Files
zeekay 663cc83ca3 docs(papers): ZAP stack + cert profile modes + pitch decks (LP-186..300)
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.
2026-06-10 22:35:37 -07:00

33 lines
1.4 KiB
TeX

\section{Read/Write-Set Tracking via ZapDB MVCC}
LP-210's correctness reduces to ZapDB's MVCC version vectors. Each
cell in ZapDB has a version pointer; reads observe the version
visible from the snapshot; writes create a new version. The
commit-phase conflict check is a version-vector intersection test:
\begin{table}[h]
\centering
\small
\begin{tabular}{@{}p{6cm}p{7cm}@{}}
\toprule
\textbf{Concept} & \textbf{ZapDB primitive} \\
\midrule
Read $\textrm{tx}_i$ at key $K$, observing version $V$ &
\texttt{read\_set[i] $\ni$ (K, V)} \\
Write $\textrm{tx}_i$ at key $K$, replacing version $V_{\textrm{prior}}$ with $V_{\textrm{new}}$ &
\texttt{write\_set[i] $\ni$ (K, $V_{\textrm{new}}$, $V_{\textrm{prior}}$)} \\
Conflict: $\textrm{tx}_i$ read $V_{\textrm{prior}}$ of $K$ but $\textrm{tx}_j$ ($j<i$, committed) wrote $V_{\textrm{new}}$ of $K$ &
$\textrm{tx}_i.\textrm{read\_set}$ contains $(K, V_{\textrm{prior}})$ and \texttt{staged\_overlay} has key $K$ with a different version \\
Resolution: roll back $\textrm{tx}_i$, re-execute &
LP-202 \texttt{txn.Discard()} on $\textrm{tx}_i$'s per-tx overlay; re-execute \\
\bottomrule
\end{tabular}
\caption{Conflict detection reduces to ZapDB MVCC version-vector
intersection.}
\label{tab:mvcc}
\end{table}
No global lock. No serialization across the wave. The pattern is
identical to a Software Transactional Memory implementation -- hence
the name.