Files
zooqueen a10bf7bbc6 papers: reconcile Corona to Module-LWE (Ringtail-derived, rank-7), not Ring-LWE rank-1
- canonical lux-corona-pq paper: rank-7 Module-LWE (A in R_q^{8x7}, q=48-bit), Module-SIS
- scrub residual Corona Ring-LWE/R-LWE labels across ethos-of-lux, pqsafe-il5,
  lux-whitepaper, lux-quasar-composition, lp-020; Corona<->Pulsar = parameter regime,
  both Module-LWE (not rank-1-vs-rank-k)
- LLM.md: drop stale 'Corona as rank-1' wobble note; align to code/Ringtail params
- rebuild affected PDFs
2026-06-20 01:59:25 -07:00

72 lines
4.2 KiB
TeX

\section{What changed from 3.0}
\label{sec:diff-3-to-4}
%% ============================================================================
QuasarSTM~3.0~\cite{lp010-quasarstm-3} is the substrate paper.
QuasarSTM~4.0 is the production paper. Table~\ref{tab:diff34}
catalogues the differences exactly. Subsequent sections specify each
4.0 line item.
\begin{table}[ht]
\centering
\small
\caption{QuasarSTM 3.0 (2025-12-25) vs.\ 4.0 (2026-02-14)
production-feature delta.}
\label{tab:diff34}
\begin{tabular}{p{0.27\linewidth}p{0.32\linewidth}p{0.32\linewidth}}
\toprule
\textbf{Topic} & \textbf{3.0 (substrate)} & \textbf{4.0 (production)} \\
\midrule
EVM coverage & 118 opcodes; no \texttt{CALL} family, no \texttt{CREATE}, no \texttt{LOG}, no \texttt{EXTCODE}$\!*$ & \textbf{175 opcodes} including \texttt{CALL}/\texttt{CALLCODE}/ \texttt{DELEGATECALL}/\texttt{STATICCALL}, \texttt{CREATE}/\texttt{CREATE2}, \texttt{LOG}$_n$, \texttt{EXTCODE}$\!*$, \texttt{RETURNDATA}$\!*$, \texttt{TLOAD}/\texttt{TSTORE}, \texttt{MCOPY}, \texttt{BLOBHASH}/\texttt{BLOBBASEFEE} \\
SSTORE & write-through & \textbf{journaled} with EIP-2929~\cite{eip2929} cold/warm + EIP-3529~\cite{eip3529} refunds \\
BLS verifier & HMAC-keccak placeholder & \textbf{real BLS12-381}~\cite{bls12381} pairing on-device \\
Corona verifier & HMAC-keccak placeholder & \textbf{real Module-LWE}~\cite{corona} share verifier \\
Groth16 verifier & HMAC-keccak placeholder & \textbf{real Groth16}~\cite{groth2016} on BLS12-381 \\
Tier 1 lane-clock & sketch & \textbf{production fast path} \\
Tier 3 semantic reducers & enum stub & \textbf{production reducer commit} \\
ConflictSpec ABI & not implemented & \textbf{production} (Static / ABI / Historical / UserDeclared / Precompile / Learned) \\
LaneClass & not implemented & \textbf{NEMO}~\cite{nemo2025} (Owned / Shared / HotShared / Commutative / Unknown) \\
Versioning mode & always-on multi-version & \textbf{dynamic per-lane}~\cite{multiverse2026} \\
Fiber checkpoints & not implemented & \textbf{production}, per CALL-frame \\
Commit horizon & sketch & \textbf{production} (Nova prefix / Nebula cut) \\
MVCC GC & not implemented & \textbf{production}, horizon-driven \\
Motor VersionBlock~\cite{motor2024} & not implemented & \textbf{production} (4--8 inline versions per key) \\
GPU services & 12 (LP-132 3.0) & \textbf{16} (12 + A/B/M/F) \\
CSMV~\cite{csmv} commit server & not implemented & \textbf{scaffold landed}, single-GPU production \\
Formal CPU reference~\cite{vmvcc} & not implemented & \textbf{small executable semantics} + differential fuzzer \\
Cross-backend determinism & per-backend tests & \textbf{single harness}, byte-identical roots Metal $=$ CUDA \\
Coverage & informal & $\mathbf{\geq 96\%}$ \textbf{line coverage} on the CPU reference oracle (LP-137-COVERAGE.md) \\
\bottomrule
\end{tabular}
\end{table}
\paragraph{What did not change.}
The 3.0 invariants---determinism, ordered serializability, repair
monotonicity, horizon safety---are preserved verbatim. The wire format
(\texttt{QuasarRoundDescriptor}, \texttt{QuasarRoundResult}) is
byte-for-byte unchanged. The public host API
(\texttt{QuasarGPUEngine}~\cite{lp132-quasarexec}) is unchanged. The
canonical-order $\preceq_{\mathrm{can}}$ is unchanged: 4.0 reads
3.0-emitted round artifacts and emits 4.0 round artifacts with the
extra \texttt{hint\_roots}~\cite{chiron2025} riding in the existing
\texttt{roots} slot. There is no on-disk state migration. Validators
running 3.0 after 2026-02-14 are rejected at the consensus engine and
must upgrade.
\paragraph{Backward / forward compatibility.}
\begin{itemize}[leftmargin=2em]
\item \texttt{ServiceId.Count} flips from 12 to 16 at the activation
height; old IDs unchanged.
\item \texttt{VersionBlock.MAX\_INLINE\_VERSIONS} flips from 4 to 8;
4.0 reads 3.0 blocks, 3.0 cannot read 4.0 blocks (forward only).
\item The HMAC-keccak verifier path is preserved as a
development-only mode under \texttt{EVM\_DEV\_HMAC\_VERIFIER=1}
for deterministic test vectors. It is rejected on production
networks.
\item Pre-activation rounds remain valid as historical 3.0 rounds; the
activation height is the partition.
\end{itemize}
%% ============================================================================