Pith. sign in

REVIEW 2 cited by

Crux, a Precise Verifier for Rust and Other Languages

Not yet reviewed by Pith; the record is open.

This paper has not been read by Pith yet. Machine review is queued; the pith claim, tier, and objections will appear here once it completes.

SPECIMEN: schema-true, not a live event

T0 review · schema-true

One-sentence machine reading of the paper's core claim.

pith:XXXXXXXX · record.json · timestamp

arxiv 2410.18280 v1 pith:KPKV7ZLH submitted 2024-10-23 cs.PL

Crux, a Precise Verifier for Rust and Other Languages

classification cs.PL
keywords cruxrustcrux-mircodeproofsprovidesspecificationstool
verification ladder T0 review T1 audit T2 compute T3 formal T4 reserved
0 comments
read the original abstract

We present Crux, a cross-language verification tool for Rust and C/LLVM. Crux targets bounded, intricate pieces of code that are difficult for humans to get right: for example, cryptographic modules and serializer / deserializer pairs. Crux builds on the same framework as the mature SAW-Cryptol toolchain, but Crux provides an interface where proofs are phrased as symbolic unit tests. Crux is designed for use in production environments, and has already seen use in industry. In this paper, we focus on Crux-MIR, our verification tool for Rust. Crux-MIR provides a bit-precise model of safe and unsafe Rust which can be used to check both inline properties about Rust code, and extensional equality to executable specifications written in Cryptol or in the hacspec dialect of Rust. Notably, Crux-MIR supports compositional reasoning, which is necessary to scale to even moderately complex proofs. We demonstrate Crux-MIR by verifying the Ring library implementations of SHA1 and SHA2 against pre-existing functional specifications. Crux is available at https://crux.galois.com.

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.

Forward citations

Cited by 2 Pith papers

Reviewed papers in the Pith corpus that reference this work. Sorted by Pith novelty score.

  1. HarnessLLM: Rust Verification Harness Generation with Large Language Models

    cs.SE 2026-07 conditional novelty 6.0

    HarnessLLM extracts API calling scenarios from Rust tests and uses LLMs to synthesize Kani harnesses, achieving 100% compile success and finding 6 real memory-safety bugs.

  2. KaPilot: LLM-Assisted Generation of Kani Specifications for Unsafe Rust Verification

    cs.SE 2026-07 conditional novelty 6.0

    An LLM multi-agent framework generates and verifies Kani safety specifications for unsafe Rust functions, achieving 88.9%/71.4% specification-generation success on gold/unlabeled benchmarks.