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.
228 lines
8.1 KiB
TeX
228 lines
8.1 KiB
TeX
% translation.tex — Avalanche → Lux terminology mapping
|
|
% Verified row-by-row against ~/work/lux source tree, June 2026.
|
|
|
|
\section{Translation Layer: Avalanche-isms to Lux Native}
|
|
\label{sec:translation}
|
|
|
|
The Lux substrate began as a fork of \texttt{ava-labs/avalanchego} in early
|
|
2020, but as of June 2026 the source tree contains zero references to
|
|
\texttt{ava-labs} or \texttt{avalanchego} import paths (verified by recursive
|
|
grep across the Go workspace). The protocol, wire format, consensus engine,
|
|
post-quantum stack, and GPU/C++ execution layer are Lux-original. What
|
|
remains shared is structural inheritance: the P/X/C-chain triplet shape, the
|
|
SLIP-0044 coin-type, and BIP-44 derivation. This section catalogs the
|
|
terminology mapping for engineers migrating between literature.
|
|
|
|
\begin{table}[h]
|
|
\centering
|
|
\small
|
|
\caption{Consensus and protocol terminology}
|
|
\label{tab:trans-consensus}
|
|
\begin{tabular}{p{4.3cm} p{6.5cm} p{2.5cm}}
|
|
\toprule
|
|
\textbf{Upstream Avalanche} & \textbf{Lux native} & \textbf{Status} \\
|
|
\midrule
|
|
Slush / Snowflake / Snowball / Avalanche consensus
|
|
& Photon (committee sampling) + Wave (FPC) + Focus (confidence) +
|
|
Ray (linear driver) + Field (DAG driver) + Quasar (threshold seal)
|
|
& replaced \\
|
|
Snowman (linear consensus)
|
|
& Nova (Photon$+$Wave$+$Focus$+$Ray composition)
|
|
& replaced \\
|
|
Avalanche (DAG consensus)
|
|
& Nebula (Photon$+$Wave$+$Focus$+$Field composition); Prism for DAG
|
|
geometry; Horizon for order-theory; Flare for skip-detection
|
|
& replaced \\
|
|
Etna upgrade (subnet $\to$ L1 conversion)
|
|
& Quasar Edition (network activation 2025-12-25 16:20 PST,
|
|
unix 1{,}766{,}708{,}400)
|
|
& renamed and re-shaped \\
|
|
ACP (Avalanche Community Proposal)
|
|
& LP (Lux Proposal); see \texttt{luxfi/lps}
|
|
& renamed \\
|
|
Subnet
|
|
& L1 (sovereign chain with own validator set) or L2 EVM (shared
|
|
primary-network validators)
|
|
& restructured \\
|
|
Primary network (P/X/C)
|
|
& Primary network (P + X only); C-Chain is one EVM L2 among many
|
|
(Hanzo / Zoo / SPC). C-Chain disabled via \texttt{LUX\_DISABLE\_CCHAIN=1}
|
|
when bootstrapping non-Lux L1s.
|
|
& restructured \\
|
|
P-Chain (platform)
|
|
& P-Chain (Lux). Wire is ZAP; no linearcodec on the new final
|
|
network (see LP-023).
|
|
& restructured \\
|
|
X-Chain (asset / DAG)
|
|
& X-Chain (Lux). UTXO + DAG; uses Nebula+Field consensus.
|
|
& inherited shape \\
|
|
C-Chain (EVM)
|
|
& C-Chain (Lux primary-network EVM) only. Hanzo/Zoo/SPC/Pars all
|
|
have their own EVM L1s/L2s; never C-Chain.
|
|
& narrowed scope \\
|
|
Simplex
|
|
& not adopted; Lux uses Quasar family
|
|
& N/A \\
|
|
SaeVM
|
|
& not adopted; Lux ships \texttt{vms/da} for data availability
|
|
& N/A \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\end{table}
|
|
|
|
\begin{table}[h]
|
|
\centering
|
|
\small
|
|
\caption{Identity, network, and address terminology}
|
|
\label{tab:trans-network}
|
|
\begin{tabular}{p{4.3cm} p{6.5cm} p{2.5cm}}
|
|
\toprule
|
|
\textbf{Upstream Avalanche} & \textbf{Lux native} & \textbf{Status} \\
|
|
\midrule
|
|
\texttt{Avalanche mainnet} (network ID 1)
|
|
& \texttt{Lux mainnet} (network ID 1, shared across all Lux L1s ---
|
|
Hanzo, Zoo, Pars, Liquidity, etc.)
|
|
& ID inherited \\
|
|
\texttt{Fuji} testnet (network ID 5)
|
|
& \texttt{testnet} (network ID 2)
|
|
& renamed, ID changed \\
|
|
\texttt{local} (network ID 12345)
|
|
& \texttt{devnet} (3) / \texttt{local} (1337)
|
|
& renamed, IDs changed \\
|
|
\texttt{AVAX} token
|
|
& \texttt{LUX} token. Bridge-destination exception: when the Lux
|
|
bridge orchestrator delivers a wrapped asset \emph{onto} Avalanche
|
|
C-Chain or X-Chain, the user-facing label remains \texttt{AVAX}
|
|
(and \texttt{avax} HRP) on the destination side --- the bridge does
|
|
not re-brand the upstream network. This is the only context where
|
|
\texttt{AVAX} is correct in Lux user surfaces.
|
|
& renamed \\
|
|
\texttt{avax} HRP (\texttt{X-avax1\dots})
|
|
& \texttt{lux} / \texttt{test} / \texttt{dev} / \texttt{local} /
|
|
\texttt{custom} HRPs (\texttt{X-lux1\dots})
|
|
& renamed \\
|
|
SLIP-0044 coin type 9000
|
|
& SLIP-0044 coin type 9000 (BIP-44 path
|
|
\texttt{m/44'/9000'/\textit{serviceIndex}'/0'/0'})
|
|
& \textbf{inherited} (canonical) \\
|
|
NodeID format (\texttt{NodeID-<base58>}, 20-byte SHA-256 hash of public key)
|
|
& BTC-style hash-of-hash NodeID:
|
|
\texttt{SHAKE256-384("NODE\_ID\_V1" $\|$ chainID $\|$ 0x42 $\|$ pk)[:20]}
|
|
(HIP-0077)
|
|
& replaced \\
|
|
BLS PoP (proof of possession)
|
|
& BLS PoP $+$ ML-DSA hybrid (X-Wing-style)
|
|
& extended \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\end{table}
|
|
|
|
\begin{table}[h]
|
|
\centering
|
|
\small
|
|
\caption{Wire, codec, and SDK terminology}
|
|
\label{tab:trans-wire}
|
|
\begin{tabular}{p{4.3cm} p{6.5cm} p{2.5cm}}
|
|
\toprule
|
|
\textbf{Upstream Avalanche} & \textbf{Lux native} & \textbf{Status} \\
|
|
\midrule
|
|
\texttt{linearcodec} / \texttt{reflectcodec}
|
|
& ZAP wire (see LP-022, LP-023); the Go struct \textit{is} the
|
|
wire; no marshal step
|
|
& replaced \\
|
|
P-chain wire (linearcodec)
|
|
& ZAP-native P-chain wire (\texttt{node/vms/platformvm/txs/zap\_native})
|
|
& replaced \\
|
|
gRPC consensus messages
|
|
& ZAP over QUIC (handshake hybrid X-Wing, payload zero-copy)
|
|
& replaced \\
|
|
\texttt{AvalancheJS}
|
|
& \texttt{@luxfi/sdk} (TS / JS); also \texttt{luxfi/sdk} (Go),
|
|
\texttt{luxfi/sdk-rs} (Rust), \texttt{luxfi/python-sdk}
|
|
& replaced (multi-language) \\
|
|
\texttt{Core Wallet}
|
|
& Lux Wallet (whitelabelable; Hanzo / Zoo / Pars / Liquidity
|
|
each ship branded distributions)
|
|
& replaced \\
|
|
\texttt{avalanche-cli}
|
|
& \texttt{luxfi/cli} (\texttt{lux} binary)
|
|
& replaced \\
|
|
\texttt{coreth} (EVM client)
|
|
& \texttt{luxfi/geth} fork (pinned at v1.16.x; minimal diff vs
|
|
upstream geth); \texttt{coreth} retained as compat shim only
|
|
& replaced upstream \\
|
|
\texttt{avalanche-network-runner}
|
|
& \texttt{luxfi/netrunner} + \texttt{luxfi/netrunner-sdk}
|
|
& forked, diverged \\
|
|
HyperSDK
|
|
& not adopted; Lux exposes execution as Quasar-wrapped VMs
|
|
(\texttt{vm/} + \texttt{precompile/})
|
|
& N/A \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\end{table}
|
|
|
|
\begin{table}[h]
|
|
\centering
|
|
\small
|
|
\caption{Post-quantum and crypto terminology (Lux-original surface)}
|
|
\label{tab:trans-pq}
|
|
\begin{tabular}{p{4.3cm} p{6.5cm} p{2.5cm}}
|
|
\toprule
|
|
\textbf{Upstream Avalanche} & \textbf{Lux native} & \textbf{Status} \\
|
|
\midrule
|
|
(none --- pre-quantum)
|
|
& Pulsar (FIPS 204 ML-DSA-65 threshold; 2-round commit-and-reveal)
|
|
& Lux-original \\
|
|
(none)
|
|
& Magnetar (FIPS 205 SLH-DSA threshold; THBS-SE strict-atom)
|
|
& Lux-original \\
|
|
(none)
|
|
& Corona (Round-Signer composition; DKG2 with PVSS dealerless DKG)
|
|
& Lux-original \\
|
|
(none)
|
|
& Quasar (BLS $+$ Pulsar $+$ ML-DSA in parallel; PQMode selector)
|
|
& Lux-original \\
|
|
(none)
|
|
& P3Q precompile slot \texttt{0x012205} (hybrid post-quantum verify)
|
|
& Lux-original \\
|
|
(none)
|
|
& ML-KEM-1024 (FIPS 203) / X-Wing KEM for handshakes
|
|
& Lux-original \\
|
|
(none)
|
|
& FHE precompile suite (CKKS, BFV, BGV); FHE coprocessor
|
|
& Lux-original \\
|
|
(none)
|
|
& 47 primitive precompile families across 99 addressable slots:
|
|
ML-DSA / SLH-DSA / ML-KEM / Pulsar / Quasar / FROST / CGGMP21 /
|
|
FHE / HQC / KZG4844 / Poseidon / Pasta / Pedersen / VRF / X25519 /
|
|
Curve25519 / BabyJubjub / BLS12-381 / Ring / ZK /
|
|
Solidity-bindings. Ethereum has 11 post-Pectra; Solana has
|
|
$\sim$60 native programs (different model).
|
|
& Lux-original \\
|
|
\bottomrule
|
|
\end{tabular}
|
|
\end{table}
|
|
|
|
\subsection{Source-code anti-patterns to scrub}
|
|
|
|
The Go source tree under \texttt{\textasciitilde/work/lux/node} and
|
|
\texttt{\textasciitilde/work/lux/consensus} contains zero \texttt{Avalanche},
|
|
\texttt{Snowman}, \texttt{Snowball}, \texttt{Avax}, or \texttt{Fuji} string
|
|
literals in non-test \texttt{*.go} files. The remaining occurrences are:
|
|
|
|
\begin{itemize}[leftmargin=1.4em,topsep=0.2em,itemsep=0.1em]
|
|
\item Academic citations in \texttt{consensus/paper/} and
|
|
\texttt{papers/} \texttt{.tex} sources (correct attribution).
|
|
\item Upstream forks (\texttt{geth/}, \texttt{coreth/}) that retain
|
|
their own provenance.
|
|
\item Third-party vendored modules (\texttt{kms/vendor/} MinIO SDK
|
|
contains \texttt{api-putobject-snowball.go} --- unrelated AWS
|
|
Snowball).
|
|
\end{itemize}
|
|
|
|
The 15 \texttt{Subnet}-prefixed identifiers in
|
|
\texttt{node/vms/platformvm/txs/zap\_native/} are forward-compatibility
|
|
shims for the \texttt{ConvertNetworkToL1Tx} and \texttt{TransformChainTx}
|
|
migration paths (subnet $\to$ L1 conversion, the Lux analog of Etna).
|