Skip to content

Repository files navigation

Guarded Continuation Checker, powered by CQ-SAT

CI workflow status Latest crates.io version docs.rs documentation Rust 1.97 or newer Apache-2.0 licence Guarded Continuation Checker website

Guarded Continuation Checker

Guarded Continuation Checker, powered by CQ-SAT, is an evaluation-ready, proof-carrying bounded verification platform for embedded firmware and RTL.

GCC authenticates a bounded model and reviewed obligation, governs the complete workload before solving, and returns one of three explicit outcomes:

  • SAFE: no violation exists inside the declared bounded model;
  • UNSAFE: a shortest counterexample is returned for replay; or
  • REFUSED: a policy, resource or input boundary was exceeded, so no logical answer is claimed.

CQ-SAT is GCC's exact continuation-quotient engine. A static structural gate uses it only inside its validated regime. Supported cases outside that regime remain on an exact portfolio backend.

Status

GCC is an evaluation-ready research prototype. It is not yet a production-qualified or certified verification product, a general-purpose replacement for CDCL SAT solvers, or evidence that P = NP.

The production candidate currently supports bounded firmware and RTL safety checking through firmware CLI contract v2 and RTL artifact schema v4. Research interfaces remain available in the repository but are excluded from that support promise.

Read the exact boundaries before evaluation:

How it works

Guarded Continuation Checker architecture: firmware, RTL and transition models enter an authenticated bounded model; governed static routing selects CQ-SAT exact composition or exact portfolio fallback; canonical evidence is independently checked before returning bounded SAFE, replayable UNSAFE, or REFUSED with no answer.

The producer and checker are separated by a canonical evidence boundary. The checker binds the original source or model, the complete query, the selected route and its result. Resource refusal never becomes a safety answer.

See architecture and trust boundary for the complete system model.

Quick start

GCC requires Rust 1.97 or newer. RTL synthesis workflows also require Yosys.

git clone https://github.com/kabudu/guarded-continuation-checker.git
cd guarded-continuation-checker
cargo build --release --locked
cargo test --locked

The executable is:

target/release/guarded-continuation-checker

Run the infusion-pump firmware safety gate

The bundled product example starts from SystemVerilog, synthesises an AIGER model in an isolated staging directory, checks the bounded safety property and publishes a source-bound evidence bundle:

./target/release/guarded-continuation-checker \
  firmware-rtl-safety-gate \
  examples/products/infusion-pump/rtl/safe-controller.sv \
  infusion_pump_controller 100 target/firmware-safety

Validate the completed bundle before retention or downstream processing:

./target/release/guarded-continuation-checker \
  firmware-artifact-validate target/firmware-safety

Exit status 0 means bounded safe, 1 means a violation was found, and 2 means the input or tool failed. The example demonstrates integration mechanics, not medical-device certification. See the infusion-pump walkthrough.

Verify an AIGER model directly

./target/release/guarded-continuation-checker \
  verify-cq-aiger examples/aiger/counter-overflow-4.aag \
  137 10 200000 results/local-aiger-counter.csv \
  results/local-aiger-counter-safety.txt

GCC supports bounded original five-field ASCII aag and binary aig safety models. Input-driven or wider models route directly to exact CDCL when they do not satisfy CQ-SAT's static gate.

Supported product surface

The profiled production-candidate binary is built with:

cargo build --release --locked --features production-firmware

It exposes only:

  • production and firmware capability discovery;
  • single-file, multi-file, configured and constrained RTL safety gates; and
  • evidence-bundle validation.

It rejects predicate, event-contract, BTOR2, revision, controller, MTBDD, counterfactual, causal-analysis and benchmark commands before dispatch. Those are research surfaces, not silently supported product capabilities.

The authoritative command list, version semantics and release gates are in the production support profile.

Evidence and containment

Completed firmware runs publish deterministic source snapshots, synthesis inputs and logs, the bounded model, signal map, report, metrics, provenance and SHA-256-bound manifest.

Linux is the supported production-evaluation host. Its hostile-RTL profile enforces process-tree termination, time, output-file and address-space limits. macOS remains supported for development but does not claim hard memory containment.

SHA-256 detects changes relative to a trusted manifest; it is not a signature. Review RTL artifact schema v4 and the isolation profile before processing untrusted RTL.

Evaluation

Self-service evaluators can select their own firmware or RTL designs, follow the repository procedures and report only outcome and suitability:

Independent acceptance remains a release gate. Repository examples and hosted CI runs do not substitute for external evaluation.

Research

The repository retains experimental mechanisms, closest baselines, negative results and retractions. Recent compiled-firmware work includes:

These results narrow the next experiments. They do not alter the supported product profile or create a production claim.

See the documentation map, findings and research roadmap for the complete record.

Repository layout

  • src: library, checker, CLI and research backends.
  • examples/products: product-shaped evaluation examples.
  • examples: executable verification and research probes.
  • corpus: pinned public firmware and RTL inputs.
  • docs: contracts, architecture, qualification evidence and research.
  • results: curated machine-readable evidence supporting bounded claims.
  • scripts: reproduction, qualification and release tooling.

Project resources

License

Licensed under the Apache License 2.0. See LICENSE.

Citation

See CITATION.cff.

About

Guarded Continuation Checker: evaluation-ready, proof-carrying bounded verification for embedded firmware and RTL, powered by CQ-SAT.

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages