Back to all releases
LatestStable

QCP-v2.1.0

QCP-v2.1.0

Original release notes

We are pleased to announce QCP v2.1.0. This release is centered on two major milestones: Lean proof-backend support and a substantial update to the verified CDCL SAT solver example.

What's New

Lean Proof-Backend Support

QCP now supports Lean as a proof backend alongside Rocq. The latest binaries can generate Lean verification conditions and strategy outputs, allowing users to choose the backend that best fits their project.

This release includes:

Lean and Rocq are independent proof-backend choices. Users only need to install the backend they intend to use; both are required only when generating and checking both .lean and .v artifacts.

Updated and Verified CDCL Example

We spent a focused week completing the verification of the CDCL SAT solver example. The updated example now connects the annotated C implementation, abstract CDCL state, strategy rules, generated verification conditions, and modular Rocq proofs in one checked workflow.

The verification covers the solver's key state transitions, including initialization, Boolean constraint propagation, decisions, conflict handling, clause learning, and backjumping. Its checked contract establishes that the solver returns:

The result is a larger, more realistic end-to-end QCP example. The proof establishes partial functional correctness; termination is outside the current contract.

Improvements

Verification Features

QIDE

Repository Examples and Proof Maintenance

For reusable migration patterns, see the QCP v2.1.0 proof-porting guide.

Migration Notes


Happy verifying with QCP v2.1.0!