Formal Verification of an Out-of-Order Multiprocessor against an In-Order Weak-Memory ISA

The work

AuthorsJanggun Lee; Jeehoon Kang
Editors
Typemisc
Year2026
Citekeylee2026formal

Identifiers

arXiv2607.18727 from its landing_page_url

Related

Distinct frombiere1999symbolic
Distinct fromcohn1987proof
Distinct fromcurzon1994formalb
Distinct fromgordon1983proving
Distinct fromjoyce1986proving
Distinct frommanjrekar2025automating
Distinct frompeng2015extending

From bibtex.

Abstract

Out-of-order multiprocessor is a critical piece of modern hardware, and their verification must solve the following challenges. First, inter-core interleaving, in which the order their reads and writes reach shared memory is unrestricted. Second, intra-core out-of-order execution, in which instructions fire out of program order. The combination of the two yields weak outcomes, which no sequential execution explains, and modern ISA allows such behaviors to account for them. However, the microarchitecture even exhibits excess out-of-order executions, temporarily entering states forbidden by the ISA. While discarded later, such states complicate reasoning about the core in full-system verification. Prior works verify a range of processor designs, while none have performed unbounded verification for out-of-order multiprocessor exhibiting such weak outcomes. We present the first formal verification of an out-of-order multiprocessor against an in-order, weak-memory ISA. Our key idea is a well-designed core specification, which captures the essence of excess executions in a single list of instructions. Building upon this, we decompose the proof into two steps. The first is a core refinement, proving a core implementation against this specification, abstracting away every microarchitectural state except those necessary to reason about excess executions and the core interface. The second is a system inclusion, serializing the out-of-order memory executions and inter-core interleaving into the ISA, easily removing excess executions thanks to the core specification. All of our proofs are mechanized in Rocq, heavily utilizing large language model (LLM) agents to write proofs automatically.

A copy is held

pdf, 1.0 MB. Not published — it may be under copyright. The facts and links here are.

How it got here

How it got hereagent via bibtex
Added2026-09-16 05:52 UTC
Approved bya person 2026-09-16 09:09 UTC

Cite it as

@misc{lee2026formal,
  title        = {Formal Verification of an Out-of-Order Multiprocessor against an In-Order Weak-Memory ISA},
  author       = {Janggun Lee and Jeehoon Kang},
  year         = {2026},
}

This record lives at https://refs.drheap.org/lee2026formal/ and will keep doing so.