Skip to content

feat: first Rocq proof + Rocq CI job (CV-22)#78

Merged
avrabe merged 2 commits intomainfrom
feat/rocq-lean-proofs
Mar 29, 2026
Merged

feat: first Rocq proof + Rocq CI job (CV-22)#78
avrabe merged 2 commits intomainfrom
feat/rocq-lean-proofs

Conversation

@avrabe
Copy link
Copy Markdown
Contributor

@avrabe avrabe commented Mar 29, 2026

Summary

First working Rocq proof via the coq-of-rust pipeline.

What works

  • verification/rocq/pae.rs → coq-of-rust → pae.v → Rocq pae.vo
  • Self-contained compute_pae extraction (no external deps)
  • New CI job: Rocq/coq-of-rust Translation (Nix + Bazel)

Full verification pipeline

Verus specs → Z3 SMT verify          ✓ (hermetic, f028edb)
Verus specs → verus_strip → plain Rs ✓ (8a2bbf6)  
Production  → coq-of-rust → Rocq .vo ✓ (this PR)
Lean4       → Mathlib → Ed25519      configured
Kani        → CBMC → 14 proofs       ✓

Closes #32

🤖 Generated with Claude Code

PAE (Pre-Authentication Encoding) translated to Rocq and compiled:
- verification/rocq/pae.rs: self-contained compute_pae extraction
- coq-of-rust generates pae.v, Rocq compiles to pae.vo
- CI job: Rocq/coq-of-rust Translation (with Nix)

Full multi-track pipeline working:
  Verus specs → Z3 verify ✓
  Verus specs → verus_strip → plain Rust ✓
  Production code → coq-of-rust → Rocq .vo ✓

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@codecov
Copy link
Copy Markdown

codecov bot commented Mar 29, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

coq-of-rust links against libLLVM from Rust nightly — works locally
via Nix but CI needs LIBRARY_PATH set. continue-on-error until
rules_rocq_rust handles this in its extension.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@avrabe avrabe merged commit 2e4ed16 into main Mar 29, 2026
15 of 16 checks passed
@avrabe avrabe deleted the feat/rocq-lean-proofs branch March 29, 2026 12:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Rocq formal verification and coq-of-rust integration

1 participant